benchling-api-client 2.0.417__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/models/back_translate.py +85 -1
- benchling_api_client/models/back_translate_gc_content_range.py +98 -0
- benchling_api_client/models/back_translate_method.py +21 -0
- benchling_api_client/models/optimize_codons.py +85 -1
- benchling_api_client/models/optimize_codons_gc_content_range.py +98 -0
- benchling_api_client/models/optimize_codons_method.py +21 -0
- benchling_api_client/models/reduced_pattern.py +3 -1
- benchling_api_client/v2/alpha/models/benchling_app_manifest_feature_canvas_locations.py +1 -0
- benchling_api_client/v2/alpha/openapi.yaml +1 -0
- benchling_api_client/v2/beta/models/benchling_app_manifest_feature_canvas_locations.py +1 -0
- 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 +77 -0
- benchling_api_client/v2/stable/models/back_translate.py +85 -1
- benchling_api_client/v2/stable/models/back_translate_gc_content_range.py +98 -0
- benchling_api_client/v2/stable/models/back_translate_method.py +21 -0
- benchling_api_client/v2/stable/models/optimize_codons.py +85 -1
- benchling_api_client/v2/stable/models/optimize_codons_gc_content_range.py +98 -0
- benchling_api_client/v2/stable/models/optimize_codons_method.py +21 -0
- benchling_api_client/v2/stable/models/reduced_pattern.py +3 -1
- benchling_api_client/v2/stable/openapi.yaml +78 -11
- {benchling_api_client-2.0.417.dist-info → benchling_api_client-2.0.419.dist-info}/METADATA +1 -1
- {benchling_api_client-2.0.417.dist-info → benchling_api_client-2.0.419.dist-info}/RECORD +32 -17
- {benchling_api_client-2.0.417.dist-info → benchling_api_client-2.0.419.dist-info}/LICENSE +0 -0
- {benchling_api_client-2.0.417.dist-info → benchling_api_client-2.0.419.dist-info}/WHEEL +0 -0
|
@@ -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 """
|
|
@@ -3414,6 +3414,7 @@ components:
|
|
|
3414
3414
|
enum:
|
|
3415
3415
|
- ENTRY
|
|
3416
3416
|
- ENTRY_TEMPLATE
|
|
3417
|
+
- APP_HOME
|
|
3417
3418
|
type: string
|
|
3418
3419
|
BoxCreationTableNotePart:
|
|
3419
3420
|
allOf:
|
|
@@ -5045,6 +5046,12 @@ components:
|
|
|
5045
5046
|
items:
|
|
5046
5047
|
$ref: '#/components/schemas/ReviewChange'
|
|
5047
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
|
|
5048
5055
|
status:
|
|
5049
5056
|
description: Review Status of the entry
|
|
5050
5057
|
enum:
|
|
@@ -5184,6 +5191,70 @@ components:
|
|
|
5184
5191
|
- $ref: '#/components/schemas/ChartNotePart'
|
|
5185
5192
|
- $ref: '#/components/schemas/AppCanvasNotePart'
|
|
5186
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
|
|
5187
5258
|
EntrySchema:
|
|
5188
5259
|
description: Entry schema
|
|
5189
5260
|
properties:
|
|
@@ -7810,6 +7881,12 @@ components:
|
|
|
7810
7881
|
items:
|
|
7811
7882
|
$ref: '#/components/schemas/ReviewChange'
|
|
7812
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
|
|
7813
7890
|
status:
|
|
7814
7891
|
description: Review Status of the worksheet
|
|
7815
7892
|
enum:
|
|
@@ -4,7 +4,9 @@ import attr
|
|
|
4
4
|
|
|
5
5
|
from ..extensions import NotPresentError
|
|
6
6
|
from ..models.back_translate_gc_content import BackTranslateGcContent
|
|
7
|
+
from ..models.back_translate_gc_content_range import BackTranslateGcContentRange
|
|
7
8
|
from ..models.back_translate_hairpin_parameters import BackTranslateHairpinParameters
|
|
9
|
+
from ..models.back_translate_method import BackTranslateMethod
|
|
8
10
|
from ..models.reduced_pattern import ReducedPattern
|
|
9
11
|
from ..types import UNSET, Unset
|
|
10
12
|
|
|
@@ -20,7 +22,9 @@ class BackTranslate:
|
|
|
20
22
|
_avoided_cutsite_enzyme_ids: Union[Unset, List[str]] = UNSET
|
|
21
23
|
_codon_usage_table_id: Union[Unset, str] = UNSET
|
|
22
24
|
_gc_content: Union[Unset, BackTranslateGcContent] = BackTranslateGcContent.ANY
|
|
25
|
+
_gc_content_range: Union[Unset, BackTranslateGcContentRange] = UNSET
|
|
23
26
|
_hairpin_parameters: Union[Unset, BackTranslateHairpinParameters] = UNSET
|
|
27
|
+
_method: Union[Unset, BackTranslateMethod] = BackTranslateMethod.MATCH_CODON_USAGE
|
|
24
28
|
_reduced_patterns: Union[Unset, List[ReducedPattern]] = UNSET
|
|
25
29
|
_schema_id: Union[Unset, str] = UNSET
|
|
26
30
|
_should_deplete_uridine: Union[Unset, bool] = False
|
|
@@ -32,7 +36,9 @@ class BackTranslate:
|
|
|
32
36
|
fields.append("avoided_cutsite_enzyme_ids={}".format(repr(self._avoided_cutsite_enzyme_ids)))
|
|
33
37
|
fields.append("codon_usage_table_id={}".format(repr(self._codon_usage_table_id)))
|
|
34
38
|
fields.append("gc_content={}".format(repr(self._gc_content)))
|
|
39
|
+
fields.append("gc_content_range={}".format(repr(self._gc_content_range)))
|
|
35
40
|
fields.append("hairpin_parameters={}".format(repr(self._hairpin_parameters)))
|
|
41
|
+
fields.append("method={}".format(repr(self._method)))
|
|
36
42
|
fields.append("reduced_patterns={}".format(repr(self._reduced_patterns)))
|
|
37
43
|
fields.append("schema_id={}".format(repr(self._schema_id)))
|
|
38
44
|
fields.append("should_deplete_uridine={}".format(repr(self._should_deplete_uridine)))
|
|
@@ -51,10 +57,18 @@ class BackTranslate:
|
|
|
51
57
|
if not isinstance(self._gc_content, Unset):
|
|
52
58
|
gc_content = self._gc_content.value
|
|
53
59
|
|
|
60
|
+
gc_content_range: Union[Unset, Dict[str, Any]] = UNSET
|
|
61
|
+
if not isinstance(self._gc_content_range, Unset):
|
|
62
|
+
gc_content_range = self._gc_content_range.to_dict()
|
|
63
|
+
|
|
54
64
|
hairpin_parameters: Union[Unset, Dict[str, Any]] = UNSET
|
|
55
65
|
if not isinstance(self._hairpin_parameters, Unset):
|
|
56
66
|
hairpin_parameters = self._hairpin_parameters.to_dict()
|
|
57
67
|
|
|
68
|
+
method: Union[Unset, int] = UNSET
|
|
69
|
+
if not isinstance(self._method, Unset):
|
|
70
|
+
method = self._method.value
|
|
71
|
+
|
|
58
72
|
reduced_patterns: Union[Unset, List[Any]] = UNSET
|
|
59
73
|
if not isinstance(self._reduced_patterns, Unset):
|
|
60
74
|
reduced_patterns = []
|
|
@@ -78,8 +92,12 @@ class BackTranslate:
|
|
|
78
92
|
field_dict["codonUsageTableId"] = codon_usage_table_id
|
|
79
93
|
if gc_content is not UNSET:
|
|
80
94
|
field_dict["gcContent"] = gc_content
|
|
95
|
+
if gc_content_range is not UNSET:
|
|
96
|
+
field_dict["gcContentRange"] = gc_content_range
|
|
81
97
|
if hairpin_parameters is not UNSET:
|
|
82
98
|
field_dict["hairpinParameters"] = hairpin_parameters
|
|
99
|
+
if method is not UNSET:
|
|
100
|
+
field_dict["method"] = method
|
|
83
101
|
if reduced_patterns is not UNSET:
|
|
84
102
|
field_dict["reducedPatterns"] = reduced_patterns
|
|
85
103
|
if schema_id is not UNSET:
|
|
@@ -157,6 +175,22 @@ class BackTranslate:
|
|
|
157
175
|
raise
|
|
158
176
|
gc_content = cast(Union[Unset, BackTranslateGcContent], UNSET)
|
|
159
177
|
|
|
178
|
+
def get_gc_content_range() -> Union[Unset, BackTranslateGcContentRange]:
|
|
179
|
+
gc_content_range: Union[Unset, Union[Unset, BackTranslateGcContentRange]] = UNSET
|
|
180
|
+
_gc_content_range = d.pop("gcContentRange")
|
|
181
|
+
|
|
182
|
+
if not isinstance(_gc_content_range, Unset):
|
|
183
|
+
gc_content_range = BackTranslateGcContentRange.from_dict(_gc_content_range)
|
|
184
|
+
|
|
185
|
+
return gc_content_range
|
|
186
|
+
|
|
187
|
+
try:
|
|
188
|
+
gc_content_range = get_gc_content_range()
|
|
189
|
+
except KeyError:
|
|
190
|
+
if strict:
|
|
191
|
+
raise
|
|
192
|
+
gc_content_range = cast(Union[Unset, BackTranslateGcContentRange], UNSET)
|
|
193
|
+
|
|
160
194
|
def get_hairpin_parameters() -> Union[Unset, BackTranslateHairpinParameters]:
|
|
161
195
|
hairpin_parameters: Union[Unset, Union[Unset, BackTranslateHairpinParameters]] = UNSET
|
|
162
196
|
_hairpin_parameters = d.pop("hairpinParameters")
|
|
@@ -173,6 +207,24 @@ class BackTranslate:
|
|
|
173
207
|
raise
|
|
174
208
|
hairpin_parameters = cast(Union[Unset, BackTranslateHairpinParameters], UNSET)
|
|
175
209
|
|
|
210
|
+
def get_method() -> Union[Unset, BackTranslateMethod]:
|
|
211
|
+
method = UNSET
|
|
212
|
+
_method = d.pop("method")
|
|
213
|
+
if _method is not None and _method is not UNSET:
|
|
214
|
+
try:
|
|
215
|
+
method = BackTranslateMethod(_method)
|
|
216
|
+
except ValueError:
|
|
217
|
+
method = BackTranslateMethod.of_unknown(_method)
|
|
218
|
+
|
|
219
|
+
return method
|
|
220
|
+
|
|
221
|
+
try:
|
|
222
|
+
method = get_method()
|
|
223
|
+
except KeyError:
|
|
224
|
+
if strict:
|
|
225
|
+
raise
|
|
226
|
+
method = cast(Union[Unset, BackTranslateMethod], UNSET)
|
|
227
|
+
|
|
176
228
|
def get_reduced_patterns() -> Union[Unset, List[ReducedPattern]]:
|
|
177
229
|
reduced_patterns = []
|
|
178
230
|
_reduced_patterns = d.pop("reducedPatterns")
|
|
@@ -218,7 +270,9 @@ class BackTranslate:
|
|
|
218
270
|
avoided_cutsite_enzyme_ids=avoided_cutsite_enzyme_ids,
|
|
219
271
|
codon_usage_table_id=codon_usage_table_id,
|
|
220
272
|
gc_content=gc_content,
|
|
273
|
+
gc_content_range=gc_content_range,
|
|
221
274
|
hairpin_parameters=hairpin_parameters,
|
|
275
|
+
method=method,
|
|
222
276
|
reduced_patterns=reduced_patterns,
|
|
223
277
|
schema_id=schema_id,
|
|
224
278
|
should_deplete_uridine=should_deplete_uridine,
|
|
@@ -280,7 +334,7 @@ class BackTranslate:
|
|
|
280
334
|
|
|
281
335
|
@property
|
|
282
336
|
def gc_content(self) -> BackTranslateGcContent:
|
|
283
|
-
"""The amount of GC content in the
|
|
337
|
+
"""The amount of GC content in the optimized sequence. LOW is defined as below 0.33, MEDIUM as 0.33-0.66, and HIGH as above 0.66. If neither gcContent nor gcContentRange is specified, the optimization will default to ANY (0-1). Cannot be specified together with gcContentRange."""
|
|
284
338
|
if isinstance(self._gc_content, Unset):
|
|
285
339
|
raise NotPresentError(self, "gc_content")
|
|
286
340
|
return self._gc_content
|
|
@@ -293,6 +347,21 @@ class BackTranslate:
|
|
|
293
347
|
def gc_content(self) -> None:
|
|
294
348
|
self._gc_content = UNSET
|
|
295
349
|
|
|
350
|
+
@property
|
|
351
|
+
def gc_content_range(self) -> BackTranslateGcContentRange:
|
|
352
|
+
"""Custom GC content range for the optimized sequence, specified as decimal values between 0 and 1. The maximum must be greater than the minimum. Cannot be specified together with gcContent."""
|
|
353
|
+
if isinstance(self._gc_content_range, Unset):
|
|
354
|
+
raise NotPresentError(self, "gc_content_range")
|
|
355
|
+
return self._gc_content_range
|
|
356
|
+
|
|
357
|
+
@gc_content_range.setter
|
|
358
|
+
def gc_content_range(self, value: BackTranslateGcContentRange) -> None:
|
|
359
|
+
self._gc_content_range = value
|
|
360
|
+
|
|
361
|
+
@gc_content_range.deleter
|
|
362
|
+
def gc_content_range(self) -> None:
|
|
363
|
+
self._gc_content_range = UNSET
|
|
364
|
+
|
|
296
365
|
@property
|
|
297
366
|
def hairpin_parameters(self) -> BackTranslateHairpinParameters:
|
|
298
367
|
"""These parameters are applied in the AvoidHairpins specification in DNAChisel. If hairpinParameters is not specified, hairpins will not be avoided."""
|
|
@@ -308,6 +377,21 @@ class BackTranslate:
|
|
|
308
377
|
def hairpin_parameters(self) -> None:
|
|
309
378
|
self._hairpin_parameters = UNSET
|
|
310
379
|
|
|
380
|
+
@property
|
|
381
|
+
def method(self) -> BackTranslateMethod:
|
|
382
|
+
"""The codon optimization algorithm to use. Requires codonUsageTableId to be specified. MATCH_CODON_USAGE selects codons probabilistically based on the organism's codon usage frequencies. USE_BEST_CODON always selects the most frequently used codon for each amino acid."""
|
|
383
|
+
if isinstance(self._method, Unset):
|
|
384
|
+
raise NotPresentError(self, "method")
|
|
385
|
+
return self._method
|
|
386
|
+
|
|
387
|
+
@method.setter
|
|
388
|
+
def method(self, value: BackTranslateMethod) -> None:
|
|
389
|
+
self._method = value
|
|
390
|
+
|
|
391
|
+
@method.deleter
|
|
392
|
+
def method(self) -> None:
|
|
393
|
+
self._method = UNSET
|
|
394
|
+
|
|
311
395
|
@property
|
|
312
396
|
def reduced_patterns(self) -> List[ReducedPattern]:
|
|
313
397
|
"""List of patterns to avoid when creating the back-translated sequence, on the coding strand only."""
|