dart-tools 0.6.15__py3-none-any.whl → 0.7.0__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.
Potentially problematic release.
This version of dart-tools might be problematic. Click here for more details.
- dart/__init__.py +8 -6
- dart/dart.py +421 -698
- dart/generated/__init__.py +1 -1
- dart/generated/api/__init__.py +8 -0
- dart/generated/api/comment/__init__.py +1 -0
- dart/generated/api/{transactions/transactions_create.py → comment/create_comment.py} +57 -58
- dart/generated/api/config/__init__.py +1 -0
- dart/generated/api/config/get_config.py +141 -0
- dart/generated/api/dartboard/__init__.py +1 -0
- dart/generated/api/{attachments/attachments_list.py → dartboard/retrieve_dartboard.py} +58 -62
- dart/generated/api/doc/__init__.py +1 -0
- dart/generated/api/doc/create_doc.py +179 -0
- dart/generated/api/doc/delete_doc.py +165 -0
- dart/generated/api/{comments/comments_list.py → doc/list_docs.py} +115 -111
- dart/generated/api/{forms/forms_list.py → doc/retrieve_doc.py} +58 -62
- dart/generated/api/doc/update_doc.py +188 -0
- dart/generated/api/folder/__init__.py +1 -0
- dart/generated/api/{webhooks/webhooks_list.py → folder/retrieve_folder.py} +58 -62
- dart/generated/api/task/__init__.py +1 -0
- dart/generated/api/task/create_task.py +172 -0
- dart/generated/api/task/delete_task.py +165 -0
- dart/generated/api/task/list_tasks.py +497 -0
- dart/generated/api/{layouts/layouts_list.py → task/retrieve_task.py} +58 -62
- dart/generated/api/task/update_task.py +188 -0
- dart/generated/api/view/__init__.py +1 -0
- dart/generated/api/{tenants/tenants_list.py → view/retrieve_view.py} +58 -62
- dart/generated/client.py +13 -13
- dart/generated/models/__init__.py +34 -342
- dart/generated/models/comment.py +34 -150
- dart/generated/models/comment_create.py +18 -97
- dart/generated/models/concise_doc.py +84 -0
- dart/generated/models/concise_task.py +267 -0
- dart/generated/models/dartboard.py +37 -237
- dart/generated/models/doc.py +31 -183
- dart/generated/models/doc_create.py +22 -238
- dart/generated/models/doc_update.py +26 -233
- dart/generated/models/folder.py +39 -84
- dart/generated/models/list_docs_o_item.py +15 -0
- dart/generated/models/{paginated_attachment_list.py → paginated_concise_doc_list.py} +18 -17
- dart/generated/models/{paginated_dartboard_list.py → paginated_concise_task_list.py} +18 -17
- dart/generated/models/task.py +149 -406
- dart/generated/models/task_create.py +113 -428
- dart/generated/models/task_update.py +113 -421
- dart/generated/models/user.py +14 -192
- dart/generated/models/user_space_configuration.py +147 -0
- dart/generated/models/view.py +39 -149
- dart/generated/models/wrapped_comment.py +65 -0
- dart/generated/models/wrapped_comment_create.py +65 -0
- dart/generated/models/wrapped_dartboard.py +65 -0
- dart/generated/models/wrapped_doc.py +65 -0
- dart/generated/models/wrapped_doc_create.py +65 -0
- dart/generated/models/wrapped_doc_update.py +65 -0
- dart/generated/models/wrapped_folder.py +65 -0
- dart/generated/models/wrapped_task.py +65 -0
- dart/generated/models/wrapped_task_create.py +65 -0
- dart/generated/models/wrapped_task_update.py +65 -0
- dart/generated/models/wrapped_view.py +65 -0
- dart/generated/types.py +4 -3
- dart/old.py +216 -0
- dart/order_manager.py +4 -15
- dart/webhook.py +2 -7
- {dart_tools-0.6.15.dist-info → dart_tools-0.7.0.dist-info}/METADATA +15 -75
- dart_tools-0.7.0.dist-info/RECORD +71 -0
- {dart_tools-0.6.15.dist-info → dart_tools-0.7.0.dist-info}/WHEEL +1 -1
- dart/generated/api/attachments/__init__.py +0 -0
- dart/generated/api/comments/__init__.py +0 -0
- dart/generated/api/dartboards/__init__.py +0 -0
- dart/generated/api/dartboards/dartboards_list.py +0 -286
- dart/generated/api/dashboards/__init__.py +0 -0
- dart/generated/api/dashboards/dashboards_list.py +0 -199
- dart/generated/api/docs/__init__.py +0 -0
- dart/generated/api/docs/docs_list.py +0 -387
- dart/generated/api/folders/__init__.py +0 -0
- dart/generated/api/folders/folders_list.py +0 -249
- dart/generated/api/form_fields/__init__.py +0 -0
- dart/generated/api/form_fields/form_fields_list.py +0 -169
- dart/generated/api/forms/__init__.py +0 -0
- dart/generated/api/layouts/__init__.py +0 -0
- dart/generated/api/links/__init__.py +0 -0
- dart/generated/api/links/links_list.py +0 -169
- dart/generated/api/options/__init__.py +0 -0
- dart/generated/api/options/options_list.py +0 -244
- dart/generated/api/properties/__init__.py +0 -0
- dart/generated/api/properties/properties_list.py +0 -219
- dart/generated/api/reactions/__init__.py +0 -0
- dart/generated/api/reactions/reactions_list.py +0 -169
- dart/generated/api/relationship_kinds/__init__.py +0 -0
- dart/generated/api/relationship_kinds/relationship_kinds_list.py +0 -169
- dart/generated/api/relationships/__init__.py +0 -0
- dart/generated/api/relationships/relationships_list.py +0 -169
- dart/generated/api/spaces/__init__.py +0 -0
- dart/generated/api/spaces/spaces_list.py +0 -229
- dart/generated/api/statuses/__init__.py +0 -0
- dart/generated/api/statuses/statuses_list.py +0 -264
- dart/generated/api/task_doc_relationships/__init__.py +0 -0
- dart/generated/api/task_doc_relationships/task_doc_relationships_list.py +0 -169
- dart/generated/api/task_kinds/__init__.py +0 -0
- dart/generated/api/task_kinds/task_kinds_list.py +0 -219
- dart/generated/api/tasks/__init__.py +0 -0
- dart/generated/api/tasks/tasks_list.py +0 -461
- dart/generated/api/tenants/__init__.py +0 -0
- dart/generated/api/transactions/__init__.py +0 -0
- dart/generated/api/user_dartboard_layouts/__init__.py +0 -0
- dart/generated/api/user_dartboard_layouts/user_dartboard_layouts_list.py +0 -169
- dart/generated/api/user_data/__init__.py +0 -0
- dart/generated/api/user_data/user_data_entity_retrieve.py +0 -580
- dart/generated/api/users/__init__.py +0 -0
- dart/generated/api/users/users_list.py +0 -229
- dart/generated/api/views/__init__.py +0 -0
- dart/generated/api/views/views_list.py +0 -199
- dart/generated/api/webhooks/__init__.py +0 -0
- dart/generated/models/attachment.py +0 -112
- dart/generated/models/attachment_create.py +0 -121
- dart/generated/models/attachment_update.py +0 -125
- dart/generated/models/bar_chart_adtl.py +0 -98
- dart/generated/models/brainstorm.py +0 -149
- dart/generated/models/brainstorm_create.py +0 -134
- dart/generated/models/brainstorm_state.py +0 -10
- dart/generated/models/brainstorm_update.py +0 -153
- dart/generated/models/burn_up_chart_adtl.py +0 -103
- dart/generated/models/chart.py +0 -208
- dart/generated/models/chart_aggregation.py +0 -10
- dart/generated/models/chart_type.py +0 -14
- dart/generated/models/comment_reaction.py +0 -84
- dart/generated/models/comment_reaction_create.py +0 -82
- dart/generated/models/comment_reaction_update.py +0 -87
- dart/generated/models/comment_update.py +0 -148
- dart/generated/models/dartboard_create.py +0 -315
- dart/generated/models/dartboard_kind.py +0 -12
- dart/generated/models/dartboard_update.py +0 -317
- dart/generated/models/dartboards_list_kind.py +0 -12
- dart/generated/models/dashboard.py +0 -185
- dart/generated/models/dashboard_create.py +0 -171
- dart/generated/models/dashboard_update.py +0 -173
- dart/generated/models/discord_integration.py +0 -72
- dart/generated/models/doc_source_type.py +0 -13
- dart/generated/models/docs_list_o_item.py +0 -15
- dart/generated/models/entity_name.py +0 -22
- dart/generated/models/event.py +0 -420
- dart/generated/models/event_actor.py +0 -19
- dart/generated/models/event_create.py +0 -158
- dart/generated/models/event_kind.py +0 -88
- dart/generated/models/event_subscription.py +0 -74
- dart/generated/models/event_subscription_update.py +0 -173
- dart/generated/models/filter_applicability.py +0 -22
- dart/generated/models/filter_assignee.py +0 -116
- dart/generated/models/filter_connector.py +0 -9
- dart/generated/models/filter_group.py +0 -112
- dart/generated/models/filter_search.py +0 -82
- dart/generated/models/filter_set.py +0 -116
- dart/generated/models/folder_create.py +0 -150
- dart/generated/models/folder_kind.py +0 -10
- dart/generated/models/folder_update.py +0 -152
- dart/generated/models/folders_list_kind.py +0 -10
- dart/generated/models/form.py +0 -147
- dart/generated/models/form_create.py +0 -141
- dart/generated/models/form_field.py +0 -144
- dart/generated/models/form_field_create.py +0 -129
- dart/generated/models/form_field_update.py +0 -132
- dart/generated/models/form_update.py +0 -142
- dart/generated/models/github_integration.py +0 -163
- dart/generated/models/github_integration_tenant_extension_status.py +0 -11
- dart/generated/models/google_data.py +0 -94
- dart/generated/models/icon_kind.py +0 -10
- dart/generated/models/layout.py +0 -167
- dart/generated/models/layout_config.py +0 -70
- dart/generated/models/layout_create.py +0 -130
- dart/generated/models/layout_kind.py +0 -11
- dart/generated/models/layout_kind_config_map.py +0 -56
- dart/generated/models/layout_update.py +0 -130
- dart/generated/models/line_chart_adtl.py +0 -72
- dart/generated/models/models_response.py +0 -671
- dart/generated/models/notification.py +0 -120
- dart/generated/models/notification_update.py +0 -100
- dart/generated/models/notion_integration.py +0 -90
- dart/generated/models/notion_integration_tenant_extension_status.py +0 -10
- dart/generated/models/number_chart_adtl.py +0 -77
- dart/generated/models/operation.py +0 -874
- dart/generated/models/operation_kind.py +0 -12
- dart/generated/models/operation_model_kind.py +0 -36
- dart/generated/models/option.py +0 -118
- dart/generated/models/option_create.py +0 -105
- dart/generated/models/option_update.py +0 -107
- dart/generated/models/paginated_comment_list.py +0 -122
- dart/generated/models/paginated_comment_reaction_list.py +0 -122
- dart/generated/models/paginated_dashboard_list.py +0 -122
- dart/generated/models/paginated_doc_list.py +0 -122
- dart/generated/models/paginated_folder_list.py +0 -122
- dart/generated/models/paginated_form_field_list.py +0 -122
- dart/generated/models/paginated_form_list.py +0 -122
- dart/generated/models/paginated_layout_list.py +0 -122
- dart/generated/models/paginated_option_list.py +0 -122
- dart/generated/models/paginated_property_list.py +0 -122
- dart/generated/models/paginated_relationship_kind_list.py +0 -122
- dart/generated/models/paginated_relationship_list.py +0 -122
- dart/generated/models/paginated_space_list.py +0 -122
- dart/generated/models/paginated_status_list.py +0 -122
- dart/generated/models/paginated_task_doc_relationship_list.py +0 -122
- dart/generated/models/paginated_task_kind_list.py +0 -122
- dart/generated/models/paginated_task_link_list.py +0 -122
- dart/generated/models/paginated_task_list.py +0 -122
- dart/generated/models/paginated_tenant_list.py +0 -122
- dart/generated/models/paginated_user_dartboard_layout_list.py +0 -122
- dart/generated/models/paginated_user_list.py +0 -122
- dart/generated/models/paginated_view_list.py +0 -122
- dart/generated/models/paginated_webhook_list.py +0 -122
- dart/generated/models/pie_chart_adtl.py +0 -69
- dart/generated/models/pie_chart_display_metric.py +0 -9
- dart/generated/models/properties_list_kind.py +0 -32
- dart/generated/models/property_.py +0 -153
- dart/generated/models/property_create.py +0 -137
- dart/generated/models/property_kind.py +0 -32
- dart/generated/models/property_update.py +0 -146
- dart/generated/models/relationship.py +0 -74
- dart/generated/models/relationship_create.py +0 -93
- dart/generated/models/relationship_kind.py +0 -123
- dart/generated/models/relationship_kind_create.py +0 -117
- dart/generated/models/relationship_kind_kind.py +0 -12
- dart/generated/models/relationship_kind_update.py +0 -119
- dart/generated/models/report_kind.py +0 -9
- dart/generated/models/request_body.py +0 -80
- dart/generated/models/response_body.py +0 -72
- dart/generated/models/saml_config.py +0 -77
- dart/generated/models/saml_config_tenant_extension_status.py +0 -9
- dart/generated/models/slack_integration.py +0 -90
- dart/generated/models/slack_integration_tenant_extension_status.py +0 -10
- dart/generated/models/sort.py +0 -66
- dart/generated/models/space.py +0 -311
- dart/generated/models/space_create.py +0 -340
- dart/generated/models/space_kind.py +0 -10
- dart/generated/models/space_update.py +0 -341
- dart/generated/models/sprint_mode.py +0 -9
- dart/generated/models/status.py +0 -141
- dart/generated/models/status_create.py +0 -125
- dart/generated/models/status_kind.py +0 -12
- dart/generated/models/status_update.py +0 -135
- dart/generated/models/statuses_list_kind.py +0 -12
- dart/generated/models/subscription.py +0 -9
- dart/generated/models/subtask_display_mode.py +0 -10
- dart/generated/models/summary_statistic_kind.py +0 -14
- dart/generated/models/table_chart_adtl.py +0 -98
- dart/generated/models/task_detail_mode.py +0 -10
- dart/generated/models/task_doc_relationship.py +0 -96
- dart/generated/models/task_doc_relationship_create.py +0 -74
- dart/generated/models/task_kind.py +0 -149
- dart/generated/models/task_kind_create.py +0 -144
- dart/generated/models/task_kind_kind.py +0 -9
- dart/generated/models/task_kind_update.py +0 -153
- dart/generated/models/task_kinds_list_kind.py +0 -9
- dart/generated/models/task_link.py +0 -131
- dart/generated/models/task_link_create.py +0 -152
- dart/generated/models/task_link_kind.py +0 -19
- dart/generated/models/task_link_update.py +0 -155
- dart/generated/models/task_notion_document.py +0 -196
- dart/generated/models/task_notion_document_block_children_map_type_0.py +0 -43
- dart/generated/models/task_notion_document_block_map_type_0.py +0 -43
- dart/generated/models/task_notion_document_page_map_type_0.py +0 -43
- dart/generated/models/task_properties.py +0 -43
- dart/generated/models/task_source_type.py +0 -31
- dart/generated/models/tenant.py +0 -386
- dart/generated/models/tenant_update.py +0 -166
- dart/generated/models/theme.py +0 -10
- dart/generated/models/transaction.py +0 -158
- dart/generated/models/transaction_kind.py +0 -74
- dart/generated/models/transaction_response.py +0 -96
- dart/generated/models/user_dartboard_layout.py +0 -66
- dart/generated/models/user_dartboard_layout_create.py +0 -74
- dart/generated/models/user_data_entity_retrieve_entity_kind.py +0 -32
- dart/generated/models/user_role.py +0 -12
- dart/generated/models/user_status.py +0 -12
- dart/generated/models/user_update.py +0 -210
- dart/generated/models/validation_error_response.py +0 -64
- dart/generated/models/validation_error_response_items.py +0 -43
- dart/generated/models/view_create.py +0 -213
- dart/generated/models/view_kind.py +0 -11
- dart/generated/models/view_update.py +0 -215
- dart/generated/models/webhook.py +0 -96
- dart/generated/models/webhook_create.py +0 -77
- dart/generated/models/webhook_update.py +0 -78
- dart/generated/models/zapier_integration.py +0 -66
- dart_tools-0.6.15.dist-info/RECORD +0 -257
- dart_tools-0.6.15.dist-info/dist/dart-tools-0.3.3.tar.gz +0 -0
- {dart_tools-0.6.15.dist-info → dart_tools-0.7.0.dist-info}/entry_points.txt +0 -0
- {dart_tools-0.6.15.dist-info → dart_tools-0.7.0.dist-info/licenses}/LICENSE +0 -0
- {dart_tools-0.6.15.dist-info → dart_tools-0.7.0.dist-info}/top_level.txt +0 -0
dart/generated/models/comment.py
CHANGED
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
from typing import
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
3
|
|
|
4
4
|
from attrs import define as _attrs_define
|
|
5
5
|
from attrs import field as _attrs_field
|
|
6
|
-
from dateutil.parser import isoparse
|
|
7
|
-
|
|
8
|
-
from ..types import UNSET, Unset
|
|
9
|
-
|
|
10
|
-
if TYPE_CHECKING:
|
|
11
|
-
from ..models.comment_reaction import CommentReaction
|
|
12
|
-
|
|
13
6
|
|
|
14
7
|
T = TypeVar("T", bound="Comment")
|
|
15
8
|
|
|
@@ -18,180 +11,71 @@ T = TypeVar("T", bound="Comment")
|
|
|
18
11
|
class Comment:
|
|
19
12
|
"""
|
|
20
13
|
Attributes:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
authored_by_ai (bool):
|
|
27
|
-
author_duid (str):
|
|
28
|
-
text (Any):
|
|
29
|
-
published_at (Union[None, datetime.datetime]):
|
|
30
|
-
reactions (List['CommentReaction']):
|
|
31
|
-
is_draft (bool):
|
|
32
|
-
edited (bool):
|
|
33
|
-
updated_by_client_duid (Union[None, Unset, str]):
|
|
14
|
+
id (str): The universal, unique ID of the comment.
|
|
15
|
+
html_url (str): The URL that can be used to open the comment in the Dart web UI.
|
|
16
|
+
task_id (str): The universal, unique ID of the task that the comment is associated with.
|
|
17
|
+
author (str): The name or email of the user that authored the comment.
|
|
18
|
+
text (str): The full content of the comment, which can include markdown formatting.
|
|
34
19
|
"""
|
|
35
20
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
author_duid: str
|
|
43
|
-
text: Any
|
|
44
|
-
published_at: Union[None, datetime.datetime]
|
|
45
|
-
reactions: List["CommentReaction"]
|
|
46
|
-
is_draft: bool
|
|
47
|
-
edited: bool
|
|
48
|
-
updated_by_client_duid: Union[None, Unset, str] = UNSET
|
|
49
|
-
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
50
|
-
|
|
51
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
52
|
-
duid = self.duid
|
|
21
|
+
id: str
|
|
22
|
+
html_url: str
|
|
23
|
+
task_id: str
|
|
24
|
+
author: str
|
|
25
|
+
text: str
|
|
26
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
53
27
|
|
|
54
|
-
|
|
28
|
+
def to_dict(self) -> dict[str, Any]:
|
|
29
|
+
id = self.id
|
|
55
30
|
|
|
56
|
-
|
|
31
|
+
html_url = self.html_url
|
|
57
32
|
|
|
58
|
-
|
|
33
|
+
task_id = self.task_id
|
|
59
34
|
|
|
60
|
-
|
|
61
|
-
root_duid = self.root_duid
|
|
62
|
-
|
|
63
|
-
authored_by_ai = self.authored_by_ai
|
|
64
|
-
|
|
65
|
-
author_duid = self.author_duid
|
|
35
|
+
author = self.author
|
|
66
36
|
|
|
67
37
|
text = self.text
|
|
68
38
|
|
|
69
|
-
|
|
70
|
-
if isinstance(self.published_at, datetime.datetime):
|
|
71
|
-
published_at = self.published_at.isoformat()
|
|
72
|
-
else:
|
|
73
|
-
published_at = self.published_at
|
|
74
|
-
|
|
75
|
-
reactions = []
|
|
76
|
-
for reactions_item_data in self.reactions:
|
|
77
|
-
reactions_item = reactions_item_data.to_dict()
|
|
78
|
-
reactions.append(reactions_item)
|
|
79
|
-
|
|
80
|
-
is_draft = self.is_draft
|
|
81
|
-
|
|
82
|
-
edited = self.edited
|
|
83
|
-
|
|
84
|
-
updated_by_client_duid: Union[None, Unset, str]
|
|
85
|
-
if isinstance(self.updated_by_client_duid, Unset):
|
|
86
|
-
updated_by_client_duid = UNSET
|
|
87
|
-
else:
|
|
88
|
-
updated_by_client_duid = self.updated_by_client_duid
|
|
89
|
-
|
|
90
|
-
field_dict: Dict[str, Any] = {}
|
|
39
|
+
field_dict: dict[str, Any] = {}
|
|
91
40
|
field_dict.update(self.additional_properties)
|
|
92
41
|
field_dict.update(
|
|
93
42
|
{
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"rootDuid": root_duid,
|
|
99
|
-
"authoredByAi": authored_by_ai,
|
|
100
|
-
"authorDuid": author_duid,
|
|
43
|
+
"id": id,
|
|
44
|
+
"htmlUrl": html_url,
|
|
45
|
+
"taskId": task_id,
|
|
46
|
+
"author": author,
|
|
101
47
|
"text": text,
|
|
102
|
-
"publishedAt": published_at,
|
|
103
|
-
"reactions": reactions,
|
|
104
|
-
"isDraft": is_draft,
|
|
105
|
-
"edited": edited,
|
|
106
48
|
}
|
|
107
49
|
)
|
|
108
|
-
if updated_by_client_duid is not UNSET:
|
|
109
|
-
field_dict["updatedByClientDuid"] = updated_by_client_duid
|
|
110
50
|
|
|
111
51
|
return field_dict
|
|
112
52
|
|
|
113
53
|
@classmethod
|
|
114
|
-
def from_dict(cls:
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
d = src_dict.copy()
|
|
118
|
-
duid = d.pop("duid")
|
|
119
|
-
|
|
120
|
-
created_at = isoparse(d.pop("createdAt"))
|
|
54
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
55
|
+
d = dict(src_dict)
|
|
56
|
+
id = d.pop("id")
|
|
121
57
|
|
|
122
|
-
|
|
58
|
+
html_url = d.pop("htmlUrl")
|
|
123
59
|
|
|
124
|
-
|
|
60
|
+
task_id = d.pop("taskId")
|
|
125
61
|
|
|
126
|
-
|
|
127
|
-
if data is None:
|
|
128
|
-
return data
|
|
129
|
-
return cast(Union[None, str], data)
|
|
130
|
-
|
|
131
|
-
root_duid = _parse_root_duid(d.pop("rootDuid"))
|
|
132
|
-
|
|
133
|
-
authored_by_ai = d.pop("authoredByAi")
|
|
134
|
-
|
|
135
|
-
author_duid = d.pop("authorDuid")
|
|
62
|
+
author = d.pop("author")
|
|
136
63
|
|
|
137
64
|
text = d.pop("text")
|
|
138
65
|
|
|
139
|
-
def _parse_published_at(data: object) -> Union[None, datetime.datetime]:
|
|
140
|
-
if data is None:
|
|
141
|
-
return data
|
|
142
|
-
try:
|
|
143
|
-
if not isinstance(data, str):
|
|
144
|
-
raise TypeError()
|
|
145
|
-
published_at_type_0 = isoparse(data)
|
|
146
|
-
|
|
147
|
-
return published_at_type_0
|
|
148
|
-
except: # noqa: E722
|
|
149
|
-
pass
|
|
150
|
-
return cast(Union[None, datetime.datetime], data)
|
|
151
|
-
|
|
152
|
-
published_at = _parse_published_at(d.pop("publishedAt"))
|
|
153
|
-
|
|
154
|
-
reactions = []
|
|
155
|
-
_reactions = d.pop("reactions")
|
|
156
|
-
for reactions_item_data in _reactions:
|
|
157
|
-
reactions_item = CommentReaction.from_dict(reactions_item_data)
|
|
158
|
-
|
|
159
|
-
reactions.append(reactions_item)
|
|
160
|
-
|
|
161
|
-
is_draft = d.pop("isDraft")
|
|
162
|
-
|
|
163
|
-
edited = d.pop("edited")
|
|
164
|
-
|
|
165
|
-
def _parse_updated_by_client_duid(data: object) -> Union[None, Unset, str]:
|
|
166
|
-
if data is None:
|
|
167
|
-
return data
|
|
168
|
-
if isinstance(data, Unset):
|
|
169
|
-
return data
|
|
170
|
-
return cast(Union[None, Unset, str], data)
|
|
171
|
-
|
|
172
|
-
updated_by_client_duid = _parse_updated_by_client_duid(d.pop("updatedByClientDuid", UNSET))
|
|
173
|
-
|
|
174
66
|
comment = cls(
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
root_duid=root_duid,
|
|
180
|
-
authored_by_ai=authored_by_ai,
|
|
181
|
-
author_duid=author_duid,
|
|
67
|
+
id=id,
|
|
68
|
+
html_url=html_url,
|
|
69
|
+
task_id=task_id,
|
|
70
|
+
author=author,
|
|
182
71
|
text=text,
|
|
183
|
-
published_at=published_at,
|
|
184
|
-
reactions=reactions,
|
|
185
|
-
is_draft=is_draft,
|
|
186
|
-
edited=edited,
|
|
187
|
-
updated_by_client_duid=updated_by_client_duid,
|
|
188
72
|
)
|
|
189
73
|
|
|
190
74
|
comment.additional_properties = d
|
|
191
75
|
return comment
|
|
192
76
|
|
|
193
77
|
@property
|
|
194
|
-
def additional_keys(self) ->
|
|
78
|
+
def additional_keys(self) -> list[str]:
|
|
195
79
|
return list(self.additional_properties.keys())
|
|
196
80
|
|
|
197
81
|
def __getitem__(self, key: str) -> Any:
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
from typing import Any,
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
3
|
|
|
4
4
|
from attrs import define as _attrs_define
|
|
5
5
|
from attrs import field as _attrs_field
|
|
6
|
-
from dateutil.parser import isoparse
|
|
7
|
-
|
|
8
|
-
from ..types import UNSET, Unset
|
|
9
6
|
|
|
10
7
|
T = TypeVar("T", bound="CommentCreate")
|
|
11
8
|
|
|
@@ -14,123 +11,47 @@ T = TypeVar("T", bound="CommentCreate")
|
|
|
14
11
|
class CommentCreate:
|
|
15
12
|
"""
|
|
16
13
|
Attributes:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
task_duid (str):
|
|
20
|
-
authored_by_ai (Union[Unset, bool]):
|
|
21
|
-
root_duid (Union[None, Unset, str]):
|
|
22
|
-
text (Union[Unset, Any]):
|
|
23
|
-
published_at (Union[None, Unset, datetime.datetime]):
|
|
14
|
+
task_id (str): The universal, unique ID of the task that the comment is associated with.
|
|
15
|
+
text (str): The full content of the comment, which can include markdown formatting.
|
|
24
16
|
"""
|
|
25
17
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
authored_by_ai: Union[Unset, bool] = UNSET
|
|
30
|
-
root_duid: Union[None, Unset, str] = UNSET
|
|
31
|
-
text: Union[Unset, Any] = UNSET
|
|
32
|
-
published_at: Union[None, Unset, datetime.datetime] = UNSET
|
|
33
|
-
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
34
|
-
|
|
35
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
36
|
-
duid = self.duid
|
|
37
|
-
|
|
38
|
-
author_duid = self.author_duid
|
|
39
|
-
|
|
40
|
-
task_duid = self.task_duid
|
|
18
|
+
task_id: str
|
|
19
|
+
text: str
|
|
20
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
41
21
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
root_duid: Union[None, Unset, str]
|
|
45
|
-
if isinstance(self.root_duid, Unset):
|
|
46
|
-
root_duid = UNSET
|
|
47
|
-
else:
|
|
48
|
-
root_duid = self.root_duid
|
|
22
|
+
def to_dict(self) -> dict[str, Any]:
|
|
23
|
+
task_id = self.task_id
|
|
49
24
|
|
|
50
25
|
text = self.text
|
|
51
26
|
|
|
52
|
-
|
|
53
|
-
if isinstance(self.published_at, Unset):
|
|
54
|
-
published_at = UNSET
|
|
55
|
-
elif isinstance(self.published_at, datetime.datetime):
|
|
56
|
-
published_at = self.published_at.isoformat()
|
|
57
|
-
else:
|
|
58
|
-
published_at = self.published_at
|
|
59
|
-
|
|
60
|
-
field_dict: Dict[str, Any] = {}
|
|
27
|
+
field_dict: dict[str, Any] = {}
|
|
61
28
|
field_dict.update(self.additional_properties)
|
|
62
29
|
field_dict.update(
|
|
63
30
|
{
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"taskDuid": task_duid,
|
|
31
|
+
"taskId": task_id,
|
|
32
|
+
"text": text,
|
|
67
33
|
}
|
|
68
34
|
)
|
|
69
|
-
if authored_by_ai is not UNSET:
|
|
70
|
-
field_dict["authoredByAi"] = authored_by_ai
|
|
71
|
-
if root_duid is not UNSET:
|
|
72
|
-
field_dict["rootDuid"] = root_duid
|
|
73
|
-
if text is not UNSET:
|
|
74
|
-
field_dict["text"] = text
|
|
75
|
-
if published_at is not UNSET:
|
|
76
|
-
field_dict["publishedAt"] = published_at
|
|
77
35
|
|
|
78
36
|
return field_dict
|
|
79
37
|
|
|
80
38
|
@classmethod
|
|
81
|
-
def from_dict(cls:
|
|
82
|
-
d = src_dict
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
author_duid = d.pop("authorDuid")
|
|
86
|
-
|
|
87
|
-
task_duid = d.pop("taskDuid")
|
|
88
|
-
|
|
89
|
-
authored_by_ai = d.pop("authoredByAi", UNSET)
|
|
90
|
-
|
|
91
|
-
def _parse_root_duid(data: object) -> Union[None, Unset, str]:
|
|
92
|
-
if data is None:
|
|
93
|
-
return data
|
|
94
|
-
if isinstance(data, Unset):
|
|
95
|
-
return data
|
|
96
|
-
return cast(Union[None, Unset, str], data)
|
|
97
|
-
|
|
98
|
-
root_duid = _parse_root_duid(d.pop("rootDuid", UNSET))
|
|
99
|
-
|
|
100
|
-
text = d.pop("text", UNSET)
|
|
101
|
-
|
|
102
|
-
def _parse_published_at(data: object) -> Union[None, Unset, datetime.datetime]:
|
|
103
|
-
if data is None:
|
|
104
|
-
return data
|
|
105
|
-
if isinstance(data, Unset):
|
|
106
|
-
return data
|
|
107
|
-
try:
|
|
108
|
-
if not isinstance(data, str):
|
|
109
|
-
raise TypeError()
|
|
110
|
-
published_at_type_0 = isoparse(data)
|
|
111
|
-
|
|
112
|
-
return published_at_type_0
|
|
113
|
-
except: # noqa: E722
|
|
114
|
-
pass
|
|
115
|
-
return cast(Union[None, Unset, datetime.datetime], data)
|
|
39
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
40
|
+
d = dict(src_dict)
|
|
41
|
+
task_id = d.pop("taskId")
|
|
116
42
|
|
|
117
|
-
|
|
43
|
+
text = d.pop("text")
|
|
118
44
|
|
|
119
45
|
comment_create = cls(
|
|
120
|
-
|
|
121
|
-
author_duid=author_duid,
|
|
122
|
-
task_duid=task_duid,
|
|
123
|
-
authored_by_ai=authored_by_ai,
|
|
124
|
-
root_duid=root_duid,
|
|
46
|
+
task_id=task_id,
|
|
125
47
|
text=text,
|
|
126
|
-
published_at=published_at,
|
|
127
48
|
)
|
|
128
49
|
|
|
129
50
|
comment_create.additional_properties = d
|
|
130
51
|
return comment_create
|
|
131
52
|
|
|
132
53
|
@property
|
|
133
|
-
def additional_keys(self) ->
|
|
54
|
+
def additional_keys(self) -> list[str]:
|
|
134
55
|
return list(self.additional_properties.keys())
|
|
135
56
|
|
|
136
57
|
def __getitem__(self, key: str) -> Any:
|
|
@@ -0,0 +1,84 @@
|
|
|
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="ConciseDoc")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class ConciseDoc:
|
|
12
|
+
"""This concise doc serializer is going to be used in docs listing view only.
|
|
13
|
+
|
|
14
|
+
Attributes:
|
|
15
|
+
id (str): The universal, unique ID of the doc.
|
|
16
|
+
html_url (str): The URL that can be used to open the doc in the Dart web UI.
|
|
17
|
+
title (str): The title, which is a short description of the doc.
|
|
18
|
+
folder (str): The full title of the folder, which is a project or list of docs.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
id: str
|
|
22
|
+
html_url: str
|
|
23
|
+
title: str
|
|
24
|
+
folder: str
|
|
25
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
|
+
|
|
27
|
+
def to_dict(self) -> dict[str, Any]:
|
|
28
|
+
id = self.id
|
|
29
|
+
|
|
30
|
+
html_url = self.html_url
|
|
31
|
+
|
|
32
|
+
title = self.title
|
|
33
|
+
|
|
34
|
+
folder = self.folder
|
|
35
|
+
|
|
36
|
+
field_dict: dict[str, Any] = {}
|
|
37
|
+
field_dict.update(self.additional_properties)
|
|
38
|
+
field_dict.update(
|
|
39
|
+
{
|
|
40
|
+
"id": id,
|
|
41
|
+
"htmlUrl": html_url,
|
|
42
|
+
"title": title,
|
|
43
|
+
"folder": folder,
|
|
44
|
+
}
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
return field_dict
|
|
48
|
+
|
|
49
|
+
@classmethod
|
|
50
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
51
|
+
d = dict(src_dict)
|
|
52
|
+
id = d.pop("id")
|
|
53
|
+
|
|
54
|
+
html_url = d.pop("htmlUrl")
|
|
55
|
+
|
|
56
|
+
title = d.pop("title")
|
|
57
|
+
|
|
58
|
+
folder = d.pop("folder")
|
|
59
|
+
|
|
60
|
+
concise_doc = cls(
|
|
61
|
+
id=id,
|
|
62
|
+
html_url=html_url,
|
|
63
|
+
title=title,
|
|
64
|
+
folder=folder,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
concise_doc.additional_properties = d
|
|
68
|
+
return concise_doc
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def additional_keys(self) -> list[str]:
|
|
72
|
+
return list(self.additional_properties.keys())
|
|
73
|
+
|
|
74
|
+
def __getitem__(self, key: str) -> Any:
|
|
75
|
+
return self.additional_properties[key]
|
|
76
|
+
|
|
77
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
78
|
+
self.additional_properties[key] = value
|
|
79
|
+
|
|
80
|
+
def __delitem__(self, key: str) -> None:
|
|
81
|
+
del self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __contains__(self, key: str) -> bool:
|
|
84
|
+
return key in self.additional_properties
|