dart-tools 0.8.4__py3-none-any.whl → 0.8.8__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.
Files changed (29) hide show
  1. dart/dart.py +12 -96
  2. dart/generated/api/__init__.py +1 -1
  3. dart/generated/api/doc/list_docs.py +30 -0
  4. dart/generated/api/task/add_task_time_tracking.py +190 -0
  5. dart/generated/api/task/list_tasks.py +206 -0
  6. dart/generated/api/task/move_task.py +190 -0
  7. dart/generated/models/__init__.py +24 -0
  8. dart/generated/models/concise_task.py +58 -0
  9. dart/generated/models/custom_properties.py +8 -8
  10. dart/generated/models/list_docs_o_item.py +6 -4
  11. dart/generated/models/list_tasks_o_item.py +17 -0
  12. dart/generated/models/paginated_comment_list.py +42 -0
  13. dart/generated/models/paginated_comment_list_meta_type_0.py +109 -0
  14. dart/generated/models/paginated_comment_list_meta_type_0_applied_default_filters.py +44 -0
  15. dart/generated/models/paginated_concise_doc_list.py +42 -0
  16. dart/generated/models/paginated_concise_doc_list_meta_type_0.py +109 -0
  17. dart/generated/models/paginated_concise_doc_list_meta_type_0_applied_default_filters.py +44 -0
  18. dart/generated/models/paginated_concise_task_list.py +42 -0
  19. dart/generated/models/paginated_concise_task_list_meta_type_0.py +109 -0
  20. dart/generated/models/paginated_concise_task_list_meta_type_0_applied_default_filters.py +44 -0
  21. dart/generated/models/task.py +58 -0
  22. dart/generated/models/task_move.py +94 -0
  23. dart/generated/models/task_time_tracking_create.py +84 -0
  24. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/METADATA +2 -46
  25. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/RECORD +29 -18
  26. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/WHEEL +0 -0
  27. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/entry_points.txt +0 -0
  28. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/licenses/LICENSE +0 -0
  29. {dart_tools-0.8.4.dist-info → dart_tools-0.8.8.dist-info}/top_level.txt +0 -0
@@ -14,14 +14,29 @@ from .doc_update import DocUpdate
14
14
  from .folder import Folder
15
15
  from .list_comments_o_item import ListCommentsOItem
16
16
  from .list_docs_o_item import ListDocsOItem
17
+ from .list_tasks_o_item import ListTasksOItem
17
18
  from .paginated_comment_list import PaginatedCommentList
19
+ from .paginated_comment_list_meta_type_0 import PaginatedCommentListMetaType0
20
+ from .paginated_comment_list_meta_type_0_applied_default_filters import (
21
+ PaginatedCommentListMetaType0AppliedDefaultFilters,
22
+ )
18
23
  from .paginated_concise_doc_list import PaginatedConciseDocList
24
+ from .paginated_concise_doc_list_meta_type_0 import PaginatedConciseDocListMetaType0
25
+ from .paginated_concise_doc_list_meta_type_0_applied_default_filters import (
26
+ PaginatedConciseDocListMetaType0AppliedDefaultFilters,
27
+ )
19
28
  from .paginated_concise_task_list import PaginatedConciseTaskList
29
+ from .paginated_concise_task_list_meta_type_0 import PaginatedConciseTaskListMetaType0
30
+ from .paginated_concise_task_list_meta_type_0_applied_default_filters import (
31
+ PaginatedConciseTaskListMetaType0AppliedDefaultFilters,
32
+ )
20
33
  from .priority import Priority
21
34
  from .skill import Skill
22
35
  from .task import Task
23
36
  from .task_create import TaskCreate
37
+ from .task_move import TaskMove
24
38
  from .task_relationships_type_0 import TaskRelationshipsType0
39
+ from .task_time_tracking_create import TaskTimeTrackingCreate
25
40
  from .task_update import TaskUpdate
26
41
  from .time_tracking_entry import TimeTrackingEntry
27
42
  from .user import User
