benchling-api-client 2.0.411__py3-none-any.whl → 2.0.413__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/aa_sequence.py +32 -0
- benchling_api_client/models/aa_sequence_with_entity_type.py +32 -0
- benchling_api_client/models/benchling_app.py +4 -4
- benchling_api_client/models/box_schema.py +41 -0
- benchling_api_client/models/custom_entity.py +32 -0
- benchling_api_client/models/custom_entity_with_entity_type.py +32 -0
- benchling_api_client/models/dna_sequence.py +68 -0
- benchling_api_client/models/dna_sequence_with_entity_type.py +68 -0
- benchling_api_client/models/entry_schema_detailed.py +41 -0
- benchling_api_client/models/location_schema.py +41 -0
- benchling_api_client/models/monomer.py +32 -0
- benchling_api_client/models/plate_schema.py +41 -0
- benchling_api_client/models/request_response_samples_item_entity.py +68 -0
- benchling_api_client/models/rna_sequence.py +68 -0
- benchling_api_client/models/workflow_output.py +40 -0
- benchling_api_client/models/workflow_task.py +87 -0
- benchling_api_client/models/workflow_task_base.py +40 -0
- benchling_api_client/models/workflow_task_group.py +87 -0
- benchling_api_client/models/workflow_task_group_base.py +40 -0
- benchling_api_client/models/workflow_task_schema.py +41 -0
- benchling_api_client/v2/beta/models/aa_sequence.py +32 -0
- benchling_api_client/v2/beta/models/custom_entity.py +32 -0
- benchling_api_client/v2/beta/models/dna_sequence.py +68 -0
- benchling_api_client/v2/beta/openapi.yaml +14 -0
- benchling_api_client/v2/stable/models/aa_sequence.py +32 -0
- benchling_api_client/v2/stable/models/aa_sequence_with_entity_type.py +32 -0
- benchling_api_client/v2/stable/models/benchling_app.py +4 -4
- benchling_api_client/v2/stable/models/box_schema.py +41 -0
- benchling_api_client/v2/stable/models/custom_entity.py +32 -0
- benchling_api_client/v2/stable/models/custom_entity_with_entity_type.py +32 -0
- benchling_api_client/v2/stable/models/dna_sequence.py +68 -0
- benchling_api_client/v2/stable/models/dna_sequence_with_entity_type.py +68 -0
- benchling_api_client/v2/stable/models/entry_schema_detailed.py +41 -0
- benchling_api_client/v2/stable/models/location_schema.py +41 -0
- benchling_api_client/v2/stable/models/monomer.py +32 -0
- benchling_api_client/v2/stable/models/plate_schema.py +41 -0
- benchling_api_client/v2/stable/models/request_response_samples_item_entity.py +68 -0
- benchling_api_client/v2/stable/models/rna_sequence.py +68 -0
- benchling_api_client/v2/stable/models/workflow_output.py +40 -0
- benchling_api_client/v2/stable/models/workflow_task.py +87 -0
- benchling_api_client/v2/stable/models/workflow_task_base.py +40 -0
- benchling_api_client/v2/stable/models/workflow_task_group.py +87 -0
- benchling_api_client/v2/stable/models/workflow_task_group_base.py +40 -0
- benchling_api_client/v2/stable/models/workflow_task_schema.py +41 -0
- benchling_api_client/v2/stable/openapi.yaml +78 -2
- {benchling_api_client-2.0.411.dist-info → benchling_api_client-2.0.413.dist-info}/METADATA +1 -1
- {benchling_api_client-2.0.411.dist-info → benchling_api_client-2.0.413.dist-info}/RECORD +49 -49
- {benchling_api_client-2.0.411.dist-info → benchling_api_client-2.0.413.dist-info}/LICENSE +0 -0
- {benchling_api_client-2.0.411.dist-info → benchling_api_client-2.0.413.dist-info}/WHEEL +0 -0
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import datetime
|
|
1
2
|
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
3
|
|
|
3
4
|
import attr
|
|
5
|
+
from dateutil.parser import isoparse
|
|
4
6
|
|
|
5
7
|
from ..extensions import NotPresentError, UnknownType
|
|
6
8
|
from ..models.archive_record import ArchiveRecord
|
|
@@ -19,6 +21,7 @@ T = TypeVar("T", bound="EntrySchemaDetailed")
|
|
|
19
21
|
class EntrySchemaDetailed:
|
|
20
22
|
""" """
|
|
21
23
|
|
|
24
|
+
_modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
22
25
|
_type: Union[Unset, EntrySchemaDetailedType] = UNSET
|
|
23
26
|
_prefix: Union[Unset, str] = UNSET
|
|
24
27
|
_registry_id: Union[Unset, str] = UNSET
|
|
@@ -42,6 +45,7 @@ class EntrySchemaDetailed:
|
|
|
42
45
|
|
|
43
46
|
def __repr__(self):
|
|
44
47
|
fields = []
|
|
48
|
+
fields.append("modified_at={}".format(repr(self._modified_at)))
|
|
45
49
|
fields.append("type={}".format(repr(self._type)))
|
|
46
50
|
fields.append("prefix={}".format(repr(self._prefix)))
|
|
47
51
|
fields.append("registry_id={}".format(repr(self._registry_id)))
|
|
@@ -53,6 +57,10 @@ class EntrySchemaDetailed:
|
|
|
53
57
|
return "EntrySchemaDetailed({})".format(", ".join(fields))
|
|
54
58
|
|
|
55
59
|
def to_dict(self) -> Dict[str, Any]:
|
|
60
|
+
modified_at: Union[Unset, str] = UNSET
|
|
61
|
+
if not isinstance(self._modified_at, Unset):
|
|
62
|
+
modified_at = self._modified_at.isoformat()
|
|
63
|
+
|
|
56
64
|
type: Union[Unset, int] = UNSET
|
|
57
65
|
if not isinstance(self._type, Unset):
|
|
58
66
|
type = self._type.value
|
|
@@ -92,6 +100,8 @@ class EntrySchemaDetailed:
|
|
|
92
100
|
field_dict: Dict[str, Any] = {}
|
|
93
101
|
field_dict.update(self.additional_properties)
|
|
94
102
|
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
103
|
+
if modified_at is not UNSET:
|
|
104
|
+
field_dict["modifiedAt"] = modified_at
|
|
95
105
|
if type is not UNSET:
|
|
96
106
|
field_dict["type"] = type
|
|
97
107
|
if prefix is not UNSET:
|
|
@@ -113,6 +123,21 @@ class EntrySchemaDetailed:
|
|
|
113
123
|
def from_dict(cls: Type[T], src_dict: Dict[str, Any], strict: bool = False) -> T:
|
|
114
124
|
d = src_dict.copy()
|
|
115
125
|
|
|
126
|
+
def get_modified_at() -> Union[Unset, datetime.datetime]:
|
|
127
|
+
modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
128
|
+
_modified_at = d.pop("modifiedAt")
|
|
129
|
+
if _modified_at is not None and not isinstance(_modified_at, Unset):
|
|
130
|
+
modified_at = isoparse(cast(str, _modified_at))
|
|
131
|
+
|
|
132
|
+
return modified_at
|
|
133
|
+
|
|
134
|
+
try:
|
|
135
|
+
modified_at = get_modified_at()
|
|
136
|
+
except KeyError:
|
|
137
|
+
if strict:
|
|
138
|
+
raise
|
|
139
|
+
modified_at = cast(Union[Unset, datetime.datetime], UNSET)
|
|
140
|
+
|
|
116
141
|
def get_type() -> Union[Unset, EntrySchemaDetailedType]:
|
|
117
142
|
type = UNSET
|
|
118
143
|
_type = d.pop("type")
|
|
@@ -297,6 +322,7 @@ class EntrySchemaDetailed:
|
|
|
297
322
|
name = cast(Union[Unset, str], UNSET)
|
|
298
323
|
|
|
299
324
|
entry_schema_detailed = cls(
|
|
325
|
+
modified_at=modified_at,
|
|
300
326
|
type=type,
|
|
301
327
|
prefix=prefix,
|
|
302
328
|
registry_id=registry_id,
|
|
@@ -328,6 +354,21 @@ class EntrySchemaDetailed:
|
|
|
328
354
|
def get(self, key, default=None) -> Optional[Any]:
|
|
329
355
|
return self.additional_properties.get(key, default)
|
|
330
356
|
|
|
357
|
+
@property
|
|
358
|
+
def modified_at(self) -> datetime.datetime:
|
|
359
|
+
""" DateTime the Entry Schema was last modified """
|
|
360
|
+
if isinstance(self._modified_at, Unset):
|
|
361
|
+
raise NotPresentError(self, "modified_at")
|
|
362
|
+
return self._modified_at
|
|
363
|
+
|
|
364
|
+
@modified_at.setter
|
|
365
|
+
def modified_at(self, value: datetime.datetime) -> None:
|
|
366
|
+
self._modified_at = value
|
|
367
|
+
|
|
368
|
+
@modified_at.deleter
|
|
369
|
+
def modified_at(self) -> None:
|
|
370
|
+
self._modified_at = UNSET
|
|
371
|
+
|
|
331
372
|
@property
|
|
332
373
|
def type(self) -> EntrySchemaDetailedType:
|
|
333
374
|
if isinstance(self._type, Unset):
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import datetime
|
|
1
2
|
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
3
|
|
|
3
4
|
import attr
|
|
5
|
+
from dateutil.parser import isoparse
|
|
4
6
|
|
|
5
7
|
from ..extensions import NotPresentError, UnknownType
|
|
6
8
|
from ..models.archive_record import ArchiveRecord
|
|
@@ -19,6 +21,7 @@ T = TypeVar("T", bound="LocationSchema")
|
|
|
19
21
|
class LocationSchema:
|
|
20
22
|
""" """
|
|
21
23
|
|
|
24
|
+
_modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
22
25
|
_type: Union[Unset, LocationSchemaType] = UNSET
|
|
23
26
|
_prefix: Union[Unset, str] = UNSET
|
|
24
27
|
_registry_id: Union[Unset, str] = UNSET
|
|
@@ -42,6 +45,7 @@ class LocationSchema:
|
|
|
42
45
|
|
|
43
46
|
def __repr__(self):
|
|
44
47
|
fields = []
|
|
48
|
+
fields.append("modified_at={}".format(repr(self._modified_at)))
|
|
45
49
|
fields.append("type={}".format(repr(self._type)))
|
|
46
50
|
fields.append("prefix={}".format(repr(self._prefix)))
|
|
47
51
|
fields.append("registry_id={}".format(repr(self._registry_id)))
|
|
@@ -53,6 +57,10 @@ class LocationSchema:
|
|
|
53
57
|
return "LocationSchema({})".format(", ".join(fields))
|
|
54
58
|
|
|
55
59
|
def to_dict(self) -> Dict[str, Any]:
|
|
60
|
+
modified_at: Union[Unset, str] = UNSET
|
|
61
|
+
if not isinstance(self._modified_at, Unset):
|
|
62
|
+
modified_at = self._modified_at.isoformat()
|
|
63
|
+
|
|
56
64
|
type: Union[Unset, int] = UNSET
|
|
57
65
|
if not isinstance(self._type, Unset):
|
|
58
66
|
type = self._type.value
|
|
@@ -92,6 +100,8 @@ class LocationSchema:
|
|
|
92
100
|
field_dict: Dict[str, Any] = {}
|
|
93
101
|
field_dict.update(self.additional_properties)
|
|
94
102
|
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
103
|
+
if modified_at is not UNSET:
|
|
104
|
+
field_dict["modifiedAt"] = modified_at
|
|
95
105
|
if type is not UNSET:
|
|
96
106
|
field_dict["type"] = type
|
|
97
107
|
if prefix is not UNSET:
|
|
@@ -113,6 +123,21 @@ class LocationSchema:
|
|
|
113
123
|
def from_dict(cls: Type[T], src_dict: Dict[str, Any], strict: bool = False) -> T:
|
|
114
124
|
d = src_dict.copy()
|
|
115
125
|
|
|
126
|
+
def get_modified_at() -> Union[Unset, datetime.datetime]:
|
|
127
|
+
modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
128
|
+
_modified_at = d.pop("modifiedAt")
|
|
129
|
+
if _modified_at is not None and not isinstance(_modified_at, Unset):
|
|
130
|
+
modified_at = isoparse(cast(str, _modified_at))
|
|
131
|
+
|
|
132
|
+
return modified_at
|
|
133
|
+
|
|
134
|
+
try:
|
|
135
|
+
modified_at = get_modified_at()
|
|
136
|
+
except KeyError:
|
|
137
|
+
if strict:
|
|
138
|
+
raise
|
|
139
|
+
modified_at = cast(Union[Unset, datetime.datetime], UNSET)
|
|
140
|
+
|
|
116
141
|
def get_type() -> Union[Unset, LocationSchemaType]:
|
|
117
142
|
type = UNSET
|
|
118
143
|
_type = d.pop("type")
|
|
@@ -297,6 +322,7 @@ class LocationSchema:
|
|
|
297
322
|
name = cast(Union[Unset, str], UNSET)
|
|
298
323
|
|
|
299
324
|
location_schema = cls(
|
|
325
|
+
modified_at=modified_at,
|
|
300
326
|
type=type,
|
|
301
327
|
prefix=prefix,
|
|
302
328
|
registry_id=registry_id,
|
|
@@ -328,6 +354,21 @@ class LocationSchema:
|
|
|
328
354
|
def get(self, key, default=None) -> Optional[Any]:
|
|
329
355
|
return self.additional_properties.get(key, default)
|
|
330
356
|
|
|
357
|
+
@property
|
|
358
|
+
def modified_at(self) -> datetime.datetime:
|
|
359
|
+
""" DateTime the Location Schema was last modified """
|
|
360
|
+
if isinstance(self._modified_at, Unset):
|
|
361
|
+
raise NotPresentError(self, "modified_at")
|
|
362
|
+
return self._modified_at
|
|
363
|
+
|
|
364
|
+
@modified_at.setter
|
|
365
|
+
def modified_at(self, value: datetime.datetime) -> None:
|
|
366
|
+
self._modified_at = value
|
|
367
|
+
|
|
368
|
+
@modified_at.deleter
|
|
369
|
+
def modified_at(self) -> None:
|
|
370
|
+
self._modified_at = UNSET
|
|
371
|
+
|
|
331
372
|
@property
|
|
332
373
|
def type(self) -> LocationSchemaType:
|
|
333
374
|
if isinstance(self._type, Unset):
|
|
@@ -24,6 +24,7 @@ class Monomer:
|
|
|
24
24
|
_canonical_smiles: Union[Unset, str] = UNSET
|
|
25
25
|
_created_at: Union[Unset, datetime.datetime] = UNSET
|
|
26
26
|
_custom_molecular_weight: Union[Unset, None, float] = UNSET
|
|
27
|
+
_exact_molecular_weight: Union[Unset, float] = UNSET
|
|
27
28
|
_id: Union[Unset, str] = UNSET
|
|
28
29
|
_modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
29
30
|
_monomer_type: Union[Unset, MonomerType] = UNSET
|
|
@@ -44,6 +45,7 @@ class Monomer:
|
|
|
44
45
|
fields.append("canonical_smiles={}".format(repr(self._canonical_smiles)))
|
|
45
46
|
fields.append("created_at={}".format(repr(self._created_at)))
|
|
46
47
|
fields.append("custom_molecular_weight={}".format(repr(self._custom_molecular_weight)))
|
|
48
|
+
fields.append("exact_molecular_weight={}".format(repr(self._exact_molecular_weight)))
|
|
47
49
|
fields.append("id={}".format(repr(self._id)))
|
|
48
50
|
fields.append("modified_at={}".format(repr(self._modified_at)))
|
|
49
51
|
fields.append("monomer_type={}".format(repr(self._monomer_type)))
|
|
@@ -73,6 +75,7 @@ class Monomer:
|
|
|
73
75
|
created_at = self._created_at.isoformat()
|
|
74
76
|
|
|
75
77
|
custom_molecular_weight = self._custom_molecular_weight
|
|
78
|
+
exact_molecular_weight = self._exact_molecular_weight
|
|
76
79
|
id = self._id
|
|
77
80
|
modified_at: Union[Unset, str] = UNSET
|
|
78
81
|
if not isinstance(self._modified_at, Unset):
|
|
@@ -110,6 +113,8 @@ class Monomer:
|
|
|
110
113
|
field_dict["createdAt"] = created_at
|
|
111
114
|
if custom_molecular_weight is not UNSET:
|
|
112
115
|
field_dict["customMolecularWeight"] = custom_molecular_weight
|
|
116
|
+
if exact_molecular_weight is not UNSET:
|
|
117
|
+
field_dict["exactMolecularWeight"] = exact_molecular_weight
|
|
113
118
|
if id is not UNSET:
|
|
114
119
|
field_dict["id"] = id
|
|
115
120
|
if modified_at is not UNSET:
|
|
@@ -213,6 +218,17 @@ class Monomer:
|
|
|
213
218
|
raise
|
|
214
219
|
custom_molecular_weight = cast(Union[Unset, None, float], UNSET)
|
|
215
220
|
|
|
221
|
+
def get_exact_molecular_weight() -> Union[Unset, float]:
|
|
222
|
+
exact_molecular_weight = d.pop("exactMolecularWeight")
|
|
223
|
+
return exact_molecular_weight
|
|
224
|
+
|
|
225
|
+
try:
|
|
226
|
+
exact_molecular_weight = get_exact_molecular_weight()
|
|
227
|
+
except KeyError:
|
|
228
|
+
if strict:
|
|
229
|
+
raise
|
|
230
|
+
exact_molecular_weight = cast(Union[Unset, float], UNSET)
|
|
231
|
+
|
|
216
232
|
def get_id() -> Union[Unset, str]:
|
|
217
233
|
id = d.pop("id")
|
|
218
234
|
return id
|
|
@@ -355,6 +371,7 @@ class Monomer:
|
|
|
355
371
|
canonical_smiles=canonical_smiles,
|
|
356
372
|
created_at=created_at,
|
|
357
373
|
custom_molecular_weight=custom_molecular_weight,
|
|
374
|
+
exact_molecular_weight=exact_molecular_weight,
|
|
358
375
|
id=id,
|
|
359
376
|
modified_at=modified_at,
|
|
360
377
|
monomer_type=monomer_type,
|
|
@@ -478,6 +495,21 @@ class Monomer:
|
|
|
478
495
|
def custom_molecular_weight(self) -> None:
|
|
479
496
|
self._custom_molecular_weight = UNSET
|
|
480
497
|
|
|
498
|
+
@property
|
|
499
|
+
def exact_molecular_weight(self) -> float:
|
|
500
|
+
""" The exact molecular weight of the monomer as calculated by RDKit based on the monomer chemical structure """
|
|
501
|
+
if isinstance(self._exact_molecular_weight, Unset):
|
|
502
|
+
raise NotPresentError(self, "exact_molecular_weight")
|
|
503
|
+
return self._exact_molecular_weight
|
|
504
|
+
|
|
505
|
+
@exact_molecular_weight.setter
|
|
506
|
+
def exact_molecular_weight(self, value: float) -> None:
|
|
507
|
+
self._exact_molecular_weight = value
|
|
508
|
+
|
|
509
|
+
@exact_molecular_weight.deleter
|
|
510
|
+
def exact_molecular_weight(self) -> None:
|
|
511
|
+
self._exact_molecular_weight = UNSET
|
|
512
|
+
|
|
481
513
|
@property
|
|
482
514
|
def id(self) -> str:
|
|
483
515
|
""" ID of the monomer """
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import datetime
|
|
1
2
|
from typing import Any, cast, Dict, List, Optional, Type, TypeVar, Union
|
|
2
3
|
|
|
3
4
|
import attr
|
|
5
|
+
from dateutil.parser import isoparse
|
|
4
6
|
|
|
5
7
|
from ..extensions import NotPresentError, UnknownType
|
|
6
8
|
from ..models.archive_record import ArchiveRecord
|
|
@@ -22,6 +24,7 @@ class PlateSchema:
|
|
|
22
24
|
|
|
23
25
|
_container_schema: Union[Unset, None, PlateSchemaContainerSchema] = UNSET
|
|
24
26
|
_height: Union[Unset, float] = UNSET
|
|
27
|
+
_modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
25
28
|
_plate_type: Union[Unset, str] = UNSET
|
|
26
29
|
_type: Union[Unset, PlateSchemaType] = UNSET
|
|
27
30
|
_width: Union[Unset, float] = UNSET
|
|
@@ -49,6 +52,7 @@ class PlateSchema:
|
|
|
49
52
|
fields = []
|
|
50
53
|
fields.append("container_schema={}".format(repr(self._container_schema)))
|
|
51
54
|
fields.append("height={}".format(repr(self._height)))
|
|
55
|
+
fields.append("modified_at={}".format(repr(self._modified_at)))
|
|
52
56
|
fields.append("plate_type={}".format(repr(self._plate_type)))
|
|
53
57
|
fields.append("type={}".format(repr(self._type)))
|
|
54
58
|
fields.append("width={}".format(repr(self._width)))
|
|
@@ -67,6 +71,10 @@ class PlateSchema:
|
|
|
67
71
|
container_schema = self._container_schema.to_dict() if self._container_schema else None
|
|
68
72
|
|
|
69
73
|
height = self._height
|
|
74
|
+
modified_at: Union[Unset, str] = UNSET
|
|
75
|
+
if not isinstance(self._modified_at, Unset):
|
|
76
|
+
modified_at = self._modified_at.isoformat()
|
|
77
|
+
|
|
70
78
|
plate_type = self._plate_type
|
|
71
79
|
type: Union[Unset, int] = UNSET
|
|
72
80
|
if not isinstance(self._type, Unset):
|
|
@@ -112,6 +120,8 @@ class PlateSchema:
|
|
|
112
120
|
field_dict["containerSchema"] = container_schema
|
|
113
121
|
if height is not UNSET:
|
|
114
122
|
field_dict["height"] = height
|
|
123
|
+
if modified_at is not UNSET:
|
|
124
|
+
field_dict["modifiedAt"] = modified_at
|
|
115
125
|
if plate_type is not UNSET:
|
|
116
126
|
field_dict["plateType"] = plate_type
|
|
117
127
|
if type is not UNSET:
|
|
@@ -164,6 +174,21 @@ class PlateSchema:
|
|
|
164
174
|
raise
|
|
165
175
|
height = cast(Union[Unset, float], UNSET)
|
|
166
176
|
|
|
177
|
+
def get_modified_at() -> Union[Unset, datetime.datetime]:
|
|
178
|
+
modified_at: Union[Unset, datetime.datetime] = UNSET
|
|
179
|
+
_modified_at = d.pop("modifiedAt")
|
|
180
|
+
if _modified_at is not None and not isinstance(_modified_at, Unset):
|
|
181
|
+
modified_at = isoparse(cast(str, _modified_at))
|
|
182
|
+
|
|
183
|
+
return modified_at
|
|
184
|
+
|
|
185
|
+
try:
|
|
186
|
+
modified_at = get_modified_at()
|
|
187
|
+
except KeyError:
|
|
188
|
+
if strict:
|
|
189
|
+
raise
|
|
190
|
+
modified_at = cast(Union[Unset, datetime.datetime], UNSET)
|
|
191
|
+
|
|
167
192
|
def get_plate_type() -> Union[Unset, str]:
|
|
168
193
|
plate_type = d.pop("plateType")
|
|
169
194
|
return plate_type
|
|
@@ -372,6 +397,7 @@ class PlateSchema:
|
|
|
372
397
|
plate_schema = cls(
|
|
373
398
|
container_schema=container_schema,
|
|
374
399
|
height=height,
|
|
400
|
+
modified_at=modified_at,
|
|
375
401
|
plate_type=plate_type,
|
|
376
402
|
type=type,
|
|
377
403
|
width=width,
|
|
@@ -433,6 +459,21 @@ class PlateSchema:
|
|
|
433
459
|
def height(self) -> None:
|
|
434
460
|
self._height = UNSET
|
|
435
461
|
|
|
462
|
+
@property
|
|
463
|
+
def modified_at(self) -> datetime.datetime:
|
|
464
|
+
""" DateTime the Plate Schema was last modified """
|
|
465
|
+
if isinstance(self._modified_at, Unset):
|
|
466
|
+
raise NotPresentError(self, "modified_at")
|
|
467
|
+
return self._modified_at
|
|
468
|
+
|
|
469
|
+
@modified_at.setter
|
|
470
|
+
def modified_at(self, value: datetime.datetime) -> None:
|
|
471
|
+
self._modified_at = value
|
|
472
|
+
|
|
473
|
+
@modified_at.deleter
|
|
474
|
+
def modified_at(self) -> None:
|
|
475
|
+
self._modified_at = UNSET
|
|
476
|
+
|
|
436
477
|
@property
|
|
437
478
|
def plate_type(self) -> str:
|
|
438
479
|
if isinstance(self._plate_type, Unset):
|
|
@@ -48,6 +48,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
48
48
|
_registration_origin: Union[Unset, None, RegistrationOrigin] = UNSET
|
|
49
49
|
_registry_id: Union[Unset, None, str] = UNSET
|
|
50
50
|
_schema: Union[Unset, None, SchemaSummary] = UNSET
|
|
51
|
+
_url: Union[Unset, str] = UNSET
|
|
51
52
|
_web_url: Union[Unset, str] = UNSET
|
|
52
53
|
_annotations: Union[Unset, List[DnaAnnotation]] = UNSET
|
|
53
54
|
_bases: Union[Unset, str] = UNSET
|
|
@@ -61,6 +62,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
61
62
|
_ingredients: Union[Unset, List[Ingredient]] = UNSET
|
|
62
63
|
_units: Union[Unset, MixtureMeasurementUnits] = UNSET
|
|
63
64
|
_amino_acids: Union[Unset, str] = UNSET
|
|
65
|
+
_dna_alignment_ids: Union[Unset, List[str]] = UNSET
|
|
64
66
|
_is_circular: Union[Unset, bool] = UNSET
|
|
65
67
|
_parts: Union[Unset, List[DnaSequencePart]] = UNSET
|
|
66
68
|
_primers: Union[Unset, List[Primer]] = UNSET
|
|
@@ -89,6 +91,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
89
91
|
fields.append("registration_origin={}".format(repr(self._registration_origin)))
|
|
90
92
|
fields.append("registry_id={}".format(repr(self._registry_id)))
|
|
91
93
|
fields.append("schema={}".format(repr(self._schema)))
|
|
94
|
+
fields.append("url={}".format(repr(self._url)))
|
|
92
95
|
fields.append("web_url={}".format(repr(self._web_url)))
|
|
93
96
|
fields.append("annotations={}".format(repr(self._annotations)))
|
|
94
97
|
fields.append("bases={}".format(repr(self._bases)))
|
|
@@ -102,6 +105,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
102
105
|
fields.append("ingredients={}".format(repr(self._ingredients)))
|
|
103
106
|
fields.append("units={}".format(repr(self._units)))
|
|
104
107
|
fields.append("amino_acids={}".format(repr(self._amino_acids)))
|
|
108
|
+
fields.append("dna_alignment_ids={}".format(repr(self._dna_alignment_ids)))
|
|
105
109
|
fields.append("is_circular={}".format(repr(self._is_circular)))
|
|
106
110
|
fields.append("parts={}".format(repr(self._parts)))
|
|
107
111
|
fields.append("primers={}".format(repr(self._primers)))
|
|
@@ -167,6 +171,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
167
171
|
if not isinstance(self._schema, Unset):
|
|
168
172
|
schema = self._schema.to_dict() if self._schema else None
|
|
169
173
|
|
|
174
|
+
url = self._url
|
|
170
175
|
web_url = self._web_url
|
|
171
176
|
annotations: Union[Unset, List[Any]] = UNSET
|
|
172
177
|
if not isinstance(self._annotations, Unset):
|
|
@@ -200,6 +205,10 @@ class RequestResponseSamplesItemEntity:
|
|
|
200
205
|
units = self._units.value
|
|
201
206
|
|
|
202
207
|
amino_acids = self._amino_acids
|
|
208
|
+
dna_alignment_ids: Union[Unset, List[Any]] = UNSET
|
|
209
|
+
if not isinstance(self._dna_alignment_ids, Unset):
|
|
210
|
+
dna_alignment_ids = self._dna_alignment_ids
|
|
211
|
+
|
|
203
212
|
is_circular = self._is_circular
|
|
204
213
|
parts: Union[Unset, List[Any]] = UNSET
|
|
205
214
|
if not isinstance(self._parts, Unset):
|
|
@@ -274,6 +283,8 @@ class RequestResponseSamplesItemEntity:
|
|
|
274
283
|
field_dict["registryId"] = registry_id
|
|
275
284
|
if schema is not UNSET:
|
|
276
285
|
field_dict["schema"] = schema
|
|
286
|
+
if url is not UNSET:
|
|
287
|
+
field_dict["url"] = url
|
|
277
288
|
if web_url is not UNSET:
|
|
278
289
|
field_dict["webURL"] = web_url
|
|
279
290
|
if annotations is not UNSET:
|
|
@@ -300,6 +311,8 @@ class RequestResponseSamplesItemEntity:
|
|
|
300
311
|
field_dict["units"] = units
|
|
301
312
|
if amino_acids is not UNSET:
|
|
302
313
|
field_dict["aminoAcids"] = amino_acids
|
|
314
|
+
if dna_alignment_ids is not UNSET:
|
|
315
|
+
field_dict["dnaAlignmentIds"] = dna_alignment_ids
|
|
303
316
|
if is_circular is not UNSET:
|
|
304
317
|
field_dict["isCircular"] = is_circular
|
|
305
318
|
if parts is not UNSET:
|
|
@@ -578,6 +591,17 @@ class RequestResponseSamplesItemEntity:
|
|
|
578
591
|
raise
|
|
579
592
|
schema = cast(Union[Unset, None, SchemaSummary], UNSET)
|
|
580
593
|
|
|
594
|
+
def get_url() -> Union[Unset, str]:
|
|
595
|
+
url = d.pop("url")
|
|
596
|
+
return url
|
|
597
|
+
|
|
598
|
+
try:
|
|
599
|
+
url = get_url()
|
|
600
|
+
except KeyError:
|
|
601
|
+
if strict:
|
|
602
|
+
raise
|
|
603
|
+
url = cast(Union[Unset, str], UNSET)
|
|
604
|
+
|
|
581
605
|
def get_web_url() -> Union[Unset, str]:
|
|
582
606
|
web_url = d.pop("webURL")
|
|
583
607
|
return web_url
|
|
@@ -747,6 +771,18 @@ class RequestResponseSamplesItemEntity:
|
|
|
747
771
|
raise
|
|
748
772
|
amino_acids = cast(Union[Unset, str], UNSET)
|
|
749
773
|
|
|
774
|
+
def get_dna_alignment_ids() -> Union[Unset, List[str]]:
|
|
775
|
+
dna_alignment_ids = cast(List[str], d.pop("dnaAlignmentIds"))
|
|
776
|
+
|
|
777
|
+
return dna_alignment_ids
|
|
778
|
+
|
|
779
|
+
try:
|
|
780
|
+
dna_alignment_ids = get_dna_alignment_ids()
|
|
781
|
+
except KeyError:
|
|
782
|
+
if strict:
|
|
783
|
+
raise
|
|
784
|
+
dna_alignment_ids = cast(Union[Unset, List[str]], UNSET)
|
|
785
|
+
|
|
750
786
|
def get_is_circular() -> Union[Unset, bool]:
|
|
751
787
|
is_circular = d.pop("isCircular")
|
|
752
788
|
return is_circular
|
|
@@ -848,6 +884,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
848
884
|
registration_origin=registration_origin,
|
|
849
885
|
registry_id=registry_id,
|
|
850
886
|
schema=schema,
|
|
887
|
+
url=url,
|
|
851
888
|
web_url=web_url,
|
|
852
889
|
annotations=annotations,
|
|
853
890
|
bases=bases,
|
|
@@ -861,6 +898,7 @@ class RequestResponseSamplesItemEntity:
|
|
|
861
898
|
ingredients=ingredients,
|
|
862
899
|
units=units,
|
|
863
900
|
amino_acids=amino_acids,
|
|
901
|
+
dna_alignment_ids=dna_alignment_ids,
|
|
864
902
|
is_circular=is_circular,
|
|
865
903
|
parts=parts,
|
|
866
904
|
primers=primers,
|
|
@@ -1158,6 +1196,21 @@ class RequestResponseSamplesItemEntity:
|
|
|
1158
1196
|
def schema(self) -> None:
|
|
1159
1197
|
self._schema = UNSET
|
|
1160
1198
|
|
|
1199
|
+
@property
|
|
1200
|
+
def url(self) -> str:
|
|
1201
|
+
""" The path of the web URL, omitting the tenant domain """
|
|
1202
|
+
if isinstance(self._url, Unset):
|
|
1203
|
+
raise NotPresentError(self, "url")
|
|
1204
|
+
return self._url
|
|
1205
|
+
|
|
1206
|
+
@url.setter
|
|
1207
|
+
def url(self, value: str) -> None:
|
|
1208
|
+
self._url = value
|
|
1209
|
+
|
|
1210
|
+
@url.deleter
|
|
1211
|
+
def url(self) -> None:
|
|
1212
|
+
self._url = UNSET
|
|
1213
|
+
|
|
1161
1214
|
@property
|
|
1162
1215
|
def web_url(self) -> str:
|
|
1163
1216
|
if isinstance(self._web_url, Unset):
|
|
@@ -1348,6 +1401,21 @@ class RequestResponseSamplesItemEntity:
|
|
|
1348
1401
|
def amino_acids(self) -> None:
|
|
1349
1402
|
self._amino_acids = UNSET
|
|
1350
1403
|
|
|
1404
|
+
@property
|
|
1405
|
+
def dna_alignment_ids(self) -> List[str]:
|
|
1406
|
+
""" API IDs of Nucleotide Alignments involving the RNA sequence """
|
|
1407
|
+
if isinstance(self._dna_alignment_ids, Unset):
|
|
1408
|
+
raise NotPresentError(self, "dna_alignment_ids")
|
|
1409
|
+
return self._dna_alignment_ids
|
|
1410
|
+
|
|
1411
|
+
@dna_alignment_ids.setter
|
|
1412
|
+
def dna_alignment_ids(self, value: List[str]) -> None:
|
|
1413
|
+
self._dna_alignment_ids = value
|
|
1414
|
+
|
|
1415
|
+
@dna_alignment_ids.deleter
|
|
1416
|
+
def dna_alignment_ids(self) -> None:
|
|
1417
|
+
self._dna_alignment_ids = UNSET
|
|
1418
|
+
|
|
1351
1419
|
@property
|
|
1352
1420
|
def is_circular(self) -> bool:
|
|
1353
1421
|
if isinstance(self._is_circular, Unset):
|
|
@@ -25,6 +25,7 @@ class RnaSequence:
|
|
|
25
25
|
""" """
|
|
26
26
|
|
|
27
27
|
_aliases: Union[Unset, List[str]] = UNSET
|
|
28
|
+
_alignment_ids: Union[Unset, List[str]] = UNSET
|
|
28
29
|
_annotations: Union[Unset, List[RnaAnnotation]] = UNSET
|
|
29
30
|
_api_url: Union[Unset, str] = UNSET
|
|
30
31
|
_archive_record: Union[Unset, None, ArchiveRecord] = UNSET
|
|
@@ -50,12 +51,14 @@ class RnaSequence:
|
|
|
50
51
|
_registry_id: Union[Unset, None, str] = UNSET
|
|
51
52
|
_schema: Union[Unset, None, SchemaSummary] = UNSET
|
|
52
53
|
_translations: Union[Unset, List[Translation]] = UNSET
|
|
54
|
+
_url: Union[Unset, str] = UNSET
|
|
53
55
|
_web_url: Union[Unset, str] = UNSET
|
|
54
56
|
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
|
55
57
|
|
|
56
58
|
def __repr__(self):
|
|
57
59
|
fields = []
|
|
58
60
|
fields.append("aliases={}".format(repr(self._aliases)))
|
|
61
|
+
fields.append("alignment_ids={}".format(repr(self._alignment_ids)))
|
|
59
62
|
fields.append("annotations={}".format(repr(self._annotations)))
|
|
60
63
|
fields.append("api_url={}".format(repr(self._api_url)))
|
|
61
64
|
fields.append("archive_record={}".format(repr(self._archive_record)))
|
|
@@ -81,6 +84,7 @@ class RnaSequence:
|
|
|
81
84
|
fields.append("registry_id={}".format(repr(self._registry_id)))
|
|
82
85
|
fields.append("schema={}".format(repr(self._schema)))
|
|
83
86
|
fields.append("translations={}".format(repr(self._translations)))
|
|
87
|
+
fields.append("url={}".format(repr(self._url)))
|
|
84
88
|
fields.append("web_url={}".format(repr(self._web_url)))
|
|
85
89
|
fields.append("additional_properties={}".format(repr(self.additional_properties)))
|
|
86
90
|
return "RnaSequence({})".format(", ".join(fields))
|
|
@@ -90,6 +94,10 @@ class RnaSequence:
|
|
|
90
94
|
if not isinstance(self._aliases, Unset):
|
|
91
95
|
aliases = self._aliases
|
|
92
96
|
|
|
97
|
+
alignment_ids: Union[Unset, List[Any]] = UNSET
|
|
98
|
+
if not isinstance(self._alignment_ids, Unset):
|
|
99
|
+
alignment_ids = self._alignment_ids
|
|
100
|
+
|
|
93
101
|
annotations: Union[Unset, List[Any]] = UNSET
|
|
94
102
|
if not isinstance(self._annotations, Unset):
|
|
95
103
|
annotations = []
|
|
@@ -174,6 +182,7 @@ class RnaSequence:
|
|
|
174
182
|
|
|
175
183
|
translations.append(translations_item)
|
|
176
184
|
|
|
185
|
+
url = self._url
|
|
177
186
|
web_url = self._web_url
|
|
178
187
|
|
|
179
188
|
field_dict: Dict[str, Any] = {}
|
|
@@ -181,6 +190,8 @@ class RnaSequence:
|
|
|
181
190
|
# Allow the model to serialize even if it was created outside of the constructor, circumventing validation
|
|
182
191
|
if aliases is not UNSET:
|
|
183
192
|
field_dict["aliases"] = aliases
|
|
193
|
+
if alignment_ids is not UNSET:
|
|
194
|
+
field_dict["alignmentIds"] = alignment_ids
|
|
184
195
|
if annotations is not UNSET:
|
|
185
196
|
field_dict["annotations"] = annotations
|
|
186
197
|
if api_url is not UNSET:
|
|
@@ -231,6 +242,8 @@ class RnaSequence:
|
|
|
231
242
|
field_dict["schema"] = schema
|
|
232
243
|
if translations is not UNSET:
|
|
233
244
|
field_dict["translations"] = translations
|
|
245
|
+
if url is not UNSET:
|
|
246
|
+
field_dict["url"] = url
|
|
234
247
|
if web_url is not UNSET:
|
|
235
248
|
field_dict["webURL"] = web_url
|
|
236
249
|
|
|
@@ -252,6 +265,18 @@ class RnaSequence:
|
|
|
252
265
|
raise
|
|
253
266
|
aliases = cast(Union[Unset, List[str]], UNSET)
|
|
254
267
|
|
|
268
|
+
def get_alignment_ids() -> Union[Unset, List[str]]:
|
|
269
|
+
alignment_ids = cast(List[str], d.pop("alignmentIds"))
|
|
270
|
+
|
|
271
|
+
return alignment_ids
|
|
272
|
+
|
|
273
|
+
try:
|
|
274
|
+
alignment_ids = get_alignment_ids()
|
|
275
|
+
except KeyError:
|
|
276
|
+
if strict:
|
|
277
|
+
raise
|
|
278
|
+
alignment_ids = cast(Union[Unset, List[str]], UNSET)
|
|
279
|
+
|
|
255
280
|
def get_annotations() -> Union[Unset, List[RnaAnnotation]]:
|
|
256
281
|
annotations = []
|
|
257
282
|
_annotations = d.pop("annotations")
|
|
@@ -595,6 +620,17 @@ class RnaSequence:
|
|
|
595
620
|
raise
|
|
596
621
|
translations = cast(Union[Unset, List[Translation]], UNSET)
|
|
597
622
|
|
|
623
|
+
def get_url() -> Union[Unset, str]:
|
|
624
|
+
url = d.pop("url")
|
|
625
|
+
return url
|
|
626
|
+
|
|
627
|
+
try:
|
|
628
|
+
url = get_url()
|
|
629
|
+
except KeyError:
|
|
630
|
+
if strict:
|
|
631
|
+
raise
|
|
632
|
+
url = cast(Union[Unset, str], UNSET)
|
|
633
|
+
|
|
598
634
|
def get_web_url() -> Union[Unset, str]:
|
|
599
635
|
web_url = d.pop("webURL")
|
|
600
636
|
return web_url
|
|
@@ -608,6 +644,7 @@ class RnaSequence:
|
|
|
608
644
|
|
|
609
645
|
rna_sequence = cls(
|
|
610
646
|
aliases=aliases,
|
|
647
|
+
alignment_ids=alignment_ids,
|
|
611
648
|
annotations=annotations,
|
|
612
649
|
api_url=api_url,
|
|
613
650
|
archive_record=archive_record,
|
|
@@ -633,6 +670,7 @@ class RnaSequence:
|
|
|
633
670
|
registry_id=registry_id,
|
|
634
671
|
schema=schema,
|
|
635
672
|
translations=translations,
|
|
673
|
+
url=url,
|
|
636
674
|
web_url=web_url,
|
|
637
675
|
)
|
|
638
676
|
|
|
@@ -672,6 +710,21 @@ class RnaSequence:
|
|
|
672
710
|
def aliases(self) -> None:
|
|
673
711
|
self._aliases = UNSET
|
|
674
712
|
|
|
713
|
+
@property
|
|
714
|
+
def alignment_ids(self) -> List[str]:
|
|
715
|
+
""" API IDs of Nucleotide Alignments involving the RNA sequence """
|
|
716
|
+
if isinstance(self._alignment_ids, Unset):
|
|
717
|
+
raise NotPresentError(self, "alignment_ids")
|
|
718
|
+
return self._alignment_ids
|
|
719
|
+
|
|
720
|
+
@alignment_ids.setter
|
|
721
|
+
def alignment_ids(self, value: List[str]) -> None:
|
|
722
|
+
self._alignment_ids = value
|
|
723
|
+
|
|
724
|
+
@alignment_ids.deleter
|
|
725
|
+
def alignment_ids(self) -> None:
|
|
726
|
+
self._alignment_ids = UNSET
|
|
727
|
+
|
|
675
728
|
@property
|
|
676
729
|
def annotations(self) -> List[RnaAnnotation]:
|
|
677
730
|
if isinstance(self._annotations, Unset):
|
|
@@ -1026,6 +1079,21 @@ class RnaSequence:
|
|
|
1026
1079
|
def translations(self) -> None:
|
|
1027
1080
|
self._translations = UNSET
|
|
1028
1081
|
|
|
1082
|
+
@property
|
|
1083
|
+
def url(self) -> str:
|
|
1084
|
+
""" The path of the web URL, omitting the tenant domain """
|
|
1085
|
+
if isinstance(self._url, Unset):
|
|
1086
|
+
raise NotPresentError(self, "url")
|
|
1087
|
+
return self._url
|
|
1088
|
+
|
|
1089
|
+
@url.setter
|
|
1090
|
+
def url(self, value: str) -> None:
|
|
1091
|
+
self._url = value
|
|
1092
|
+
|
|
1093
|
+
@url.deleter
|
|
1094
|
+
def url(self) -> None:
|
|
1095
|
+
self._url = UNSET
|
|
1096
|
+
|
|
1029
1097
|
@property
|
|
1030
1098
|
def web_url(self) -> str:
|
|
1031
1099
|
if isinstance(self._web_url, Unset):
|