waldur-api-client 7.8.1__py3-none-any.whl → 7.8.3__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 +10 -13
- waldur_api_client/api/booking_resources/booking_resources_list.py +10 -13
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_create.py +44 -7
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_partial_update.py +46 -7
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_update.py +44 -7
- waldur_api_client/api/checklists_admin/checklists_admin_checklist_questions.py +49 -0
- waldur_api_client/api/checklists_admin/checklists_admin_count.py +43 -0
- waldur_api_client/api/checklists_admin/checklists_admin_list.py +43 -0
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_create.py +44 -7
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_partial_update.py +44 -7
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_update.py +44 -7
- waldur_api_client/api/customers/customers_create.py +44 -7
- waldur_api_client/api/customers/customers_partial_update.py +44 -7
- waldur_api_client/api/customers/customers_update.py +44 -7
- waldur_api_client/api/external_links/external_links_create.py +44 -7
- waldur_api_client/api/external_links/external_links_partial_update.py +44 -7
- waldur_api_client/api/external_links/external_links_update.py +44 -7
- waldur_api_client/api/invoices/invoices_paid.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_create.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_partial_update.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_update.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_create.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_partial_update.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_update.py +44 -7
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_create.py +44 -7
- waldur_api_client/api/marketplace_orders/marketplace_orders_update_attachment.py +44 -7
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_count.py +18 -18
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_list.py +18 -18
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_create.py +44 -7
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_image.py +44 -7
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_thumbnail.py +30 -5
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +10 -13
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +10 -13
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +10 -13
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +10 -13
- waldur_api_client/api/marketplace_resources/marketplace_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_create.py +44 -7
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_update.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_create.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_partial_update.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_update.py +44 -7
- waldur_api_client/api/openstack_backups/openstack_backups_restore.py +10 -10
- waldur_api_client/api/override_settings/override_settings.py +30 -5
- waldur_api_client/api/payments/payments_create.py +44 -7
- waldur_api_client/api/payments/payments_partial_update.py +44 -7
- waldur_api_client/api/payments/payments_update.py +44 -7
- waldur_api_client/api/projects/projects_create.py +44 -7
- waldur_api_client/api/projects/projects_partial_update.py +44 -7
- waldur_api_client/api/projects/projects_update.py +44 -7
- waldur_api_client/api/proposal_proposals/proposal_proposals_attach_document.py +30 -5
- waldur_api_client/api/rancher_services/rancher_services_create.py +22 -22
- waldur_api_client/api/slurm_jobs/slurm_jobs_create.py +44 -7
- waldur_api_client/api/slurm_jobs/slurm_jobs_update.py +44 -7
- waldur_api_client/api/support_attachments/support_attachments_create.py +44 -7
- waldur_api_client/api/user_group_invitations/user_group_invitations_count.py +15 -0
- waldur_api_client/api/user_group_invitations/user_group_invitations_list.py +15 -0
- waldur_api_client/api/users/users_create.py +44 -7
- waldur_api_client/api/users/users_partial_update.py +44 -7
- waldur_api_client/api/users/users_update.py +44 -7
- waldur_api_client/models/__init__.py +172 -8
- waldur_api_client/models/agent_type_enum.py +13 -0
- waldur_api_client/models/attachment_request_form.py +70 -0
- waldur_api_client/models/attachment_request_multipart.py +83 -0
- waldur_api_client/models/azure_sql_server_create_order_attributes.py +5 -10
- waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +7 -12
- waldur_api_client/models/booking_offerings_list_field_item.py +1 -0
- waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -0
- waldur_api_client/models/booking_resource.py +16 -34
- waldur_api_client/models/booking_resources_list_field_item.py +1 -3
- waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/call_managing_organisation_request_form.py +103 -0
- waldur_api_client/models/call_managing_organisation_request_multipart.py +122 -0
- waldur_api_client/models/call_round.py +11 -1
- waldur_api_client/models/category_group_request_form.py +103 -0
- waldur_api_client/models/category_group_request_multipart.py +122 -0
- waldur_api_client/models/checklist_category_request_form.py +103 -0
- waldur_api_client/models/checklist_category_request_multipart.py +122 -0
- waldur_api_client/models/checklists_admin_checklist_questions_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_checklist_questions_checklist_type_in_item.py +11 -0
- waldur_api_client/models/checklists_admin_count_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_count_checklist_type_in_item.py +11 -0
- waldur_api_client/models/checklists_admin_list_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_list_checklist_type_in_item.py +11 -0
- waldur_api_client/models/constance_settings.py +18 -0
- waldur_api_client/models/constance_settings_request.py +18 -0
- waldur_api_client/models/constance_settings_request_form.py +1556 -0
- waldur_api_client/models/constance_settings_request_multipart.py +2187 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customer_request.py +9 -0
- waldur_api_client/models/customer_request_form.py +312 -0
- waldur_api_client/models/customer_request_multipart.py +394 -0
- waldur_api_client/models/customers_list_field_item.py +1 -0
- waldur_api_client/models/customers_retrieve_field_item.py +1 -0
- waldur_api_client/models/event_groups_enum.py +1 -0
- waldur_api_client/models/event_types_enum.py +2 -0
- waldur_api_client/models/external_link_request_form.py +111 -0
- waldur_api_client/models/external_link_request_multipart.py +132 -0
- waldur_api_client/models/firecrest_job_request_form.py +104 -0
- waldur_api_client/models/firecrest_job_request_multipart.py +127 -0
- waldur_api_client/models/generic_order_attributes.py +1 -2
- waldur_api_client/models/integration_status.py +21 -4
- waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -3
- waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_category_request_form.py +153 -0
- waldur_api_client/models/marketplace_category_request_multipart.py +187 -0
- waldur_api_client/models/marketplace_orders_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_offerings_list_course_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_public_offerings_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +2 -1
- waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +2 -1
- waldur_api_client/models/marketplace_service_providers_offerings_list_field_item.py +1 -0
- waldur_api_client/models/merged_plugin_options.py +9 -0
- waldur_api_client/models/merged_plugin_options_request.py +9 -0
- waldur_api_client/models/move_resource_request.py +65 -0
- waldur_api_client/models/nested_round.py +9 -0
- waldur_api_client/models/nested_round_request.py +9 -0
- waldur_api_client/models/offering.py +20 -0
- waldur_api_client/models/offering_create.py +20 -0
- waldur_api_client/models/offering_create_request.py +20 -0
- waldur_api_client/models/offering_create_request_form.py +479 -0
- waldur_api_client/models/offering_create_request_form_limits.py +57 -0
- waldur_api_client/models/offering_create_request_multipart.py +599 -0
- waldur_api_client/models/offering_create_request_multipart_limits.py +57 -0
- waldur_api_client/models/offering_file_request_form.py +78 -0
- waldur_api_client/models/offering_file_request_multipart.py +93 -0
- waldur_api_client/models/offering_image_request_form.py +62 -0
- waldur_api_client/models/offering_image_request_multipart.py +73 -0
- waldur_api_client/models/offering_thumbnail_request_form.py +62 -0
- waldur_api_client/models/offering_thumbnail_request_multipart.py +73 -0
- waldur_api_client/models/offering_user.py +5 -5
- waldur_api_client/models/{offering_user_state_enum.py → offering_user_state.py} +1 -1
- waldur_api_client/models/open_stack_backup_restoration.py +3 -5
- waldur_api_client/models/open_stack_backup_restoration_create_request.py +141 -0
- waldur_api_client/models/open_stack_backup_restoration_request.py +22 -30
- waldur_api_client/models/{open_stack_nested_security_group_request.py → open_stack_create_floating_ip_request.py} +17 -6
- waldur_api_client/models/open_stack_create_port_request.py +104 -0
- waldur_api_client/models/open_stack_instance.py +13 -29
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +67 -54
- waldur_api_client/models/open_stack_instance_floating_i_ps_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_ports_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_request.py +1 -67
- waldur_api_client/models/open_stack_nested_port_request.py +0 -9
- waldur_api_client/models/open_stack_security_group_hyperlink_request.py +59 -0
- waldur_api_client/models/open_stack_server_group_hyperlink_request.py +59 -0
- waldur_api_client/models/open_stack_tenant_create_order_attributes.py +9 -14
- waldur_api_client/models/open_stack_volume_create_order_attributes.py +8 -13
- waldur_api_client/models/openstack_instances_list_field_item.py +0 -7
- waldur_api_client/models/openstack_instances_retrieve_field_item.py +0 -7
- waldur_api_client/models/order_attachment_request_form.py +84 -0
- waldur_api_client/models/order_attachment_request_multipart.py +98 -0
- waldur_api_client/models/order_create.py +8 -0
- waldur_api_client/models/order_details.py +16 -34
- waldur_api_client/models/paid_request_form.py +81 -0
- waldur_api_client/models/paid_request_multipart.py +94 -0
- waldur_api_client/models/patched_call_managing_organisation_request_form.py +92 -0
- waldur_api_client/models/patched_call_managing_organisation_request_multipart.py +109 -0
- waldur_api_client/models/patched_category_group_request_form.py +101 -0
- waldur_api_client/models/patched_category_group_request_multipart.py +121 -0
- waldur_api_client/models/patched_checklist_category_request_form.py +102 -0
- waldur_api_client/models/patched_checklist_category_request_multipart.py +122 -0
- waldur_api_client/models/patched_customer_request.py +9 -0
- waldur_api_client/models/patched_customer_request_form.py +310 -0
- waldur_api_client/models/patched_customer_request_multipart.py +393 -0
- waldur_api_client/models/patched_external_link_request_form.py +110 -0
- waldur_api_client/models/patched_external_link_request_multipart.py +133 -0
- waldur_api_client/models/patched_marketplace_category_request_form.py +151 -0
- waldur_api_client/models/patched_marketplace_category_request_multipart.py +186 -0
- waldur_api_client/models/patched_open_stack_instance_request.py +1 -67
- waldur_api_client/models/patched_payment_request_form.py +119 -0
- waldur_api_client/models/patched_payment_request_multipart.py +142 -0
- waldur_api_client/models/patched_project_request_form.py +279 -0
- waldur_api_client/models/patched_project_request_multipart.py +342 -0
- waldur_api_client/models/patched_service_provider_request_form.py +101 -0
- waldur_api_client/models/patched_service_provider_request_multipart.py +121 -0
- waldur_api_client/models/patched_user_request_form.py +241 -0
- waldur_api_client/models/patched_user_request_multipart.py +306 -0
- waldur_api_client/models/payment_request_form.py +113 -0
- waldur_api_client/models/payment_request_multipart.py +134 -0
- waldur_api_client/models/{rancher_nested_security_group.py → project_hyperlink_request.py} +5 -5
- waldur_api_client/models/project_request_form.py +280 -0
- waldur_api_client/models/project_request_multipart.py +341 -0
- waldur_api_client/models/project_user.py +9 -0
- waldur_api_client/models/proposal.py +8 -0
- waldur_api_client/models/proposal_documentation_request_form.py +84 -0
- waldur_api_client/models/proposal_documentation_request_multipart.py +98 -0
- waldur_api_client/models/proposal_proposals_count_o_item.py +3 -1
- waldur_api_client/models/proposal_proposals_list_o_item.py +3 -1
- waldur_api_client/models/proposal_review.py +40 -0
- waldur_api_client/models/protected_proposal_list.py +8 -0
- waldur_api_client/models/protected_proposal_list_request.py +8 -0
- waldur_api_client/models/protected_round.py +8 -0
- waldur_api_client/models/provider_offering.py +21 -1
- waldur_api_client/models/provider_offering_details.py +20 -0
- waldur_api_client/models/public_offering_details.py +20 -0
- waldur_api_client/models/rancher_clusters_list_field_item.py +0 -1
- waldur_api_client/models/rancher_clusters_retrieve_field_item.py +0 -1
- waldur_api_client/models/rancher_service_create.py +508 -0
- waldur_api_client/models/rancher_service_create_marketplace_offering_plugin_options_type_0.py +44 -0
- waldur_api_client/models/rancher_service_create_request.py +185 -0
- waldur_api_client/models/rancher_service_request.py +16 -19
- waldur_api_client/models/rancher_workload_create.py +59 -0
- waldur_api_client/models/rancher_workload_create_request.py +59 -0
- waldur_api_client/models/resource.py +16 -34
- waldur_api_client/models/robot_account_details.py +22 -13
- waldur_api_client/models/screenshot_request_form.py +87 -0
- waldur_api_client/models/screenshot_request_multipart.py +105 -0
- waldur_api_client/models/service_provider_request_form.py +112 -0
- waldur_api_client/models/service_provider_request_multipart.py +134 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +4 -9
- waldur_api_client/models/user_request_form.py +250 -0
- waldur_api_client/models/user_request_multipart.py +316 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +11 -16
- waldur_api_client/models/vmware_nested_network.py +0 -25
- waldur_api_client/models/vmware_nested_network_request.py +6 -14
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/METADATA +1 -1
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/RECORD +233 -153
- waldur_api_client/models/open_stack_data_volume.py +0 -81
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/WHEEL +0 -0
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from io import BytesIO
|
|
4
|
+
from typing import Any, TypeVar, Union, cast
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
from dateutil.parser import isoparse
|
|
9
|
+
|
|
10
|
+
from .. import types
|
|
11
|
+
from ..models.blank_enum import BlankEnum
|
|
12
|
+
from ..models.kind_enum import KindEnum
|
|
13
|
+
from ..models.oecd_fos_2007_code_enum import OecdFos2007CodeEnum
|
|
14
|
+
from ..types import UNSET, File, Unset
|
|
15
|
+
|
|
16
|
+
T = TypeVar("T", bound="ProjectRequestMultipart")
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@_attrs_define
|
|
20
|
+
class ProjectRequestMultipart:
|
|
21
|
+
"""
|
|
22
|
+
Attributes:
|
|
23
|
+
name (str):
|
|
24
|
+
customer (str):
|
|
25
|
+
slug (Union[Unset, str]):
|
|
26
|
+
description (Union[Unset, str]):
|
|
27
|
+
type_ (Union[None, Unset, str]):
|
|
28
|
+
backend_id (Union[Unset, str]):
|
|
29
|
+
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]): The date is inclusive. Once reached, all project resource will be
|
|
31
|
+
scheduled for termination.
|
|
32
|
+
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
|
+
is_industry (Union[Unset, bool]):
|
|
34
|
+
image (Union[File, None, Unset]):
|
|
35
|
+
kind (Union[Unset, KindEnum]):
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
name: str
|
|
39
|
+
customer: str
|
|
40
|
+
slug: Union[Unset, str] = UNSET
|
|
41
|
+
description: Union[Unset, str] = UNSET
|
|
42
|
+
type_: Union[None, Unset, str] = UNSET
|
|
43
|
+
backend_id: Union[Unset, str] = UNSET
|
|
44
|
+
start_date: Union[None, Unset, datetime.date] = UNSET
|
|
45
|
+
end_date: Union[None, Unset, datetime.date] = UNSET
|
|
46
|
+
oecd_fos_2007_code: Union[BlankEnum, None, OecdFos2007CodeEnum, Unset] = UNSET
|
|
47
|
+
is_industry: Union[Unset, bool] = UNSET
|
|
48
|
+
image: Union[File, None, Unset] = UNSET
|
|
49
|
+
kind: Union[Unset, KindEnum] = UNSET
|
|
50
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
51
|
+
|
|
52
|
+
def to_dict(self) -> dict[str, Any]:
|
|
53
|
+
name = self.name
|
|
54
|
+
|
|
55
|
+
customer = self.customer
|
|
56
|
+
|
|
57
|
+
slug = self.slug
|
|
58
|
+
|
|
59
|
+
description = self.description
|
|
60
|
+
|
|
61
|
+
type_: Union[None, Unset, str]
|
|
62
|
+
if isinstance(self.type_, Unset):
|
|
63
|
+
type_ = UNSET
|
|
64
|
+
else:
|
|
65
|
+
type_ = self.type_
|
|
66
|
+
|
|
67
|
+
backend_id = self.backend_id
|
|
68
|
+
|
|
69
|
+
start_date: Union[None, Unset, str]
|
|
70
|
+
if isinstance(self.start_date, Unset):
|
|
71
|
+
start_date = UNSET
|
|
72
|
+
elif isinstance(self.start_date, datetime.date):
|
|
73
|
+
start_date = self.start_date.isoformat()
|
|
74
|
+
else:
|
|
75
|
+
start_date = self.start_date
|
|
76
|
+
|
|
77
|
+
end_date: Union[None, Unset, str]
|
|
78
|
+
if isinstance(self.end_date, Unset):
|
|
79
|
+
end_date = UNSET
|
|
80
|
+
elif isinstance(self.end_date, datetime.date):
|
|
81
|
+
end_date = self.end_date.isoformat()
|
|
82
|
+
else:
|
|
83
|
+
end_date = self.end_date
|
|
84
|
+
|
|
85
|
+
oecd_fos_2007_code: Union[None, Unset, str]
|
|
86
|
+
if isinstance(self.oecd_fos_2007_code, Unset):
|
|
87
|
+
oecd_fos_2007_code = UNSET
|
|
88
|
+
elif isinstance(self.oecd_fos_2007_code, OecdFos2007CodeEnum):
|
|
89
|
+
oecd_fos_2007_code = self.oecd_fos_2007_code.value
|
|
90
|
+
elif isinstance(self.oecd_fos_2007_code, BlankEnum):
|
|
91
|
+
oecd_fos_2007_code = self.oecd_fos_2007_code.value
|
|
92
|
+
else:
|
|
93
|
+
oecd_fos_2007_code = self.oecd_fos_2007_code
|
|
94
|
+
|
|
95
|
+
is_industry = self.is_industry
|
|
96
|
+
|
|
97
|
+
image: Union[None, Unset, types.FileTypes]
|
|
98
|
+
if isinstance(self.image, Unset):
|
|
99
|
+
image = UNSET
|
|
100
|
+
elif isinstance(self.image, File):
|
|
101
|
+
image = self.image.to_tuple()
|
|
102
|
+
|
|
103
|
+
else:
|
|
104
|
+
image = self.image
|
|
105
|
+
|
|
106
|
+
kind: Union[Unset, str] = UNSET
|
|
107
|
+
if not isinstance(self.kind, Unset):
|
|
108
|
+
kind = self.kind.value
|
|
109
|
+
|
|
110
|
+
field_dict: dict[str, Any] = {}
|
|
111
|
+
field_dict.update(self.additional_properties)
|
|
112
|
+
field_dict.update(
|
|
113
|
+
{
|
|
114
|
+
"name": name,
|
|
115
|
+
"customer": customer,
|
|
116
|
+
}
|
|
117
|
+
)
|
|
118
|
+
if slug is not UNSET:
|
|
119
|
+
field_dict["slug"] = slug
|
|
120
|
+
if description is not UNSET:
|
|
121
|
+
field_dict["description"] = description
|
|
122
|
+
if type_ is not UNSET:
|
|
123
|
+
field_dict["type"] = type_
|
|
124
|
+
if backend_id is not UNSET:
|
|
125
|
+
field_dict["backend_id"] = backend_id
|
|
126
|
+
if start_date is not UNSET:
|
|
127
|
+
field_dict["start_date"] = start_date
|
|
128
|
+
if end_date is not UNSET:
|
|
129
|
+
field_dict["end_date"] = end_date
|
|
130
|
+
if oecd_fos_2007_code is not UNSET:
|
|
131
|
+
field_dict["oecd_fos_2007_code"] = oecd_fos_2007_code
|
|
132
|
+
if is_industry is not UNSET:
|
|
133
|
+
field_dict["is_industry"] = is_industry
|
|
134
|
+
if image is not UNSET:
|
|
135
|
+
field_dict["image"] = image
|
|
136
|
+
if kind is not UNSET:
|
|
137
|
+
field_dict["kind"] = kind
|
|
138
|
+
|
|
139
|
+
return field_dict
|
|
140
|
+
|
|
141
|
+
def to_multipart(self) -> types.RequestFiles:
|
|
142
|
+
files: types.RequestFiles = []
|
|
143
|
+
|
|
144
|
+
files.append(("name", (None, str(self.name).encode(), "text/plain")))
|
|
145
|
+
|
|
146
|
+
files.append(("customer", (None, str(self.customer).encode(), "text/plain")))
|
|
147
|
+
|
|
148
|
+
if not isinstance(self.slug, Unset):
|
|
149
|
+
files.append(("slug", (None, str(self.slug).encode(), "text/plain")))
|
|
150
|
+
|
|
151
|
+
if not isinstance(self.description, Unset):
|
|
152
|
+
files.append(("description", (None, str(self.description).encode(), "text/plain")))
|
|
153
|
+
|
|
154
|
+
if not isinstance(self.type_, Unset):
|
|
155
|
+
if isinstance(self.type_, str):
|
|
156
|
+
files.append(("type", (None, str(self.type_).encode(), "text/plain")))
|
|
157
|
+
else:
|
|
158
|
+
files.append(("type", (None, str(self.type_).encode(), "text/plain")))
|
|
159
|
+
|
|
160
|
+
if not isinstance(self.backend_id, Unset):
|
|
161
|
+
files.append(("backend_id", (None, str(self.backend_id).encode(), "text/plain")))
|
|
162
|
+
|
|
163
|
+
if not isinstance(self.start_date, Unset):
|
|
164
|
+
if isinstance(self.start_date, datetime.date):
|
|
165
|
+
files.append(("start_date", (None, self.start_date.isoformat().encode(), "text/plain")))
|
|
166
|
+
else:
|
|
167
|
+
files.append(("start_date", (None, str(self.start_date).encode(), "text/plain")))
|
|
168
|
+
|
|
169
|
+
if not isinstance(self.end_date, Unset):
|
|
170
|
+
if isinstance(self.end_date, datetime.date):
|
|
171
|
+
files.append(("end_date", (None, self.end_date.isoformat().encode(), "text/plain")))
|
|
172
|
+
else:
|
|
173
|
+
files.append(("end_date", (None, str(self.end_date).encode(), "text/plain")))
|
|
174
|
+
|
|
175
|
+
if not isinstance(self.oecd_fos_2007_code, Unset):
|
|
176
|
+
if isinstance(self.oecd_fos_2007_code, OecdFos2007CodeEnum):
|
|
177
|
+
files.append(("oecd_fos_2007_code", (None, str(self.oecd_fos_2007_code.value).encode(), "text/plain")))
|
|
178
|
+
elif isinstance(self.oecd_fos_2007_code, BlankEnum):
|
|
179
|
+
files.append(("oecd_fos_2007_code", (None, str(self.oecd_fos_2007_code.value).encode(), "text/plain")))
|
|
180
|
+
elif self.oecd_fos_2007_code is None:
|
|
181
|
+
files.append(("oecd_fos_2007_code", (None, str(self.oecd_fos_2007_code).encode(), "text/plain")))
|
|
182
|
+
else:
|
|
183
|
+
files.append(("oecd_fos_2007_code", (None, str(self.oecd_fos_2007_code).encode(), "text/plain")))
|
|
184
|
+
|
|
185
|
+
if not isinstance(self.is_industry, Unset):
|
|
186
|
+
files.append(("is_industry", (None, str(self.is_industry).encode(), "text/plain")))
|
|
187
|
+
|
|
188
|
+
if not isinstance(self.image, Unset):
|
|
189
|
+
if isinstance(self.image, File):
|
|
190
|
+
files.append(("image", self.image.to_tuple()))
|
|
191
|
+
else:
|
|
192
|
+
files.append(("image", (None, str(self.image).encode(), "text/plain")))
|
|
193
|
+
|
|
194
|
+
if not isinstance(self.kind, Unset):
|
|
195
|
+
files.append(("kind", (None, str(self.kind.value).encode(), "text/plain")))
|
|
196
|
+
|
|
197
|
+
for prop_name, prop in self.additional_properties.items():
|
|
198
|
+
files.append((prop_name, (None, str(prop).encode(), "text/plain")))
|
|
199
|
+
|
|
200
|
+
return files
|
|
201
|
+
|
|
202
|
+
@classmethod
|
|
203
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
204
|
+
d = dict(src_dict)
|
|
205
|
+
name = d.pop("name")
|
|
206
|
+
|
|
207
|
+
customer = d.pop("customer")
|
|
208
|
+
|
|
209
|
+
slug = d.pop("slug", UNSET)
|
|
210
|
+
|
|
211
|
+
description = d.pop("description", UNSET)
|
|
212
|
+
|
|
213
|
+
def _parse_type_(data: object) -> Union[None, Unset, str]:
|
|
214
|
+
if data is None:
|
|
215
|
+
return data
|
|
216
|
+
if isinstance(data, Unset):
|
|
217
|
+
return data
|
|
218
|
+
return cast(Union[None, Unset, str], data)
|
|
219
|
+
|
|
220
|
+
type_ = _parse_type_(d.pop("type", UNSET))
|
|
221
|
+
|
|
222
|
+
backend_id = d.pop("backend_id", UNSET)
|
|
223
|
+
|
|
224
|
+
def _parse_start_date(data: object) -> Union[None, Unset, datetime.date]:
|
|
225
|
+
if data is None:
|
|
226
|
+
return data
|
|
227
|
+
if isinstance(data, Unset):
|
|
228
|
+
return data
|
|
229
|
+
try:
|
|
230
|
+
if not isinstance(data, str):
|
|
231
|
+
raise TypeError()
|
|
232
|
+
start_date_type_0 = isoparse(data).date()
|
|
233
|
+
|
|
234
|
+
return start_date_type_0
|
|
235
|
+
except: # noqa: E722
|
|
236
|
+
pass
|
|
237
|
+
return cast(Union[None, Unset, datetime.date], data)
|
|
238
|
+
|
|
239
|
+
start_date = _parse_start_date(d.pop("start_date", UNSET))
|
|
240
|
+
|
|
241
|
+
def _parse_end_date(data: object) -> Union[None, Unset, datetime.date]:
|
|
242
|
+
if data is None:
|
|
243
|
+
return data
|
|
244
|
+
if isinstance(data, Unset):
|
|
245
|
+
return data
|
|
246
|
+
try:
|
|
247
|
+
if not isinstance(data, str):
|
|
248
|
+
raise TypeError()
|
|
249
|
+
end_date_type_0 = isoparse(data).date()
|
|
250
|
+
|
|
251
|
+
return end_date_type_0
|
|
252
|
+
except: # noqa: E722
|
|
253
|
+
pass
|
|
254
|
+
return cast(Union[None, Unset, datetime.date], data)
|
|
255
|
+
|
|
256
|
+
end_date = _parse_end_date(d.pop("end_date", UNSET))
|
|
257
|
+
|
|
258
|
+
def _parse_oecd_fos_2007_code(data: object) -> Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]:
|
|
259
|
+
if data is None:
|
|
260
|
+
return data
|
|
261
|
+
if isinstance(data, Unset):
|
|
262
|
+
return data
|
|
263
|
+
try:
|
|
264
|
+
if not isinstance(data, str):
|
|
265
|
+
raise TypeError()
|
|
266
|
+
oecd_fos_2007_code_type_0 = OecdFos2007CodeEnum(data)
|
|
267
|
+
|
|
268
|
+
return oecd_fos_2007_code_type_0
|
|
269
|
+
except: # noqa: E722
|
|
270
|
+
pass
|
|
271
|
+
try:
|
|
272
|
+
if not isinstance(data, str):
|
|
273
|
+
raise TypeError()
|
|
274
|
+
oecd_fos_2007_code_type_1 = BlankEnum(data)
|
|
275
|
+
|
|
276
|
+
return oecd_fos_2007_code_type_1
|
|
277
|
+
except: # noqa: E722
|
|
278
|
+
pass
|
|
279
|
+
return cast(Union[BlankEnum, None, OecdFos2007CodeEnum, Unset], data)
|
|
280
|
+
|
|
281
|
+
oecd_fos_2007_code = _parse_oecd_fos_2007_code(d.pop("oecd_fos_2007_code", UNSET))
|
|
282
|
+
|
|
283
|
+
is_industry = d.pop("is_industry", UNSET)
|
|
284
|
+
|
|
285
|
+
def _parse_image(data: object) -> Union[File, None, Unset]:
|
|
286
|
+
if data is None:
|
|
287
|
+
return data
|
|
288
|
+
if isinstance(data, Unset):
|
|
289
|
+
return data
|
|
290
|
+
try:
|
|
291
|
+
if not isinstance(data, bytes):
|
|
292
|
+
raise TypeError()
|
|
293
|
+
image_type_0 = File(payload=BytesIO(data))
|
|
294
|
+
|
|
295
|
+
return image_type_0
|
|
296
|
+
except: # noqa: E722
|
|
297
|
+
pass
|
|
298
|
+
return cast(Union[File, None, Unset], data)
|
|
299
|
+
|
|
300
|
+
image = _parse_image(d.pop("image", UNSET))
|
|
301
|
+
|
|
302
|
+
_kind = d.pop("kind", UNSET)
|
|
303
|
+
kind: Union[Unset, KindEnum]
|
|
304
|
+
if isinstance(_kind, Unset):
|
|
305
|
+
kind = UNSET
|
|
306
|
+
else:
|
|
307
|
+
kind = KindEnum(_kind)
|
|
308
|
+
|
|
309
|
+
project_request_multipart = cls(
|
|
310
|
+
name=name,
|
|
311
|
+
customer=customer,
|
|
312
|
+
slug=slug,
|
|
313
|
+
description=description,
|
|
314
|
+
type_=type_,
|
|
315
|
+
backend_id=backend_id,
|
|
316
|
+
start_date=start_date,
|
|
317
|
+
end_date=end_date,
|
|
318
|
+
oecd_fos_2007_code=oecd_fos_2007_code,
|
|
319
|
+
is_industry=is_industry,
|
|
320
|
+
image=image,
|
|
321
|
+
kind=kind,
|
|
322
|
+
)
|
|
323
|
+
|
|
324
|
+
project_request_multipart.additional_properties = d
|
|
325
|
+
return project_request_multipart
|
|
326
|
+
|
|
327
|
+
@property
|
|
328
|
+
def additional_keys(self) -> list[str]:
|
|
329
|
+
return list(self.additional_properties.keys())
|
|
330
|
+
|
|
331
|
+
def __getitem__(self, key: str) -> Any:
|
|
332
|
+
return self.additional_properties[key]
|
|
333
|
+
|
|
334
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
335
|
+
self.additional_properties[key] = value
|
|
336
|
+
|
|
337
|
+
def __delitem__(self, key: str) -> None:
|
|
338
|
+
del self.additional_properties[key]
|
|
339
|
+
|
|
340
|
+
def __contains__(self, key: str) -> bool:
|
|
341
|
+
return key in self.additional_properties
|
|
@@ -7,6 +7,7 @@ from attrs import define as _attrs_define
|
|
|
7
7
|
from attrs import field as _attrs_field
|
|
8
8
|
from dateutil.parser import isoparse
|
|
9
9
|
|
|
10
|
+
from ..models.offering_user_state import OfferingUserState
|
|
10
11
|
from ..types import UNSET, Unset
|
|
11
12
|
|
|
12
13
|
T = TypeVar("T", bound="ProjectUser")
|
|
@@ -23,6 +24,7 @@ class ProjectUser:
|
|
|
23
24
|
role (str):
|
|
24
25
|
expiration_time (Union[None, datetime.datetime]):
|
|
25
26
|
offering_user_username (Union[None, str]):
|
|
27
|
+
offering_user_state (OfferingUserState):
|
|
26
28
|
email (Union[Unset, str]):
|
|
27
29
|
"""
|
|
28
30
|
|
|
@@ -33,6 +35,7 @@ class ProjectUser:
|
|
|
33
35
|
role: str
|
|
34
36
|
expiration_time: Union[None, datetime.datetime]
|
|
35
37
|
offering_user_username: Union[None, str]
|
|
38
|
+
offering_user_state: OfferingUserState
|
|
36
39
|
email: Union[Unset, str] = UNSET
|
|
37
40
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
38
41
|
|
|
@@ -56,6 +59,8 @@ class ProjectUser:
|
|
|
56
59
|
offering_user_username: Union[None, str]
|
|
57
60
|
offering_user_username = self.offering_user_username
|
|
58
61
|
|
|
62
|
+
offering_user_state = self.offering_user_state.value
|
|
63
|
+
|
|
59
64
|
email = self.email
|
|
60
65
|
|
|
61
66
|
field_dict: dict[str, Any] = {}
|
|
@@ -69,6 +74,7 @@ class ProjectUser:
|
|
|
69
74
|
"role": role,
|
|
70
75
|
"expiration_time": expiration_time,
|
|
71
76
|
"offering_user_username": offering_user_username,
|
|
77
|
+
"offering_user_state": offering_user_state,
|
|
72
78
|
}
|
|
73
79
|
)
|
|
74
80
|
if email is not UNSET:
|
|
@@ -111,6 +117,8 @@ class ProjectUser:
|
|
|
111
117
|
|
|
112
118
|
offering_user_username = _parse_offering_user_username(d.pop("offering_user_username"))
|
|
113
119
|
|
|
120
|
+
offering_user_state = OfferingUserState(d.pop("offering_user_state"))
|
|
121
|
+
|
|
114
122
|
email = d.pop("email", UNSET)
|
|
115
123
|
|
|
116
124
|
project_user = cls(
|
|
@@ -121,6 +129,7 @@ class ProjectUser:
|
|
|
121
129
|
role=role,
|
|
122
130
|
expiration_time=expiration_time,
|
|
123
131
|
offering_user_username=offering_user_username,
|
|
132
|
+
offering_user_state=offering_user_state,
|
|
124
133
|
email=email,
|
|
125
134
|
)
|
|
126
135
|
|
|
@@ -28,6 +28,7 @@ class Proposal:
|
|
|
28
28
|
Attributes:
|
|
29
29
|
uuid (UUID):
|
|
30
30
|
url (str):
|
|
31
|
+
slug (str):
|
|
31
32
|
name (str):
|
|
32
33
|
project_name (str):
|
|
33
34
|
supporting_documentation (list['ProposalDocumentation']):
|
|
@@ -56,6 +57,7 @@ class Proposal:
|
|
|
56
57
|
|
|
57
58
|
uuid: UUID
|
|
58
59
|
url: str
|
|
60
|
+
slug: str
|
|
59
61
|
name: str
|
|
60
62
|
project_name: str
|
|
61
63
|
supporting_documentation: list["ProposalDocumentation"]
|
|
@@ -89,6 +91,8 @@ class Proposal:
|
|
|
89
91
|
|
|
90
92
|
url = self.url
|
|
91
93
|
|
|
94
|
+
slug = self.slug
|
|
95
|
+
|
|
92
96
|
name = self.name
|
|
93
97
|
|
|
94
98
|
project_name = self.project_name
|
|
@@ -166,6 +170,7 @@ class Proposal:
|
|
|
166
170
|
{
|
|
167
171
|
"uuid": uuid,
|
|
168
172
|
"url": url,
|
|
173
|
+
"slug": slug,
|
|
169
174
|
"name": name,
|
|
170
175
|
"project_name": project_name,
|
|
171
176
|
"supporting_documentation": supporting_documentation,
|
|
@@ -213,6 +218,8 @@ class Proposal:
|
|
|
213
218
|
|
|
214
219
|
url = d.pop("url")
|
|
215
220
|
|
|
221
|
+
slug = d.pop("slug")
|
|
222
|
+
|
|
216
223
|
name = d.pop("name")
|
|
217
224
|
|
|
218
225
|
project_name = d.pop("project_name")
|
|
@@ -332,6 +339,7 @@ class Proposal:
|
|
|
332
339
|
proposal = cls(
|
|
333
340
|
uuid=uuid,
|
|
334
341
|
url=url,
|
|
342
|
+
slug=slug,
|
|
335
343
|
name=name,
|
|
336
344
|
project_name=project_name,
|
|
337
345
|
supporting_documentation=supporting_documentation,
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="ProposalDocumentationRequestForm")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class ProposalDocumentationRequestForm:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
file (Union[File, None, Unset]): Upload supporting documentation in PDF format.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
file: Union[File, None, Unset] = UNSET
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
file: Union[None, Unset, types.FileTypes]
|
|
26
|
+
if isinstance(self.file, Unset):
|
|
27
|
+
file = UNSET
|
|
28
|
+
elif isinstance(self.file, File):
|
|
29
|
+
file = self.file.to_tuple()
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
file = self.file
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update({})
|
|
37
|
+
if file is not UNSET:
|
|
38
|
+
field_dict["file"] = file
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
44
|
+
d = dict(src_dict)
|
|
45
|
+
|
|
46
|
+
def _parse_file(data: object) -> Union[File, None, Unset]:
|
|
47
|
+
if data is None:
|
|
48
|
+
return data
|
|
49
|
+
if isinstance(data, Unset):
|
|
50
|
+
return data
|
|
51
|
+
try:
|
|
52
|
+
if not isinstance(data, bytes):
|
|
53
|
+
raise TypeError()
|
|
54
|
+
file_type_0 = File(payload=BytesIO(data))
|
|
55
|
+
|
|
56
|
+
return file_type_0
|
|
57
|
+
except: # noqa: E722
|
|
58
|
+
pass
|
|
59
|
+
return cast(Union[File, None, Unset], data)
|
|
60
|
+
|
|
61
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
62
|
+
|
|
63
|
+
proposal_documentation_request_form = cls(
|
|
64
|
+
file=file,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
proposal_documentation_request_form.additional_properties = d
|
|
68
|
+
return proposal_documentation_request_form
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def additional_keys(self) -> list[str]:
|
|
72
|
+
return list(self.additional_properties.keys())
|
|
73
|
+
|
|
74
|
+
def __getitem__(self, key: str) -> Any:
|
|
75
|
+
return self.additional_properties[key]
|
|
76
|
+
|
|
77
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
78
|
+
self.additional_properties[key] = value
|
|
79
|
+
|
|
80
|
+
def __delitem__(self, key: str) -> None:
|
|
81
|
+
del self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __contains__(self, key: str) -> bool:
|
|
84
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="ProposalDocumentationRequestMultipart")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class ProposalDocumentationRequestMultipart:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
file (Union[File, None, Unset]): Upload supporting documentation in PDF format.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
file: Union[File, None, Unset] = UNSET
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
file: Union[None, Unset, types.FileTypes]
|
|
26
|
+
if isinstance(self.file, Unset):
|
|
27
|
+
file = UNSET
|
|
28
|
+
elif isinstance(self.file, File):
|
|
29
|
+
file = self.file.to_tuple()
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
file = self.file
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update({})
|
|
37
|
+
if file is not UNSET:
|
|
38
|
+
field_dict["file"] = file
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
def to_multipart(self) -> types.RequestFiles:
|
|
43
|
+
files: types.RequestFiles = []
|
|
44
|
+
|
|
45
|
+
if not isinstance(self.file, Unset):
|
|
46
|
+
if isinstance(self.file, File):
|
|
47
|
+
files.append(("file", self.file.to_tuple()))
|
|
48
|
+
else:
|
|
49
|
+
files.append(("file", (None, str(self.file).encode(), "text/plain")))
|
|
50
|
+
|
|
51
|
+
for prop_name, prop in self.additional_properties.items():
|
|
52
|
+
files.append((prop_name, (None, str(prop).encode(), "text/plain")))
|
|
53
|
+
|
|
54
|
+
return files
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
58
|
+
d = dict(src_dict)
|
|
59
|
+
|
|
60
|
+
def _parse_file(data: object) -> Union[File, None, Unset]:
|
|
61
|
+
if data is None:
|
|
62
|
+
return data
|
|
63
|
+
if isinstance(data, Unset):
|
|
64
|
+
return data
|
|
65
|
+
try:
|
|
66
|
+
if not isinstance(data, bytes):
|
|
67
|
+
raise TypeError()
|
|
68
|
+
file_type_0 = File(payload=BytesIO(data))
|
|
69
|
+
|
|
70
|
+
return file_type_0
|
|
71
|
+
except: # noqa: E722
|
|
72
|
+
pass
|
|
73
|
+
return cast(Union[File, None, Unset], data)
|
|
74
|
+
|
|
75
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
76
|
+
|
|
77
|
+
proposal_documentation_request_multipart = cls(
|
|
78
|
+
file=file,
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
proposal_documentation_request_multipart.additional_properties = d
|
|
82
|
+
return proposal_documentation_request_multipart
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def additional_keys(self) -> list[str]:
|
|
86
|
+
return list(self.additional_properties.keys())
|
|
87
|
+
|
|
88
|
+
def __getitem__(self, key: str) -> Any:
|
|
89
|
+
return self.additional_properties[key]
|
|
90
|
+
|
|
91
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
92
|
+
self.additional_properties[key] = value
|
|
93
|
+
|
|
94
|
+
def __delitem__(self, key: str) -> None:
|
|
95
|
+
del self.additional_properties[key]
|
|
96
|
+
|
|
97
|
+
def __contains__(self, key: str) -> bool:
|
|
98
|
+
return key in self.additional_properties
|
|
@@ -6,12 +6,14 @@ class ProposalProposalsCountOItem(str, Enum):
|
|
|
6
6
|
ROUND_CALL_NAME = "round__call__name"
|
|
7
7
|
ROUND_CUTOFF_TIME = "round__cutoff_time"
|
|
8
8
|
ROUND_START_TIME = "round__start_time"
|
|
9
|
+
SLUG = "slug"
|
|
9
10
|
STATE = "state"
|
|
10
11
|
VALUE_0 = "-created"
|
|
11
12
|
VALUE_1 = "-round__call__name"
|
|
12
13
|
VALUE_2 = "-round__cutoff_time"
|
|
13
14
|
VALUE_3 = "-round__start_time"
|
|
14
|
-
VALUE_4 = "-
|
|
15
|
+
VALUE_4 = "-slug"
|
|
16
|
+
VALUE_5 = "-state"
|
|
15
17
|
|
|
16
18
|
def __str__(self) -> str:
|
|
17
19
|
return str(self.value)
|
|
@@ -6,12 +6,14 @@ class ProposalProposalsListOItem(str, Enum):
|
|
|
6
6
|
ROUND_CALL_NAME = "round__call__name"
|
|
7
7
|
ROUND_CUTOFF_TIME = "round__cutoff_time"
|
|
8
8
|
ROUND_START_TIME = "round__start_time"
|
|
9
|
+
SLUG = "slug"
|
|
9
10
|
STATE = "state"
|
|
10
11
|
VALUE_0 = "-created"
|
|
11
12
|
VALUE_1 = "-round__call__name"
|
|
12
13
|
VALUE_2 = "-round__cutoff_time"
|
|
13
14
|
VALUE_3 = "-round__start_time"
|
|
14
|
-
VALUE_4 = "-
|
|
15
|
+
VALUE_4 = "-slug"
|
|
16
|
+
VALUE_5 = "-state"
|
|
15
17
|
|
|
16
18
|
def __str__(self) -> str:
|
|
17
19
|
return str(self.value)
|