dart-tools 0.6.6__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.

Files changed (256) hide show
  1. dart/__init__.py +18 -0
  2. dart/dart.py +1134 -0
  3. dart/exception.py +6 -0
  4. dart/generated/__init__.py +8 -0
  5. dart/generated/api/__init__.py +1 -0
  6. dart/generated/api/attachments/__init__.py +0 -0
  7. dart/generated/api/attachments/attachments_list.py +169 -0
  8. dart/generated/api/comments/__init__.py +0 -0
  9. dart/generated/api/comments/comments_list.py +278 -0
  10. dart/generated/api/dartboards/__init__.py +0 -0
  11. dart/generated/api/dartboards/dartboards_list.py +271 -0
  12. dart/generated/api/dashboards/__init__.py +0 -0
  13. dart/generated/api/dashboards/dashboards_list.py +184 -0
  14. dart/generated/api/docs/__init__.py +0 -0
  15. dart/generated/api/docs/docs_list.py +334 -0
  16. dart/generated/api/folders/__init__.py +0 -0
  17. dart/generated/api/folders/folders_list.py +234 -0
  18. dart/generated/api/form_fields/__init__.py +0 -0
  19. dart/generated/api/form_fields/form_fields_list.py +169 -0
  20. dart/generated/api/forms/__init__.py +0 -0
  21. dart/generated/api/forms/forms_list.py +169 -0
  22. dart/generated/api/layouts/__init__.py +0 -0
  23. dart/generated/api/layouts/layouts_list.py +169 -0
  24. dart/generated/api/links/__init__.py +0 -0
  25. dart/generated/api/links/links_list.py +169 -0
  26. dart/generated/api/options/__init__.py +0 -0
  27. dart/generated/api/options/options_list.py +229 -0
  28. dart/generated/api/properties/__init__.py +0 -0
  29. dart/generated/api/properties/properties_list.py +204 -0
  30. dart/generated/api/reactions/__init__.py +0 -0
  31. dart/generated/api/reactions/reactions_list.py +169 -0
  32. dart/generated/api/relationship_kinds/__init__.py +0 -0
  33. dart/generated/api/relationship_kinds/relationship_kinds_list.py +169 -0
  34. dart/generated/api/relationships/__init__.py +0 -0
  35. dart/generated/api/relationships/relationships_list.py +169 -0
  36. dart/generated/api/spaces/__init__.py +0 -0
  37. dart/generated/api/spaces/spaces_list.py +214 -0
  38. dart/generated/api/statuses/__init__.py +0 -0
  39. dart/generated/api/statuses/statuses_list.py +249 -0
  40. dart/generated/api/task_doc_relationships/__init__.py +0 -0
  41. dart/generated/api/task_doc_relationships/task_doc_relationships_list.py +169 -0
  42. dart/generated/api/task_kinds/__init__.py +0 -0
  43. dart/generated/api/task_kinds/task_kinds_list.py +204 -0
  44. dart/generated/api/tasks/__init__.py +0 -0
  45. dart/generated/api/tasks/tasks_list.py +446 -0
  46. dart/generated/api/tenants/__init__.py +0 -0
  47. dart/generated/api/tenants/tenants_list.py +169 -0
  48. dart/generated/api/transactions/__init__.py +0 -0
  49. dart/generated/api/transactions/transactions_create.py +176 -0
  50. dart/generated/api/user_dartboard_layouts/__init__.py +0 -0
  51. dart/generated/api/user_dartboard_layouts/user_dartboard_layouts_list.py +169 -0
  52. dart/generated/api/user_data/__init__.py +0 -0
  53. dart/generated/api/user_data/user_data_entity_retrieve.py +580 -0
  54. dart/generated/api/users/__init__.py +0 -0
  55. dart/generated/api/users/users_list.py +214 -0
  56. dart/generated/api/views/__init__.py +0 -0
  57. dart/generated/api/views/views_list.py +184 -0
  58. dart/generated/api/webhooks/__init__.py +0 -0
  59. dart/generated/api/webhooks/webhooks_list.py +169 -0
  60. dart/generated/client.py +268 -0
  61. dart/generated/errors.py +16 -0
  62. dart/generated/models/__init__.py +371 -0
  63. dart/generated/models/attachment.py +112 -0
  64. dart/generated/models/attachment_create.py +121 -0
  65. dart/generated/models/attachment_update.py +125 -0
  66. dart/generated/models/bar_chart_adtl.py +72 -0
  67. dart/generated/models/brainstorm.py +149 -0
  68. dart/generated/models/brainstorm_create.py +134 -0
  69. dart/generated/models/brainstorm_state.py +10 -0
  70. dart/generated/models/brainstorm_update.py +153 -0
  71. dart/generated/models/burn_up_chart_adtl.py +103 -0
  72. dart/generated/models/chart.py +207 -0
  73. dart/generated/models/chart_type.py +13 -0
  74. dart/generated/models/comment.py +207 -0
  75. dart/generated/models/comment_create.py +146 -0
  76. dart/generated/models/comment_reaction.py +84 -0
  77. dart/generated/models/comment_reaction_create.py +82 -0
  78. dart/generated/models/comment_reaction_update.py +87 -0
  79. dart/generated/models/comment_update.py +148 -0
  80. dart/generated/models/dartboard.py +264 -0
  81. dart/generated/models/dartboard_create.py +267 -0
  82. dart/generated/models/dartboard_kind.py +12 -0
  83. dart/generated/models/dartboard_update.py +269 -0
  84. dart/generated/models/dartboards_list_kind.py +12 -0
  85. dart/generated/models/dashboard.py +185 -0
  86. dart/generated/models/dashboard_create.py +171 -0
  87. dart/generated/models/dashboard_update.py +173 -0
  88. dart/generated/models/discord_integration.py +72 -0
  89. dart/generated/models/doc.py +243 -0
  90. dart/generated/models/doc_create.py +295 -0
  91. dart/generated/models/doc_source_type.py +13 -0
  92. dart/generated/models/doc_update.py +295 -0
  93. dart/generated/models/entity_name.py +22 -0
  94. dart/generated/models/event.py +420 -0
  95. dart/generated/models/event_actor.py +18 -0
  96. dart/generated/models/event_create.py +158 -0
  97. dart/generated/models/event_kind.py +88 -0
  98. dart/generated/models/event_subscription.py +74 -0
  99. dart/generated/models/event_subscription_update.py +173 -0
  100. dart/generated/models/filter_applicability.py +22 -0
  101. dart/generated/models/filter_assignee.py +116 -0
  102. dart/generated/models/filter_connector.py +9 -0
  103. dart/generated/models/filter_group.py +112 -0
  104. dart/generated/models/filter_search.py +82 -0
  105. dart/generated/models/filter_set.py +116 -0
  106. dart/generated/models/folder.py +150 -0
  107. dart/generated/models/folder_create.py +150 -0
  108. dart/generated/models/folder_kind.py +10 -0
  109. dart/generated/models/folder_update.py +152 -0
  110. dart/generated/models/folders_list_kind.py +10 -0
  111. dart/generated/models/form.py +147 -0
  112. dart/generated/models/form_create.py +141 -0
  113. dart/generated/models/form_field.py +144 -0
  114. dart/generated/models/form_field_create.py +129 -0
  115. dart/generated/models/form_field_update.py +132 -0
  116. dart/generated/models/form_update.py +142 -0
  117. dart/generated/models/github_integration.py +163 -0
  118. dart/generated/models/github_integration_tenant_extension_status.py +11 -0
  119. dart/generated/models/google_data.py +94 -0
  120. dart/generated/models/icon_kind.py +10 -0
  121. dart/generated/models/layout.py +167 -0
  122. dart/generated/models/layout_config.py +70 -0
  123. dart/generated/models/layout_create.py +130 -0
  124. dart/generated/models/layout_kind.py +11 -0
  125. dart/generated/models/layout_kind_config_map.py +56 -0
  126. dart/generated/models/layout_update.py +130 -0
  127. dart/generated/models/line_chart_adtl.py +72 -0
  128. dart/generated/models/models_response.py +671 -0
  129. dart/generated/models/notification.py +120 -0
  130. dart/generated/models/notification_update.py +100 -0
  131. dart/generated/models/notion_integration.py +90 -0
  132. dart/generated/models/notion_integration_tenant_extension_status.py +10 -0
  133. dart/generated/models/number_chart_adtl.py +85 -0
  134. dart/generated/models/number_chart_aggregation.py +10 -0
  135. dart/generated/models/operation.py +874 -0
  136. dart/generated/models/operation_kind.py +12 -0
  137. dart/generated/models/operation_model_kind.py +36 -0
  138. dart/generated/models/option.py +118 -0
  139. dart/generated/models/option_create.py +105 -0
  140. dart/generated/models/option_update.py +107 -0
  141. dart/generated/models/paginated_attachment_list.py +122 -0
  142. dart/generated/models/paginated_comment_list.py +122 -0
  143. dart/generated/models/paginated_comment_reaction_list.py +122 -0
  144. dart/generated/models/paginated_dartboard_list.py +122 -0
  145. dart/generated/models/paginated_dashboard_list.py +122 -0
  146. dart/generated/models/paginated_doc_list.py +122 -0
  147. dart/generated/models/paginated_folder_list.py +122 -0
  148. dart/generated/models/paginated_form_field_list.py +122 -0
  149. dart/generated/models/paginated_form_list.py +122 -0
  150. dart/generated/models/paginated_layout_list.py +122 -0
  151. dart/generated/models/paginated_option_list.py +122 -0
  152. dart/generated/models/paginated_property_list.py +122 -0
  153. dart/generated/models/paginated_relationship_kind_list.py +122 -0
  154. dart/generated/models/paginated_relationship_list.py +122 -0
  155. dart/generated/models/paginated_space_list.py +122 -0
  156. dart/generated/models/paginated_status_list.py +122 -0
  157. dart/generated/models/paginated_task_doc_relationship_list.py +122 -0
  158. dart/generated/models/paginated_task_kind_list.py +122 -0
  159. dart/generated/models/paginated_task_link_list.py +122 -0
  160. dart/generated/models/paginated_task_list.py +122 -0
  161. dart/generated/models/paginated_tenant_list.py +122 -0
  162. dart/generated/models/paginated_user_dartboard_layout_list.py +122 -0
  163. dart/generated/models/paginated_user_list.py +122 -0
  164. dart/generated/models/paginated_view_list.py +122 -0
  165. dart/generated/models/paginated_webhook_list.py +122 -0
  166. dart/generated/models/pie_chart_adtl.py +69 -0
  167. dart/generated/models/pie_chart_display_metric.py +9 -0
  168. dart/generated/models/priority.py +11 -0
  169. dart/generated/models/properties_list_kind.py +32 -0
  170. dart/generated/models/property_.py +153 -0
  171. dart/generated/models/property_create.py +137 -0
  172. dart/generated/models/property_kind.py +32 -0
  173. dart/generated/models/property_update.py +146 -0
  174. dart/generated/models/relationship.py +74 -0
  175. dart/generated/models/relationship_create.py +93 -0
  176. dart/generated/models/relationship_kind.py +123 -0
  177. dart/generated/models/relationship_kind_create.py +117 -0
  178. dart/generated/models/relationship_kind_kind.py +12 -0
  179. dart/generated/models/relationship_kind_update.py +119 -0
  180. dart/generated/models/report_kind.py +9 -0
  181. dart/generated/models/request_body.py +80 -0
  182. dart/generated/models/response_body.py +72 -0
  183. dart/generated/models/saml_config.py +77 -0
  184. dart/generated/models/saml_config_tenant_extension_status.py +9 -0
  185. dart/generated/models/slack_integration.py +90 -0
  186. dart/generated/models/slack_integration_tenant_extension_status.py +10 -0
  187. dart/generated/models/sort.py +66 -0
  188. dart/generated/models/space.py +286 -0
  189. dart/generated/models/space_create.py +310 -0
  190. dart/generated/models/space_kind.py +10 -0
  191. dart/generated/models/space_update.py +311 -0
  192. dart/generated/models/sprint_mode.py +9 -0
  193. dart/generated/models/status.py +141 -0
  194. dart/generated/models/status_create.py +125 -0
  195. dart/generated/models/status_kind.py +12 -0
  196. dart/generated/models/status_update.py +135 -0
  197. dart/generated/models/statuses_list_kind.py +12 -0
  198. dart/generated/models/subscription.py +9 -0
  199. dart/generated/models/subtask_display_mode.py +10 -0
  200. dart/generated/models/summary_statistic_kind.py +14 -0
  201. dart/generated/models/table_chart_adtl.py +72 -0
  202. dart/generated/models/task.py +531 -0
  203. dart/generated/models/task_create.py +585 -0
  204. dart/generated/models/task_detail_mode.py +10 -0
  205. dart/generated/models/task_doc_relationship.py +96 -0
  206. dart/generated/models/task_doc_relationship_create.py +74 -0
  207. dart/generated/models/task_kind.py +149 -0
  208. dart/generated/models/task_kind_create.py +144 -0
  209. dart/generated/models/task_kind_kind.py +9 -0
  210. dart/generated/models/task_kind_update.py +153 -0
  211. dart/generated/models/task_kinds_list_kind.py +9 -0
  212. dart/generated/models/task_link.py +131 -0
  213. dart/generated/models/task_link_create.py +152 -0
  214. dart/generated/models/task_link_kind.py +19 -0
  215. dart/generated/models/task_link_update.py +155 -0
  216. dart/generated/models/task_notion_document.py +196 -0
  217. dart/generated/models/task_notion_document_block_children_map_type_0.py +43 -0
  218. dart/generated/models/task_notion_document_block_map_type_0.py +43 -0
  219. dart/generated/models/task_notion_document_page_map_type_0.py +43 -0
  220. dart/generated/models/task_properties.py +43 -0
  221. dart/generated/models/task_source_type.py +31 -0
  222. dart/generated/models/task_update.py +585 -0
  223. dart/generated/models/tenant.py +378 -0
  224. dart/generated/models/tenant_update.py +157 -0
  225. dart/generated/models/theme.py +10 -0
  226. dart/generated/models/transaction.py +155 -0
  227. dart/generated/models/transaction_kind.py +73 -0
  228. dart/generated/models/transaction_response.py +96 -0
  229. dart/generated/models/user.py +245 -0
  230. dart/generated/models/user_dartboard_layout.py +66 -0
  231. dart/generated/models/user_dartboard_layout_create.py +74 -0
  232. dart/generated/models/user_data_entity_retrieve_entity_kind.py +32 -0
  233. dart/generated/models/user_role.py +12 -0
  234. dart/generated/models/user_status.py +12 -0
  235. dart/generated/models/user_update.py +190 -0
  236. dart/generated/models/validation_error_response.py +64 -0
  237. dart/generated/models/validation_error_response_items.py +43 -0
  238. dart/generated/models/view.py +207 -0
  239. dart/generated/models/view_create.py +204 -0
  240. dart/generated/models/view_kind.py +11 -0
  241. dart/generated/models/view_update.py +206 -0
  242. dart/generated/models/webhook.py +96 -0
  243. dart/generated/models/webhook_create.py +77 -0
  244. dart/generated/models/webhook_update.py +78 -0
  245. dart/generated/models/zapier_integration.py +66 -0
  246. dart/generated/py.typed +1 -0
  247. dart/generated/types.py +45 -0
  248. dart/order_manager.py +59 -0
  249. dart/webhook.py +21 -0
  250. dart_tools-0.6.6.dist-info/LICENSE +21 -0
  251. dart_tools-0.6.6.dist-info/METADATA +183 -0
  252. dart_tools-0.6.6.dist-info/RECORD +256 -0
  253. dart_tools-0.6.6.dist-info/WHEEL +5 -0
  254. dart_tools-0.6.6.dist-info/dist/dart-tools-0.3.3.tar.gz +0 -0
  255. dart_tools-0.6.6.dist-info/entry_points.txt +2 -0
  256. dart_tools-0.6.6.dist-info/top_level.txt +1 -0
