windmill-api 1.440.1__py3-none-any.whl → 1.450.1__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/capture/{get_capture.py → delete_capture.py} +12 -14
- windmill_api/api/capture/get_capture_configs.py +186 -0
- windmill_api/api/capture/list_captures.py +241 -0
- windmill_api/api/capture/ping_capture_config.py +121 -0
- windmill_api/api/capture/set_capture_config.py +107 -0
- windmill_api/api/input_/get_input_history.py +15 -0
- windmill_api/api/job/get_slack_approval_payload.py +171 -0
- windmill_api/api/nats_trigger/__init__.py +0 -0
- windmill_api/api/nats_trigger/create_nats_trigger.py +105 -0
- windmill_api/api/{capture/create_capture.py → nats_trigger/delete_nats_trigger.py} +4 -6
- windmill_api/api/nats_trigger/exists_nats_trigger.py +160 -0
- windmill_api/api/nats_trigger/get_nats_trigger.py +166 -0
- windmill_api/api/nats_trigger/list_nats_triggers.py +237 -0
- windmill_api/api/nats_trigger/set_nats_trigger_enabled.py +113 -0
- windmill_api/api/nats_trigger/update_nats_trigger.py +113 -0
- windmill_api/api/postgres_trigger/__init__.py +0 -0
- windmill_api/api/postgres_trigger/create_postgres_publication.py +121 -0
- windmill_api/api/postgres_trigger/create_postgres_replication_slot.py +113 -0
- windmill_api/api/postgres_trigger/create_postgres_trigger.py +105 -0
- windmill_api/api/postgres_trigger/create_template_script.py +105 -0
- windmill_api/api/postgres_trigger/delete_postgres_publication.py +109 -0
- windmill_api/api/postgres_trigger/delete_postgres_replication_slot.py +113 -0
- windmill_api/api/{capture/update_capture.py → postgres_trigger/delete_postgres_trigger.py} +4 -6
- windmill_api/api/postgres_trigger/exists_postgres_trigger.py +160 -0
- windmill_api/api/postgres_trigger/get_postgres_publication.py +180 -0
- windmill_api/api/postgres_trigger/get_postgres_trigger.py +166 -0
- windmill_api/api/postgres_trigger/get_template_script.py +101 -0
- windmill_api/api/postgres_trigger/is_valid_postgres_configuration.py +160 -0
- windmill_api/api/postgres_trigger/list_postgres_publication.py +161 -0
- windmill_api/api/postgres_trigger/list_postgres_replication_slot.py +171 -0
- windmill_api/api/postgres_trigger/list_postgres_triggers.py +237 -0
- windmill_api/api/postgres_trigger/set_postgres_trigger_enabled.py +113 -0
- windmill_api/api/postgres_trigger/update_postgres_publication.py +121 -0
- windmill_api/api/postgres_trigger/update_postgres_trigger.py +113 -0
- windmill_api/api/teams/__init__.py +0 -0
- windmill_api/api/teams/sync_teams.py +131 -0
- windmill_api/api/worker/get_custom_tags.py +50 -4
- windmill_api/api/workspace/change_workspace_color.py +105 -0
- windmill_api/api/workspace/get_threshold_alert.py +152 -0
- windmill_api/api/workspace/set_threshold_alert.py +105 -0
- windmill_api/api/workspace/update_operator_settings.py +109 -0
- windmill_api/models/add_granular_acls_kind.py +2 -0
- windmill_api/models/archive_script_by_hash_response_200.py +8 -0
- windmill_api/models/archive_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/archive_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/capture.py +94 -0
- windmill_api/models/capture_config.py +95 -0
- windmill_api/models/capture_config_trigger_kind.py +13 -0
- windmill_api/models/capture_trigger_kind.py +13 -0
- windmill_api/models/change_workspace_color_json_body.py +58 -0
- windmill_api/models/channel_info.py +80 -0
- windmill_api/models/completed_job_language.py +1 -0
- windmill_api/models/create_nats_trigger_json_body.py +120 -0
- windmill_api/models/create_postgres_publication_json_body.py +90 -0
- windmill_api/models/create_postgres_publication_json_body_table_to_track_item.py +86 -0
- windmill_api/models/create_postgres_publication_json_body_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/create_postgres_replication_slot_json_body.py +58 -0
- windmill_api/models/create_postgres_trigger_json_body.py +125 -0
- windmill_api/models/create_postgres_trigger_json_body_publication.py +92 -0
- windmill_api/models/create_postgres_trigger_json_body_publication_table_to_track_item.py +86 -0
- windmill_api/models/create_postgres_trigger_json_body_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/create_script_json_body.py +8 -0
- windmill_api/models/create_script_json_body_kind.py +1 -0
- windmill_api/models/create_script_json_body_language.py +1 -0
- windmill_api/models/create_template_script_json_body.py +90 -0
- windmill_api/models/create_template_script_json_body_language.py +8 -0
- windmill_api/models/create_template_script_json_body_relations_item.py +86 -0
- windmill_api/models/create_template_script_json_body_relations_item_table_to_track_item.py +79 -0
- windmill_api/models/create_websocket_trigger_json_body.py +42 -29
- windmill_api/models/create_workspace.py +8 -0
- windmill_api/models/create_workspace_json_body.py +8 -0
- windmill_api/models/delete_completed_job_response_200_language.py +1 -0
- windmill_api/models/delete_postgres_replication_slot_json_body.py +58 -0
- windmill_api/models/delete_script_by_hash_response_200.py +8 -0
- windmill_api/models/delete_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/delete_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/edit_nats_trigger.py +112 -0
- windmill_api/models/edit_postgres_trigger.py +123 -0
- windmill_api/models/edit_postgres_trigger_publication.py +90 -0
- windmill_api/models/edit_postgres_trigger_publication_table_to_track_item.py +86 -0
- windmill_api/models/edit_postgres_trigger_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/edit_websocket_trigger.py +35 -21
- windmill_api/models/extended_jobs_jobs_item_type_0_language.py +1 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_language.py +1 -0
- windmill_api/models/flow_metadata.py +8 -0
- windmill_api/models/flow_module_value_2_type_0_language.py +1 -0
- windmill_api/models/get_capture_configs_response_200_item.py +95 -0
- windmill_api/models/get_capture_configs_response_200_item_trigger_kind.py +13 -0
- windmill_api/models/get_capture_configs_runnable_kind.py +9 -0
- windmill_api/models/get_completed_job_response_200_language.py +1 -0
- windmill_api/models/get_flow_by_path_response_200.py +8 -0
- windmill_api/models/get_flow_by_path_with_draft_response_200_draft.py +8 -0
- windmill_api/models/get_flow_version_response_200.py +8 -0
- windmill_api/models/get_granular_acls_kind.py +2 -0
- windmill_api/models/get_http_trigger_response_200.py +36 -36
- windmill_api/models/get_job_response_200_type_0_language.py +1 -0
- windmill_api/models/get_job_response_200_type_1_language.py +1 -0
- windmill_api/models/get_nats_trigger_response_200.py +196 -0
- windmill_api/models/get_nats_trigger_response_200_extra_perms.py +44 -0
- windmill_api/models/get_postgres_publication_response_200.py +90 -0
- windmill_api/models/get_postgres_publication_response_200_table_to_track_item.py +86 -0
- windmill_api/models/get_postgres_publication_response_200_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/get_postgres_trigger_response_200.py +178 -0
- windmill_api/models/get_postgres_trigger_response_200_extra_perms.py +44 -0
- windmill_api/models/get_premium_info_response_200.py +7 -0
- windmill_api/models/get_script_by_hash_response_200.py +8 -0
- windmill_api/models/get_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/get_script_by_path_response_200.py +8 -0
- windmill_api/models/get_script_by_path_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_path_response_200_language.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200.py +8 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft.py +8 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft_kind.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft_language.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_language.py +1 -0
- windmill_api/models/get_settings_response_200.py +27 -0
- windmill_api/models/get_settings_response_200_operator_settings.py +114 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_language.py +1 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_language.py +1 -0
- windmill_api/models/get_threshold_alert_response_200.py +75 -0
- windmill_api/models/get_triggers_count_of_flow_response_200.py +16 -0
- windmill_api/models/get_triggers_count_of_script_response_200.py +16 -0
- windmill_api/models/get_used_triggers_response_200.py +14 -0
- windmill_api/models/get_websocket_trigger_response_200.py +89 -76
- windmill_api/models/http_trigger.py +36 -36
- windmill_api/models/job_type_0_language.py +1 -0
- windmill_api/models/job_type_1_language.py +1 -0
- windmill_api/models/language.py +8 -0
- windmill_api/models/list_captures_response_200_item.py +94 -0
- windmill_api/models/list_captures_response_200_item_trigger_kind.py +13 -0
- windmill_api/models/list_captures_runnable_kind.py +9 -0
- windmill_api/models/list_captures_trigger_kind.py +13 -0
- windmill_api/models/list_completed_jobs_response_200_item_language.py +1 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_language.py +1 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_language.py +1 -0
- windmill_api/models/list_http_triggers_response_200_item.py +36 -36
- windmill_api/models/list_jobs_response_200_item_type_0_language.py +1 -0
- windmill_api/models/list_jobs_response_200_item_type_1_language.py +1 -0
- windmill_api/models/list_nats_triggers_response_200_item.py +196 -0
- windmill_api/models/list_nats_triggers_response_200_item_extra_perms.py +44 -0
- windmill_api/models/list_postgres_replication_slot_response_200_item.py +66 -0
- windmill_api/models/list_postgres_triggers_response_200_item.py +182 -0
- windmill_api/models/list_postgres_triggers_response_200_item_extra_perms.py +44 -0
- windmill_api/models/list_queue_response_200_item_language.py +1 -0
- windmill_api/models/list_scripts_response_200_item.py +8 -0
- windmill_api/models/list_scripts_response_200_item_kind.py +1 -0
- windmill_api/models/list_scripts_response_200_item_language.py +1 -0
- windmill_api/models/list_user_workspaces_response_200_workspaces_item.py +39 -1
- windmill_api/models/list_user_workspaces_response_200_workspaces_item_operator_settings.py +114 -0
- windmill_api/models/list_websocket_triggers_response_200_item.py +89 -76
- windmill_api/models/list_workspaces_as_super_admin_response_200_item.py +8 -0
- windmill_api/models/list_workspaces_response_200_item.py +8 -0
- windmill_api/models/nats_trigger.py +196 -0
- windmill_api/models/nats_trigger_extra_perms.py +44 -0
- windmill_api/models/new_nats_trigger.py +120 -0
- windmill_api/models/new_postgres_trigger.py +125 -0
- windmill_api/models/new_postgres_trigger_publication.py +90 -0
- windmill_api/models/new_postgres_trigger_publication_table_to_track_item.py +86 -0
- windmill_api/models/new_postgres_trigger_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/new_script.py +8 -0
- windmill_api/models/new_script_kind.py +1 -0
- windmill_api/models/new_script_language.py +1 -0
- windmill_api/models/new_script_with_draft.py +8 -0
- windmill_api/models/new_script_with_draft_draft.py +8 -0
- windmill_api/models/new_script_with_draft_draft_kind.py +1 -0
- windmill_api/models/new_script_with_draft_draft_language.py +1 -0
- windmill_api/models/new_script_with_draft_kind.py +1 -0
- windmill_api/models/new_script_with_draft_language.py +1 -0
- windmill_api/models/new_websocket_trigger.py +36 -26
- windmill_api/models/open_flow_w_path.py +8 -0
- windmill_api/models/operator_settings.py +114 -0
- windmill_api/models/ping_capture_config_runnable_kind.py +9 -0
- windmill_api/models/ping_capture_config_trigger_kind.py +13 -0
- windmill_api/models/postgres_trigger.py +178 -0
- windmill_api/models/postgres_trigger_extra_perms.py +44 -0
- windmill_api/models/preview_language.py +1 -0
- windmill_api/models/publication_data.py +86 -0
- windmill_api/models/publication_data_table_to_track_item.py +84 -0
- windmill_api/models/publication_data_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/queued_job_language.py +1 -0
- windmill_api/models/raw_script_for_dependencies_language.py +1 -0
- windmill_api/models/raw_script_language.py +1 -0
- windmill_api/models/relations.py +80 -0
- windmill_api/models/relations_table_to_track_item.py +79 -0
- windmill_api/models/remove_granular_acls_kind.py +2 -0
- windmill_api/models/run_raw_script_dependencies_json_body_raw_scripts_item_language.py +1 -0
- windmill_api/models/run_script_preview_json_body_language.py +1 -0
- windmill_api/models/script.py +8 -0
- windmill_api/models/script_kind.py +1 -0
- windmill_api/models/script_lang.py +25 -0
- windmill_api/models/script_language.py +1 -0
- windmill_api/models/set_capture_config_json_body.py +97 -0
- windmill_api/models/set_capture_config_json_body_trigger_config.py +44 -0
- windmill_api/models/set_capture_config_json_body_trigger_kind.py +13 -0
- windmill_api/models/set_nats_trigger_enabled_json_body.py +58 -0
- windmill_api/models/set_postgres_trigger_enabled_json_body.py +58 -0
- windmill_api/models/set_threshold_alert_json_body.py +58 -0
- windmill_api/models/slot.py +58 -0
- windmill_api/models/slot_list.py +66 -0
- windmill_api/models/sync_teams_response_200_item.py +87 -0
- windmill_api/models/sync_teams_response_200_item_channels_item.py +80 -0
- windmill_api/models/table_to_track_item.py +79 -0
- windmill_api/models/team_info.py +87 -0
- windmill_api/models/team_info_channels_item.py +80 -0
- windmill_api/models/template_script.py +90 -0
- windmill_api/models/template_script_language.py +8 -0
- windmill_api/models/template_script_relations_item.py +82 -0
- windmill_api/models/template_script_relations_item_table_to_track_item.py +79 -0
- windmill_api/models/trigger_extra_property.py +95 -0
- windmill_api/models/trigger_extra_property_extra_perms.py +44 -0
- windmill_api/models/triggers_count.py +16 -0
- windmill_api/models/update_nats_trigger_json_body.py +112 -0
- windmill_api/models/update_operator_settings_json_body.py +114 -0
- windmill_api/models/update_postgres_publication_json_body.py +90 -0
- windmill_api/models/update_postgres_publication_json_body_table_to_track_item.py +86 -0
- windmill_api/models/update_postgres_publication_json_body_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/update_postgres_trigger_json_body.py +123 -0
- windmill_api/models/update_postgres_trigger_json_body_publication.py +92 -0
- windmill_api/models/update_postgres_trigger_json_body_publication_table_to_track_item.py +86 -0
- windmill_api/models/update_postgres_trigger_json_body_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/update_websocket_trigger_json_body.py +40 -24
- windmill_api/models/user_workspace_list_workspaces_item.py +37 -1
- windmill_api/models/user_workspace_list_workspaces_item_operator_settings.py +114 -0
- windmill_api/models/websocket_trigger.py +83 -73
- windmill_api/models/workspace.py +8 -0
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/METADATA +1 -1
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/RECORD +231 -100
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/LICENSE +0 -0
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
T = TypeVar("T", bound="SyncTeamsResponse200ItemChannelsItem")
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@_attrs_define
|
|
10
|
+
class SyncTeamsResponse200ItemChannelsItem:
|
|
11
|
+
"""
|
|
12
|
+
Attributes:
|
|
13
|
+
channel_id (str): The unique identifier of the channel Example: 19:channel123@thread.tacv2.
|
|
14
|
+
channel_name (str): The display name of the channel Example: General.
|
|
15
|
+
tenant_id (str): The Microsoft Teams tenant identifier Example: 12345678-1234-1234-1234-123456789012.
|
|
16
|
+
service_url (str): The service URL for the channel Example:
|
|
17
|
+
https://smba.trafficmanager.net/amer/12345678-1234-1234-1234-123456789012/.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
channel_id: str
|
|
21
|
+
channel_name: str
|
|
22
|
+
tenant_id: str
|
|
23
|
+
service_url: str
|
|
24
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
25
|
+
|
|
26
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
27
|
+
channel_id = self.channel_id
|
|
28
|
+
channel_name = self.channel_name
|
|
29
|
+
tenant_id = self.tenant_id
|
|
30
|
+
service_url = self.service_url
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update(
|
|
35
|
+
{
|
|
36
|
+
"channel_id": channel_id,
|
|
37
|
+
"channel_name": channel_name,
|
|
38
|
+
"tenant_id": tenant_id,
|
|
39
|
+
"service_url": service_url,
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
return field_dict
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
47
|
+
d = src_dict.copy()
|
|
48
|
+
channel_id = d.pop("channel_id")
|
|
49
|
+
|
|
50
|
+
channel_name = d.pop("channel_name")
|
|
51
|
+
|
|
52
|
+
tenant_id = d.pop("tenant_id")
|
|
53
|
+
|
|
54
|
+
service_url = d.pop("service_url")
|
|
55
|
+
|
|
56
|
+
sync_teams_response_200_item_channels_item = cls(
|
|
57
|
+
channel_id=channel_id,
|
|
58
|
+
channel_name=channel_name,
|
|
59
|
+
tenant_id=tenant_id,
|
|
60
|
+
service_url=service_url,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
sync_teams_response_200_item_channels_item.additional_properties = d
|
|
64
|
+
return sync_teams_response_200_item_channels_item
|
|
65
|
+
|
|
66
|
+
@property
|
|
67
|
+
def additional_keys(self) -> List[str]:
|
|
68
|
+
return list(self.additional_properties.keys())
|
|
69
|
+
|
|
70
|
+
def __getitem__(self, key: str) -> Any:
|
|
71
|
+
return self.additional_properties[key]
|
|
72
|
+
|
|
73
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
74
|
+
self.additional_properties[key] = value
|
|
75
|
+
|
|
76
|
+
def __delitem__(self, key: str) -> None:
|
|
77
|
+
del self.additional_properties[key]
|
|
78
|
+
|
|
79
|
+
def __contains__(self, key: str) -> bool:
|
|
80
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,79 @@
|
|
|
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="TableToTrackItem")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class TableToTrackItem:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
table_name (str):
|
|
16
|
+
columns_name (Union[Unset, List[str]]):
|
|
17
|
+
where_clause (Union[Unset, str]):
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
table_name: str
|
|
21
|
+
columns_name: Union[Unset, List[str]] = UNSET
|
|
22
|
+
where_clause: Union[Unset, str] = UNSET
|
|
23
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
24
|
+
|
|
25
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
26
|
+
table_name = self.table_name
|
|
27
|
+
columns_name: Union[Unset, List[str]] = UNSET
|
|
28
|
+
if not isinstance(self.columns_name, Unset):
|
|
29
|
+
columns_name = self.columns_name
|
|
30
|
+
|
|
31
|
+
where_clause = self.where_clause
|
|
32
|
+
|
|
33
|
+
field_dict: Dict[str, Any] = {}
|
|
34
|
+
field_dict.update(self.additional_properties)
|
|
35
|
+
field_dict.update(
|
|
36
|
+
{
|
|
37
|
+
"table_name": table_name,
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
if columns_name is not UNSET:
|
|
41
|
+
field_dict["columns_name"] = columns_name
|
|
42
|
+
if where_clause is not UNSET:
|
|
43
|
+
field_dict["where_clause"] = where_clause
|
|
44
|
+
|
|
45
|
+
return field_dict
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
49
|
+
d = src_dict.copy()
|
|
50
|
+
table_name = d.pop("table_name")
|
|
51
|
+
|
|
52
|
+
columns_name = cast(List[str], d.pop("columns_name", UNSET))
|
|
53
|
+
|
|
54
|
+
where_clause = d.pop("where_clause", UNSET)
|
|
55
|
+
|
|
56
|
+
table_to_track_item = cls(
|
|
57
|
+
table_name=table_name,
|
|
58
|
+
columns_name=columns_name,
|
|
59
|
+
where_clause=where_clause,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
table_to_track_item.additional_properties = d
|
|
63
|
+
return table_to_track_item
|
|
64
|
+
|
|
65
|
+
@property
|
|
66
|
+
def additional_keys(self) -> List[str]:
|
|
67
|
+
return list(self.additional_properties.keys())
|
|
68
|
+
|
|
69
|
+
def __getitem__(self, key: str) -> Any:
|
|
70
|
+
return self.additional_properties[key]
|
|
71
|
+
|
|
72
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
73
|
+
self.additional_properties[key] = value
|
|
74
|
+
|
|
75
|
+
def __delitem__(self, key: str) -> None:
|
|
76
|
+
del self.additional_properties[key]
|
|
77
|
+
|
|
78
|
+
def __contains__(self, key: str) -> bool:
|
|
79
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from ..models.team_info_channels_item import TeamInfoChannelsItem
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="TeamInfo")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@_attrs_define
|
|
14
|
+
class TeamInfo:
|
|
15
|
+
"""
|
|
16
|
+
Attributes:
|
|
17
|
+
team_id (str): The unique identifier of the Microsoft Teams team Example: 19:abc123def456@thread.tacv2.
|
|
18
|
+
team_name (str): The display name of the Microsoft Teams team Example: Engineering Team.
|
|
19
|
+
channels (List['TeamInfoChannelsItem']): List of channels within the team
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
team_id: str
|
|
23
|
+
team_name: str
|
|
24
|
+
channels: List["TeamInfoChannelsItem"]
|
|
25
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
|
+
|
|
27
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
28
|
+
team_id = self.team_id
|
|
29
|
+
team_name = self.team_name
|
|
30
|
+
channels = []
|
|
31
|
+
for channels_item_data in self.channels:
|
|
32
|
+
channels_item = channels_item_data.to_dict()
|
|
33
|
+
|
|
34
|
+
channels.append(channels_item)
|
|
35
|
+
|
|
36
|
+
field_dict: Dict[str, Any] = {}
|
|
37
|
+
field_dict.update(self.additional_properties)
|
|
38
|
+
field_dict.update(
|
|
39
|
+
{
|
|
40
|
+
"team_id": team_id,
|
|
41
|
+
"team_name": team_name,
|
|
42
|
+
"channels": channels,
|
|
43
|
+
}
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
return field_dict
|
|
47
|
+
|
|
48
|
+
@classmethod
|
|
49
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
50
|
+
from ..models.team_info_channels_item import TeamInfoChannelsItem
|
|
51
|
+
|
|
52
|
+
d = src_dict.copy()
|
|
53
|
+
team_id = d.pop("team_id")
|
|
54
|
+
|
|
55
|
+
team_name = d.pop("team_name")
|
|
56
|
+
|
|
57
|
+
channels = []
|
|
58
|
+
_channels = d.pop("channels")
|
|
59
|
+
for channels_item_data in _channels:
|
|
60
|
+
channels_item = TeamInfoChannelsItem.from_dict(channels_item_data)
|
|
61
|
+
|
|
62
|
+
channels.append(channels_item)
|
|
63
|
+
|
|
64
|
+
team_info = cls(
|
|
65
|
+
team_id=team_id,
|
|
66
|
+
team_name=team_name,
|
|
67
|
+
channels=channels,
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
team_info.additional_properties = d
|
|
71
|
+
return team_info
|
|
72
|
+
|
|
73
|
+
@property
|
|
74
|
+
def additional_keys(self) -> List[str]:
|
|
75
|
+
return list(self.additional_properties.keys())
|
|
76
|
+
|
|
77
|
+
def __getitem__(self, key: str) -> Any:
|
|
78
|
+
return self.additional_properties[key]
|
|
79
|
+
|
|
80
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
81
|
+
self.additional_properties[key] = value
|
|
82
|
+
|
|
83
|
+
def __delitem__(self, key: str) -> None:
|
|
84
|
+
del self.additional_properties[key]
|
|
85
|
+
|
|
86
|
+
def __contains__(self, key: str) -> bool:
|
|
87
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
T = TypeVar("T", bound="TeamInfoChannelsItem")
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@_attrs_define
|
|
10
|
+
class TeamInfoChannelsItem:
|
|
11
|
+
"""
|
|
12
|
+
Attributes:
|
|
13
|
+
channel_id (str): The unique identifier of the channel Example: 19:channel123@thread.tacv2.
|
|
14
|
+
channel_name (str): The display name of the channel Example: General.
|
|
15
|
+
tenant_id (str): The Microsoft Teams tenant identifier Example: 12345678-1234-1234-1234-123456789012.
|
|
16
|
+
service_url (str): The service URL for the channel Example:
|
|
17
|
+
https://smba.trafficmanager.net/amer/12345678-1234-1234-1234-123456789012/.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
channel_id: str
|
|
21
|
+
channel_name: str
|
|
22
|
+
tenant_id: str
|
|
23
|
+
service_url: str
|
|
24
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
25
|
+
|
|
26
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
27
|
+
channel_id = self.channel_id
|
|
28
|
+
channel_name = self.channel_name
|
|
29
|
+
tenant_id = self.tenant_id
|
|
30
|
+
service_url = self.service_url
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update(
|
|
35
|
+
{
|
|
36
|
+
"channel_id": channel_id,
|
|
37
|
+
"channel_name": channel_name,
|
|
38
|
+
"tenant_id": tenant_id,
|
|
39
|
+
"service_url": service_url,
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
return field_dict
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
47
|
+
d = src_dict.copy()
|
|
48
|
+
channel_id = d.pop("channel_id")
|
|
49
|
+
|
|
50
|
+
channel_name = d.pop("channel_name")
|
|
51
|
+
|
|
52
|
+
tenant_id = d.pop("tenant_id")
|
|
53
|
+
|
|
54
|
+
service_url = d.pop("service_url")
|
|
55
|
+
|
|
56
|
+
team_info_channels_item = cls(
|
|
57
|
+
channel_id=channel_id,
|
|
58
|
+
channel_name=channel_name,
|
|
59
|
+
tenant_id=tenant_id,
|
|
60
|
+
service_url=service_url,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
team_info_channels_item.additional_properties = d
|
|
64
|
+
return team_info_channels_item
|
|
65
|
+
|
|
66
|
+
@property
|
|
67
|
+
def additional_keys(self) -> List[str]:
|
|
68
|
+
return list(self.additional_properties.keys())
|
|
69
|
+
|
|
70
|
+
def __getitem__(self, key: str) -> Any:
|
|
71
|
+
return self.additional_properties[key]
|
|
72
|
+
|
|
73
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
74
|
+
self.additional_properties[key] = value
|
|
75
|
+
|
|
76
|
+
def __delitem__(self, key: str) -> None:
|
|
77
|
+
del self.additional_properties[key]
|
|
78
|
+
|
|
79
|
+
def __contains__(self, key: str) -> bool:
|
|
80
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
from ..models.template_script_language import TemplateScriptLanguage
|
|
7
|
+
|
|
8
|
+
if TYPE_CHECKING:
|
|
9
|
+
from ..models.template_script_relations_item import TemplateScriptRelationsItem
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="TemplateScript")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class TemplateScript:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
postgres_resource_path (str):
|
|
20
|
+
relations (List['TemplateScriptRelationsItem']):
|
|
21
|
+
language (TemplateScriptLanguage):
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
postgres_resource_path: str
|
|
25
|
+
relations: List["TemplateScriptRelationsItem"]
|
|
26
|
+
language: TemplateScriptLanguage
|
|
27
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
28
|
+
|
|
29
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
30
|
+
postgres_resource_path = self.postgres_resource_path
|
|
31
|
+
relations = []
|
|
32
|
+
for relations_item_data in self.relations:
|
|
33
|
+
relations_item = relations_item_data.to_dict()
|
|
34
|
+
|
|
35
|
+
relations.append(relations_item)
|
|
36
|
+
|
|
37
|
+
language = self.language.value
|
|
38
|
+
|
|
39
|
+
field_dict: Dict[str, Any] = {}
|
|
40
|
+
field_dict.update(self.additional_properties)
|
|
41
|
+
field_dict.update(
|
|
42
|
+
{
|
|
43
|
+
"postgres_resource_path": postgres_resource_path,
|
|
44
|
+
"relations": relations,
|
|
45
|
+
"language": language,
|
|
46
|
+
}
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
return field_dict
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
53
|
+
from ..models.template_script_relations_item import TemplateScriptRelationsItem
|
|
54
|
+
|
|
55
|
+
d = src_dict.copy()
|
|
56
|
+
postgres_resource_path = d.pop("postgres_resource_path")
|
|
57
|
+
|
|
58
|
+
relations = []
|
|
59
|
+
_relations = d.pop("relations")
|
|
60
|
+
for relations_item_data in _relations:
|
|
61
|
+
relations_item = TemplateScriptRelationsItem.from_dict(relations_item_data)
|
|
62
|
+
|
|
63
|
+
relations.append(relations_item)
|
|
64
|
+
|
|
65
|
+
language = TemplateScriptLanguage(d.pop("language"))
|
|
66
|
+
|
|
67
|
+
template_script = cls(
|
|
68
|
+
postgres_resource_path=postgres_resource_path,
|
|
69
|
+
relations=relations,
|
|
70
|
+
language=language,
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
template_script.additional_properties = d
|
|
74
|
+
return template_script
|
|
75
|
+
|
|
76
|
+
@property
|
|
77
|
+
def additional_keys(self) -> List[str]:
|
|
78
|
+
return list(self.additional_properties.keys())
|
|
79
|
+
|
|
80
|
+
def __getitem__(self, key: str) -> Any:
|
|
81
|
+
return self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
84
|
+
self.additional_properties[key] = value
|
|
85
|
+
|
|
86
|
+
def __delitem__(self, key: str) -> None:
|
|
87
|
+
del self.additional_properties[key]
|
|
88
|
+
|
|
89
|
+
def __contains__(self, key: str) -> bool:
|
|
90
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from ..models.template_script_relations_item_table_to_track_item import TemplateScriptRelationsItemTableToTrackItem
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="TemplateScriptRelationsItem")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@_attrs_define
|
|
14
|
+
class TemplateScriptRelationsItem:
|
|
15
|
+
"""
|
|
16
|
+
Attributes:
|
|
17
|
+
schema_name (str):
|
|
18
|
+
table_to_track (List['TemplateScriptRelationsItemTableToTrackItem']):
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
schema_name: str
|
|
22
|
+
table_to_track: List["TemplateScriptRelationsItemTableToTrackItem"]
|
|
23
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
24
|
+
|
|
25
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
26
|
+
schema_name = self.schema_name
|
|
27
|
+
table_to_track = []
|
|
28
|
+
for table_to_track_item_data in self.table_to_track:
|
|
29
|
+
table_to_track_item = table_to_track_item_data.to_dict()
|
|
30
|
+
|
|
31
|
+
table_to_track.append(table_to_track_item)
|
|
32
|
+
|
|
33
|
+
field_dict: Dict[str, Any] = {}
|
|
34
|
+
field_dict.update(self.additional_properties)
|
|
35
|
+
field_dict.update(
|
|
36
|
+
{
|
|
37
|
+
"schema_name": schema_name,
|
|
38
|
+
"table_to_track": table_to_track,
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
return field_dict
|
|
43
|
+
|
|
44
|
+
@classmethod
|
|
45
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
46
|
+
from ..models.template_script_relations_item_table_to_track_item import (
|
|
47
|
+
TemplateScriptRelationsItemTableToTrackItem,
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
d = src_dict.copy()
|
|
51
|
+
schema_name = d.pop("schema_name")
|
|
52
|
+
|
|
53
|
+
table_to_track = []
|
|
54
|
+
_table_to_track = d.pop("table_to_track")
|
|
55
|
+
for table_to_track_item_data in _table_to_track:
|
|
56
|
+
table_to_track_item = TemplateScriptRelationsItemTableToTrackItem.from_dict(table_to_track_item_data)
|
|
57
|
+
|
|
58
|
+
table_to_track.append(table_to_track_item)
|
|
59
|
+
|
|
60
|
+
template_script_relations_item = cls(
|
|
61
|
+
schema_name=schema_name,
|
|
62
|
+
table_to_track=table_to_track,
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
template_script_relations_item.additional_properties = d
|
|
66
|
+
return template_script_relations_item
|
|
67
|
+
|
|
68
|
+
@property
|
|
69
|
+
def additional_keys(self) -> List[str]:
|
|
70
|
+
return list(self.additional_properties.keys())
|
|
71
|
+
|
|
72
|
+
def __getitem__(self, key: str) -> Any:
|
|
73
|
+
return self.additional_properties[key]
|
|
74
|
+
|
|
75
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
76
|
+
self.additional_properties[key] = value
|
|
77
|
+
|
|
78
|
+
def __delitem__(self, key: str) -> None:
|
|
79
|
+
del self.additional_properties[key]
|
|
80
|
+
|
|
81
|
+
def __contains__(self, key: str) -> bool:
|
|
82
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,79 @@
|
|
|
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="TemplateScriptRelationsItemTableToTrackItem")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class TemplateScriptRelationsItemTableToTrackItem:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
table_name (str):
|
|
16
|
+
columns_name (Union[Unset, List[str]]):
|
|
17
|
+
where_clause (Union[Unset, str]):
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
table_name: str
|
|
21
|
+
columns_name: Union[Unset, List[str]] = UNSET
|
|
22
|
+
where_clause: Union[Unset, str] = UNSET
|
|
23
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
24
|
+
|
|
25
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
26
|
+
table_name = self.table_name
|
|
27
|
+
columns_name: Union[Unset, List[str]] = UNSET
|
|
28
|
+
if not isinstance(self.columns_name, Unset):
|
|
29
|
+
columns_name = self.columns_name
|
|
30
|
+
|
|
31
|
+
where_clause = self.where_clause
|
|
32
|
+
|
|
33
|
+
field_dict: Dict[str, Any] = {}
|
|
34
|
+
field_dict.update(self.additional_properties)
|
|
35
|
+
field_dict.update(
|
|
36
|
+
{
|
|
37
|
+
"table_name": table_name,
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
if columns_name is not UNSET:
|
|
41
|
+
field_dict["columns_name"] = columns_name
|
|
42
|
+
if where_clause is not UNSET:
|
|
43
|
+
field_dict["where_clause"] = where_clause
|
|
44
|
+
|
|
45
|
+
return field_dict
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
49
|
+
d = src_dict.copy()
|
|
50
|
+
table_name = d.pop("table_name")
|
|
51
|
+
|
|
52
|
+
columns_name = cast(List[str], d.pop("columns_name", UNSET))
|
|
53
|
+
|
|
54
|
+
where_clause = d.pop("where_clause", UNSET)
|
|
55
|
+
|
|
56
|
+
template_script_relations_item_table_to_track_item = cls(
|
|
57
|
+
table_name=table_name,
|
|
58
|
+
columns_name=columns_name,
|
|
59
|
+
where_clause=where_clause,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
template_script_relations_item_table_to_track_item.additional_properties = d
|
|
63
|
+
return template_script_relations_item_table_to_track_item
|
|
64
|
+
|
|
65
|
+
@property
|
|
66
|
+
def additional_keys(self) -> List[str]:
|
|
67
|
+
return list(self.additional_properties.keys())
|
|
68
|
+
|
|
69
|
+
def __getitem__(self, key: str) -> Any:
|
|
70
|
+
return self.additional_properties[key]
|
|
71
|
+
|
|
72
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
73
|
+
self.additional_properties[key] = value
|
|
74
|
+
|
|
75
|
+
def __delitem__(self, key: str) -> None:
|
|
76
|
+
del self.additional_properties[key]
|
|
77
|
+
|
|
78
|
+
def __contains__(self, key: str) -> bool:
|
|
79
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
from dateutil.parser import isoparse
|
|
7
|
+
|
|
8
|
+
if TYPE_CHECKING:
|
|
9
|
+
from ..models.trigger_extra_property_extra_perms import TriggerExtraPropertyExtraPerms
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="TriggerExtraProperty")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class TriggerExtraProperty:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
email (str):
|
|
20
|
+
extra_perms (TriggerExtraPropertyExtraPerms):
|
|
21
|
+
workspace_id (str):
|
|
22
|
+
edited_by (str):
|
|
23
|
+
edited_at (datetime.datetime):
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
email: str
|
|
27
|
+
extra_perms: "TriggerExtraPropertyExtraPerms"
|
|
28
|
+
workspace_id: str
|
|
29
|
+
edited_by: str
|
|
30
|
+
edited_at: datetime.datetime
|
|
31
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
34
|
+
email = self.email
|
|
35
|
+
extra_perms = self.extra_perms.to_dict()
|
|
36
|
+
|
|
37
|
+
workspace_id = self.workspace_id
|
|
38
|
+
edited_by = self.edited_by
|
|
39
|
+
edited_at = self.edited_at.isoformat()
|
|
40
|
+
|
|
41
|
+
field_dict: Dict[str, Any] = {}
|
|
42
|
+
field_dict.update(self.additional_properties)
|
|
43
|
+
field_dict.update(
|
|
44
|
+
{
|
|
45
|
+
"email": email,
|
|
46
|
+
"extra_perms": extra_perms,
|
|
47
|
+
"workspace_id": workspace_id,
|
|
48
|
+
"edited_by": edited_by,
|
|
49
|
+
"edited_at": edited_at,
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
return field_dict
|
|
54
|
+
|
|
55
|
+
@classmethod
|
|
56
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
57
|
+
from ..models.trigger_extra_property_extra_perms import TriggerExtraPropertyExtraPerms
|
|
58
|
+
|
|
59
|
+
d = src_dict.copy()
|
|
60
|
+
email = d.pop("email")
|
|
61
|
+
|
|
62
|
+
extra_perms = TriggerExtraPropertyExtraPerms.from_dict(d.pop("extra_perms"))
|
|
63
|
+
|
|
64
|
+
workspace_id = d.pop("workspace_id")
|
|
65
|
+
|
|
66
|
+
edited_by = d.pop("edited_by")
|
|
67
|
+
|
|
68
|
+
edited_at = isoparse(d.pop("edited_at"))
|
|
69
|
+
|
|
70
|
+
trigger_extra_property = cls(
|
|
71
|
+
email=email,
|
|
72
|
+
extra_perms=extra_perms,
|
|
73
|
+
workspace_id=workspace_id,
|
|
74
|
+
edited_by=edited_by,
|
|
75
|
+
edited_at=edited_at,
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
trigger_extra_property.additional_properties = d
|
|
79
|
+
return trigger_extra_property
|
|
80
|
+
|
|
81
|
+
@property
|
|
82
|
+
def additional_keys(self) -> List[str]:
|
|
83
|
+
return list(self.additional_properties.keys())
|
|
84
|
+
|
|
85
|
+
def __getitem__(self, key: str) -> Any:
|
|
86
|
+
return self.additional_properties[key]
|
|
87
|
+
|
|
88
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
89
|
+
self.additional_properties[key] = value
|
|
90
|
+
|
|
91
|
+
def __delitem__(self, key: str) -> None:
|
|
92
|
+
del self.additional_properties[key]
|
|
93
|
+
|
|
94
|
+
def __contains__(self, key: str) -> bool:
|
|
95
|
+
return key in self.additional_properties
|