minikai 0.1.0__tar.gz → 0.1.2__tar.gz
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.
Potentially problematic release.
This version of minikai might be problematic. Click here for more details.
- {minikai-0.1.0 → minikai-0.1.2}/PKG-INFO +2 -2
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/__init__.py +4 -2
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/add_attachments_body.py +19 -9
- minikai-0.1.2/minikai/models/document_file_metadata_dto.py +52 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record.py +14 -11
- minikai-0.1.2/minikai/models/record_tag.py +132 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_attachments_body.py +19 -9
- {minikai-0.1.0 → minikai-0.1.2}/pyproject.toml +2 -2
- minikai-0.1.0/minikai/models/record_tags.py +0 -44
- {minikai-0.1.0 → minikai-0.1.2}/CHANGELOG.md +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/README.md +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/add_minis_to_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/add_users_to_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/create_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/delete_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/get_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/get_group_minis.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/get_group_users.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/get_groups.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/remove_minis_from_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/remove_users_from_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/groups/update_group.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/create_mini.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/delete_mini.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/get_external_mini.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/get_minis.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/patch_mini.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/minis/update_mini.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/add_attachments.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/add_relations.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/create_record.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/delete_record.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/get_records_by_external.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/remove_attachments.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/remove_relations.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/update_attachments.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/update_record.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/records/update_relations.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/users/__init__.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/users/delete_api_users_minis.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/users/get_api_users_minis.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/users/get_users.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/api/users/post_api_users_minis.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/client.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/errors.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/create_group_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/create_mini_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/create_record_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/create_record_command_tags.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/document_file_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/form_field.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/form_field_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/form_field_type.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/group_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/http_validation_problem_details.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/http_validation_problem_details_errors.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/json_node.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/json_node_options.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/mini_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/mini_template_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/paginated_list_of_record_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/patch_mini_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/problem_details.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_attachment.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_attachment_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_attachment_dto_metadata_type_0.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_attachment_metadata_type_0.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_authorization.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_authorization_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_dto_tags.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_relation.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/record_relation_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/slim_mini_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/tool_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_group_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_mini_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_mini_template_workspaces_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_record_command.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/update_record_command_tags.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/user_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/user_to_mini_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/models/workspace_dto.py +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/py.typed +0 -0
- {minikai-0.1.0 → minikai-0.1.2}/minikai/types.py +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: minikai
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: A client library for accessing Minikai API
|
|
5
5
|
Requires-Dist: httpx>=0.23.0,<0.29.0
|
|
6
6
|
Requires-Dist: attrs>=22.2.0
|
|
7
7
|
Requires-Dist: python-dateutil>=2.8.0,<3
|
|
8
|
-
Requires-Python: >=3.
|
|
8
|
+
Requires-Python: >=3.9, <4.0
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
|
|
11
11
|
# minikai
|
|
@@ -6,6 +6,7 @@ from .create_mini_command import CreateMiniCommand
|
|
|
6
6
|
from .create_record_command import CreateRecordCommand
|
|
7
7
|
from .create_record_command_tags import CreateRecordCommandTags
|
|
8
8
|
from .document_file_dto import DocumentFileDto
|
|
9
|
+
from .document_file_metadata_dto import DocumentFileMetadataDto
|
|
9
10
|
from .form_field import FormField
|
|
10
11
|
from .form_field_dto import FormFieldDto
|
|
11
12
|
from .form_field_type import FormFieldType
|
|
@@ -30,7 +31,7 @@ from .record_dto import RecordDto
|
|
|
30
31
|
from .record_dto_tags import RecordDtoTags
|
|
31
32
|
from .record_relation import RecordRelation
|
|
32
33
|
from .record_relation_dto import RecordRelationDto
|
|
33
|
-
from .
|
|
34
|
+
from .record_tag import RecordTag
|
|
34
35
|
from .slim_mini_dto import SlimMiniDto
|
|
35
36
|
from .tool_dto import ToolDto
|
|
36
37
|
from .update_attachments_body import UpdateAttachmentsBody
|
|
@@ -50,6 +51,7 @@ __all__ = (
|
|
|
50
51
|
"CreateRecordCommand",
|
|
51
52
|
"CreateRecordCommandTags",
|
|
52
53
|
"DocumentFileDto",
|
|
54
|
+
"DocumentFileMetadataDto",
|
|
53
55
|
"FormField",
|
|
54
56
|
"FormFieldDto",
|
|
55
57
|
"FormFieldType",
|
|
@@ -74,7 +76,7 @@ __all__ = (
|
|
|
74
76
|
"RecordDtoTags",
|
|
75
77
|
"RecordRelation",
|
|
76
78
|
"RecordRelationDto",
|
|
77
|
-
"
|
|
79
|
+
"RecordTag",
|
|
78
80
|
"SlimMiniDto",
|
|
79
81
|
"ToolDto",
|
|
80
82
|
"UpdateAttachmentsBody",
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
2
3
|
from typing import Any, TypeVar, Union, cast
|
|
3
4
|
|
|
4
5
|
from attrs import define as _attrs_define
|
|
5
6
|
from attrs import field as _attrs_field
|
|
6
7
|
|
|
7
8
|
from .. import types
|
|
8
|
-
from ..types import UNSET, Unset
|
|
9
|
+
from ..types import UNSET, File, FileTypes, Unset
|
|
9
10
|
|
|
10
11
|
T = TypeVar("T", bound="AddAttachmentsBody")
|
|
11
12
|
|
|
@@ -14,18 +15,22 @@ T = TypeVar("T", bound="AddAttachmentsBody")
|
|
|
14
15
|
class AddAttachmentsBody:
|
|
15
16
|
"""
|
|
16
17
|
Attributes:
|
|
17
|
-
files (Union[None, Unset, list[
|
|
18
|
+
files (Union[None, Unset, list[File]]):
|
|
18
19
|
"""
|
|
19
20
|
|
|
20
|
-
files: Union[None, Unset, list[
|
|
21
|
+
files: Union[None, Unset, list[File]] = UNSET
|
|
21
22
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
23
|
|
|
23
24
|
def to_dict(self) -> dict[str, Any]:
|
|
24
|
-
files: Union[None, Unset, list[
|
|
25
|
+
files: Union[None, Unset, list[FileTypes]]
|
|
25
26
|
if isinstance(self.files, Unset):
|
|
26
27
|
files = UNSET
|
|
27
28
|
elif isinstance(self.files, list):
|
|
28
|
-
files =
|
|
29
|
+
files = []
|
|
30
|
+
for files_type_0_item_data in self.files:
|
|
31
|
+
files_type_0_item = files_type_0_item_data.to_tuple()
|
|
32
|
+
|
|
33
|
+
files.append(files_type_0_item)
|
|
29
34
|
|
|
30
35
|
else:
|
|
31
36
|
files = self.files
|
|
@@ -44,7 +49,7 @@ class AddAttachmentsBody:
|
|
|
44
49
|
if not isinstance(self.files, Unset):
|
|
45
50
|
if isinstance(self.files, list):
|
|
46
51
|
for files_type_0_item_element in self.files:
|
|
47
|
-
files.append(("files",
|
|
52
|
+
files.append(("files", files_type_0_item_element.to_tuple()))
|
|
48
53
|
else:
|
|
49
54
|
files.append(("files", (None, str(self.files).encode(), "text/plain")))
|
|
50
55
|
|
|
@@ -57,7 +62,7 @@ class AddAttachmentsBody:
|
|
|
57
62
|
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
58
63
|
d = dict(src_dict)
|
|
59
64
|
|
|
60
|
-
def _parse_files(data: object) -> Union[None, Unset, list[
|
|
65
|
+
def _parse_files(data: object) -> Union[None, Unset, list[File]]:
|
|
61
66
|
if data is None:
|
|
62
67
|
return data
|
|
63
68
|
if isinstance(data, Unset):
|
|
@@ -65,12 +70,17 @@ class AddAttachmentsBody:
|
|
|
65
70
|
try:
|
|
66
71
|
if not isinstance(data, list):
|
|
67
72
|
raise TypeError()
|
|
68
|
-
files_type_0 =
|
|
73
|
+
files_type_0 = []
|
|
74
|
+
_files_type_0 = data
|
|
75
|
+
for files_type_0_item_data in _files_type_0:
|
|
76
|
+
files_type_0_item = File(payload=BytesIO(files_type_0_item_data))
|
|
77
|
+
|
|
78
|
+
files_type_0.append(files_type_0_item)
|
|
69
79
|
|
|
70
80
|
return files_type_0
|
|
71
81
|
except: # noqa: E722
|
|
72
82
|
pass
|
|
73
|
-
return cast(Union[None, Unset, list[
|
|
83
|
+
return cast(Union[None, Unset, list[File]], data)
|
|
74
84
|
|
|
75
85
|
files = _parse_files(d.pop("files", UNSET))
|
|
76
86
|
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union, cast
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
|
|
6
|
+
from ..types import UNSET, Unset
|
|
7
|
+
|
|
8
|
+
T = TypeVar("T", bound="DocumentFileMetadataDto")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class DocumentFileMetadataDto:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
content_hash (Union[None, Unset, str]):
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
content_hash: Union[None, Unset, str] = UNSET
|
|
19
|
+
|
|
20
|
+
def to_dict(self) -> dict[str, Any]:
|
|
21
|
+
content_hash: Union[None, Unset, str]
|
|
22
|
+
if isinstance(self.content_hash, Unset):
|
|
23
|
+
content_hash = UNSET
|
|
24
|
+
else:
|
|
25
|
+
content_hash = self.content_hash
|
|
26
|
+
|
|
27
|
+
field_dict: dict[str, Any] = {}
|
|
28
|
+
|
|
29
|
+
field_dict.update({})
|
|
30
|
+
if content_hash is not UNSET:
|
|
31
|
+
field_dict["contentHash"] = content_hash
|
|
32
|
+
|
|
33
|
+
return field_dict
|
|
34
|
+
|
|
35
|
+
@classmethod
|
|
36
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
37
|
+
d = dict(src_dict)
|
|
38
|
+
|
|
39
|
+
def _parse_content_hash(data: object) -> Union[None, Unset, str]:
|
|
40
|
+
if data is None:
|
|
41
|
+
return data
|
|
42
|
+
if isinstance(data, Unset):
|
|
43
|
+
return data
|
|
44
|
+
return cast(Union[None, Unset, str], data)
|
|
45
|
+
|
|
46
|
+
content_hash = _parse_content_hash(d.pop("contentHash", UNSET))
|
|
47
|
+
|
|
48
|
+
document_file_metadata_dto = cls(
|
|
49
|
+
content_hash=content_hash,
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
return document_file_metadata_dto
|
|
@@ -12,7 +12,7 @@ if TYPE_CHECKING:
|
|
|
12
12
|
from ..models.record_attachment import RecordAttachment
|
|
13
13
|
from ..models.record_authorization import RecordAuthorization
|
|
14
14
|
from ..models.record_relation import RecordRelation
|
|
15
|
-
from ..models.
|
|
15
|
+
from ..models.record_tag import RecordTag
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
T = TypeVar("T", bound="Record")
|
|
@@ -40,7 +40,7 @@ class Record:
|
|
|
40
40
|
relations (Union[Unset, list['RecordRelation']]):
|
|
41
41
|
external_uri (Union[None, Unset, str]):
|
|
42
42
|
labels (Union[Unset, list[str]]):
|
|
43
|
-
tags (Union[Unset,
|
|
43
|
+
tags (Union[Unset, list['RecordTag']]):
|
|
44
44
|
field_ts (Union[Unset, int]):
|
|
45
45
|
"""
|
|
46
46
|
|
|
@@ -62,7 +62,7 @@ class Record:
|
|
|
62
62
|
relations: Union[Unset, list["RecordRelation"]] = UNSET
|
|
63
63
|
external_uri: Union[None, Unset, str] = UNSET
|
|
64
64
|
labels: Union[Unset, list[str]] = UNSET
|
|
65
|
-
tags: Union[Unset, "
|
|
65
|
+
tags: Union[Unset, list["RecordTag"]] = UNSET
|
|
66
66
|
field_ts: Union[Unset, int] = UNSET
|
|
67
67
|
|
|
68
68
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -154,9 +154,12 @@ class Record:
|
|
|
154
154
|
if not isinstance(self.labels, Unset):
|
|
155
155
|
labels = self.labels
|
|
156
156
|
|
|
157
|
-
tags: Union[Unset, dict[str, Any]] = UNSET
|
|
157
|
+
tags: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
158
158
|
if not isinstance(self.tags, Unset):
|
|
159
|
-
tags =
|
|
159
|
+
tags = []
|
|
160
|
+
for tags_item_data in self.tags:
|
|
161
|
+
tags_item = tags_item_data.to_dict()
|
|
162
|
+
tags.append(tags_item)
|
|
160
163
|
|
|
161
164
|
field_ts = self.field_ts
|
|
162
165
|
|
|
@@ -212,7 +215,7 @@ class Record:
|
|
|
212
215
|
from ..models.record_attachment import RecordAttachment
|
|
213
216
|
from ..models.record_authorization import RecordAuthorization
|
|
214
217
|
from ..models.record_relation import RecordRelation
|
|
215
|
-
from ..models.
|
|
218
|
+
from ..models.record_tag import RecordTag
|
|
216
219
|
|
|
217
220
|
d = dict(src_dict)
|
|
218
221
|
id = d.pop("id", UNSET)
|
|
@@ -344,12 +347,12 @@ class Record:
|
|
|
344
347
|
|
|
345
348
|
labels = cast(list[str], d.pop("labels", UNSET))
|
|
346
349
|
|
|
350
|
+
tags = []
|
|
347
351
|
_tags = d.pop("tags", UNSET)
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
tags = RecordTags.from_dict(_tags)
|
|
352
|
+
for tags_item_data in _tags or []:
|
|
353
|
+
tags_item = RecordTag.from_dict(tags_item_data)
|
|
354
|
+
|
|
355
|
+
tags.append(tags_item)
|
|
353
356
|
|
|
354
357
|
field_ts = d.pop("_ts", UNSET)
|
|
355
358
|
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from dateutil.parser import isoparse
|
|
7
|
+
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="RecordTag")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@_attrs_define
|
|
14
|
+
class RecordTag:
|
|
15
|
+
"""
|
|
16
|
+
Attributes:
|
|
17
|
+
key (Union[Unset, str]):
|
|
18
|
+
value_string (Union[None, Unset, str]):
|
|
19
|
+
value_number (Union[None, Unset, float]):
|
|
20
|
+
value_boolean (Union[None, Unset, bool]):
|
|
21
|
+
value_date (Union[None, Unset, datetime.datetime]):
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
key: Union[Unset, str] = UNSET
|
|
25
|
+
value_string: Union[None, Unset, str] = UNSET
|
|
26
|
+
value_number: Union[None, Unset, float] = UNSET
|
|
27
|
+
value_boolean: Union[None, Unset, bool] = UNSET
|
|
28
|
+
value_date: Union[None, Unset, datetime.datetime] = UNSET
|
|
29
|
+
|
|
30
|
+
def to_dict(self) -> dict[str, Any]:
|
|
31
|
+
key = self.key
|
|
32
|
+
|
|
33
|
+
value_string: Union[None, Unset, str]
|
|
34
|
+
if isinstance(self.value_string, Unset):
|
|
35
|
+
value_string = UNSET
|
|
36
|
+
else:
|
|
37
|
+
value_string = self.value_string
|
|
38
|
+
|
|
39
|
+
value_number: Union[None, Unset, float]
|
|
40
|
+
if isinstance(self.value_number, Unset):
|
|
41
|
+
value_number = UNSET
|
|
42
|
+
else:
|
|
43
|
+
value_number = self.value_number
|
|
44
|
+
|
|
45
|
+
value_boolean: Union[None, Unset, bool]
|
|
46
|
+
if isinstance(self.value_boolean, Unset):
|
|
47
|
+
value_boolean = UNSET
|
|
48
|
+
else:
|
|
49
|
+
value_boolean = self.value_boolean
|
|
50
|
+
|
|
51
|
+
value_date: Union[None, Unset, str]
|
|
52
|
+
if isinstance(self.value_date, Unset):
|
|
53
|
+
value_date = UNSET
|
|
54
|
+
elif isinstance(self.value_date, datetime.datetime):
|
|
55
|
+
value_date = self.value_date.isoformat()
|
|
56
|
+
else:
|
|
57
|
+
value_date = self.value_date
|
|
58
|
+
|
|
59
|
+
field_dict: dict[str, Any] = {}
|
|
60
|
+
|
|
61
|
+
field_dict.update({})
|
|
62
|
+
if key is not UNSET:
|
|
63
|
+
field_dict["key"] = key
|
|
64
|
+
if value_string is not UNSET:
|
|
65
|
+
field_dict["valueString"] = value_string
|
|
66
|
+
if value_number is not UNSET:
|
|
67
|
+
field_dict["valueNumber"] = value_number
|
|
68
|
+
if value_boolean is not UNSET:
|
|
69
|
+
field_dict["valueBoolean"] = value_boolean
|
|
70
|
+
if value_date is not UNSET:
|
|
71
|
+
field_dict["valueDate"] = value_date
|
|
72
|
+
|
|
73
|
+
return field_dict
|
|
74
|
+
|
|
75
|
+
@classmethod
|
|
76
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
77
|
+
d = dict(src_dict)
|
|
78
|
+
key = d.pop("key", UNSET)
|
|
79
|
+
|
|
80
|
+
def _parse_value_string(data: object) -> Union[None, Unset, str]:
|
|
81
|
+
if data is None:
|
|
82
|
+
return data
|
|
83
|
+
if isinstance(data, Unset):
|
|
84
|
+
return data
|
|
85
|
+
return cast(Union[None, Unset, str], data)
|
|
86
|
+
|
|
87
|
+
value_string = _parse_value_string(d.pop("valueString", UNSET))
|
|
88
|
+
|
|
89
|
+
def _parse_value_number(data: object) -> Union[None, Unset, float]:
|
|
90
|
+
if data is None:
|
|
91
|
+
return data
|
|
92
|
+
if isinstance(data, Unset):
|
|
93
|
+
return data
|
|
94
|
+
return cast(Union[None, Unset, float], data)
|
|
95
|
+
|
|
96
|
+
value_number = _parse_value_number(d.pop("valueNumber", UNSET))
|
|
97
|
+
|
|
98
|
+
def _parse_value_boolean(data: object) -> Union[None, Unset, bool]:
|
|
99
|
+
if data is None:
|
|
100
|
+
return data
|
|
101
|
+
if isinstance(data, Unset):
|
|
102
|
+
return data
|
|
103
|
+
return cast(Union[None, Unset, bool], data)
|
|
104
|
+
|
|
105
|
+
value_boolean = _parse_value_boolean(d.pop("valueBoolean", UNSET))
|
|
106
|
+
|
|
107
|
+
def _parse_value_date(data: object) -> Union[None, Unset, datetime.datetime]:
|
|
108
|
+
if data is None:
|
|
109
|
+
return data
|
|
110
|
+
if isinstance(data, Unset):
|
|
111
|
+
return data
|
|
112
|
+
try:
|
|
113
|
+
if not isinstance(data, str):
|
|
114
|
+
raise TypeError()
|
|
115
|
+
value_date_type_0 = isoparse(data)
|
|
116
|
+
|
|
117
|
+
return value_date_type_0
|
|
118
|
+
except: # noqa: E722
|
|
119
|
+
pass
|
|
120
|
+
return cast(Union[None, Unset, datetime.datetime], data)
|
|
121
|
+
|
|
122
|
+
value_date = _parse_value_date(d.pop("valueDate", UNSET))
|
|
123
|
+
|
|
124
|
+
record_tag = cls(
|
|
125
|
+
key=key,
|
|
126
|
+
value_string=value_string,
|
|
127
|
+
value_number=value_number,
|
|
128
|
+
value_boolean=value_boolean,
|
|
129
|
+
value_date=value_date,
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
return record_tag
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
2
3
|
from typing import Any, TypeVar, Union, cast
|
|
3
4
|
|
|
4
5
|
from attrs import define as _attrs_define
|
|
5
6
|
from attrs import field as _attrs_field
|
|
6
7
|
|
|
7
8
|
from .. import types
|
|
8
|
-
from ..types import UNSET, Unset
|
|
9
|
+
from ..types import UNSET, File, FileTypes, Unset
|
|
9
10
|
|
|
10
11
|
T = TypeVar("T", bound="UpdateAttachmentsBody")
|
|
11
12
|
|
|
@@ -14,18 +15,22 @@ T = TypeVar("T", bound="UpdateAttachmentsBody")
|
|
|
14
15
|
class UpdateAttachmentsBody:
|
|
15
16
|
"""
|
|
16
17
|
Attributes:
|
|
17
|
-
files (Union[None, Unset, list[
|
|
18
|
+
files (Union[None, Unset, list[File]]):
|
|
18
19
|
"""
|
|
19
20
|
|
|
20
|
-
files: Union[None, Unset, list[
|
|
21
|
+
files: Union[None, Unset, list[File]] = UNSET
|
|
21
22
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
23
|
|
|
23
24
|
def to_dict(self) -> dict[str, Any]:
|
|
24
|
-
files: Union[None, Unset, list[
|
|
25
|
+
files: Union[None, Unset, list[FileTypes]]
|
|
25
26
|
if isinstance(self.files, Unset):
|
|
26
27
|
files = UNSET
|
|
27
28
|
elif isinstance(self.files, list):
|
|
28
|
-
files =
|
|
29
|
+
files = []
|
|
30
|
+
for files_type_0_item_data in self.files:
|
|
31
|
+
files_type_0_item = files_type_0_item_data.to_tuple()
|
|
32
|
+
|
|
33
|
+
files.append(files_type_0_item)
|
|
29
34
|
|
|
30
35
|
else:
|
|
31
36
|
files = self.files
|
|
@@ -44,7 +49,7 @@ class UpdateAttachmentsBody:
|
|
|
44
49
|
if not isinstance(self.files, Unset):
|
|
45
50
|
if isinstance(self.files, list):
|
|
46
51
|
for files_type_0_item_element in self.files:
|
|
47
|
-
files.append(("files",
|
|
52
|
+
files.append(("files", files_type_0_item_element.to_tuple()))
|
|
48
53
|
else:
|
|
49
54
|
files.append(("files", (None, str(self.files).encode(), "text/plain")))
|
|
50
55
|
|
|
@@ -57,7 +62,7 @@ class UpdateAttachmentsBody:
|
|
|
57
62
|
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
58
63
|
d = dict(src_dict)
|
|
59
64
|
|
|
60
|
-
def _parse_files(data: object) -> Union[None, Unset, list[
|
|
65
|
+
def _parse_files(data: object) -> Union[None, Unset, list[File]]:
|
|
61
66
|
if data is None:
|
|
62
67
|
return data
|
|
63
68
|
if isinstance(data, Unset):
|
|
@@ -65,12 +70,17 @@ class UpdateAttachmentsBody:
|
|
|
65
70
|
try:
|
|
66
71
|
if not isinstance(data, list):
|
|
67
72
|
raise TypeError()
|
|
68
|
-
files_type_0 =
|
|
73
|
+
files_type_0 = []
|
|
74
|
+
_files_type_0 = data
|
|
75
|
+
for files_type_0_item_data in _files_type_0:
|
|
76
|
+
files_type_0_item = File(payload=BytesIO(files_type_0_item_data))
|
|
77
|
+
|
|
78
|
+
files_type_0.append(files_type_0_item)
|
|
69
79
|
|
|
70
80
|
return files_type_0
|
|
71
81
|
except: # noqa: E722
|
|
72
82
|
pass
|
|
73
|
-
return cast(Union[None, Unset, list[
|
|
83
|
+
return cast(Union[None, Unset, list[File]], data)
|
|
74
84
|
|
|
75
85
|
files = _parse_files(d.pop("files", UNSET))
|
|
76
86
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "minikai"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.2"
|
|
4
4
|
description = "A client library for accessing Minikai API"
|
|
5
5
|
authors = []
|
|
6
|
-
requires-python = ">=3.
|
|
6
|
+
requires-python = ">=3.9,<4.0"
|
|
7
7
|
readme = "README.md"
|
|
8
8
|
dependencies = [
|
|
9
9
|
"httpx>=0.23.0,<0.29.0",
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
from collections.abc import Mapping
|
|
2
|
-
from typing import Any, TypeVar
|
|
3
|
-
|
|
4
|
-
from attrs import define as _attrs_define
|
|
5
|
-
from attrs import field as _attrs_field
|
|
6
|
-
|
|
7
|
-
T = TypeVar("T", bound="RecordTags")
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
@_attrs_define
|
|
11
|
-
class RecordTags:
|
|
12
|
-
""" """
|
|
13
|
-
|
|
14
|
-
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
15
|
-
|
|
16
|
-
def to_dict(self) -> dict[str, Any]:
|
|
17
|
-
field_dict: dict[str, Any] = {}
|
|
18
|
-
field_dict.update(self.additional_properties)
|
|
19
|
-
|
|
20
|
-
return field_dict
|
|
21
|
-
|
|
22
|
-
@classmethod
|
|
23
|
-
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
24
|
-
d = dict(src_dict)
|
|
25
|
-
record_tags = cls()
|
|
26
|
-
|
|
27
|
-
record_tags.additional_properties = d
|
|
28
|
-
return record_tags
|
|
29
|
-
|
|
30
|
-
@property
|
|
31
|
-
def additional_keys(self) -> list[str]:
|
|
32
|
-
return list(self.additional_properties.keys())
|
|
33
|
-
|
|
34
|
-
def __getitem__(self, key: str) -> Any:
|
|
35
|
-
return self.additional_properties[key]
|
|
36
|
-
|
|
37
|
-
def __setitem__(self, key: str, value: Any) -> None:
|
|
38
|
-
self.additional_properties[key] = value
|
|
39
|
-
|
|
40
|
-
def __delitem__(self, key: str) -> None:
|
|
41
|
-
del self.additional_properties[key]
|
|
42
|
-
|
|
43
|
-
def __contains__(self, key: str) -> bool:
|
|
44
|
-
return key in self.additional_properties
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|