windmill-api 1.544.2__py3-none-any.whl → 1.545.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 windmill-api might be problematic. Click here for more details.
- windmill_api/api/job/cancel_selection.py +20 -1
- windmill_api/api/{teams/sync_teams.py → job/get_started_at_by_ids.py} +64 -20
- windmill_api/api/workspace/list_available_teams_channels.py +40 -5
- windmill_api/api/workspace/list_available_teams_ids.py +21 -1
- windmill_api/models/completed_job_flow_status_failure_module.py +22 -0
- windmill_api/models/completed_job_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/completed_job_flow_status_modules_item.py +22 -0
- windmill_api/models/completed_job_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/completed_job_flow_status_preprocessor_module.py +22 -0
- windmill_api/models/completed_job_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_preprocessor_module.py +26 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_failure_module.py +18 -0
- windmill_api/models/flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_module.py +18 -0
- windmill_api/models/flow_status_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_modules_item.py +18 -0
- windmill_api/models/flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_preprocessor_module.py +20 -0
- windmill_api/models/flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_failure_module.py +29 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_modules_item.py +26 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_failure_module.py +29 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_modules_item.py +26 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/job_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_available_teams_channels_response_200_item.py +0 -16
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_failure_module.py +24 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_modules_item.py +24 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_preprocessor_module.py +26 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_failure_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_modules_item.py +29 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_failure_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_modules_item.py +29 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_failure_module.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_modules_item.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_failure_module.py +22 -0
- windmill_api/models/queued_job_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_modules_item.py +22 -0
- windmill_api/models/queued_job_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_preprocessor_module.py +22 -0
- windmill_api/models/queued_job_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- {windmill_api-1.544.2.dist-info → windmill_api-1.545.0.dist-info}/METADATA +1 -1
- {windmill_api-1.544.2.dist-info → windmill_api-1.545.0.dist-info}/RECORD +125 -67
- windmill_api/models/sync_teams_response_200_item.py +0 -87
- windmill_api/models/sync_teams_response_200_item_channels_item.py +0 -80
- windmill_api/models/upload_file_part.py +0 -65
- {windmill_api-1.544.2.dist-info → windmill_api-1.545.0.dist-info}/LICENSE +0 -0
- {windmill_api-1.544.2.dist-info → windmill_api-1.545.0.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,71 @@
|
|
|
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="JobType0FlowStatusPreprocessorModuleFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class JobType0FlowStatusPreprocessorModuleFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
job_type_0_flow_status_preprocessor_module_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
job_type_0_flow_status_preprocessor_module_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return job_type_0_flow_status_preprocessor_module_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,71 @@
|
|
|
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="JobType1FlowStatusFailureModuleFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class JobType1FlowStatusFailureModuleFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
job_type_1_flow_status_failure_module_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
job_type_1_flow_status_failure_module_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return job_type_1_flow_status_failure_module_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,71 @@
|
|
|
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="JobType1FlowStatusModulesItemFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class JobType1FlowStatusModulesItemFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
job_type_1_flow_status_modules_item_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
job_type_1_flow_status_modules_item_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return job_type_1_flow_status_modules_item_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,71 @@
|
|
|
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="JobType1FlowStatusPreprocessorModuleFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class JobType1FlowStatusPreprocessorModuleFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
job_type_1_flow_status_preprocessor_module_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
job_type_1_flow_status_preprocessor_module_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return job_type_1_flow_status_preprocessor_module_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|
|
@@ -14,21 +14,15 @@ class ListAvailableTeamsChannelsResponse200Item:
|
|
|
14
14
|
Attributes:
|
|
15
15
|
channel_name (Union[Unset, str]):
|
|
16
16
|
channel_id (Union[Unset, str]):
|
|
17
|
-
service_url (Union[Unset, str]):
|
|
18
|
-
tenant_id (Union[Unset, str]):
|
|
19
17
|
"""
|
|
20
18
|
|
|
21
19
|
channel_name: Union[Unset, str] = UNSET
|
|
22
20
|
channel_id: Union[Unset, str] = UNSET
|
|
23
|
-
service_url: Union[Unset, str] = UNSET
|
|
24
|
-
tenant_id: Union[Unset, str] = UNSET
|
|
25
21
|
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
22
|
|
|
27
23
|
def to_dict(self) -> Dict[str, Any]:
|
|
28
24
|
channel_name = self.channel_name
|
|
29
25
|
channel_id = self.channel_id
|
|
30
|
-
service_url = self.service_url
|
|
31
|
-
tenant_id = self.tenant_id
|
|
32
26
|
|
|
33
27
|
field_dict: Dict[str, Any] = {}
|
|
34
28
|
field_dict.update(self.additional_properties)
|
|
@@ -37,10 +31,6 @@ class ListAvailableTeamsChannelsResponse200Item:
|
|
|
37
31
|
field_dict["channel_name"] = channel_name
|
|
38
32
|
if channel_id is not UNSET:
|
|
39
33
|
field_dict["channel_id"] = channel_id
|
|
40
|
-
if service_url is not UNSET:
|
|
41
|
-
field_dict["service_url"] = service_url
|
|
42
|
-
if tenant_id is not UNSET:
|
|
43
|
-
field_dict["tenant_id"] = tenant_id
|
|
44
34
|
|
|
45
35
|
return field_dict
|
|
46
36
|
|
|
@@ -51,15 +41,9 @@ class ListAvailableTeamsChannelsResponse200Item:
|
|
|
51
41
|
|
|
52
42
|
channel_id = d.pop("channel_id", UNSET)
|
|
53
43
|
|
|
54
|
-
service_url = d.pop("service_url", UNSET)
|
|
55
|
-
|
|
56
|
-
tenant_id = d.pop("tenant_id", UNSET)
|
|
57
|
-
|
|
58
44
|
list_available_teams_channels_response_200_item = cls(
|
|
59
45
|
channel_name=channel_name,
|
|
60
46
|
channel_id=channel_id,
|
|
61
|
-
service_url=service_url,
|
|
62
|
-
tenant_id=tenant_id,
|
|
63
47
|
)
|
|
64
48
|
|
|
65
49
|
list_available_teams_channels_response_200_item.additional_properties = d
|
|
@@ -24,6 +24,9 @@ if TYPE_CHECKING:
|
|
|
24
24
|
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_branchall import (
|
|
25
25
|
ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchall,
|
|
26
26
|
)
|
|
27
|
+
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration import (
|
|
28
|
+
ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration,
|
|
29
|
+
)
|
|
27
30
|
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_iterator import (
|
|
28
31
|
ListCompletedJobsResponse200ItemFlowStatusFailureModuleIterator,
|
|
29
32
|
)
|
|
@@ -44,6 +47,7 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
44
47
|
iterator (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleIterator]):
|
|
45
48
|
flow_jobs (Union[Unset, List[str]]):
|
|
46
49
|
flow_jobs_success (Union[Unset, List[bool]]):
|
|
50
|
+
flow_jobs_duration (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration]):
|
|
47
51
|
branch_chosen (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchChosen]):
|
|
48
52
|
branchall (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchall]):
|
|
49
53
|
approvers (Union[Unset, List['ListCompletedJobsResponse200ItemFlowStatusFailureModuleApproversItem']]):
|
|
@@ -64,6 +68,7 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
64
68
|
iterator: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusFailureModuleIterator"] = UNSET
|
|
65
69
|
flow_jobs: Union[Unset, List[str]] = UNSET
|
|
66
70
|
flow_jobs_success: Union[Unset, List[bool]] = UNSET
|
|
71
|
+
flow_jobs_duration: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration"] = UNSET
|
|
67
72
|
branch_chosen: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchChosen"] = UNSET
|
|
68
73
|
branchall: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchall"] = UNSET
|
|
69
74
|
approvers: Union[Unset, List["ListCompletedJobsResponse200ItemFlowStatusFailureModuleApproversItem"]] = UNSET
|
|
@@ -105,6 +110,10 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
105
110
|
if not isinstance(self.flow_jobs_success, Unset):
|
|
106
111
|
flow_jobs_success = self.flow_jobs_success
|
|
107
112
|
|
|
113
|
+
flow_jobs_duration: Union[Unset, Dict[str, Any]] = UNSET
|
|
114
|
+
if not isinstance(self.flow_jobs_duration, Unset):
|
|
115
|
+
flow_jobs_duration = self.flow_jobs_duration.to_dict()
|
|
116
|
+
|
|
108
117
|
branch_chosen: Union[Unset, Dict[str, Any]] = UNSET
|
|
109
118
|
if not isinstance(self.branch_chosen, Unset):
|
|
110
119
|
branch_chosen = self.branch_chosen.to_dict()
|
|
@@ -170,6 +179,8 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
170
179
|
field_dict["flow_jobs"] = flow_jobs
|
|
171
180
|
if flow_jobs_success is not UNSET:
|
|
172
181
|
field_dict["flow_jobs_success"] = flow_jobs_success
|
|
182
|
+
if flow_jobs_duration is not UNSET:
|
|
183
|
+
field_dict["flow_jobs_duration"] = flow_jobs_duration
|
|
173
184
|
if branch_chosen is not UNSET:
|
|
174
185
|
field_dict["branch_chosen"] = branch_chosen
|
|
175
186
|
if branchall is not UNSET:
|
|
@@ -206,6 +217,9 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
206
217
|
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_branchall import (
|
|
207
218
|
ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchall,
|
|
208
219
|
)
|
|
220
|
+
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration import (
|
|
221
|
+
ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration,
|
|
222
|
+
)
|
|
209
223
|
from ..models.list_completed_jobs_response_200_item_flow_status_failure_module_iterator import (
|
|
210
224
|
ListCompletedJobsResponse200ItemFlowStatusFailureModuleIterator,
|
|
211
225
|
)
|
|
@@ -232,6 +246,15 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
232
246
|
|
|
233
247
|
flow_jobs_success = cast(List[bool], d.pop("flow_jobs_success", UNSET))
|
|
234
248
|
|
|
249
|
+
_flow_jobs_duration = d.pop("flow_jobs_duration", UNSET)
|
|
250
|
+
flow_jobs_duration: Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration]
|
|
251
|
+
if isinstance(_flow_jobs_duration, Unset):
|
|
252
|
+
flow_jobs_duration = UNSET
|
|
253
|
+
else:
|
|
254
|
+
flow_jobs_duration = ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration.from_dict(
|
|
255
|
+
_flow_jobs_duration
|
|
256
|
+
)
|
|
257
|
+
|
|
235
258
|
_branch_chosen = d.pop("branch_chosen", UNSET)
|
|
236
259
|
branch_chosen: Union[Unset, ListCompletedJobsResponse200ItemFlowStatusFailureModuleBranchChosen]
|
|
237
260
|
if isinstance(_branch_chosen, Unset):
|
|
@@ -306,6 +329,7 @@ class ListCompletedJobsResponse200ItemFlowStatusFailureModule:
|
|
|
306
329
|
iterator=iterator,
|
|
307
330
|
flow_jobs=flow_jobs,
|
|
308
331
|
flow_jobs_success=flow_jobs_success,
|
|
332
|
+
flow_jobs_duration=flow_jobs_duration,
|
|
309
333
|
branch_chosen=branch_chosen,
|
|
310
334
|
branchall=branchall,
|
|
311
335
|
approvers=approvers,
|
|
@@ -0,0 +1,71 @@
|
|
|
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="ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class ListCompletedJobsResponse200ItemFlowStatusFailureModuleFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|
|
@@ -24,6 +24,9 @@ if TYPE_CHECKING:
|
|
|
24
24
|
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_branchall import (
|
|
25
25
|
ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchall,
|
|
26
26
|
)
|
|
27
|
+
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration import (
|
|
28
|
+
ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration,
|
|
29
|
+
)
|
|
27
30
|
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_iterator import (
|
|
28
31
|
ListCompletedJobsResponse200ItemFlowStatusModulesItemIterator,
|
|
29
32
|
)
|
|
@@ -44,6 +47,7 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
44
47
|
iterator (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemIterator]):
|
|
45
48
|
flow_jobs (Union[Unset, List[str]]):
|
|
46
49
|
flow_jobs_success (Union[Unset, List[bool]]):
|
|
50
|
+
flow_jobs_duration (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration]):
|
|
47
51
|
branch_chosen (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchChosen]):
|
|
48
52
|
branchall (Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchall]):
|
|
49
53
|
approvers (Union[Unset, List['ListCompletedJobsResponse200ItemFlowStatusModulesItemApproversItem']]):
|
|
@@ -63,6 +67,7 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
63
67
|
iterator: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusModulesItemIterator"] = UNSET
|
|
64
68
|
flow_jobs: Union[Unset, List[str]] = UNSET
|
|
65
69
|
flow_jobs_success: Union[Unset, List[bool]] = UNSET
|
|
70
|
+
flow_jobs_duration: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration"] = UNSET
|
|
66
71
|
branch_chosen: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchChosen"] = UNSET
|
|
67
72
|
branchall: Union[Unset, "ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchall"] = UNSET
|
|
68
73
|
approvers: Union[Unset, List["ListCompletedJobsResponse200ItemFlowStatusModulesItemApproversItem"]] = UNSET
|
|
@@ -103,6 +108,10 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
103
108
|
if not isinstance(self.flow_jobs_success, Unset):
|
|
104
109
|
flow_jobs_success = self.flow_jobs_success
|
|
105
110
|
|
|
111
|
+
flow_jobs_duration: Union[Unset, Dict[str, Any]] = UNSET
|
|
112
|
+
if not isinstance(self.flow_jobs_duration, Unset):
|
|
113
|
+
flow_jobs_duration = self.flow_jobs_duration.to_dict()
|
|
114
|
+
|
|
106
115
|
branch_chosen: Union[Unset, Dict[str, Any]] = UNSET
|
|
107
116
|
if not isinstance(self.branch_chosen, Unset):
|
|
108
117
|
branch_chosen = self.branch_chosen.to_dict()
|
|
@@ -165,6 +174,8 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
165
174
|
field_dict["flow_jobs"] = flow_jobs
|
|
166
175
|
if flow_jobs_success is not UNSET:
|
|
167
176
|
field_dict["flow_jobs_success"] = flow_jobs_success
|
|
177
|
+
if flow_jobs_duration is not UNSET:
|
|
178
|
+
field_dict["flow_jobs_duration"] = flow_jobs_duration
|
|
168
179
|
if branch_chosen is not UNSET:
|
|
169
180
|
field_dict["branch_chosen"] = branch_chosen
|
|
170
181
|
if branchall is not UNSET:
|
|
@@ -199,6 +210,9 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
199
210
|
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_branchall import (
|
|
200
211
|
ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchall,
|
|
201
212
|
)
|
|
213
|
+
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration import (
|
|
214
|
+
ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration,
|
|
215
|
+
)
|
|
202
216
|
from ..models.list_completed_jobs_response_200_item_flow_status_modules_item_iterator import (
|
|
203
217
|
ListCompletedJobsResponse200ItemFlowStatusModulesItemIterator,
|
|
204
218
|
)
|
|
@@ -225,6 +239,15 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
225
239
|
|
|
226
240
|
flow_jobs_success = cast(List[bool], d.pop("flow_jobs_success", UNSET))
|
|
227
241
|
|
|
242
|
+
_flow_jobs_duration = d.pop("flow_jobs_duration", UNSET)
|
|
243
|
+
flow_jobs_duration: Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration]
|
|
244
|
+
if isinstance(_flow_jobs_duration, Unset):
|
|
245
|
+
flow_jobs_duration = UNSET
|
|
246
|
+
else:
|
|
247
|
+
flow_jobs_duration = ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration.from_dict(
|
|
248
|
+
_flow_jobs_duration
|
|
249
|
+
)
|
|
250
|
+
|
|
228
251
|
_branch_chosen = d.pop("branch_chosen", UNSET)
|
|
229
252
|
branch_chosen: Union[Unset, ListCompletedJobsResponse200ItemFlowStatusModulesItemBranchChosen]
|
|
230
253
|
if isinstance(_branch_chosen, Unset):
|
|
@@ -295,6 +318,7 @@ class ListCompletedJobsResponse200ItemFlowStatusModulesItem:
|
|
|
295
318
|
iterator=iterator,
|
|
296
319
|
flow_jobs=flow_jobs,
|
|
297
320
|
flow_jobs_success=flow_jobs_success,
|
|
321
|
+
flow_jobs_duration=flow_jobs_duration,
|
|
298
322
|
branch_chosen=branch_chosen,
|
|
299
323
|
branchall=branchall,
|
|
300
324
|
approvers=approvers,
|
|
@@ -0,0 +1,71 @@
|
|
|
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="ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class ListCompletedJobsResponse200ItemFlowStatusModulesItemFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|