@@ -86,14 +101,23 @@ __all__ = (
86
101
  "Folder",
87
102
  "ListCommentsOItem",
88
103
  "ListDocsOItem",
104
+ "ListTasksOItem",
89
105
  "PaginatedCommentList",
106
+ "PaginatedCommentListMetaType0",
107
+ "PaginatedCommentListMetaType0AppliedDefaultFilters",
90
108
  "PaginatedConciseDocList",
109
+ "PaginatedConciseDocListMetaType0",
110
+ "PaginatedConciseDocListMetaType0AppliedDefaultFilters",
91
111
  "PaginatedConciseTaskList",
112
+ "PaginatedConciseTaskListMetaType0",
113
+ "PaginatedConciseTaskListMetaType0AppliedDefaultFilters",
92
114
  "Priority",
93
115
  "Skill",
94
116
  "Task",
95
117
  "TaskCreate",
118
+ "TaskMove",
96
119
  "TaskRelationshipsType0",
120
+ "TaskTimeTrackingCreate",
97
121
  "TaskUpdate",
98
122
  "TimeTrackingEntry",
99
123
  "User",
@@ -1,8 +1,10 @@
1
+ import datetime
1
2
  from collections.abc import Mapping
2
3
  from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
3
4
 
4
5
  from attrs import define as _attrs_define
5
6
  from attrs import field as _attrs_field
7
+ from dateutil.parser import isoparse
6
8
 
7
9
  from ..models.priority import Priority
8
10
  from ..types import UNSET, Unset
@@ -28,6 +30,8 @@ class ConciseTask:
28
30
  dartboard (str): The full title of the dartboard, which is a project or list of tasks.
29
31
  type_ (str): The title of the type of the task.
30
32
  status (str): The status from the list of available statuses.
33
+ created_at (datetime.datetime): The date and time when the task was created in ISO format.
34
+ updated_at (datetime.datetime): The date and time when the task was last updated in ISO format.
31
35
  assignees (Union[None, Unset, list[str]]): The names or emails of the users that the task is assigned to. Either
32
36
  this or assignee must be included, depending on whether the workspaces allows multiple assignees or not.
33
37
  assignee (Union[None, Unset, str]): The name or email of the user that the task is assigned to. Either this or
@@ -47,6 +51,8 @@ class ConciseTask:
47
51
  on the task in hh:mm:ss format (or an empty string if no time has been tracked).
48
52
  custom_properties (Union['CustomProperties', None, Unset]): The custom properties, which is a dict of custom
49
53
  properties that are associated with the task.
54
+ created_by (Union[None, Unset, str]): The name or email (moniker) of the user that created the task.
55
+ updated_by (Union[None, Unset, str]): The name or email (moniker) of the user that last updated the task.
50
56
  """
51
57
 
52
58
  id: str
@@ -56,6 +62,8 @@ class ConciseTask:
56
62
  dartboard: str
57
63
  type_: str
58
64
  status: str
65
+ created_at: datetime.datetime
66
+ updated_at: datetime.datetime
59
67
  assignees: Union[None, Unset, list[str]] = UNSET
60
68
  assignee: Union[None, Unset, str] = UNSET
61
69
  tags: Union[Unset, list[str]] = UNSET
@@ -65,6 +73,8 @@ class ConciseTask:
65
73
  size: Union[None, Unset, int, str] = UNSET
66
74
  time_tracking: Union[Unset, str] = UNSET
67
75
  custom_properties: Union["CustomProperties", None, Unset] = UNSET
76
+ created_by: Union[None, Unset, str] = UNSET
77
+ updated_by: Union[None, Unset, str] = UNSET
68
78
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
69
79
 
70
80
  def to_dict(self) -> dict[str, Any]:
@@ -85,6 +95,10 @@ class ConciseTask:
85
95
 
86
96
  status = self.status
87
97
 
98
+ created_at = self.created_at.isoformat()
99
+
100
+ updated_at = self.updated_at.isoformat()
101
+
88
102
  assignees: Union[None, Unset, list[str]]
89
103
  if isinstance(self.assignees, Unset):
90
104
  assignees = UNSET
@@ -140,6 +154,18 @@ class ConciseTask:
140
154
  else:
141
155
  custom_properties = self.custom_properties
142
156
 
157
+ created_by: Union[None, Unset, str]
158
+ if isinstance(self.created_by, Unset):
159
+ created_by = UNSET
160
+ else:
161
+ created_by = self.created_by
162
+
163
+ updated_by: Union[None, Unset, str]
164
+ if isinstance(self.updated_by, Unset):
165
+ updated_by = UNSET
166
+ else:
167
+ updated_by = self.updated_by
168
+
143
169
  field_dict: dict[str, Any] = {}
144
170
  field_dict.update(self.additional_properties)
145
171
  field_dict.update(
@@ -151,6 +177,8 @@ class ConciseTask:
151
177
  "dartboard": dartboard,
152
178
  "type": type_,
153
179
  "status": status,
180
+ "createdAt": created_at,
181
+ "updatedAt": updated_at,
154
182
  }
155
183
  )
156
184
  if assignees is not UNSET:
@@ -171,6 +199,10 @@ class ConciseTask:
171
199
  field_dict["timeTracking"] = time_tracking
172
200
  if custom_properties is not UNSET:
173
201
  field_dict["customProperties"] = custom_properties
202
+ if created_by is not UNSET:
203
+ field_dict["createdBy"] = created_by
204
+ if updated_by is not UNSET:
205
+ field_dict["updatedBy"] = updated_by
174
206
 
175
207
  return field_dict
176
208
 
@@ -198,6 +230,10 @@ class ConciseTask:
198
230
 
199
231
  status = d.pop("status")
200
232
 
233
+ created_at = isoparse(d.pop("createdAt"))
234
+
235
+ updated_at = isoparse(d.pop("updatedAt"))
236
+
201
237
  def _parse_assignees(data: object) -> Union[None, Unset, list[str]]:
202
238
  if data is None:
203
239
  return data
@@ -291,6 +327,24 @@ class ConciseTask:
291
327
 
292
328
  custom_properties = _parse_custom_properties(d.pop("customProperties", UNSET))
293
329
 
330
+ def _parse_created_by(data: object) -> Union[None, Unset, str]:
331
+ if data is None:
332
+ return data
333
+ if isinstance(data, Unset):
334
+ return data
335
+ return cast(Union[None, Unset, str], data)
336
+
337
+ created_by = _parse_created_by(d.pop("createdBy", UNSET))
338
+
339
+ def _parse_updated_by(data: object) -> Union[None, Unset, str]:
340
+ if data is None:
341
+ return data
342
+ if isinstance(data, Unset):
343
+ return data
344
+ return cast(Union[None, Unset, str], data)
345
+
346
+ updated_by = _parse_updated_by(d.pop("updatedBy", UNSET))
347
+
294
348
  concise_task = cls(
295
349
  id=id,
296
350
  html_url=html_url,
@@ -299,6 +353,8 @@ class ConciseTask:
299
353
  dartboard=dartboard,
300
354
  type_=type_,
301
355
  status=status,
356
+ created_at=created_at,
357
+ updated_at=updated_at,
302
358
  assignees=assignees,
303
359
  assignee=assignee,
304
360
  tags=tags,
@@ -308,6 +364,8 @@ class ConciseTask:
308
364
  size=size,
309
365
  time_tracking=time_tracking,
310
366
  custom_properties=custom_properties,
367
+ created_by=created_by,
368
+ updated_by=updated_by,
311
369
  )
312
370
 
313
371
  concise_task.additional_properties = d
@@ -21,8 +21,8 @@ class CustomProperties:
21
21
 
22
22
  """
23
23
 
24
- additional_properties: dict[str, Union[None, bool, float, list[Union[None, str]], list[str], str]] = _attrs_field(
25
- init=False, factory=dict
24
+ additional_properties: dict[str, Union[None, bool, float, int, list[Union[None, str]], list[str], str]] = (
25
+ _attrs_field(init=False, factory=dict)
26
26
  )
27
27
 
28
28
  def to_dict(self) -> dict[str, Any]:
@@ -56,7 +56,7 @@ class CustomProperties:
56
56
 
57
57
  def _parse_additional_property(
58
58
  data: object,
59
- ) -> Union[None, bool, float, list[Union[None, str]], list[str], str]:
59
+ ) -> Union[None, bool, float, int, list[Union[None, str]], list[str], str]:
60
60
  if data is None:
61
61
  return data
62
62
  try:
@@ -93,13 +93,13 @@ class CustomProperties:
93
93
  try:
94
94
  if not isinstance(data, list):
95
95
  raise TypeError()
96
- additional_property_type_9 = cast(list[str], data)
96
+ additional_property_type_11 = cast(list[str], data)
97
97
 
98
- return additional_property_type_9
98
+ return additional_property_type_11
99
99
  except: # noqa: E722
100
100
  pass
101
101
  return cast(
102
- Union[None, bool, float, list[Union[None, str]], list[str], str],
102
+ Union[None, bool, float, int, list[Union[None, str]], list[str], str],
103
103
  data,
104
104
  )
105
105
 
@@ -114,13 +114,13 @@ class CustomProperties:
114
114
  def additional_keys(self) -> list[str]:
115
115
  return list(self.additional_properties.keys())
116
116
 
117
- def __getitem__(self, key: str) -> Union[None, bool, float, list[Union[None, str]], list[str], str]:
117
+ def __getitem__(self, key: str) -> Union[None, bool, float, int, list[Union[None, str]], list[str], str]:
118
118
  return self.additional_properties[key]
119
119
 
120
120
  def __setitem__(
121
121
  self,
122
122
  key: str,
123
- value: Union[None, bool, float, list[Union[None, str]], list[str], str],
123
+ value: Union[None, bool, float, int, list[Union[None, str]], list[str], str],
124
124
  ) -> None:
125
125
  self.additional_properties[key] = value
126
126
 
@@ -3,13 +3,15 @@ from enum import Enum
3
3
 
4
4
  class ListDocsOItem(str, Enum):
5
5
  CREATED_AT = "created_at"
6
+ FOLDER_ORDER = "folder__order"
6
7
  ORDER = "order"
7
8
  TITLE = "title"
8
9
  UPDATED_AT = "updated_at"
9
- VALUE_0 = "-created_at"
10
- VALUE_1 = "-order"
11
- VALUE_2 = "-title"
12
- VALUE_3 = "-updated_at"
10
+ CREATED_AT_DESC = "-created_at"
11
+ FOLDER_ORDER_DESC = "-folder__order"
12
+ ORDER_DESC = "-order"
13
+ TITLE_DESC = "-title"
14
+ UPDATED_AT_DESC = "-updated_at"
13
15
 
14
16
  def __str__(self) -> str:
15
17
  return str(self.value)
@@ -0,0 +1,17 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ListTasksOItem(str, Enum):
5
+ CREATED_AT = "created_at"
6
+ DARTBOARD_ORDER = "dartboard__order"
7
+ ORDER = "order"
8
+ TITLE = "title"
9
+ UPDATED_AT = "updated_at"
10
+ CREATED_AT_DESC = "-created_at"
11
+ DARTBOARD_ORDER_DESC = "-dartboard__order"
12
+ ORDER_DESC = "-order"
13
+ TITLE_DESC = "-title"
14
+ UPDATED_AT_DESC = "-updated_at"
15
+
16
+ def __str__(self) -> str:
17
+ return str(self.value)
@@ -8,6 +8,9 @@ from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
10
  from ..models.comment import Comment
11
+ from ..models.paginated_comment_list_meta_type_0 import (
12
+ PaginatedCommentListMetaType0,
13
+ )
11
14
 
12
15
 
13
16
  T = TypeVar("T", bound="PaginatedCommentList")
@@ -21,15 +24,21 @@ class PaginatedCommentList:
21
24
  results (list['Comment']):
22
25
  next_ (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=400&limit=100.
23
26
  previous (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=200&limit=100.
27
+ meta (Union['PaginatedCommentListMetaType0', None, Unset]):
24
28
  """
25
29
 
26
30
  count: int
27
31
  results: list["Comment"]
28
32
  next_: Union[None, Unset, str] = UNSET
29
33
  previous: Union[None, Unset, str] = UNSET
34
+ meta: Union["PaginatedCommentListMetaType0", None, Unset] = UNSET
30
35
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
31
36
 
32
37
  def to_dict(self) -> dict[str, Any]:
38
+ from ..models.paginated_comment_list_meta_type_0 import (
39
+ PaginatedCommentListMetaType0,
40
+ )
41
+
33
42
  count = self.count
34
43
 
35
44
  results = []
@@ -49,6 +58,14 @@ class PaginatedCommentList:
49
58
  else:
50
59
  previous = self.previous
51
60
 
61
+ meta: Union[None, Unset, dict[str, Any]]
62
+ if isinstance(self.meta, Unset):
63
+ meta = UNSET
64
+ elif isinstance(self.meta, PaginatedCommentListMetaType0):
65
+ meta = self.meta.to_dict()
66
+ else:
67
+ meta = self.meta
68
+
52
69
  field_dict: dict[str, Any] = {}
53
70
  field_dict.update(self.additional_properties)
54
71
  field_dict.update(
@@ -61,12 +78,17 @@ class PaginatedCommentList:
61
78
  field_dict["next"] = next_
62
79
  if previous is not UNSET:
63
80
  field_dict["previous"] = previous
81
+ if meta is not UNSET:
82
+ field_dict["meta"] = meta
64
83
 
65
84
  return field_dict
66
85
 
67
86
  @classmethod
68
87
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
69
88
  from ..models.comment import Comment
89
+ from ..models.paginated_comment_list_meta_type_0 import (
90
+ PaginatedCommentListMetaType0,
91
+ )
70
92
 
71
93
  d = dict(src_dict)
72
94
  count = d.pop("count")
@@ -96,11 +118,31 @@ class PaginatedCommentList:
96
118
 
97
119
  previous = _parse_previous(d.pop("previous", UNSET))
98
120
 
121
+ def _parse_meta(
122
+ data: object,
123
+ ) -> Union["PaginatedCommentListMetaType0", None, Unset]:
124
+ if data is None:
125
+ return data
126
+ if isinstance(data, Unset):
127
+ return data
128
+ try:
129
+ if not isinstance(data, dict):
130
+ raise TypeError()
131
+ meta_type_0 = PaginatedCommentListMetaType0.from_dict(data)
132
+
133
+ return meta_type_0
134
+ except: # noqa: E722
135
+ pass
136
+ return cast(Union["PaginatedCommentListMetaType0", None, Unset], data)
137
+
138
+ meta = _parse_meta(d.pop("meta", UNSET))
139
+
99
140
  paginated_comment_list = cls(
100
141
  count=count,
101
142
  results=results,
102
143
  next_=next_,
103
144
  previous=previous,
145
+ meta=meta,
104
146
  )
105
147
 
106
148
  paginated_comment_list.additional_properties = d
@@ -0,0 +1,109 @@
1
+ from collections.abc import Mapping
2
+ from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ if TYPE_CHECKING:
10
+ from ..models.paginated_comment_list_meta_type_0_applied_default_filters import (
11
+ PaginatedCommentListMetaType0AppliedDefaultFilters,
12
+ )
13
+
14
+
15
+ T = TypeVar("T", bound="PaginatedCommentListMetaType0")
16
+
17
+
18
+ @_attrs_define
19
+ class PaginatedCommentListMetaType0:
20
+ """
21
+ Attributes:
22
+ defaults_applied (Union[Unset, bool]): Whether default filters or ordering were applied to the response.
23
+ applied_default_filters (Union[Unset, PaginatedCommentListMetaType0AppliedDefaultFilters]): The default filters
24
+ that were applied automatically, if any.
25
+ applied_default_sorts (Union[Unset, list[str]]): The default ordering fields that were applied automatically, if
26
+ any.
27
+ instructions (Union[Unset, str]): Guidance on how to disable or override default filters and ordering.
28
+ """
29
+
30
+ defaults_applied: Union[Unset, bool] = UNSET
31
+ applied_default_filters: Union[Unset, "PaginatedCommentListMetaType0AppliedDefaultFilters"] = UNSET
32
+ applied_default_sorts: Union[Unset, list[str]] = UNSET
33
+ instructions: Union[Unset, str] = UNSET
34
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
35
+
36
+ def to_dict(self) -> dict[str, Any]:
37
+ defaults_applied = self.defaults_applied
38
+
39
+ applied_default_filters: Union[Unset, dict[str, Any]] = UNSET
40
+ if not isinstance(self.applied_default_filters, Unset):
41
+ applied_default_filters = self.applied_default_filters.to_dict()
42
+
43
+ applied_default_sorts: Union[Unset, list[str]] = UNSET
44
+ if not isinstance(self.applied_default_sorts, Unset):
45
+ applied_default_sorts = self.applied_default_sorts
46
+
47
+ instructions = self.instructions
48
+
49
+ field_dict: dict[str, Any] = {}
50
+ field_dict.update(self.additional_properties)
51
+ field_dict.update({})
52
+ if defaults_applied is not UNSET:
53
+ field_dict["defaultsApplied"] = defaults_applied
54
+ if applied_default_filters is not UNSET:
55
+ field_dict["appliedDefaultFilters"] = applied_default_filters
56
+ if applied_default_sorts is not UNSET:
57
+ field_dict["appliedDefaultSorts"] = applied_default_sorts
58
+ if instructions is not UNSET:
59
+ field_dict["instructions"] = instructions
60
+
61
+ return field_dict
62
+
63
+ @classmethod
64
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
65
+ from ..models.paginated_comment_list_meta_type_0_applied_default_filters import (
66
+ PaginatedCommentListMetaType0AppliedDefaultFilters,
67
+ )
68
+
69
+ d = dict(src_dict)
70
+ defaults_applied = d.pop("defaultsApplied", UNSET)
71
+
72
+ _applied_default_filters = d.pop("appliedDefaultFilters", UNSET)
73
+ applied_default_filters: Union[Unset, PaginatedCommentListMetaType0AppliedDefaultFilters]
74
+ if isinstance(_applied_default_filters, Unset):
75
+ applied_default_filters = UNSET
76
+ else:
77
+ applied_default_filters = PaginatedCommentListMetaType0AppliedDefaultFilters.from_dict(
78
+ _applied_default_filters
79
+ )
80
+
81
+ applied_default_sorts = cast(list[str], d.pop("appliedDefaultSorts", UNSET))
82
+
83
+ instructions = d.pop("instructions", UNSET)
84
+
85
+ paginated_comment_list_meta_type_0 = cls(
86
+ defaults_applied=defaults_applied,
87
+ applied_default_filters=applied_default_filters,
88
+ applied_default_sorts=applied_default_sorts,
89
+ instructions=instructions,
90
+ )
91
+
92
+ paginated_comment_list_meta_type_0.additional_properties = d
93
+ return paginated_comment_list_meta_type_0
94
+
95
+ @property
96
+ def additional_keys(self) -> list[str]:
97
+ return list(self.additional_properties.keys())
98
+
99
+ def __getitem__(self, key: str) -> Any:
100
+ return self.additional_properties[key]
101
+
102
+ def __setitem__(self, key: str, value: Any) -> None:
103
+ self.additional_properties[key] = value
104
+
105
+ def __delitem__(self, key: str) -> None:
106
+ del self.additional_properties[key]
107
+
108
+ def __contains__(self, key: str) -> bool:
109
+ return key in self.additional_properties
@@ -0,0 +1,44 @@
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="PaginatedCommentListMetaType0AppliedDefaultFilters")
8
+
9
+
10
+ @_attrs_define
11
+ class PaginatedCommentListMetaType0AppliedDefaultFilters:
12
+ """The default filters that were applied automatically, if any."""
13
+
14
+ additional_properties: dict[str, str] = _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
+ paginated_comment_list_meta_type_0_applied_default_filters = cls()
26
+
27
+ paginated_comment_list_meta_type_0_applied_default_filters.additional_properties = d
28
+ return paginated_comment_list_meta_type_0_applied_default_filters
29
+
30
+ @property
31
+ def additional_keys(self) -> list[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> str:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: str) -> 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
@@ -8,6 +8,9 @@ from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
10
  from ..models.concise_doc import ConciseDoc
11
+ from ..models.paginated_concise_doc_list_meta_type_0 import (
12
+ PaginatedConciseDocListMetaType0,
13
+ )
11
14
 
12
15
 
13
16
  T = TypeVar("T", bound="PaginatedConciseDocList")
@@ -21,15 +24,21 @@ class PaginatedConciseDocList:
21
24
  results (list['ConciseDoc']):
22
25
  next_ (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=400&limit=100.
23
26
  previous (Union[None, Unset, str]): Example: http://api.example.org/accounts/?offset=200&limit=100.
27
+ meta (Union['PaginatedConciseDocListMetaType0', None, Unset]):
24
28
  """
25
29
 
26
30
  count: int
27
31
  results: list["ConciseDoc"]
28
32
  next_: Union[None, Unset, str] = UNSET
29
33
  previous: Union[None, Unset, str] = UNSET
34
+ meta: Union["PaginatedConciseDocListMetaType0", None, Unset] = UNSET
30
35
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
31
36
 
32
37
  def to_dict(self) -> dict[str, Any]:
38
+ from ..models.paginated_concise_doc_list_meta_type_0 import (
39
+ PaginatedConciseDocListMetaType0,
40
+ )
41
+
33
42
  count = self.count
34
43
 
35
44
  results = []
@@ -49,6 +58,14 @@ class PaginatedConciseDocList:
49
58
  else:
50
59
  previous = self.previous
51
60
 
61
+ meta: Union[None, Unset, dict[str, Any]]
62
+ if isinstance(self.meta, Unset):
63
+ meta = UNSET
64
+ elif isinstance(self.meta, PaginatedConciseDocListMetaType0):
65
+ meta = self.meta.to_dict()
66
+ else:
67
+ meta = self.meta
68
+
52
69
  field_dict: dict[str, Any] = {}
53
70
  field_dict.update(self.additional_properties)
54
71
  field_dict.update(
@@ -61,12 +78,17 @@ class PaginatedConciseDocList:
61
78
  field_dict["next"] = next_
62
79
  if previous is not UNSET:
63
80
  field_dict["previous"] = previous
81
+ if meta is not UNSET:
82
+ field_dict["meta"] = meta
64
83
 
65
84
  return field_dict
66
85
 
67
86
  @classmethod
68
87
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
69
88
  from ..models.concise_doc import ConciseDoc
89
+ from ..models.paginated_concise_doc_list_meta_type_0 import (
90
+ PaginatedConciseDocListMetaType0,
91
+ )
70
92
 
71
93
  d = dict(src_dict)
72
94
  count = d.pop("count")
@@ -96,11 +118,31 @@ class PaginatedConciseDocList:
96
118
 
97
119
  previous = _parse_previous(d.pop("previous", UNSET))
98
120
 
121
+ def _parse_meta(
122
+ data: object,
123
+ ) -> Union["PaginatedConciseDocListMetaType0", None, Unset]:
124
+ if data is None:
125
+ return data
126
+ if isinstance(data, Unset):
127
+ return data
128
+ try:
129
+ if not isinstance(data, dict):
130
+ raise TypeError()
131
+ meta_type_0 = PaginatedConciseDocListMetaType0.from_dict(data)
132
+
133
+ return meta_type_0
134
+ except: # noqa: E722
135
+ pass
136
+ return cast(Union["PaginatedConciseDocListMetaType0", None, Unset], data)
137
+
138
+ meta = _parse_meta(d.pop("meta", UNSET))
139
+
99
140
  paginated_concise_doc_list = cls(
100
141
  count=count,
101
142
  results=results,
102
143
  next_=next_,
103
144
  previous=previous,
145
+ meta=meta,
104
146
  )
105
147
 
106
148
  paginated_concise_doc_list.additional_properties = d