benchling-api-client 2.0.418__py3-none-any.whl → 2.0.419__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.
- benchling_api_client/v2/beta/models/entry_beta_review_record.py +49 -0
- benchling_api_client/v2/beta/models/entry_review_process.py +252 -0
- benchling_api_client/v2/beta/models/entry_review_process_completion_status.py +27 -0
- benchling_api_client/v2/beta/models/entry_review_process_stages_item.py +211 -0
- benchling_api_client/v2/beta/models/entry_review_process_stages_item_action_label.py +27 -0
- benchling_api_client/v2/beta/models/entry_review_process_stages_item_reviewers_item.py +195 -0
- benchling_api_client/v2/beta/models/entry_review_process_stages_item_reviewers_item_status.py +25 -0
- benchling_api_client/v2/beta/models/entry_review_process_type.py +22 -0
- benchling_api_client/v2/beta/models/worksheet_review_changes_review_record.py +49 -0
- benchling_api_client/v2/beta/openapi.yaml +76 -0
- {benchling_api_client-2.0.418.dist-info → benchling_api_client-2.0.419.dist-info}/METADATA +1 -1
- {benchling_api_client-2.0.418.dist-info → benchling_api_client-2.0.419.dist-info}/RECORD +14 -7
- {benchling_api_client-2.0.418.dist-info → benchling_api_client-2.0.419.dist-info}/LICENSE +0 -0
- {benchling_api_client-2.0.418.dist-info → benchling_api_client-2.0.419.dist-info}/WHEEL +0 -0
|
@@ -4,6 +4,7 @@ import attr
|
|
|
4
4
|
|
|
5
5
|
from ..extensions import NotPresentError
|
|
6
6
|
from ..models.entry_beta_review_record_status import EntryBetaReviewRecordStatus
|
|
7
|
+
from ..models.entry_review_process import EntryReviewProcess
|
|
7
8
|
from ..models.review_change import ReviewChange
|
|
8
9
|
from ..types import UNSET, Unset
|
|
9
10
|
|
|
@@ -16,6 +17,7 @@ class EntryBetaReviewRecord:
|
|
|
16
17
|
|
|
17
18
|
_comment: Union[Unset, str] = UNSET
|
|
18
19
|
_review_changes: Union[Unset, List[ReviewChange]] = UNSET
|
|
20
|
+
_review_processes: Union[Unset, None, List[EntryReviewProcess]] = UNSET
|
|
19
21
|
_status: Union[Unset, EntryBetaReviewRecordStatus] = UNSET
|
|
20
22
|
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
21
23
|
|
|
@@ -23,6 +25,7 @@ class EntryBetaReviewRecord:
|
|
|
23
25
|
fields = []
|
|
24
26
|
fields.append("comment={}".format(repr(self._comment)))
|
|
25
27
|
fields.append("review_changes={}".format(repr(self._review_changes)))
|
|
28
|
+
fields.append("review_processes={}".format(repr(self._review_processes)))
|
|
26
29
|
fields.append("status={}".format(repr(self._status)))
|
|
27
30
|
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
28
31
|
return "EntryBetaReviewRecord({})".format(", ".join(fields))
|
|
@@ -37,6 +40,17 @@ class EntryBetaReviewRecord:
|
|
|
37
40
|
|
|
38
41
|
review_changes.append(review_changes_item)
|
|
39
42
|
|
|
43
|
+
review_processes: Union[Unset, None, List[Any]] = UNSET
|
|
44
|
+
if not isinstance(self._review_processes, Unset):
|
|
45
|
+
if self._review_processes is None:
|
|
46
|
+
review_processes = None
|
|
47
|
+
else:
|
|
48
|
+
review_processes = []
|
|
49
|
+
for review_processes_item_data in self._review_processes:
|
|
50
|
+
review_processes_item = review_processes_item_data.to_dict()
|
|
51
|
+
|
|
52
|
+
review_processes.append(review_processes_item)
|
|
53
|
+
|
|
40
54
|
status: Union[Unset, int] = UNSET
|
|
41
55
|
if not isinstance(self._status, Unset):
|
|
42
56
|
status = self._status.value
|
|
@@ -48,6 +62,8 @@ class EntryBetaReviewRecord:
|
|
|
48
62
|
field_dict["comment"] = comment
|
|
49
63
|
if review_changes is not UNSET:
|
|
50
64
|
field_dict["reviewChanges"] = review_changes
|
|
65
|
+
if review_processes is not UNSET:
|
|
66
|
+
field_dict["reviewProcesses"] = review_processes
|
|
51
67
|
if status is not UNSET:
|
|
52
68
|
field_dict["status"] = status
|
|
53
69
|
|
|
@@ -85,6 +101,23 @@ class EntryBetaReviewRecord:
|
|
|
85
101
|
raise
|
|
86
102
|
review_changes = cast(Union[Unset, List[ReviewChange]], UNSET)
|
|
87
103
|
|
|
104
|
+
def get_review_processes() -> Union[Unset, None, List[EntryReviewProcess]]:
|
|
105
|
+
review_processes = []
|
|
106
|
+
_review_processes = d.pop("reviewProcesses")
|
|
107
|
+
for review_processes_item_data in _review_processes or []:
|
|
108
|
+
review_processes_item = EntryReviewProcess.from_dict(review_processes_item_data, strict=False)
|
|
109
|
+
|
|
110
|
+
review_processes.append(review_processes_item)
|
|
111
|
+
|
|
112
|
+
return review_processes
|
|
113
|
+
|
|
114
|
+
try:
|
|
115
|
+
review_processes = get_review_processes()
|
|
116
|
+
except KeyError:
|
|
117
|
+
if strict:
|
|
118
|
+
raise
|
|
119
|
+
review_processes = cast(Union[Unset, None, List[EntryReviewProcess]], UNSET)
|
|
120
|
+
|
|
88
121
|
def get_status() -> Union[Unset, EntryBetaReviewRecordStatus]:
|
|
89
122
|
status = UNSET
|
|
90
123
|
_status = d.pop("status")
|
|
@@ -106,6 +139,7 @@ class EntryBetaReviewRecord:
|
|
|
106
139
|
entry_beta_review_record = cls(
|
|
107
140
|
comment=comment,
|
|
108
141
|
review_changes=review_changes,
|
|
142
|
+
review_processes=review_processes,
|
|
109
143
|
status=status,
|
|
110
144
|
)
|
|
111
145
|
|
|
@@ -161,6 +195,21 @@ class EntryBetaReviewRecord:
|
|
|
161
195
|
def review_changes(self) -> None:
|
|
162
196
|
self._review_changes = UNSET
|
|
163
197
|
|
|
198
|
+
@property
|
|
199
|
+
def review_processes(self) -> Optional[List[EntryReviewProcess]]:
|
|
200
|
+
""" Review Processes associated with the Entry """
|
|
201
|
+
if isinstance(self._review_processes, Unset):
|
|
202
|
+
raise NotPresentError(self, "review_processes")
|
|
203
|
+
return self._review_processes
|
|
204
|
+
|
|
205
|
+
@review_processes.setter
|
|
206
|
+
def review_processes(self, value: Optional[List[EntryReviewProcess]]) -> None:
|
|
207
|
+
self._review_processes = value
|
|
208
|
+
|
|
209
|
+
@review_processes.deleter
|
|
210
|
+
def review_processes(self) -> None:
|
|
211
|
+
self._review_processes = UNSET
|
|
212
|
+
|
|
164
213
|
@property
|
|
165
214
|
def status(self) -> EntryBetaReviewRecordStatus:
|
|
166
215
|
""" Review Status of the entry """
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
|
+
|
|
3
|
+
import attr
|
|
4
|
+
|
|
5
|
+
from ..extensions import NotPresentError
|
|
6
|
+
from ..models.entry_review_process_completion_status import EntryReviewProcessCompletionStatus
|
|
7
|
+
from ..models.entry_review_process_stages_item import EntryReviewProcessStagesItem
|
|
8
|
+
from ..models.entry_review_process_type import EntryReviewProcessType
|
|
9
|
+
from ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="EntryReviewProcess")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@attr.s(auto_attribs=True, repr=False)
|
|
15
|
+
class EntryReviewProcess:
|
|
16
|
+
""" """
|
|
17
|
+
|
|
18
|
+
_completion_status: Union[Unset, EntryReviewProcessCompletionStatus] = UNSET
|
|
19
|
+
_id: Union[Unset, str] = UNSET
|
|
20
|
+
_name: Union[Unset, str] = UNSET
|
|
21
|
+
_stages: Union[Unset, List[EntryReviewProcessStagesItem]] = UNSET
|
|
22
|
+
_type: Union[Unset, EntryReviewProcessType] = UNSET
|
|
23
|
+
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
24
|
+
|
|
25
|
+
def __repr__(self):
|
|
26
|
+
fields = []
|
|
27
|
+
fields.append("completion_status={}".format(repr(self._completion_status)))
|
|
28
|
+
fields.append("id={}".format(repr(self._id)))
|
|
29
|
+
fields.append("name={}".format(repr(self._name)))
|
|
30
|
+
fields.append("stages={}".format(repr(self._stages)))
|
|
31
|
+
fields.append("type={}".format(repr(self._type)))
|
|
32
|
+
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
33
|
+
return "EntryReviewProcess({})".format(", ".join(fields))
|
|
34
|
+
|
|
35
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
36
|
+
completion_status: Union[Unset, int] = UNSET
|
|
37
|
+
if not isinstance(self._completion_status, Unset):
|
|
38
|
+
completion_status = self._completion_status.value
|
|
39
|
+
|
|
40
|
+
id = self._id
|
|
41
|
+
name = self._name
|
|
42
|
+
stages: Union[Unset, List[Any]] = UNSET
|
|
43
|
+
if not isinstance(self._stages, Unset):
|
|
44
|
+
stages = []
|
|
45
|
+
for stages_item_data in self._stages:
|
|
46
|
+
stages_item = stages_item_data.to_dict()
|
|
47
|
+
|
|
48
|
+
stages.append(stages_item)
|
|
49
|
+
|
|
50
|
+
type: Union[Unset, int] = UNSET
|
|
51
|
+
if not isinstance(self._type, Unset):
|
|
52
|
+
type = self._type.value
|
|
53
|
+
|
|
54
|
+
field_dict: Dict[str, Any] = {}
|
|
55
|
+
field_dict.update(self.additional_properties)
|
|
56
|
+
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
57
|
+
if completion_status is not UNSET:
|
|
58
|
+
field_dict["completionStatus"] = completion_status
|
|
59
|
+
if id is not UNSET:
|
|
60
|
+
field_dict["id"] = id
|
|
61
|
+
if name is not UNSET:
|
|
62
|
+
field_dict["name"] = name
|
|
63
|
+
if stages is not UNSET:
|
|
64
|
+
field_dict["stages"] = stages
|
|
65
|
+
if type is not UNSET:
|
|
66
|
+
field_dict["type"] = type
|
|
67
|
+
|
|
68
|
+
return field_dict
|
|
69
|
+
|
|
70
|
+
@classmethod
|
|
71
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any], strict: bool = False) -> T:
|
|
72
|
+
d = src_dict.copy()
|
|
73
|
+
|
|
74
|
+
def get_completion_status() -> Union[Unset, EntryReviewProcessCompletionStatus]:
|
|
75
|
+
completion_status = UNSET
|
|
76
|
+
_completion_status = d.pop("completionStatus")
|
|
77
|
+
if _completion_status is not None and _completion_status is not UNSET:
|
|
78
|
+
try:
|
|
79
|
+
completion_status = EntryReviewProcessCompletionStatus(_completion_status)
|
|
80
|
+
except ValueError:
|
|
81
|
+
completion_status = EntryReviewProcessCompletionStatus.of_unknown(_completion_status)
|
|
82
|
+
|
|
83
|
+
return completion_status
|
|
84
|
+
|
|
85
|
+
try:
|
|
86
|
+
completion_status = get_completion_status()
|
|
87
|
+
except KeyError:
|
|
88
|
+
if strict:
|
|
89
|
+
raise
|
|
90
|
+
completion_status = cast(Union[Unset, EntryReviewProcessCompletionStatus], UNSET)
|
|
91
|
+
|
|
92
|
+
def get_id() -> Union[Unset, str]:
|
|
93
|
+
id = d.pop("id")
|
|
94
|
+
return id
|
|
95
|
+
|
|
96
|
+
try:
|
|
97
|
+
id = get_id()
|
|
98
|
+
except KeyError:
|
|
99
|
+
if strict:
|
|
100
|
+
raise
|
|
101
|
+
id = cast(Union[Unset, str], UNSET)
|
|
102
|
+
|
|
103
|
+
def get_name() -> Union[Unset, str]:
|
|
104
|
+
name = d.pop("name")
|
|
105
|
+
return name
|
|
106
|
+
|
|
107
|
+
try:
|
|
108
|
+
name = get_name()
|
|
109
|
+
except KeyError:
|
|
110
|
+
if strict:
|
|
111
|
+
raise
|
|
112
|
+
name = cast(Union[Unset, str], UNSET)
|
|
113
|
+
|
|
114
|
+
def get_stages() -> Union[Unset, List[EntryReviewProcessStagesItem]]:
|
|
115
|
+
stages = []
|
|
116
|
+
_stages = d.pop("stages")
|
|
117
|
+
for stages_item_data in _stages or []:
|
|
118
|
+
stages_item = EntryReviewProcessStagesItem.from_dict(stages_item_data, strict=False)
|
|
119
|
+
|
|
120
|
+
stages.append(stages_item)
|
|
121
|
+
|
|
122
|
+
return stages
|
|
123
|
+
|
|
124
|
+
try:
|
|
125
|
+
stages = get_stages()
|
|
126
|
+
except KeyError:
|
|
127
|
+
if strict:
|
|
128
|
+
raise
|
|
129
|
+
stages = cast(Union[Unset, List[EntryReviewProcessStagesItem]], UNSET)
|
|
130
|
+
|
|
131
|
+
def get_type() -> Union[Unset, EntryReviewProcessType]:
|
|
132
|
+
type = UNSET
|
|
133
|
+
_type = d.pop("type")
|
|
134
|
+
if _type is not None and _type is not UNSET:
|
|
135
|
+
try:
|
|
136
|
+
type = EntryReviewProcessType(_type)
|
|
137
|
+
except ValueError:
|
|
138
|
+
type = EntryReviewProcessType.of_unknown(_type)
|
|
139
|
+
|
|
140
|
+
return type
|
|
141
|
+
|
|
142
|
+
try:
|
|
143
|
+
type = get_type()
|
|
144
|
+
except KeyError:
|
|
145
|
+
if strict:
|
|
146
|
+
raise
|
|
147
|
+
type = cast(Union[Unset, EntryReviewProcessType], UNSET)
|
|
148
|
+
|
|
149
|
+
entry_review_process = cls(
|
|
150
|
+
completion_status=completion_status,
|
|
151
|
+
id=id,
|
|
152
|
+
name=name,
|
|
153
|
+
stages=stages,
|
|
154
|
+
type=type,
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
entry_review_process.additional_properties = d
|
|
158
|
+
return entry_review_process
|
|
159
|
+
|
|
160
|
+
@property
|
|
161
|
+
def additional_keys(self) -> List[str]:
|
|
162
|
+
return list(self.additional_properties.keys())
|
|
163
|
+
|
|
164
|
+
def __getitem__(self, key: str) -> Any:
|
|
165
|
+
return self.additional_properties[key]
|
|
166
|
+
|
|
167
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
168
|
+
self.additional_properties[key] = value
|
|
169
|
+
|
|
170
|
+
def __delitem__(self, key: str) -> None:
|
|
171
|
+
del self.additional_properties[key]
|
|
172
|
+
|
|
173
|
+
def __contains__(self, key: str) -> bool:
|
|
174
|
+
return key in self.additional_properties
|
|
175
|
+
|
|
176
|
+
def get(self, key, default=None) -> Optional[Any]:
|
|
177
|
+
return self.additional_properties.get(key, default)
|
|
178
|
+
|
|
179
|
+
@property
|
|
180
|
+
def completion_status(self) -> EntryReviewProcessCompletionStatus:
|
|
181
|
+
""" State of the Entry at the end of the Review Process """
|
|
182
|
+
if isinstance(self._completion_status, Unset):
|
|
183
|
+
raise NotPresentError(self, "completion_status")
|
|
184
|
+
return self._completion_status
|
|
185
|
+
|
|
186
|
+
@completion_status.setter
|
|
187
|
+
def completion_status(self, value: EntryReviewProcessCompletionStatus) -> None:
|
|
188
|
+
self._completion_status = value
|
|
189
|
+
|
|
190
|
+
@completion_status.deleter
|
|
191
|
+
def completion_status(self) -> None:
|
|
192
|
+
self._completion_status = UNSET
|
|
193
|
+
|
|
194
|
+
@property
|
|
195
|
+
def id(self) -> str:
|
|
196
|
+
""" ID of the Review Process """
|
|
197
|
+
if isinstance(self._id, Unset):
|
|
198
|
+
raise NotPresentError(self, "id")
|
|
199
|
+
return self._id
|
|
200
|
+
|
|
201
|
+
@id.setter
|
|
202
|
+
def id(self, value: str) -> None:
|
|
203
|
+
self._id = value
|
|
204
|
+
|
|
205
|
+
@id.deleter
|
|
206
|
+
def id(self) -> None:
|
|
207
|
+
self._id = UNSET
|
|
208
|
+
|
|
209
|
+
@property
|
|
210
|
+
def name(self) -> str:
|
|
211
|
+
""" Name of the Review Process """
|
|
212
|
+
if isinstance(self._name, Unset):
|
|
213
|
+
raise NotPresentError(self, "name")
|
|
214
|
+
return self._name
|
|
215
|
+
|
|
216
|
+
@name.setter
|
|
217
|
+
def name(self, value: str) -> None:
|
|
218
|
+
self._name = value
|
|
219
|
+
|
|
220
|
+
@name.deleter
|
|
221
|
+
def name(self) -> None:
|
|
222
|
+
self._name = UNSET
|
|
223
|
+
|
|
224
|
+
@property
|
|
225
|
+
def stages(self) -> List[EntryReviewProcessStagesItem]:
|
|
226
|
+
""" Array of Stages for the Review Process """
|
|
227
|
+
if isinstance(self._stages, Unset):
|
|
228
|
+
raise NotPresentError(self, "stages")
|
|
229
|
+
return self._stages
|
|
230
|
+
|
|
231
|
+
@stages.setter
|
|
232
|
+
def stages(self, value: List[EntryReviewProcessStagesItem]) -> None:
|
|
233
|
+
self._stages = value
|
|
234
|
+
|
|
235
|
+
@stages.deleter
|
|
236
|
+
def stages(self) -> None:
|
|
237
|
+
self._stages = UNSET
|
|
238
|
+
|
|
239
|
+
@property
|
|
240
|
+
def type(self) -> EntryReviewProcessType:
|
|
241
|
+
""" Type of the Review Process """
|
|
242
|
+
if isinstance(self._type, Unset):
|
|
243
|
+
raise NotPresentError(self, "type")
|
|
244
|
+
return self._type
|
|
245
|
+
|
|
246
|
+
@type.setter
|
|
247
|
+
def type(self, value: EntryReviewProcessType) -> None:
|
|
248
|
+
self._type = value
|
|
249
|
+
|
|
250
|
+
@type.deleter
|
|
251
|
+
def type(self) -> None:
|
|
252
|
+
self._type = UNSET
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
from functools import lru_cache
|
|
3
|
+
from typing import cast
|
|
4
|
+
|
|
5
|
+
from ..extensions import Enums
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class EntryReviewProcessCompletionStatus(Enums.KnownString):
|
|
9
|
+
APPROVED = "APPROVED"
|
|
10
|
+
COMPLETED = "COMPLETED"
|
|
11
|
+
ACCEPTED = "ACCEPTED"
|
|
12
|
+
REVIEWED = "REVIEWED"
|
|
13
|
+
WITNESSED = "WITNESSED"
|
|
14
|
+
SELF_REVIEWED = "SELF_REVIEWED"
|
|
15
|
+
|
|
16
|
+
def __str__(self) -> str:
|
|
17
|
+
return str(self.value)
|
|
18
|
+
|
|
19
|
+
@staticmethod
|
|
20
|
+
@lru_cache(maxsize=None)
|
|
21
|
+
def of_unknown(val: str) -> "EntryReviewProcessCompletionStatus":
|
|
22
|
+
if not isinstance(val, str):
|
|
23
|
+
raise ValueError(
|
|
24
|
+
f"Value of EntryReviewProcessCompletionStatus must be a string (encountered: {val})"
|
|
25
|
+
)
|
|
26
|
+
newcls = Enum("EntryReviewProcessCompletionStatus", {"_UNKNOWN": val}, type=Enums.UnknownString) # type: ignore
|
|
27
|
+
return cast(EntryReviewProcessCompletionStatus, getattr(newcls, "_UNKNOWN"))
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
|
+
|
|
3
|
+
import attr
|
|
4
|
+
|
|
5
|
+
from ..extensions import NotPresentError
|
|
6
|
+
from ..models.entry_review_process_stages_item_action_label import EntryReviewProcessStagesItemActionLabel
|
|
7
|
+
from ..models.entry_review_process_stages_item_reviewers_item import EntryReviewProcessStagesItemReviewersItem
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="EntryReviewProcessStagesItem")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@attr.s(auto_attribs=True, repr=False)
|
|
14
|
+
class EntryReviewProcessStagesItem:
|
|
15
|
+
""" """
|
|
16
|
+
|
|
17
|
+
_action_label: Union[Unset, EntryReviewProcessStagesItemActionLabel] = UNSET
|
|
18
|
+
_id: Union[Unset, str] = UNSET
|
|
19
|
+
_name: Union[Unset, str] = UNSET
|
|
20
|
+
_reviewers: Union[Unset, List[EntryReviewProcessStagesItemReviewersItem]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def __repr__(self):
|
|
24
|
+
fields = []
|
|
25
|
+
fields.append("action_label={}".format(repr(self._action_label)))
|
|
26
|
+
fields.append("id={}".format(repr(self._id)))
|
|
27
|
+
fields.append("name={}".format(repr(self._name)))
|
|
28
|
+
fields.append("reviewers={}".format(repr(self._reviewers)))
|
|
29
|
+
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
30
|
+
return "EntryReviewProcessStagesItem({})".format(", ".join(fields))
|
|
31
|
+
|
|
32
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
33
|
+
action_label: Union[Unset, int] = UNSET
|
|
34
|
+
if not isinstance(self._action_label, Unset):
|
|
35
|
+
action_label = self._action_label.value
|
|
36
|
+
|
|
37
|
+
id = self._id
|
|
38
|
+
name = self._name
|
|
39
|
+
reviewers: Union[Unset, List[Any]] = UNSET
|
|
40
|
+
if not isinstance(self._reviewers, Unset):
|
|
41
|
+
reviewers = []
|
|
42
|
+
for reviewers_item_data in self._reviewers:
|
|
43
|
+
reviewers_item = reviewers_item_data.to_dict()
|
|
44
|
+
|
|
45
|
+
reviewers.append(reviewers_item)
|
|
46
|
+
|
|
47
|
+
field_dict: Dict[str, Any] = {}
|
|
48
|
+
field_dict.update(self.additional_properties)
|
|
49
|
+
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
50
|
+
if action_label is not UNSET:
|
|
51
|
+
field_dict["actionLabel"] = action_label
|
|
52
|
+
if id is not UNSET:
|
|
53
|
+
field_dict["id"] = id
|
|
54
|
+
if name is not UNSET:
|
|
55
|
+
field_dict["name"] = name
|
|
56
|
+
if reviewers is not UNSET:
|
|
57
|
+
field_dict["reviewers"] = reviewers
|
|
58
|
+
|
|
59
|
+
return field_dict
|
|
60
|
+
|
|
61
|
+
@classmethod
|
|
62
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any], strict: bool = False) -> T:
|
|
63
|
+
d = src_dict.copy()
|
|
64
|
+
|
|
65
|
+
def get_action_label() -> Union[Unset, EntryReviewProcessStagesItemActionLabel]:
|
|
66
|
+
action_label = UNSET
|
|
67
|
+
_action_label = d.pop("actionLabel")
|
|
68
|
+
if _action_label is not None and _action_label is not UNSET:
|
|
69
|
+
try:
|
|
70
|
+
action_label = EntryReviewProcessStagesItemActionLabel(_action_label)
|
|
71
|
+
except ValueError:
|
|
72
|
+
action_label = EntryReviewProcessStagesItemActionLabel.of_unknown(_action_label)
|
|
73
|
+
|
|
74
|
+
return action_label
|
|
75
|
+
|
|
76
|
+
try:
|
|
77
|
+
action_label = get_action_label()
|
|
78
|
+
except KeyError:
|
|
79
|
+
if strict:
|
|
80
|
+
raise
|
|
81
|
+
action_label = cast(Union[Unset, EntryReviewProcessStagesItemActionLabel], UNSET)
|
|
82
|
+
|
|
83
|
+
def get_id() -> Union[Unset, str]:
|
|
84
|
+
id = d.pop("id")
|
|
85
|
+
return id
|
|
86
|
+
|
|
87
|
+
try:
|
|
88
|
+
id = get_id()
|
|
89
|
+
except KeyError:
|
|
90
|
+
if strict:
|
|
91
|
+
raise
|
|
92
|
+
id = cast(Union[Unset, str], UNSET)
|
|
93
|
+
|
|
94
|
+
def get_name() -> Union[Unset, str]:
|
|
95
|
+
name = d.pop("name")
|
|
96
|
+
return name
|
|
97
|
+
|
|
98
|
+
try:
|
|
99
|
+
name = get_name()
|
|
100
|
+
except KeyError:
|
|
101
|
+
if strict:
|
|
102
|
+
raise
|
|
103
|
+
name = cast(Union[Unset, str], UNSET)
|
|
104
|
+
|
|
105
|
+
def get_reviewers() -> Union[Unset, List[EntryReviewProcessStagesItemReviewersItem]]:
|
|
106
|
+
reviewers = []
|
|
107
|
+
_reviewers = d.pop("reviewers")
|
|
108
|
+
for reviewers_item_data in _reviewers or []:
|
|
109
|
+
reviewers_item = EntryReviewProcessStagesItemReviewersItem.from_dict(
|
|
110
|
+
reviewers_item_data, strict=False
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
reviewers.append(reviewers_item)
|
|
114
|
+
|
|
115
|
+
return reviewers
|
|
116
|
+
|
|
117
|
+
try:
|
|
118
|
+
reviewers = get_reviewers()
|
|
119
|
+
except KeyError:
|
|
120
|
+
if strict:
|
|
121
|
+
raise
|
|
122
|
+
reviewers = cast(Union[Unset, List[EntryReviewProcessStagesItemReviewersItem]], UNSET)
|
|
123
|
+
|
|
124
|
+
entry_review_process_stages_item = cls(
|
|
125
|
+
action_label=action_label,
|
|
126
|
+
id=id,
|
|
127
|
+
name=name,
|
|
128
|
+
reviewers=reviewers,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
entry_review_process_stages_item.additional_properties = d
|
|
132
|
+
return entry_review_process_stages_item
|
|
133
|
+
|
|
134
|
+
@property
|
|
135
|
+
def additional_keys(self) -> List[str]:
|
|
136
|
+
return list(self.additional_properties.keys())
|
|
137
|
+
|
|
138
|
+
def __getitem__(self, key: str) -> Any:
|
|
139
|
+
return self.additional_properties[key]
|
|
140
|
+
|
|
141
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
142
|
+
self.additional_properties[key] = value
|
|
143
|
+
|
|
144
|
+
def __delitem__(self, key: str) -> None:
|
|
145
|
+
del self.additional_properties[key]
|
|
146
|
+
|
|
147
|
+
def __contains__(self, key: str) -> bool:
|
|
148
|
+
return key in self.additional_properties
|
|
149
|
+
|
|
150
|
+
def get(self, key, default=None) -> Optional[Any]:
|
|
151
|
+
return self.additional_properties.get(key, default)
|
|
152
|
+
|
|
153
|
+
@property
|
|
154
|
+
def action_label(self) -> EntryReviewProcessStagesItemActionLabel:
|
|
155
|
+
""" Action reviewer is doing during the review """
|
|
156
|
+
if isinstance(self._action_label, Unset):
|
|
157
|
+
raise NotPresentError(self, "action_label")
|
|
158
|
+
return self._action_label
|
|
159
|
+
|
|
160
|
+
@action_label.setter
|
|
161
|
+
def action_label(self, value: EntryReviewProcessStagesItemActionLabel) -> None:
|
|
162
|
+
self._action_label = value
|
|
163
|
+
|
|
164
|
+
@action_label.deleter
|
|
165
|
+
def action_label(self) -> None:
|
|
166
|
+
self._action_label = UNSET
|
|
167
|
+
|
|
168
|
+
@property
|
|
169
|
+
def id(self) -> str:
|
|
170
|
+
""" ID of the Review Stage """
|
|
171
|
+
if isinstance(self._id, Unset):
|
|
172
|
+
raise NotPresentError(self, "id")
|
|
173
|
+
return self._id
|
|
174
|
+
|
|
175
|
+
@id.setter
|
|
176
|
+
def id(self, value: str) -> None:
|
|
177
|
+
self._id = value
|
|
178
|
+
|
|
179
|
+
@id.deleter
|
|
180
|
+
def id(self) -> None:
|
|
181
|
+
self._id = UNSET
|
|
182
|
+
|
|
183
|
+
@property
|
|
184
|
+
def name(self) -> str:
|
|
185
|
+
""" Name of the Review Stage """
|
|
186
|
+
if isinstance(self._name, Unset):
|
|
187
|
+
raise NotPresentError(self, "name")
|
|
188
|
+
return self._name
|
|
189
|
+
|
|
190
|
+
@name.setter
|
|
191
|
+
def name(self, value: str) -> None:
|
|
192
|
+
self._name = value
|
|
193
|
+
|
|
194
|
+
@name.deleter
|
|
195
|
+
def name(self) -> None:
|
|
196
|
+
self._name = UNSET
|
|
197
|
+
|
|
198
|
+
@property
|
|
199
|
+
def reviewers(self) -> List[EntryReviewProcessStagesItemReviewersItem]:
|
|
200
|
+
""" Reviewers for the Review Stage """
|
|
201
|
+
if isinstance(self._reviewers, Unset):
|
|
202
|
+
raise NotPresentError(self, "reviewers")
|
|
203
|
+
return self._reviewers
|
|
204
|
+
|
|
205
|
+
@reviewers.setter
|
|
206
|
+
def reviewers(self, value: List[EntryReviewProcessStagesItemReviewersItem]) -> None:
|
|
207
|
+
self._reviewers = value
|
|
208
|
+
|
|
209
|
+
@reviewers.deleter
|
|
210
|
+
def reviewers(self) -> None:
|
|
211
|
+
self._reviewers = UNSET
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
from functools import lru_cache
|
|
3
|
+
from typing import cast
|
|
4
|
+
|
|
5
|
+
from ..extensions import Enums
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class EntryReviewProcessStagesItemActionLabel(Enums.KnownString):
|
|
9
|
+
APPROVE = "APPROVE"
|
|
10
|
+
COMPLETE = "COMPLETE"
|
|
11
|
+
ACCEPT = "ACCEPT"
|
|
12
|
+
REVIEW = "REVIEW"
|
|
13
|
+
WITNESS = "WITNESS"
|
|
14
|
+
SELF_REVIEW = "SELF_REVIEW"
|
|
15
|
+
|
|
16
|
+
def __str__(self) -> str:
|
|
17
|
+
return str(self.value)
|
|
18
|
+
|
|
19
|
+
@staticmethod
|
|
20
|
+
@lru_cache(maxsize=None)
|
|
21
|
+
def of_unknown(val: str) -> "EntryReviewProcessStagesItemActionLabel":
|
|
22
|
+
if not isinstance(val, str):
|
|
23
|
+
raise ValueError(
|
|
24
|
+
f"Value of EntryReviewProcessStagesItemActionLabel must be a string (encountered: {val})"
|
|
25
|
+
)
|
|
26
|
+
newcls = Enum("EntryReviewProcessStagesItemActionLabel", {"_UNKNOWN": val}, type=Enums.UnknownString) # type: ignore
|
|
27
|
+
return cast(EntryReviewProcessStagesItemActionLabel, getattr(newcls, "_UNKNOWN"))
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
|
+
|
|
3
|
+
import attr
|
|
4
|
+
|
|
5
|
+
from ..extensions import NotPresentError
|
|
6
|
+
from ..models.entry_review_process_stages_item_reviewers_item_status import (
|
|
7
|
+
EntryReviewProcessStagesItemReviewersItemStatus,
|
|
8
|
+
)
|
|
9
|
+
from ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="EntryReviewProcessStagesItemReviewersItem")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@attr.s(auto_attribs=True, repr=False)
|
|
15
|
+
class EntryReviewProcessStagesItemReviewersItem:
|
|
16
|
+
""" """
|
|
17
|
+
|
|
18
|
+
_status: Union[Unset, EntryReviewProcessStagesItemReviewersItemStatus] = UNSET
|
|
19
|
+
_handle: Union[Unset, str] = UNSET
|
|
20
|
+
_id: Union[Unset, str] = UNSET
|
|
21
|
+
_name: Union[Unset, str] = UNSET
|
|
22
|
+
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def __repr__(self):
|
|
25
|
+
fields = []
|
|
26
|
+
fields.append("status={}".format(repr(self._status)))
|
|
27
|
+
fields.append("handle={}".format(repr(self._handle)))
|
|
28
|
+
fields.append("id={}".format(repr(self._id)))
|
|
29
|
+
fields.append("name={}".format(repr(self._name)))
|
|
30
|
+
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
31
|
+
return "EntryReviewProcessStagesItemReviewersItem({})".format(", ".join(fields))
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
34
|
+
status: Union[Unset, int] = UNSET
|
|
35
|
+
if not isinstance(self._status, Unset):
|
|
36
|
+
status = self._status.value
|
|
37
|
+
|
|
38
|
+
handle = self._handle
|
|
39
|
+
id = self._id
|
|
40
|
+
name = self._name
|
|
41
|
+
|
|
42
|
+
field_dict: Dict[str, Any] = {}
|
|
43
|
+
field_dict.update(self.additional_properties)
|
|
44
|
+
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
45
|
+
if status is not UNSET:
|
|
46
|
+
field_dict["status"] = status
|
|
47
|
+
if handle is not UNSET:
|
|
48
|
+
field_dict["handle"] = handle
|
|
49
|
+
if id is not UNSET:
|
|
50
|
+
field_dict["id"] = id
|
|
51
|
+
if name is not UNSET:
|
|
52
|
+
field_dict["name"] = name
|
|
53
|
+
|
|
54
|
+
return field_dict
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any], strict: bool = False) -> T:
|
|
58
|
+
d = src_dict.copy()
|
|
59
|
+
|
|
60
|
+
def get_status() -> Union[Unset, EntryReviewProcessStagesItemReviewersItemStatus]:
|
|
61
|
+
status = UNSET
|
|
62
|
+
_status = d.pop("status")
|
|
63
|
+
if _status is not None and _status is not UNSET:
|
|
64
|
+
try:
|
|
65
|
+
status = EntryReviewProcessStagesItemReviewersItemStatus(_status)
|
|
66
|
+
except ValueError:
|
|
67
|
+
status = EntryReviewProcessStagesItemReviewersItemStatus.of_unknown(_status)
|
|
68
|
+
|
|
69
|
+
return status
|
|
70
|
+
|
|
71
|
+
try:
|
|
72
|
+
status = get_status()
|
|
73
|
+
except KeyError:
|
|
74
|
+
if strict:
|
|
75
|
+
raise
|
|
76
|
+
status = cast(Union[Unset, EntryReviewProcessStagesItemReviewersItemStatus], UNSET)
|
|
77
|
+
|
|
78
|
+
def get_handle() -> Union[Unset, str]:
|
|
79
|
+
handle = d.pop("handle")
|
|
80
|
+
return handle
|
|
81
|
+
|
|
82
|
+
try:
|
|
83
|
+
handle = get_handle()
|
|
84
|
+
except KeyError:
|
|
85
|
+
if strict:
|
|
86
|
+
raise
|
|
87
|
+
handle = cast(Union[Unset, str], UNSET)
|
|
88
|
+
|
|
89
|
+
def get_id() -> Union[Unset, str]:
|
|
90
|
+
id = d.pop("id")
|
|
91
|
+
return id
|
|
92
|
+
|
|
93
|
+
try:
|
|
94
|
+
id = get_id()
|
|
95
|
+
except KeyError:
|
|
96
|
+
if strict:
|
|
97
|
+
raise
|
|
98
|
+
id = cast(Union[Unset, str], UNSET)
|
|
99
|
+
|
|
100
|
+
def get_name() -> Union[Unset, str]:
|
|
101
|
+
name = d.pop("name")
|
|
102
|
+
return name
|
|
103
|
+
|
|
104
|
+
try:
|
|
105
|
+
name = get_name()
|
|
106
|
+
except KeyError:
|
|
107
|
+
if strict:
|
|
108
|
+
raise
|
|
109
|
+
name = cast(Union[Unset, str], UNSET)
|
|
110
|
+
|
|
111
|
+
entry_review_process_stages_item_reviewers_item = cls(
|
|
112
|
+
status=status,
|
|
113
|
+
handle=handle,
|
|
114
|
+
id=id,
|
|
115
|
+
name=name,
|
|
116
|
+
)
|
|
117
|
+
|
|
118
|
+
entry_review_process_stages_item_reviewers_item.additional_properties = d
|
|
119
|
+
return entry_review_process_stages_item_reviewers_item
|
|
120
|
+
|
|
121
|
+
@property
|
|
122
|
+
def additional_keys(self) -> List[str]:
|
|
123
|
+
return list(self.additional_properties.keys())
|
|
124
|
+
|
|
125
|
+
def __getitem__(self, key: str) -> Any:
|
|
126
|
+
return self.additional_properties[key]
|
|
127
|
+
|
|
128
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
129
|
+
self.additional_properties[key] = value
|
|
130
|
+
|
|
131
|
+
def __delitem__(self, key: str) -> None:
|
|
132
|
+
del self.additional_properties[key]
|
|
133
|
+
|
|
134
|
+
def __contains__(self, key: str) -> bool:
|
|
135
|
+
return key in self.additional_properties
|
|
136
|
+
|
|
137
|
+
def get(self, key, default=None) -> Optional[Any]:
|
|
138
|
+
return self.additional_properties.get(key, default)
|
|
139
|
+
|
|
140
|
+
@property
|
|
141
|
+
def status(self) -> EntryReviewProcessStagesItemReviewersItemStatus:
|
|
142
|
+
""" Status of the Reviewer """
|
|
143
|
+
if isinstance(self._status, Unset):
|
|
144
|
+
raise NotPresentError(self, "status")
|
|
145
|
+
return self._status
|
|
146
|
+
|
|
147
|
+
@status.setter
|
|
148
|
+
def status(self, value: EntryReviewProcessStagesItemReviewersItemStatus) -> None:
|
|
149
|
+
self._status = value
|
|
150
|
+
|
|
151
|
+
@status.deleter
|
|
152
|
+
def status(self) -> None:
|
|
153
|
+
self._status = UNSET
|
|
154
|
+
|
|
155
|
+
@property
|
|
156
|
+
def handle(self) -> str:
|
|
157
|
+
if isinstance(self._handle, Unset):
|
|
158
|
+
raise NotPresentError(self, "handle")
|
|
159
|
+
return self._handle
|
|
160
|
+
|
|
161
|
+
@handle.setter
|
|
162
|
+
def handle(self, value: str) -> None:
|
|
163
|
+
self._handle = value
|
|
164
|
+
|
|
165
|
+
@handle.deleter
|
|
166
|
+
def handle(self) -> None:
|
|
167
|
+
self._handle = UNSET
|
|
168
|
+
|
|
169
|
+
@property
|
|
170
|
+
def id(self) -> str:
|
|
171
|
+
if isinstance(self._id, Unset):
|
|
172
|
+
raise NotPresentError(self, "id")
|
|
173
|
+
return self._id
|
|
174
|
+
|
|
175
|
+
@id.setter
|
|
176
|
+
def id(self, value: str) -> None:
|
|
177
|
+
self._id = value
|
|
178
|
+
|
|
179
|
+
@id.deleter
|
|
180
|
+
def id(self) -> None:
|
|
181
|
+
self._id = UNSET
|
|
182
|
+
|
|
183
|
+
@property
|
|
184
|
+
def name(self) -> str:
|
|
185
|
+
if isinstance(self._name, Unset):
|
|
186
|
+
raise NotPresentError(self, "name")
|
|
187
|
+
return self._name
|
|
188
|
+
|
|
189
|
+
@name.setter
|
|
190
|
+
def name(self, value: str) -> None:
|
|
191
|
+
self._name = value
|
|
192
|
+
|
|
193
|
+
@name.deleter
|
|
194
|
+
def name(self) -> None:
|
|
195
|
+
self._name = UNSET
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
from functools import lru_cache
|
|
3
|
+
from typing import cast
|
|
4
|
+
|
|
5
|
+
from ..extensions import Enums
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class EntryReviewProcessStagesItemReviewersItemStatus(Enums.KnownString):
|
|
9
|
+
BLOCKED = "BLOCKED"
|
|
10
|
+
PENDING = "PENDING"
|
|
11
|
+
FINISHED = "FINISHED"
|
|
12
|
+
REJECTED = "REJECTED"
|
|
13
|
+
|
|
14
|
+
def __str__(self) -> str:
|
|
15
|
+
return str(self.value)
|
|
16
|
+
|
|
17
|
+
@staticmethod
|
|
18
|
+
@lru_cache(maxsize=None)
|
|
19
|
+
def of_unknown(val: str) -> "EntryReviewProcessStagesItemReviewersItemStatus":
|
|
20
|
+
if not isinstance(val, str):
|
|
21
|
+
raise ValueError(
|
|
22
|
+
f"Value of EntryReviewProcessStagesItemReviewersItemStatus must be a string (encountered: {val})"
|
|
23
|
+
)
|
|
24
|
+
newcls = Enum("EntryReviewProcessStagesItemReviewersItemStatus", {"_UNKNOWN": val}, type=Enums.UnknownString) # type: ignore
|
|
25
|
+
return cast(EntryReviewProcessStagesItemReviewersItemStatus, getattr(newcls, "_UNKNOWN"))
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
from functools import lru_cache
|
|
3
|
+
from typing import cast
|
|
4
|
+
|
|
5
|
+
from ..extensions import Enums
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class EntryReviewProcessType(Enums.KnownString):
|
|
9
|
+
SELF_REVIEW = "SELF_REVIEW"
|
|
10
|
+
SEQUENTIAL = "SEQUENTIAL"
|
|
11
|
+
PARALLEL = "PARALLEL"
|
|
12
|
+
|
|
13
|
+
def __str__(self) -> str:
|
|
14
|
+
return str(self.value)
|
|
15
|
+
|
|
16
|
+
@staticmethod
|
|
17
|
+
@lru_cache(maxsize=None)
|
|
18
|
+
def of_unknown(val: str) -> "EntryReviewProcessType":
|
|
19
|
+
if not isinstance(val, str):
|
|
20
|
+
raise ValueError(f"Value of EntryReviewProcessType must be a string (encountered: {val})")
|
|
21
|
+
newcls = Enum("EntryReviewProcessType", {"_UNKNOWN": val}, type=Enums.UnknownString) # type: ignore
|
|
22
|
+
return cast(EntryReviewProcessType, getattr(newcls, "_UNKNOWN"))
|
|
@@ -3,6 +3,7 @@ from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
|
3
3
|
import attr
|
|
4
4
|
|
|
5
5
|
from ..extensions import NotPresentError
|
|
6
|
+
from ..models.entry_review_process import EntryReviewProcess
|
|
6
7
|
from ..models.review_change import ReviewChange
|
|
7
8
|
from ..models.worksheet_review_changes_review_record_status import WorksheetReviewChangesReviewRecordStatus
|
|
8
9
|
from ..types import UNSET, Unset
|
|
@@ -16,6 +17,7 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
16
17
|
|
|
17
18
|
_comment: Union[Unset, str] = UNSET
|
|
18
19
|
_review_changes: Union[Unset, List[ReviewChange]] = UNSET
|
|
20
|
+
_review_processes: Union[Unset, None, List[EntryReviewProcess]] = UNSET
|
|
19
21
|
_status: Union[Unset, WorksheetReviewChangesReviewRecordStatus] = UNSET
|
|
20
22
|
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
21
23
|
|
|
@@ -23,6 +25,7 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
23
25
|
fields = []
|
|
24
26
|
fields.append("comment={}".format(repr(self._comment)))
|
|
25
27
|
fields.append("review_changes={}".format(repr(self._review_changes)))
|
|
28
|
+
fields.append("review_processes={}".format(repr(self._review_processes)))
|
|
26
29
|
fields.append("status={}".format(repr(self._status)))
|
|
27
30
|
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
28
31
|
return "WorksheetReviewChangesReviewRecord({})".format(", ".join(fields))
|
|
@@ -37,6 +40,17 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
37
40
|
|
|
38
41
|
review_changes.append(review_changes_item)
|
|
39
42
|
|
|
43
|
+
review_processes: Union[Unset, None, List[Any]] = UNSET
|
|
44
|
+
if not isinstance(self._review_processes, Unset):
|
|
45
|
+
if self._review_processes is None:
|
|
46
|
+
review_processes = None
|
|
47
|
+
else:
|
|
48
|
+
review_processes = []
|
|
49
|
+
for review_processes_item_data in self._review_processes:
|
|
50
|
+
review_processes_item = review_processes_item_data.to_dict()
|
|
51
|
+
|
|
52
|
+
review_processes.append(review_processes_item)
|
|
53
|
+
|
|
40
54
|
status: Union[Unset, int] = UNSET
|
|
41
55
|
if not isinstance(self._status, Unset):
|
|
42
56
|
status = self._status.value
|
|
@@ -48,6 +62,8 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
48
62
|
field_dict["comment"] = comment
|
|
49
63
|
if review_changes is not UNSET:
|
|
50
64
|
field_dict["reviewChanges"] = review_changes
|
|
65
|
+
if review_processes is not UNSET:
|
|
66
|
+
field_dict["reviewProcesses"] = review_processes
|
|
51
67
|
if status is not UNSET:
|
|
52
68
|
field_dict["status"] = status
|
|
53
69
|
|
|
@@ -85,6 +101,23 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
85
101
|
raise
|
|
86
102
|
review_changes = cast(Union[Unset, List[ReviewChange]], UNSET)
|
|
87
103
|
|
|
104
|
+
def get_review_processes() -> Union[Unset, None, List[EntryReviewProcess]]:
|
|
105
|
+
review_processes = []
|
|
106
|
+
_review_processes = d.pop("reviewProcesses")
|
|
107
|
+
for review_processes_item_data in _review_processes or []:
|
|
108
|
+
review_processes_item = EntryReviewProcess.from_dict(review_processes_item_data, strict=False)
|
|
109
|
+
|
|
110
|
+
review_processes.append(review_processes_item)
|
|
111
|
+
|
|
112
|
+
return review_processes
|
|
113
|
+
|
|
114
|
+
try:
|
|
115
|
+
review_processes = get_review_processes()
|
|
116
|
+
except KeyError:
|
|
117
|
+
if strict:
|
|
118
|
+
raise
|
|
119
|
+
review_processes = cast(Union[Unset, None, List[EntryReviewProcess]], UNSET)
|
|
120
|
+
|
|
88
121
|
def get_status() -> Union[Unset, WorksheetReviewChangesReviewRecordStatus]:
|
|
89
122
|
status = UNSET
|
|
90
123
|
_status = d.pop("status")
|
|
@@ -106,6 +139,7 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
106
139
|
worksheet_review_changes_review_record = cls(
|
|
107
140
|
comment=comment,
|
|
108
141
|
review_changes=review_changes,
|
|
142
|
+
review_processes=review_processes,
|
|
109
143
|
status=status,
|
|
110
144
|
)
|
|
111
145
|
|
|
@@ -161,6 +195,21 @@ class WorksheetReviewChangesReviewRecord:
|
|
|
161
195
|
def review_changes(self) -> None:
|
|
162
196
|
self._review_changes = UNSET
|
|
163
197
|
|
|
198
|
+
@property
|
|
199
|
+
def review_processes(self) -> Optional[List[EntryReviewProcess]]:
|
|
200
|
+
""" Review Processes associated with the Worksheet """
|
|
201
|
+
if isinstance(self._review_processes, Unset):
|
|
202
|
+
raise NotPresentError(self, "review_processes")
|
|
203
|
+
return self._review_processes
|
|
204
|
+
|
|
205
|
+
@review_processes.setter
|
|
206
|
+
def review_processes(self, value: Optional[List[EntryReviewProcess]]) -> None:
|
|
207
|
+
self._review_processes = value
|
|
208
|
+
|
|
209
|
+
@review_processes.deleter
|
|
210
|
+
def review_processes(self) -> None:
|
|
211
|
+
self._review_processes = UNSET
|
|
212
|
+
|
|
164
213
|
@property
|
|
165
214
|
def status(self) -> WorksheetReviewChangesReviewRecordStatus:
|
|
166
215
|
""" Review Status of the worksheet """
|
|
@@ -5046,6 +5046,12 @@ components:
|
|
|
5046
5046
|
items:
|
|
5047
5047
|
$ref: '#/components/schemas/ReviewChange'
|
|
5048
5048
|
type: array
|
|
5049
|
+
reviewProcesses:
|
|
5050
|
+
description: Review Processes associated with the Entry
|
|
5051
|
+
items:
|
|
5052
|
+
$ref: '#/components/schemas/EntryReviewProcess'
|
|
5053
|
+
nullable: true
|
|
5054
|
+
type: array
|
|
5049
5055
|
status:
|
|
5050
5056
|
description: Review Status of the entry
|
|
5051
5057
|
enum:
|
|
@@ -5185,6 +5191,70 @@ components:
|
|
|
5185
5191
|
- $ref: '#/components/schemas/ChartNotePart'
|
|
5186
5192
|
- $ref: '#/components/schemas/AppCanvasNotePart'
|
|
5187
5193
|
type: object
|
|
5194
|
+
EntryReviewProcess:
|
|
5195
|
+
properties:
|
|
5196
|
+
completionStatus:
|
|
5197
|
+
description: State of the Entry at the end of the Review Process
|
|
5198
|
+
enum:
|
|
5199
|
+
- APPROVED
|
|
5200
|
+
- COMPLETED
|
|
5201
|
+
- ACCEPTED
|
|
5202
|
+
- REVIEWED
|
|
5203
|
+
- WITNESSED
|
|
5204
|
+
- SELF_REVIEWED
|
|
5205
|
+
type: string
|
|
5206
|
+
id:
|
|
5207
|
+
description: ID of the Review Process
|
|
5208
|
+
type: string
|
|
5209
|
+
name:
|
|
5210
|
+
description: Name of the Review Process
|
|
5211
|
+
type: string
|
|
5212
|
+
stages:
|
|
5213
|
+
description: Array of Stages for the Review Process
|
|
5214
|
+
items:
|
|
5215
|
+
properties:
|
|
5216
|
+
actionLabel:
|
|
5217
|
+
description: Action reviewer is doing during the review
|
|
5218
|
+
enum:
|
|
5219
|
+
- APPROVE
|
|
5220
|
+
- COMPLETE
|
|
5221
|
+
- ACCEPT
|
|
5222
|
+
- REVIEW
|
|
5223
|
+
- WITNESS
|
|
5224
|
+
- SELF_REVIEW
|
|
5225
|
+
type: string
|
|
5226
|
+
id:
|
|
5227
|
+
description: ID of the Review Stage
|
|
5228
|
+
type: string
|
|
5229
|
+
name:
|
|
5230
|
+
description: Name of the Review Stage
|
|
5231
|
+
type: string
|
|
5232
|
+
reviewers:
|
|
5233
|
+
description: Reviewers for the Review Stage
|
|
5234
|
+
items:
|
|
5235
|
+
allOf:
|
|
5236
|
+
- $ref: '#/components/schemas/PartySummary'
|
|
5237
|
+
- properties:
|
|
5238
|
+
status:
|
|
5239
|
+
description: Status of the Reviewer
|
|
5240
|
+
enum:
|
|
5241
|
+
- BLOCKED
|
|
5242
|
+
- PENDING
|
|
5243
|
+
- FINISHED
|
|
5244
|
+
- REJECTED
|
|
5245
|
+
type: string
|
|
5246
|
+
type: object
|
|
5247
|
+
type: array
|
|
5248
|
+
type: object
|
|
5249
|
+
type: array
|
|
5250
|
+
type:
|
|
5251
|
+
description: Type of the Review Process
|
|
5252
|
+
enum:
|
|
5253
|
+
- SELF_REVIEW
|
|
5254
|
+
- SEQUENTIAL
|
|
5255
|
+
- PARALLEL
|
|
5256
|
+
type: string
|
|
5257
|
+
type: object
|
|
5188
5258
|
EntrySchema:
|
|
5189
5259
|
description: Entry schema
|
|
5190
5260
|
properties:
|
|
@@ -7811,6 +7881,12 @@ components:
|
|
|
7811
7881
|
items:
|
|
7812
7882
|
$ref: '#/components/schemas/ReviewChange'
|
|
7813
7883
|
type: array
|
|
7884
|
+
reviewProcesses:
|
|
7885
|
+
description: Review Processes associated with the Worksheet
|
|
7886
|
+
items:
|
|
7887
|
+
$ref: '#/components/schemas/EntryReviewProcess'
|
|
7888
|
+
nullable: true
|
|
7889
|
+
type: array
|
|
7814
7890
|
status:
|
|
7815
7891
|
description: Review Status of the worksheet
|
|
7816
7892
|
enum:
|
|
@@ -2343,13 +2343,20 @@ benchling_api_client/v2/beta/models/entity_worklist_items_list.py,sha256=R_3RP7w
|
|
|
2343
2343
|
benchling_api_client/v2/beta/models/entity_worklist_items_list_type.py,sha256=Ihceu0Zjic5suYDEeKwKg5ttpXxnMrQEAdyAAgdUAXE,704
|
|
2344
2344
|
benchling_api_client/v2/beta/models/entry.py,sha256=Z5FS0JWfZPvUT-B3h1F-yWM6tyk9PXoIGSfwXN2pRsI,24857
|
|
2345
2345
|
benchling_api_client/v2/beta/models/entry_beta.py,sha256=_ua70XEjvNb_c0VDT3xTDOitTrx_8nYbs2-fZnd8CRY,24917
|
|
2346
|
-
benchling_api_client/v2/beta/models/entry_beta_review_record.py,sha256=
|
|
2346
|
+
benchling_api_client/v2/beta/models/entry_beta_review_record.py,sha256=2XneX28rIZXmqKYBxMkhGbIWYzXmSdPM-rmShRglfxw,8097
|
|
2347
2347
|
benchling_api_client/v2/beta/models/entry_beta_review_record_status.py,sha256=W0WVVurVsa5OOoTttkrRpL9qqmQXu4uReN80Hwwtkyc,998
|
|
2348
2348
|
benchling_api_client/v2/beta/models/entry_by_id.py,sha256=04gB63nxjElUWX7BT2rFZyGVwzQ8VrEdnNcGx90P16A,3612
|
|
2349
2349
|
benchling_api_client/v2/beta/models/entry_day.py,sha256=VHSjOoQw6sDNTvNqg031Ztm-Xq9391hmQWfX8LXbkxw,24013
|
|
2350
2350
|
benchling_api_client/v2/beta/models/entry_link.py,sha256=teGLDCAPMIUcNEbQj2dbUfQcUFwvMBAJiK63vGrDc4M,5491
|
|
2351
2351
|
benchling_api_client/v2/beta/models/entry_link_type.py,sha256=vnFWrven1Lzf2Xf2Jd1-65pfPOqcEwwMS_qjne6XHSs,1086
|
|
2352
2352
|
benchling_api_client/v2/beta/models/entry_note_part.py,sha256=DAqEJWsC1XVzNP7B5Dpu7vXcrrjEClhU4mrQNyGMkMI,1579
|
|
2353
|
+
benchling_api_client/v2/beta/models/entry_review_process.py,sha256=3pUFe93TnfhjxNdJce0DJgvPqiNqzpR-jPpP4YcQc2k,8292
|
|
2354
|
+
benchling_api_client/v2/beta/models/entry_review_process_completion_status.py,sha256=Af1_ViLOQeAVb0ZAtXFIgU-0GkbhTUokQ6VcIhgjDvI,911
|
|
2355
|
+
benchling_api_client/v2/beta/models/entry_review_process_stages_item.py,sha256=HGlpPrVro1EITFfAZXEdUpbbcrKl-hmuIxl7xtfaVAg,7105
|
|
2356
|
+
benchling_api_client/v2/beta/models/entry_review_process_stages_item_action_label.py,sha256=dnej89HqHv-r5hkxiS4W7txQaPZ264QCjcLqs0fTyLw,916
|
|
2357
|
+
benchling_api_client/v2/beta/models/entry_review_process_stages_item_reviewers_item.py,sha256=Bk-y32F7xZGzI9NyPqj4WNzc6l3uwFFyUlH9ziEqpwE,5942
|
|
2358
|
+
benchling_api_client/v2/beta/models/entry_review_process_stages_item_reviewers_item_status.py,sha256=Rc6u-QtB4uU270Lt6DdHX_NTvtlJFWUu1K2J1NgMDQ0,906
|
|
2359
|
+
benchling_api_client/v2/beta/models/entry_review_process_type.py,sha256=XazpF_uHQfOD35PgvgZaXj7wdUqk0P8h6ytL75j_7ok,739
|
|
2353
2360
|
benchling_api_client/v2/beta/models/entry_review_record.py,sha256=xUuJMnJzXCQQXcvJWWooL3HpQdIycslAu3Kli_3Ssu0,4105
|
|
2354
2361
|
benchling_api_client/v2/beta/models/entry_review_record_status.py,sha256=nUrlSL_NQL8e-9B-0ibCFOjZWcSz3_cqLhVcCkX_Oow,978
|
|
2355
2362
|
benchling_api_client/v2/beta/models/entry_schema.py,sha256=gAf50BRfEd829cum77RHIk02MZ96vaBWmrKCQDSgfMI,4812
|
|
@@ -2540,9 +2547,9 @@ benchling_api_client/v2/beta/models/worklist_update.py,sha256=kR8yNfIgKPOpTTxe2k
|
|
|
2540
2547
|
benchling_api_client/v2/beta/models/worklists_paginated_list.py,sha256=80I-eXYAiIRVjbDPsmJqWJl3RU8leXUL5dB5RY12V-A,3358
|
|
2541
2548
|
benchling_api_client/v2/beta/models/worksheet_review_changes.py,sha256=0MmkysLeA0PiIiL8C-4mbAi7-4C1r1HNF_hYxOBH5fE,11863
|
|
2542
2549
|
benchling_api_client/v2/beta/models/worksheet_review_changes_by_id.py,sha256=UgTNMq3Q_ZcIumMhd8irgQAZjXCFFQeE33b_WiiYgDU,3344
|
|
2543
|
-
benchling_api_client/v2/beta/models/worksheet_review_changes_review_record.py,sha256=
|
|
2550
|
+
benchling_api_client/v2/beta/models/worksheet_review_changes_review_record.py,sha256=vNRKUQenUJu4yFa847RxaOn4J1BW8PulnioTFKrMexs,8308
|
|
2544
2551
|
benchling_api_client/v2/beta/models/worksheet_review_changes_review_record_status.py,sha256=9VKJkUCQCFCdkJnV8-JLRQObhO0cTJf2ZeZnBIEyPFA,1093
|
|
2545
|
-
benchling_api_client/v2/beta/openapi.yaml,sha256=
|
|
2552
|
+
benchling_api_client/v2/beta/openapi.yaml,sha256=BwgFmaHEqXX4Vz68aOg3hhVjoFbFlMh2ri1B0f1Tp08,251857
|
|
2546
2553
|
benchling_api_client/v2/beta/types.py,sha256=nCpxtn44qMDpuS_jcdbjhJlZFvRrXEUEVEDN471GrH8,244
|
|
2547
2554
|
benchling_api_client/v2/client.py,sha256=-6Yzio8p22BaTJ_BEInEoUzmh4afxXlwceNFtn1vBLc,2241
|
|
2548
2555
|
benchling_api_client/v2/extensions.py,sha256=4TSjnmlUquvmBu8up1vPXutEInf-oXDSZ58ciyBW7_E,1996
|
|
@@ -4547,7 +4554,7 @@ benchling_api_client/webhooks/v0/stable/models/workflow_task_updated_status_webh
|
|
|
4547
4554
|
benchling_api_client/webhooks/v0/stable/openapi.yaml,sha256=Gvlve51cLq7Ws8ll_8Nx-6SGXuYEb8TWCoWzfg_YGnA,39400
|
|
4548
4555
|
benchling_api_client/webhooks/v0/stable/types.py,sha256=nCpxtn44qMDpuS_jcdbjhJlZFvRrXEUEVEDN471GrH8,244
|
|
4549
4556
|
benchling_api_client/webhooks/v0/types.py,sha256=SkWwIlK-UbP10AeiC1VeIQ_1HwALN65zpQyXPc0qDFs,1169
|
|
4550
|
-
benchling_api_client-2.0.
|
|
4551
|
-
benchling_api_client-2.0.
|
|
4552
|
-
benchling_api_client-2.0.
|
|
4553
|
-
benchling_api_client-2.0.
|
|
4557
|
+
benchling_api_client-2.0.419.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
4558
|
+
benchling_api_client-2.0.419.dist-info/METADATA,sha256=ud79u69aaD8kBmvql8GwDNwLOfjrE66PuwGul5WDSSY,1253
|
|
4559
|
+
benchling_api_client-2.0.419.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
|
4560
|
+
benchling_api_client-2.0.419.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|