@@ -0,0 +1,12 @@
1
+ from enum import Enum
2
+
3
+
4
+ class OperationKind(str, Enum):
5
+ CREATE = "create"
6
+ DELETE = "delete"
7
+ UPDATE = "update"
8
+ UPDATE_LIST_ADD = "update_list_add"
9
+ UPDATE_LIST_REMOVE = "update_list_remove"
10
+
11
+ def __str__(self) -> str:
12
+ return str(self.value)
@@ -0,0 +1,36 @@
1
+ from enum import Enum
2
+
3
+
4
+ class OperationModelKind(str, Enum):
5
+ ATTACHMENT = "attachment"
6
+ BRAINSTORM = "brainstorm"
7
+ COMMENT = "comment"
8
+ COMMENT_REACTION = "comment_reaction"
9
+ DARTBOARD = "dartboard"
10
+ DASHBOARD = "dashboard"
11
+ DOC = "doc"
12
+ EVENT = "event"
13
+ EVENT_SUBSCRIPTION = "event_subscription"
14
+ FOLDER = "folder"
15
+ FORM = "form"
16
+ FORM_FIELD = "form_field"
17
+ LAYOUT = "layout"
18
+ NOTIFICATION = "notification"
19
+ OPTION = "option"
20
+ PROPERTY = "property"
21
+ RELATIONSHIP = "relationship"
22
+ RELATIONSHIP_KIND = "relationship_kind"
23
+ SPACE = "space"
24
+ STATUS = "status"
25
+ TASK = "task"
26
+ TASK_DOC_RELATIONSHIP = "task_doc_relationship"
27
+ TASK_KIND = "task_kind"
28
+ TASK_LINK = "task_link"
29
+ TENANT = "tenant"
30
+ USER = "user"
31
+ USER_DARTBOARD_LAYOUT = "user_dartboard_layout"
32
+ VIEW = "view"
33
+ WEBHOOK = "webhook"
34
+
35
+ def __str__(self) -> str:
36
+ return str(self.value)
@@ -0,0 +1,118 @@
1
+ from typing import Any, Dict, List, Type, TypeVar, Union, cast
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ from ..types import UNSET, Unset
7
+
8
+ T = TypeVar("T", bound="Option")
9
+
10
+
11
+ @_attrs_define
12
+ class Option:
13
+ """
14
+ Attributes:
15
+ duid (str):
16
+ property_duid (str):
17
+ parent_duid (Union[None, str]):
18
+ title (str):
19
+ color_hex (str):
20
+ updated_by_client_duid (Union[None, Unset, str]):
21
+ """
22
+
23
+ duid: str
24
+ property_duid: str
25
+ parent_duid: Union[None, str]
26
+ title: str
27
+ color_hex: str
28
+ updated_by_client_duid: Union[None, Unset, str] = UNSET
29
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> Dict[str, Any]:
32
+ duid = self.duid
33
+
34
+ property_duid = self.property_duid
35
+
36
+ parent_duid: Union[None, str]
37
+ parent_duid = self.parent_duid
38
+
39
+ title = self.title
40
+
41
+ color_hex = self.color_hex
42
+
43
+ updated_by_client_duid: Union[None, Unset, str]
44
+ if isinstance(self.updated_by_client_duid, Unset):
45
+ updated_by_client_duid = UNSET
46
+ else:
47
+ updated_by_client_duid = self.updated_by_client_duid
48
+
49
+ field_dict: Dict[str, Any] = {}
50
+ field_dict.update(self.additional_properties)
51
+ field_dict.update(
52
+ {
53
+ "duid": duid,
54
+ "propertyDuid": property_duid,
55
+ "parentDuid": parent_duid,
56
+ "title": title,
57
+ "colorHex": color_hex,
58
+ }
59
+ )
60
+ if updated_by_client_duid is not UNSET:
61
+ field_dict["updatedByClientDuid"] = updated_by_client_duid
62
+
63
+ return field_dict
64
+
65
+ @classmethod
66
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
67
+ d = src_dict.copy()
68
+ duid = d.pop("duid")
69
+
70
+ property_duid = d.pop("propertyDuid")
71
+
72
+ def _parse_parent_duid(data: object) -> Union[None, str]:
73
+ if data is None:
74
+ return data
75
+ return cast(Union[None, str], data)
76
+
77
+ parent_duid = _parse_parent_duid(d.pop("parentDuid"))
78
+
79
+ title = d.pop("title")
80
+
81
+ color_hex = d.pop("colorHex")
82
+
83
+ def _parse_updated_by_client_duid(data: object) -> Union[None, Unset, str]:
84
+ if data is None:
85
+ return data
86
+ if isinstance(data, Unset):
87
+ return data
88
+ return cast(Union[None, Unset, str], data)
89
+
90
+ updated_by_client_duid = _parse_updated_by_client_duid(d.pop("updatedByClientDuid", UNSET))
91
+
92
+ option = cls(
93
+ duid=duid,
94
+ property_duid=property_duid,
95
+ parent_duid=parent_duid,
96
+ title=title,
97
+ color_hex=color_hex,
98
+ updated_by_client_duid=updated_by_client_duid,
99
+ )
100
+
101
+ option.additional_properties = d
102
+ return option
103
+
104
+ @property
105
+ def additional_keys(self) -> List[str]:
106
+ return list(self.additional_properties.keys())
107
+
108
+ def __getitem__(self, key: str) -> Any:
109
+ return self.additional_properties[key]
110
+
111
+ def __setitem__(self, key: str, value: Any) -> None:
112
+ self.additional_properties[key] = value
113
+
114
+ def __delitem__(self, key: str) -> None:
115
+ del self.additional_properties[key]
116
+
117
+ def __contains__(self, key: str) -> bool:
118
+ return key in self.additional_properties
@@ -0,0 +1,105 @@
1
+ from typing import Any, Dict, List, Type, TypeVar, Union, cast
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ from ..types import UNSET, Unset
7
+
8
+ T = TypeVar("T", bound="OptionCreate")
9
+
10
+
11
+ @_attrs_define
12
+ class OptionCreate:
13
+ """
14
+ Attributes:
15
+ duid (str):
16
+ property_duid (str):
17
+ title (str):
18
+ parent_duid (Union[None, Unset, str]):
19
+ color_hex (Union[Unset, str]):
20
+ """
21
+
22
+ duid: str
23
+ property_duid: str
24
+ title: str
25
+ parent_duid: Union[None, Unset, str] = UNSET
26
+ color_hex: Union[Unset, str] = UNSET
27
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> Dict[str, Any]:
30
+ duid = self.duid
31
+
32
+ property_duid = self.property_duid
33
+
34
+ title = self.title
35
+
36
+ parent_duid: Union[None, Unset, str]
37
+ if isinstance(self.parent_duid, Unset):
38
+ parent_duid = UNSET
39
+ else:
40
+ parent_duid = self.parent_duid
41
+
42
+ color_hex = self.color_hex
43
+
44
+ field_dict: Dict[str, Any] = {}
45
+ field_dict.update(self.additional_properties)
46
+ field_dict.update(
47
+ {
48
+ "duid": duid,
49
+ "propertyDuid": property_duid,
50
+ "title": title,
51
+ }
52
+ )
53
+ if parent_duid is not UNSET:
54
+ field_dict["parentDuid"] = parent_duid
55
+ if color_hex is not UNSET:
56
+ field_dict["colorHex"] = color_hex
57
+
58
+ return field_dict
59
+
60
+ @classmethod
61
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
62
+ d = src_dict.copy()
63
+ duid = d.pop("duid")
64
+
65
+ property_duid = d.pop("propertyDuid")
66
+
67
+ title = d.pop("title")
68
+
69
+ def _parse_parent_duid(data: object) -> Union[None, Unset, str]:
70
+ if data is None:
71
+ return data
72
+ if isinstance(data, Unset):
73
+ return data
74
+ return cast(Union[None, Unset, str], data)
75
+
76
+ parent_duid = _parse_parent_duid(d.pop("parentDuid", UNSET))
77
+
78
+ color_hex = d.pop("colorHex", UNSET)
79
+
80
+ option_create = cls(
81
+ duid=duid,
82
+ property_duid=property_duid,
83
+ title=title,
84
+ parent_duid=parent_duid,
85
+ color_hex=color_hex,
86
+ )
87
+
88
+ option_create.additional_properties = d
89
+ return option_create
90
+
91
+ @property
92
+ def additional_keys(self) -> List[str]:
93
+ return list(self.additional_properties.keys())
94
+
95
+ def __getitem__(self, key: str) -> Any:
96
+ return self.additional_properties[key]
97
+
98
+ def __setitem__(self, key: str, value: Any) -> None:
99
+ self.additional_properties[key] = value
100
+
101
+ def __delitem__(self, key: str) -> None:
102
+ del self.additional_properties[key]
103
+
104
+ def __contains__(self, key: str) -> bool:
105
+ return key in self.additional_properties
@@ -0,0 +1,107 @@
1
+ from typing import Any, Dict, List, Type, TypeVar, Union, cast
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ from ..types import UNSET, Unset
7
+
8
+ T = TypeVar("T", bound="OptionUpdate")
9
+
10
+
11
+ @_attrs_define
12
+ class OptionUpdate:
13
+ """
14
+ Attributes:
15
+ duid (str):
16
+ property_duid (Union[Unset, str]):
17
+ parent_duid (Union[None, Unset, str]):
18
+ title (Union[Unset, str]):
19
+ color_hex (Union[Unset, str]):
20
+ """
21
+
22
+ duid: str
23
+ property_duid: Union[Unset, str] = UNSET
24
+ parent_duid: Union[None, Unset, str] = UNSET
25
+ title: Union[Unset, str] = UNSET
26
+ color_hex: Union[Unset, str] = UNSET
27
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> Dict[str, Any]:
30
+ duid = self.duid
31
+
32
+ property_duid = self.property_duid
33
+
34
+ parent_duid: Union[None, Unset, str]
35
+ if isinstance(self.parent_duid, Unset):
36
+ parent_duid = UNSET
37
+ else:
38
+ parent_duid = self.parent_duid
39
+
40
+ title = self.title
41
+
42
+ color_hex = self.color_hex
43
+
44
+ field_dict: Dict[str, Any] = {}
45
+ field_dict.update(self.additional_properties)
46
+ field_dict.update(
47
+ {
48
+ "duid": duid,
49
+ }
50
+ )
51
+ if property_duid is not UNSET:
52
+ field_dict["propertyDuid"] = property_duid
53
+ if parent_duid is not UNSET:
54
+ field_dict["parentDuid"] = parent_duid
55
+ if title is not UNSET:
56
+ field_dict["title"] = title
57
+ if color_hex is not UNSET:
58
+ field_dict["colorHex"] = color_hex
59
+
60
+ return field_dict
61
+
62
+ @classmethod
63
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
64
+ d = src_dict.copy()
65
+ duid = d.pop("duid")
66
+
67
+ property_duid = d.pop("propertyDuid", UNSET)
68
+
69
+ def _parse_parent_duid(data: object) -> Union[None, Unset, str]:
70
+ if data is None:
71
+ return data
72
+ if isinstance(data, Unset):
73
+ return data
74
+ return cast(Union[None, Unset, str], data)
75
+
76
+ parent_duid = _parse_parent_duid(d.pop("parentDuid", UNSET))
77
+
78
+ title = d.pop("title", UNSET)
79
+
80
+ color_hex = d.pop("colorHex", UNSET)
81
+
82
+ option_update = cls(
83
+ duid=duid,
84
+ property_duid=property_duid,
85
+ parent_duid=parent_duid,
86
+ title=title,
87
+ color_hex=color_hex,
88
+ )
89
+
90
+ option_update.additional_properties = d
91
+ return option_update
92
+
93
+ @property
94
+ def additional_keys(self) -> List[str]:
95
+ return list(self.additional_properties.keys())
96
+
97
+ def __getitem__(self, key: str) -> Any:
98
+ return self.additional_properties[key]
99
+
100
+ def __setitem__(self, key: str, value: Any) -> None:
101
+ self.additional_properties[key] = value
102
+
103
+ def __delitem__(self, key: str) -> None:
104
+ del self.additional_properties[key]
105
+
106
+ def __contains__(self, key: str) -> bool:
107
+ return key in self.additional_properties
@@ -0,0 +1,122 @@
1
+ from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ from ..types import UNSET, Unset
7
+
8
+ if TYPE_CHECKING:
9
+ from ..models.attachment import Attachment
10
+
11
+
12
+ T = TypeVar("T", bound="PaginatedAttachmentList")
13
+
14
+
15
+ @_attrs_define
16
+ class PaginatedAttachmentList:
17
+ """
18
+ Attributes:
19
+ count (int): Example: 123.
20
+ results (List['Attachment']):
21
+ next_ (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=400&limit=100.
22
+ previous (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=200&limit=100.
23
+ """
24
+
25
+ count: int
26
+ results: List["Attachment"]
27
+ next_: Union[None, Unset, str] = UNSET
28
+ previous: Union[None, Unset, str] = UNSET
29
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> Dict[str, Any]:
32
+ count = self.count
33
+
34
+ results = []
35
+ for results_item_data in self.results:
36
+ results_item = results_item_data.to_dict()
37
+ results.append(results_item)
38
+
39
+ next_: Union[None, Unset, str]
40
+ if isinstance(self.next_, Unset):
41
+ next_ = UNSET
42
+ else:
43
+ next_ = self.next_
44
+
45
+ previous: Union[None, Unset, str]
46
+ if isinstance(self.previous, Unset):
47
+ previous = UNSET
48
+ else:
49
+ previous = self.previous
50
+
51
+ field_dict: Dict[str, Any] = {}
52
+ field_dict.update(self.additional_properties)
53
+ field_dict.update(
54
+ {
55
+ "count": count,
56
+ "results": results,
57
+ }
58
+ )
59
+ if next_ is not UNSET:
60
+ field_dict["next"] = next_
61
+ if previous is not UNSET:
62
+ field_dict["previous"] = previous
63
+
64
+ return field_dict
65
+
66
+ @classmethod
67
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
68
+ from ..models.attachment import Attachment
69
+
70
+ d = src_dict.copy()
71
+ count = d.pop("count")
72
+
73
+ results = []
74
+ _results = d.pop("results")
75
+ for results_item_data in _results:
76
+ results_item = Attachment.from_dict(results_item_data)
77
+
78
+ results.append(results_item)
79
+
80
+ def _parse_next_(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
+ next_ = _parse_next_(d.pop("next", UNSET))
88
+
89
+ def _parse_previous(data: object) -> Union[None, Unset, str]:
90
+ if data is None:
91
+ return data
92
+ if isinstance(data, Unset):
93
+ return data
94
+ return cast(Union[None, Unset, str], data)
95
+
96
+ previous = _parse_previous(d.pop("previous", UNSET))
97
+
98
+ paginated_attachment_list = cls(
99
+ count=count,
100
+ results=results,
101
+ next_=next_,
102
+ previous=previous,
103
+ )
104
+
105
+ paginated_attachment_list.additional_properties = d
106
+ return paginated_attachment_list
107
+
108
+ @property
109
+ def additional_keys(self) -> List[str]:
110
+ return list(self.additional_properties.keys())
111
+
112
+ def __getitem__(self, key: str) -> Any:
113
+ return self.additional_properties[key]
114
+
115
+ def __setitem__(self, key: str, value: Any) -> None:
116
+ self.additional_properties[key] = value
117
+
118
+ def __delitem__(self, key: str) -> None:
119
+ del self.additional_properties[key]
120
+
121
+ def __contains__(self, key: str) -> bool:
122
+ return key in self.additional_properties
@@ -0,0 +1,122 @@
1
+ from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ from ..types import UNSET, Unset
7
+
8
+ if TYPE_CHECKING:
9
+ from ..models.comment import Comment
10
+
11
+
12
+ T = TypeVar("T", bound="PaginatedCommentList")
13
+
14
+
15
+ @_attrs_define
16
+ class PaginatedCommentList:
17
+ """
18
+ Attributes:
19
+ count (int): Example: 123.
20
+ results (List['Comment']):
21
+ next_ (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=400&limit=100.
22
+ previous (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=200&limit=100.
23
+ """
24
+
25
+ count: int
26
+ results: List["Comment"]
27
+ next_: Union[None, Unset, str] = UNSET
28
+ previous: Union[None, Unset, str] = UNSET
29
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> Dict[str, Any]:
32
+ count = self.count
33
+
34
+ results = []
35
+ for results_item_data in self.results:
36
+ results_item = results_item_data.to_dict()
37
+ results.append(results_item)
38
+
39
+ next_: Union[None, Unset, str]
40
+ if isinstance(self.next_, Unset):
41
+ next_ = UNSET
42
+ else:
43
+ next_ = self.next_
44
+
45
+ previous: Union[None, Unset, str]
46
+ if isinstance(self.previous, Unset):
47
+ previous = UNSET
48
+ else:
49
+ previous = self.previous
50
+
51
+ field_dict: Dict[str, Any] = {}
52
+ field_dict.update(self.additional_properties)
53
+ field_dict.update(
54
+ {
55
+ "count": count,
56
+ "results": results,
57
+ }
58
+ )
59
+ if next_ is not UNSET:
60
+ field_dict["next"] = next_
61
+ if previous is not UNSET:
62
+ field_dict["previous"] = previous
63
+
64
+ return field_dict
65
+
66
+ @classmethod
67
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
68
+ from ..models.comment import Comment
69
+
70
+ d = src_dict.copy()
71
+ count = d.pop("count")
72
+
73
+ results = []
74
+ _results = d.pop("results")
75
+ for results_item_data in _results:
76
+ results_item = Comment.from_dict(results_item_data)
77
+
78
+ results.append(results_item)
79
+
80
+ def _parse_next_(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
+ next_ = _parse_next_(d.pop("next", UNSET))
88
+
89
+ def _parse_previous(data: object) -> Union[None, Unset, str]:
90
+ if data is None:
91
+ return data
92
+ if isinstance(data, Unset):
93
+ return data
94
+ return cast(Union[None, Unset, str], data)
95
+
96
+ previous = _parse_previous(d.pop("previous", UNSET))
97
+
98
+ paginated_comment_list = cls(
99
+ count=count,
100
+ results=results,
101
+ next_=next_,
102
+ previous=previous,
103
+ )
104
+
105
+ paginated_comment_list.additional_properties = d
106
+ return paginated_comment_list
107
+
108
+ @property
109
+ def additional_keys(self) -> List[str]:
110
+ return list(self.additional_properties.keys())
111
+
112
+ def __getitem__(self, key: str) -> Any:
113
+ return self.additional_properties[key]
114
+
115
+ def __setitem__(self, key: str, value: Any) -> None:
116
+ self.additional_properties[key] = value
117
+
118
+ def __delitem__(self, key: str) -> None:
119
+ del self.additional_properties[key]
120
+
121
+ def __contains__(self, key: str) -> bool:
122
+ return key in self.additional_properties