waldur-api-client 7.7.6__py3-none-any.whl → 7.7.7__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 waldur-api-client might be problematic. Click here for more details.
- waldur_api_client/api/booking_resources/booking_resources_count.py +34 -11
- waldur_api_client/api/booking_resources/booking_resources_list.py +34 -11
- waldur_api_client/api/customers/customers_project_metadata_compliance_details_list.py +189 -0
- waldur_api_client/api/customers/customers_project_metadata_compliance_overview_list.py +189 -0
- waldur_api_client/api/customers/customers_project_metadata_compliance_projects_list.py +187 -0
- waldur_api_client/api/customers/customers_project_metadata_question_answers_list.py +187 -0
- waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_count.py +34 -11
- waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_list.py +34 -11
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_count.py +34 -11
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_list.py +34 -11
- waldur_api_client/api/marketplace_offering_terms_of_service/__init__.py +1 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_count.py +274 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_create.py +152 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_destroy.py +89 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_list.py +277 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_partial_update.py +164 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_retrieve.py +142 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_update.py +164 -0
- waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_count.py +34 -11
- waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_list.py +34 -11
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_count.py +34 -11
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py +34 -11
- waldur_api_client/api/marketplace_orders/marketplace_orders_count.py +19 -0
- waldur_api_client/api/marketplace_orders/marketplace_orders_list.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_count.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_list.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_count.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_list.py +19 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +34 -11
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +34 -11
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +34 -11
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +34 -11
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_count.py +34 -11
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_list.py +34 -11
- waldur_api_client/api/marketplace_user_offering_consents/__init__.py +1 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_count.py +307 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_create.py +152 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_destroy.py +89 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_list.py +310 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_partial_update.py +164 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_retrieve.py +142 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_revoke.py +146 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_update.py +164 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_order_status_retrieve.py +145 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_status_retrieve.py +147 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_team_status_list.py +188 -0
- waldur_api_client/models/__init__.py +62 -0
- waldur_api_client/models/azure_sql_server_create_order_attributes.py +3 -0
- waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +3 -0
- waldur_api_client/models/booking_offerings_list_field_item.py +0 -2
- waldur_api_client/models/booking_offerings_retrieve_field_item.py +0 -2
- waldur_api_client/models/booking_resource.py +10 -9
- waldur_api_client/models/booking_resources_list_field_item.py +1 -1
- waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/checklist_info.py +76 -0
- waldur_api_client/models/compliance_overview.py +91 -0
- waldur_api_client/models/customer.py +81 -0
- waldur_api_client/models/customers_list_field_item.py +4 -0
- waldur_api_client/models/customers_retrieve_field_item.py +4 -0
- waldur_api_client/models/generic_order_attributes.py +69 -0
- waldur_api_client/models/google_auth_authorize_retrieve_field_item.py +1 -0
- waldur_api_client/models/google_auth_list_field_item.py +1 -0
- waldur_api_client/models/google_auth_retrieve_field_item.py +1 -0
- waldur_api_client/models/google_credentials.py +9 -0
- waldur_api_client/models/group_invitation.py +24 -0
- waldur_api_client/models/group_invitation_request.py +10 -0
- waldur_api_client/models/maintenance_announcement.py +8 -0
- waldur_api_client/models/marketplace_offering_terms_of_service_count_o_item.py +13 -0
- waldur_api_client/models/marketplace_offering_terms_of_service_list_o_item.py +13 -0
- waldur_api_client/models/marketplace_orders_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_public_offerings_list_field_item.py +0 -2
- waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +0 -2
- waldur_api_client/models/marketplace_rancher_create_order_attributes.py +3 -0
- waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_resources_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_service_providers_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_service_providers_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_user_offering_consents_count_o_item.py +15 -0
- waldur_api_client/models/marketplace_user_offering_consents_list_o_item.py +15 -0
- waldur_api_client/models/offering.py +0 -18
- waldur_api_client/models/offering_create.py +0 -18
- waldur_api_client/models/offering_create_request.py +0 -18
- waldur_api_client/models/offering_overview_update_request.py +0 -18
- waldur_api_client/models/offering_terms_of_service.py +142 -0
- waldur_api_client/models/offering_terms_of_service_create.py +107 -0
- waldur_api_client/models/offering_terms_of_service_create_request.py +107 -0
- waldur_api_client/models/offering_terms_of_service_request.py +96 -0
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +3 -0
- waldur_api_client/models/open_stack_nested_security_group.py +53 -1
- waldur_api_client/models/open_stack_nested_security_group_rules_item.py +197 -0
- waldur_api_client/models/open_stack_network.py +20 -0
- waldur_api_client/models/open_stack_security_group_rule_update_request.py +4 -4
- waldur_api_client/models/open_stack_tenant.py +38 -0
- waldur_api_client/models/open_stack_tenant_create_order_attributes.py +21 -0
- waldur_api_client/models/open_stack_volume_create_order_attributes.py +3 -0
- waldur_api_client/models/openstack_networks_list_field_item.py +1 -0
- waldur_api_client/models/openstack_networks_retrieve_field_item.py +1 -0
- waldur_api_client/models/openstack_tenants_list_field_item.py +3 -0
- waldur_api_client/models/openstack_tenants_retrieve_field_item.py +3 -0
- waldur_api_client/models/order_create.py +0 -8
- waldur_api_client/models/order_create_request.py +23 -7
- waldur_api_client/models/order_details.py +0 -9
- waldur_api_client/models/patched_offering_terms_of_service_request.py +96 -0
- waldur_api_client/models/patched_user_offering_consent_request.py +59 -0
- waldur_api_client/models/permission_project.py +147 -0
- waldur_api_client/models/project_answer.py +122 -0
- waldur_api_client/models/project_detail.py +133 -0
- waldur_api_client/models/project_details_response.py +115 -0
- waldur_api_client/models/provider_offering_details.py +0 -18
- waldur_api_client/models/provider_offering_details_request.py +0 -18
- waldur_api_client/models/public_offering_details.py +0 -18
- waldur_api_client/models/question_answer.py +176 -0
- waldur_api_client/models/question_answer_project_answers_item.py +44 -0
- waldur_api_client/models/question_answer_question_options_item.py +44 -0
- waldur_api_client/models/remote_resource_order.py +88 -0
- waldur_api_client/models/remote_resource_order_remote_state_enum.py +15 -0
- waldur_api_client/models/remote_resource_sync_status.py +123 -0
- waldur_api_client/models/remote_resource_sync_status_remote_state_enum.py +13 -0
- waldur_api_client/models/remote_resource_team_member.py +85 -0
- waldur_api_client/models/resource.py +10 -9
- waldur_api_client/models/service_provider.py +9 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +3 -0
- waldur_api_client/models/sync_status_enum.py +10 -0
- waldur_api_client/models/user_offering_consent.py +202 -0
- waldur_api_client/models/user_offering_consent_create.py +60 -0
- waldur_api_client/models/user_offering_consent_create_request.py +60 -0
- waldur_api_client/models/user_offering_consent_request.py +59 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +3 -0
- {waldur_api_client-7.7.6.dist-info → waldur_api_client-7.7.7.dist-info}/METADATA +1 -1
- {waldur_api_client-7.7.6.dist-info → waldur_api_client-7.7.7.dist-info}/RECORD +143 -88
- {waldur_api_client-7.7.6.dist-info → waldur_api_client-7.7.7.dist-info}/LICENSE +0 -0
- {waldur_api_client-7.7.6.dist-info → waldur_api_client-7.7.7.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import TYPE_CHECKING, Any, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
if TYPE_CHECKING:
|
|
8
|
+
from ..models.checklist_info import ChecklistInfo
|
|
9
|
+
from ..models.project_detail import ProjectDetail
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="ProjectDetailsResponse")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class ProjectDetailsResponse:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
checklist (ChecklistInfo):
|
|
20
|
+
total_projects (int):
|
|
21
|
+
projects_with_completions (int):
|
|
22
|
+
fully_completed_projects (int):
|
|
23
|
+
projects_requiring_review (int):
|
|
24
|
+
project_details (list['ProjectDetail']):
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
checklist: "ChecklistInfo"
|
|
28
|
+
total_projects: int
|
|
29
|
+
projects_with_completions: int
|
|
30
|
+
fully_completed_projects: int
|
|
31
|
+
projects_requiring_review: int
|
|
32
|
+
project_details: list["ProjectDetail"]
|
|
33
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
34
|
+
|
|
35
|
+
def to_dict(self) -> dict[str, Any]:
|
|
36
|
+
checklist = self.checklist.to_dict()
|
|
37
|
+
|
|
38
|
+
total_projects = self.total_projects
|
|
39
|
+
|
|
40
|
+
projects_with_completions = self.projects_with_completions
|
|
41
|
+
|
|
42
|
+
fully_completed_projects = self.fully_completed_projects
|
|
43
|
+
|
|
44
|
+
projects_requiring_review = self.projects_requiring_review
|
|
45
|
+
|
|
46
|
+
project_details = []
|
|
47
|
+
for project_details_item_data in self.project_details:
|
|
48
|
+
project_details_item = project_details_item_data.to_dict()
|
|
49
|
+
project_details.append(project_details_item)
|
|
50
|
+
|
|
51
|
+
field_dict: dict[str, Any] = {}
|
|
52
|
+
field_dict.update(self.additional_properties)
|
|
53
|
+
field_dict.update(
|
|
54
|
+
{
|
|
55
|
+
"checklist": checklist,
|
|
56
|
+
"total_projects": total_projects,
|
|
57
|
+
"projects_with_completions": projects_with_completions,
|
|
58
|
+
"fully_completed_projects": fully_completed_projects,
|
|
59
|
+
"projects_requiring_review": projects_requiring_review,
|
|
60
|
+
"project_details": project_details,
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
|
|
64
|
+
return field_dict
|
|
65
|
+
|
|
66
|
+
@classmethod
|
|
67
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
68
|
+
from ..models.checklist_info import ChecklistInfo
|
|
69
|
+
from ..models.project_detail import ProjectDetail
|
|
70
|
+
|
|
71
|
+
d = dict(src_dict)
|
|
72
|
+
checklist = ChecklistInfo.from_dict(d.pop("checklist"))
|
|
73
|
+
|
|
74
|
+
total_projects = d.pop("total_projects")
|
|
75
|
+
|
|
76
|
+
projects_with_completions = d.pop("projects_with_completions")
|
|
77
|
+
|
|
78
|
+
fully_completed_projects = d.pop("fully_completed_projects")
|
|
79
|
+
|
|
80
|
+
projects_requiring_review = d.pop("projects_requiring_review")
|
|
81
|
+
|
|
82
|
+
project_details = []
|
|
83
|
+
_project_details = d.pop("project_details")
|
|
84
|
+
for project_details_item_data in _project_details:
|
|
85
|
+
project_details_item = ProjectDetail.from_dict(project_details_item_data)
|
|
86
|
+
|
|
87
|
+
project_details.append(project_details_item)
|
|
88
|
+
|
|
89
|
+
project_details_response = cls(
|
|
90
|
+
checklist=checklist,
|
|
91
|
+
total_projects=total_projects,
|
|
92
|
+
projects_with_completions=projects_with_completions,
|
|
93
|
+
fully_completed_projects=fully_completed_projects,
|
|
94
|
+
projects_requiring_review=projects_requiring_review,
|
|
95
|
+
project_details=project_details,
|
|
96
|
+
)
|
|
97
|
+
|
|
98
|
+
project_details_response.additional_properties = d
|
|
99
|
+
return project_details_response
|
|
100
|
+
|
|
101
|
+
@property
|
|
102
|
+
def additional_keys(self) -> list[str]:
|
|
103
|
+
return list(self.additional_properties.keys())
|
|
104
|
+
|
|
105
|
+
def __getitem__(self, key: str) -> Any:
|
|
106
|
+
return self.additional_properties[key]
|
|
107
|
+
|
|
108
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
109
|
+
self.additional_properties[key] = value
|
|
110
|
+
|
|
111
|
+
def __delitem__(self, key: str) -> None:
|
|
112
|
+
del self.additional_properties[key]
|
|
113
|
+
|
|
114
|
+
def __contains__(self, key: str) -> bool:
|
|
115
|
+
return key in self.additional_properties
|
|
@@ -44,8 +44,6 @@ class ProviderOfferingDetails:
|
|
|
44
44
|
slug (Union[Unset, str]):
|
|
45
45
|
description (Union[Unset, str]):
|
|
46
46
|
full_description (Union[Unset, str]):
|
|
47
|
-
terms_of_service (Union[Unset, str]):
|
|
48
|
-
terms_of_service_link (Union[Unset, str]):
|
|
49
47
|
privacy_policy_link (Union[Unset, str]):
|
|
50
48
|
access_url (Union[Unset, str]): Publicly accessible offering access URL
|
|
51
49
|
endpoints (Union[Unset, list['NestedEndpoint']]):
|
|
@@ -113,8 +111,6 @@ class ProviderOfferingDetails:
|
|
|
113
111
|
slug: Union[Unset, str] = UNSET
|
|
114
112
|
description: Union[Unset, str] = UNSET
|
|
115
113
|
full_description: Union[Unset, str] = UNSET
|
|
116
|
-
terms_of_service: Union[Unset, str] = UNSET
|
|
117
|
-
terms_of_service_link: Union[Unset, str] = UNSET
|
|
118
114
|
privacy_policy_link: Union[Unset, str] = UNSET
|
|
119
115
|
access_url: Union[Unset, str] = UNSET
|
|
120
116
|
endpoints: Union[Unset, list["NestedEndpoint"]] = UNSET
|
|
@@ -194,10 +190,6 @@ class ProviderOfferingDetails:
|
|
|
194
190
|
|
|
195
191
|
full_description = self.full_description
|
|
196
192
|
|
|
197
|
-
terms_of_service = self.terms_of_service
|
|
198
|
-
|
|
199
|
-
terms_of_service_link = self.terms_of_service_link
|
|
200
|
-
|
|
201
193
|
privacy_policy_link = self.privacy_policy_link
|
|
202
194
|
|
|
203
195
|
access_url = self.access_url
|
|
@@ -503,10 +495,6 @@ class ProviderOfferingDetails:
|
|
|
503
495
|
field_dict["description"] = description
|
|
504
496
|
if full_description is not UNSET:
|
|
505
497
|
field_dict["full_description"] = full_description
|
|
506
|
-
if terms_of_service is not UNSET:
|
|
507
|
-
field_dict["terms_of_service"] = terms_of_service
|
|
508
|
-
if terms_of_service_link is not UNSET:
|
|
509
|
-
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
510
498
|
if privacy_policy_link is not UNSET:
|
|
511
499
|
field_dict["privacy_policy_link"] = privacy_policy_link
|
|
512
500
|
if access_url is not UNSET:
|
|
@@ -668,10 +656,6 @@ class ProviderOfferingDetails:
|
|
|
668
656
|
|
|
669
657
|
full_description = d.pop("full_description", UNSET)
|
|
670
658
|
|
|
671
|
-
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
672
|
-
|
|
673
|
-
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
674
|
-
|
|
675
659
|
privacy_policy_link = d.pop("privacy_policy_link", UNSET)
|
|
676
660
|
|
|
677
661
|
access_url = d.pop("access_url", UNSET)
|
|
@@ -1115,8 +1099,6 @@ class ProviderOfferingDetails:
|
|
|
1115
1099
|
slug=slug,
|
|
1116
1100
|
description=description,
|
|
1117
1101
|
full_description=full_description,
|
|
1118
|
-
terms_of_service=terms_of_service,
|
|
1119
|
-
terms_of_service_link=terms_of_service_link,
|
|
1120
1102
|
privacy_policy_link=privacy_policy_link,
|
|
1121
1103
|
access_url=access_url,
|
|
1122
1104
|
endpoints=endpoints,
|
|
@@ -27,8 +27,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
27
27
|
type_ (str):
|
|
28
28
|
description (Union[Unset, str]):
|
|
29
29
|
full_description (Union[Unset, str]):
|
|
30
|
-
terms_of_service (Union[Unset, str]):
|
|
31
|
-
terms_of_service_link (Union[Unset, str]):
|
|
32
30
|
privacy_policy_link (Union[Unset, str]):
|
|
33
31
|
access_url (Union[Unset, str]): Publicly accessible offering access URL
|
|
34
32
|
customer (Union[None, Unset, str]):
|
|
@@ -55,8 +53,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
55
53
|
type_: str
|
|
56
54
|
description: Union[Unset, str] = UNSET
|
|
57
55
|
full_description: Union[Unset, str] = UNSET
|
|
58
|
-
terms_of_service: Union[Unset, str] = UNSET
|
|
59
|
-
terms_of_service_link: Union[Unset, str] = UNSET
|
|
60
56
|
privacy_policy_link: Union[Unset, str] = UNSET
|
|
61
57
|
access_url: Union[Unset, str] = UNSET
|
|
62
58
|
customer: Union[None, Unset, str] = UNSET
|
|
@@ -89,10 +85,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
89
85
|
|
|
90
86
|
full_description = self.full_description
|
|
91
87
|
|
|
92
|
-
terms_of_service = self.terms_of_service
|
|
93
|
-
|
|
94
|
-
terms_of_service_link = self.terms_of_service_link
|
|
95
|
-
|
|
96
88
|
privacy_policy_link = self.privacy_policy_link
|
|
97
89
|
|
|
98
90
|
access_url = self.access_url
|
|
@@ -186,10 +178,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
186
178
|
field_dict["description"] = description
|
|
187
179
|
if full_description is not UNSET:
|
|
188
180
|
field_dict["full_description"] = full_description
|
|
189
|
-
if terms_of_service is not UNSET:
|
|
190
|
-
field_dict["terms_of_service"] = terms_of_service
|
|
191
|
-
if terms_of_service_link is not UNSET:
|
|
192
|
-
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
193
181
|
if privacy_policy_link is not UNSET:
|
|
194
182
|
field_dict["privacy_policy_link"] = privacy_policy_link
|
|
195
183
|
if access_url is not UNSET:
|
|
@@ -247,10 +235,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
247
235
|
|
|
248
236
|
full_description = d.pop("full_description", UNSET)
|
|
249
237
|
|
|
250
|
-
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
251
|
-
|
|
252
|
-
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
253
|
-
|
|
254
238
|
privacy_policy_link = d.pop("privacy_policy_link", UNSET)
|
|
255
239
|
|
|
256
240
|
access_url = d.pop("access_url", UNSET)
|
|
@@ -373,8 +357,6 @@ class ProviderOfferingDetailsRequest:
|
|
|
373
357
|
type_=type_,
|
|
374
358
|
description=description,
|
|
375
359
|
full_description=full_description,
|
|
376
|
-
terms_of_service=terms_of_service,
|
|
377
|
-
terms_of_service_link=terms_of_service_link,
|
|
378
360
|
privacy_policy_link=privacy_policy_link,
|
|
379
361
|
access_url=access_url,
|
|
380
362
|
customer=customer,
|
|
@@ -42,8 +42,6 @@ class PublicOfferingDetails:
|
|
|
42
42
|
slug (Union[Unset, str]):
|
|
43
43
|
description (Union[Unset, str]):
|
|
44
44
|
full_description (Union[Unset, str]):
|
|
45
|
-
terms_of_service (Union[Unset, str]):
|
|
46
|
-
terms_of_service_link (Union[Unset, str]):
|
|
47
45
|
privacy_policy_link (Union[Unset, str]):
|
|
48
46
|
access_url (Union[Unset, str]): Publicly accessible offering access URL
|
|
49
47
|
endpoints (Union[Unset, list['NestedEndpoint']]):
|
|
@@ -109,8 +107,6 @@ class PublicOfferingDetails:
|
|
|
109
107
|
slug: Union[Unset, str] = UNSET
|
|
110
108
|
description: Union[Unset, str] = UNSET
|
|
111
109
|
full_description: Union[Unset, str] = UNSET
|
|
112
|
-
terms_of_service: Union[Unset, str] = UNSET
|
|
113
|
-
terms_of_service_link: Union[Unset, str] = UNSET
|
|
114
110
|
privacy_policy_link: Union[Unset, str] = UNSET
|
|
115
111
|
access_url: Union[Unset, str] = UNSET
|
|
116
112
|
endpoints: Union[Unset, list["NestedEndpoint"]] = UNSET
|
|
@@ -188,10 +184,6 @@ class PublicOfferingDetails:
|
|
|
188
184
|
|
|
189
185
|
full_description = self.full_description
|
|
190
186
|
|
|
191
|
-
terms_of_service = self.terms_of_service
|
|
192
|
-
|
|
193
|
-
terms_of_service_link = self.terms_of_service_link
|
|
194
|
-
|
|
195
187
|
privacy_policy_link = self.privacy_policy_link
|
|
196
188
|
|
|
197
189
|
access_url = self.access_url
|
|
@@ -484,10 +476,6 @@ class PublicOfferingDetails:
|
|
|
484
476
|
field_dict["description"] = description
|
|
485
477
|
if full_description is not UNSET:
|
|
486
478
|
field_dict["full_description"] = full_description
|
|
487
|
-
if terms_of_service is not UNSET:
|
|
488
|
-
field_dict["terms_of_service"] = terms_of_service
|
|
489
|
-
if terms_of_service_link is not UNSET:
|
|
490
|
-
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
491
479
|
if privacy_policy_link is not UNSET:
|
|
492
480
|
field_dict["privacy_policy_link"] = privacy_policy_link
|
|
493
481
|
if access_url is not UNSET:
|
|
@@ -643,10 +631,6 @@ class PublicOfferingDetails:
|
|
|
643
631
|
|
|
644
632
|
full_description = d.pop("full_description", UNSET)
|
|
645
633
|
|
|
646
|
-
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
647
|
-
|
|
648
|
-
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
649
|
-
|
|
650
634
|
privacy_policy_link = d.pop("privacy_policy_link", UNSET)
|
|
651
635
|
|
|
652
636
|
access_url = d.pop("access_url", UNSET)
|
|
@@ -1061,8 +1045,6 @@ class PublicOfferingDetails:
|
|
|
1061
1045
|
slug=slug,
|
|
1062
1046
|
description=description,
|
|
1063
1047
|
full_description=full_description,
|
|
1064
|
-
terms_of_service=terms_of_service,
|
|
1065
|
-
terms_of_service_link=terms_of_service_link,
|
|
1066
1048
|
privacy_policy_link=privacy_policy_link,
|
|
1067
1049
|
access_url=access_url,
|
|
1068
1050
|
endpoints=endpoints,
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
if TYPE_CHECKING:
|
|
9
|
+
from ..models.question_answer_project_answers_item import QuestionAnswerProjectAnswersItem
|
|
10
|
+
from ..models.question_answer_question_options_item import QuestionAnswerQuestionOptionsItem
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
T = TypeVar("T", bound="QuestionAnswer")
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@_attrs_define
|
|
17
|
+
class QuestionAnswer:
|
|
18
|
+
"""
|
|
19
|
+
Attributes:
|
|
20
|
+
question_uuid (UUID):
|
|
21
|
+
question_description (str):
|
|
22
|
+
question_type (str):
|
|
23
|
+
required (bool):
|
|
24
|
+
order (int):
|
|
25
|
+
min_value (Union[None, str]):
|
|
26
|
+
max_value (Union[None, str]):
|
|
27
|
+
total_projects (int): Get total projects count.
|
|
28
|
+
answered_projects_count (int): Get count of projects that answered this question.
|
|
29
|
+
project_answers (list['QuestionAnswerProjectAnswersItem']): Get all project answers for this question.
|
|
30
|
+
question_options (list['QuestionAnswerQuestionOptionsItem']): Get question options for select-type questions.
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
question_uuid: UUID
|
|
34
|
+
question_description: str
|
|
35
|
+
question_type: str
|
|
36
|
+
required: bool
|
|
37
|
+
order: int
|
|
38
|
+
min_value: Union[None, str]
|
|
39
|
+
max_value: Union[None, str]
|
|
40
|
+
total_projects: int
|
|
41
|
+
answered_projects_count: int
|
|
42
|
+
project_answers: list["QuestionAnswerProjectAnswersItem"]
|
|
43
|
+
question_options: list["QuestionAnswerQuestionOptionsItem"]
|
|
44
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
45
|
+
|
|
46
|
+
def to_dict(self) -> dict[str, Any]:
|
|
47
|
+
question_uuid = str(self.question_uuid)
|
|
48
|
+
|
|
49
|
+
question_description = self.question_description
|
|
50
|
+
|
|
51
|
+
question_type = self.question_type
|
|
52
|
+
|
|
53
|
+
required = self.required
|
|
54
|
+
|
|
55
|
+
order = self.order
|
|
56
|
+
|
|
57
|
+
min_value: Union[None, str]
|
|
58
|
+
min_value = self.min_value
|
|
59
|
+
|
|
60
|
+
max_value: Union[None, str]
|
|
61
|
+
max_value = self.max_value
|
|
62
|
+
|
|
63
|
+
total_projects = self.total_projects
|
|
64
|
+
|
|
65
|
+
answered_projects_count = self.answered_projects_count
|
|
66
|
+
|
|
67
|
+
project_answers = []
|
|
68
|
+
for project_answers_item_data in self.project_answers:
|
|
69
|
+
project_answers_item = project_answers_item_data.to_dict()
|
|
70
|
+
project_answers.append(project_answers_item)
|
|
71
|
+
|
|
72
|
+
question_options = []
|
|
73
|
+
for question_options_item_data in self.question_options:
|
|
74
|
+
question_options_item = question_options_item_data.to_dict()
|
|
75
|
+
question_options.append(question_options_item)
|
|
76
|
+
|
|
77
|
+
field_dict: dict[str, Any] = {}
|
|
78
|
+
field_dict.update(self.additional_properties)
|
|
79
|
+
field_dict.update(
|
|
80
|
+
{
|
|
81
|
+
"question_uuid": question_uuid,
|
|
82
|
+
"question_description": question_description,
|
|
83
|
+
"question_type": question_type,
|
|
84
|
+
"required": required,
|
|
85
|
+
"order": order,
|
|
86
|
+
"min_value": min_value,
|
|
87
|
+
"max_value": max_value,
|
|
88
|
+
"total_projects": total_projects,
|
|
89
|
+
"answered_projects_count": answered_projects_count,
|
|
90
|
+
"project_answers": project_answers,
|
|
91
|
+
"question_options": question_options,
|
|
92
|
+
}
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
return field_dict
|
|
96
|
+
|
|
97
|
+
@classmethod
|
|
98
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
99
|
+
from ..models.question_answer_project_answers_item import QuestionAnswerProjectAnswersItem
|
|
100
|
+
from ..models.question_answer_question_options_item import QuestionAnswerQuestionOptionsItem
|
|
101
|
+
|
|
102
|
+
d = dict(src_dict)
|
|
103
|
+
question_uuid = UUID(d.pop("question_uuid"))
|
|
104
|
+
|
|
105
|
+
question_description = d.pop("question_description")
|
|
106
|
+
|
|
107
|
+
question_type = d.pop("question_type")
|
|
108
|
+
|
|
109
|
+
required = d.pop("required")
|
|
110
|
+
|
|
111
|
+
order = d.pop("order")
|
|
112
|
+
|
|
113
|
+
def _parse_min_value(data: object) -> Union[None, str]:
|
|
114
|
+
if data is None:
|
|
115
|
+
return data
|
|
116
|
+
return cast(Union[None, str], data)
|
|
117
|
+
|
|
118
|
+
min_value = _parse_min_value(d.pop("min_value"))
|
|
119
|
+
|
|
120
|
+
def _parse_max_value(data: object) -> Union[None, str]:
|
|
121
|
+
if data is None:
|
|
122
|
+
return data
|
|
123
|
+
return cast(Union[None, str], data)
|
|
124
|
+
|
|
125
|
+
max_value = _parse_max_value(d.pop("max_value"))
|
|
126
|
+
|
|
127
|
+
total_projects = d.pop("total_projects")
|
|
128
|
+
|
|
129
|
+
answered_projects_count = d.pop("answered_projects_count")
|
|
130
|
+
|
|
131
|
+
project_answers = []
|
|
132
|
+
_project_answers = d.pop("project_answers")
|
|
133
|
+
for project_answers_item_data in _project_answers:
|
|
134
|
+
project_answers_item = QuestionAnswerProjectAnswersItem.from_dict(project_answers_item_data)
|
|
135
|
+
|
|
136
|
+
project_answers.append(project_answers_item)
|
|
137
|
+
|
|
138
|
+
question_options = []
|
|
139
|
+
_question_options = d.pop("question_options")
|
|
140
|
+
for question_options_item_data in _question_options:
|
|
141
|
+
question_options_item = QuestionAnswerQuestionOptionsItem.from_dict(question_options_item_data)
|
|
142
|
+
|
|
143
|
+
question_options.append(question_options_item)
|
|
144
|
+
|
|
145
|
+
question_answer = cls(
|
|
146
|
+
question_uuid=question_uuid,
|
|
147
|
+
question_description=question_description,
|
|
148
|
+
question_type=question_type,
|
|
149
|
+
required=required,
|
|
150
|
+
order=order,
|
|
151
|
+
min_value=min_value,
|
|
152
|
+
max_value=max_value,
|
|
153
|
+
total_projects=total_projects,
|
|
154
|
+
answered_projects_count=answered_projects_count,
|
|
155
|
+
project_answers=project_answers,
|
|
156
|
+
question_options=question_options,
|
|
157
|
+
)
|
|
158
|
+
|
|
159
|
+
question_answer.additional_properties = d
|
|
160
|
+
return question_answer
|
|
161
|
+
|
|
162
|
+
@property
|
|
163
|
+
def additional_keys(self) -> list[str]:
|
|
164
|
+
return list(self.additional_properties.keys())
|
|
165
|
+
|
|
166
|
+
def __getitem__(self, key: str) -> Any:
|
|
167
|
+
return self.additional_properties[key]
|
|
168
|
+
|
|
169
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
170
|
+
self.additional_properties[key] = value
|
|
171
|
+
|
|
172
|
+
def __delitem__(self, key: str) -> None:
|
|
173
|
+
del self.additional_properties[key]
|
|
174
|
+
|
|
175
|
+
def __contains__(self, key: str) -> bool:
|
|
176
|
+
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="QuestionAnswerProjectAnswersItem")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class QuestionAnswerProjectAnswersItem:
|
|
12
|
+
""" """
|
|
13
|
+
|
|
14
|
+
additional_properties: dict[str, Any] = _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
|
+
question_answer_project_answers_item = cls()
|
|
26
|
+
|
|
27
|
+
question_answer_project_answers_item.additional_properties = d
|
|
28
|
+
return question_answer_project_answers_item
|
|
29
|
+
|
|
30
|
+
@property
|
|
31
|
+
def additional_keys(self) -> list[str]:
|
|
32
|
+
return list(self.additional_properties.keys())
|
|
33
|
+
|
|
34
|
+
def __getitem__(self, key: str) -> Any:
|
|
35
|
+
return self.additional_properties[key]
|
|
36
|
+
|
|
37
|
+
def __setitem__(self, key: str, value: Any) -> 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
|
|
@@ -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="QuestionAnswerQuestionOptionsItem")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class QuestionAnswerQuestionOptionsItem:
|
|
12
|
+
""" """
|
|
13
|
+
|
|
14
|
+
additional_properties: dict[str, Any] = _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
|
+
question_answer_question_options_item = cls()
|
|
26
|
+
|
|
27
|
+
question_answer_question_options_item.additional_properties = d
|
|
28
|
+
return question_answer_question_options_item
|
|
29
|
+
|
|
30
|
+
@property
|
|
31
|
+
def additional_keys(self) -> list[str]:
|
|
32
|
+
return list(self.additional_properties.keys())
|
|
33
|
+
|
|
34
|
+
def __getitem__(self, key: str) -> Any:
|
|
35
|
+
return self.additional_properties[key]
|
|
36
|
+
|
|
37
|
+
def __setitem__(self, key: str, value: Any) -> 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
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from ..models.order_state import OrderState
|
|
9
|
+
from ..models.remote_resource_order_remote_state_enum import RemoteResourceOrderRemoteStateEnum
|
|
10
|
+
from ..models.sync_status_enum import SyncStatusEnum
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="RemoteResourceOrder")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class RemoteResourceOrder:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
order_uuid (UUID): Order UUID
|
|
20
|
+
remote_state (RemoteResourceOrderRemoteStateEnum):
|
|
21
|
+
local_state (OrderState):
|
|
22
|
+
sync_status (SyncStatusEnum):
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
order_uuid: UUID
|
|
26
|
+
remote_state: RemoteResourceOrderRemoteStateEnum
|
|
27
|
+
local_state: OrderState
|
|
28
|
+
sync_status: SyncStatusEnum
|
|
29
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
30
|
+
|
|
31
|
+
def to_dict(self) -> dict[str, Any]:
|
|
32
|
+
order_uuid = str(self.order_uuid)
|
|
33
|
+
|
|
34
|
+
remote_state = self.remote_state.value
|
|
35
|
+
|
|
36
|
+
local_state = self.local_state.value
|
|
37
|
+
|
|
38
|
+
sync_status = self.sync_status.value
|
|
39
|
+
|
|
40
|
+
field_dict: dict[str, Any] = {}
|
|
41
|
+
field_dict.update(self.additional_properties)
|
|
42
|
+
field_dict.update(
|
|
43
|
+
{
|
|
44
|
+
"order_uuid": order_uuid,
|
|
45
|
+
"remote_state": remote_state,
|
|
46
|
+
"local_state": local_state,
|
|
47
|
+
"sync_status": sync_status,
|
|
48
|
+
}
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
return field_dict
|
|
52
|
+
|
|
53
|
+
@classmethod
|
|
54
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
55
|
+
d = dict(src_dict)
|
|
56
|
+
order_uuid = UUID(d.pop("order_uuid"))
|
|
57
|
+
|
|
58
|
+
remote_state = RemoteResourceOrderRemoteStateEnum(d.pop("remote_state"))
|
|
59
|
+
|
|
60
|
+
local_state = OrderState(d.pop("local_state"))
|
|
61
|
+
|
|
62
|
+
sync_status = SyncStatusEnum(d.pop("sync_status"))
|
|
63
|
+
|
|
64
|
+
remote_resource_order = cls(
|
|
65
|
+
order_uuid=order_uuid,
|
|
66
|
+
remote_state=remote_state,
|
|
67
|
+
local_state=local_state,
|
|
68
|
+
sync_status=sync_status,
|
|
69
|
+
)
|
|
70
|
+
|
|
71
|
+
remote_resource_order.additional_properties = d
|
|
72
|
+
return remote_resource_order
|
|
73
|
+
|
|
74
|
+
@property
|
|
75
|
+
def additional_keys(self) -> list[str]:
|
|
76
|
+
return list(self.additional_properties.keys())
|
|
77
|
+
|
|
78
|
+
def __getitem__(self, key: str) -> Any:
|
|
79
|
+
return self.additional_properties[key]
|
|
80
|
+
|
|
81
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
82
|
+
self.additional_properties[key] = value
|
|
83
|
+
|
|
84
|
+
def __delitem__(self, key: str) -> None:
|
|
85
|
+
del self.additional_properties[key]
|
|
86
|
+
|
|
87
|
+
def __contains__(self, key: str) -> bool:
|
|
88
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from enum import IntEnum
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class RemoteResourceOrderRemoteStateEnum(IntEnum):
|
|
5
|
+
VALUE_1 = 1
|
|
6
|
+
VALUE_7 = 7
|
|
7
|
+
VALUE_8 = 8
|
|
8
|
+
VALUE_2 = 2
|
|
9
|
+
VALUE_3 = 3
|
|
10
|
+
VALUE_4 = 4
|
|
11
|
+
VALUE_5 = 5
|
|
12
|
+
VALUE_6 = 6
|
|
13
|
+
|
|
14
|
+
def __str__(self) -> str:
|
|
15
|
+
return str(self.value)
|