You've already forked immich
							
							
				mirror of
				https://github.com/immich-app/immich.git
				synced 2025-10-31 00:18:28 +02:00 
			
		
		
		
	refactor(server, web): create shared link (#2879)
* refactor: shared links * chore: open api * fix: tsc error
This commit is contained in:
		
							
								
								
									
										7
									
								
								mobile/openapi/lib/api.dart
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										7
									
								
								mobile/openapi/lib/api.dart
									
									
									
										generated
									
									
									
								
							| @@ -38,7 +38,7 @@ part 'api/partner_api.dart'; | ||||
| part 'api/person_api.dart'; | ||||
| part 'api/search_api.dart'; | ||||
| part 'api/server_info_api.dart'; | ||||
| part 'api/share_api.dart'; | ||||
| part 'api/shared_link_api.dart'; | ||||
| part 'api/system_config_api.dart'; | ||||
| part 'api/tag_api.dart'; | ||||
| part 'api/user_api.dart'; | ||||
| @@ -73,8 +73,6 @@ part 'model/check_duplicate_asset_response_dto.dart'; | ||||
| part 'model/check_existing_assets_dto.dart'; | ||||
| part 'model/check_existing_assets_response_dto.dart'; | ||||
| part 'model/create_album_dto.dart'; | ||||
| part 'model/create_album_share_link_dto.dart'; | ||||
| part 'model/create_assets_share_link_dto.dart'; | ||||
| part 'model/create_profile_image_response_dto.dart'; | ||||
| part 'model/create_tag_dto.dart'; | ||||
| part 'model/create_user_dto.dart'; | ||||
| @@ -84,7 +82,6 @@ part 'model/delete_asset_dto.dart'; | ||||
| part 'model/delete_asset_response_dto.dart'; | ||||
| part 'model/delete_asset_status.dart'; | ||||
| part 'model/download_files_dto.dart'; | ||||
| part 'model/edit_shared_link_dto.dart'; | ||||
| part 'model/exif_response_dto.dart'; | ||||
| part 'model/get_asset_by_time_bucket_dto.dart'; | ||||
| part 'model/get_asset_count_by_time_bucket_dto.dart'; | ||||
| @@ -119,6 +116,8 @@ part 'model/server_info_response_dto.dart'; | ||||
| part 'model/server_ping_response.dart'; | ||||
| part 'model/server_stats_response_dto.dart'; | ||||
| part 'model/server_version_reponse_dto.dart'; | ||||
| part 'model/shared_link_create_dto.dart'; | ||||
| part 'model/shared_link_edit_dto.dart'; | ||||
| part 'model/shared_link_response_dto.dart'; | ||||
| part 'model/shared_link_type.dart'; | ||||
| part 'model/sign_up_dto.dart'; | ||||
|   | ||||
							
								
								
									
										47
									
								
								mobile/openapi/lib/api/album_api.dart
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										47
									
								
								mobile/openapi/lib/api/album_api.dart
									
									
									
										generated
									
									
									
								
							| @@ -175,53 +175,6 @@ class AlbumApi { | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'POST /album/create-shared-link' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [CreateAlbumShareLinkDto] createAlbumShareLinkDto (required): | ||||
|   Future<Response> createAlbumSharedLinkWithHttpInfo(CreateAlbumShareLinkDto createAlbumShareLinkDto,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/album/create-shared-link'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = createAlbumShareLinkDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'POST', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [CreateAlbumShareLinkDto] createAlbumShareLinkDto (required): | ||||
|   Future<SharedLinkResponseDto?> createAlbumSharedLink(CreateAlbumShareLinkDto createAlbumShareLinkDto,) async { | ||||
|     final response = await createAlbumSharedLinkWithHttpInfo(createAlbumShareLinkDto,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'DELETE /album/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   | ||||
							
								
								
									
										157
									
								
								mobile/openapi/lib/api/asset_api.dart
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										157
									
								
								mobile/openapi/lib/api/asset_api.dart
									
									
									
										generated
									
									
									
								
							| @@ -16,61 +16,6 @@ class AssetApi { | ||||
| 
 | ||||
|   final ApiClient apiClient; | ||||
| 
 | ||||
|   /// Performs an HTTP 'PATCH /asset/shared-link/add' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [AddAssetsDto] addAssetsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> addAssetsToSharedLinkWithHttpInfo(AddAssetsDto addAssetsDto, { String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/asset/shared-link/add'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = addAssetsDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'PATCH', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [AddAssetsDto] addAssetsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<SharedLinkResponseDto?> addAssetsToSharedLink(AddAssetsDto addAssetsDto, { String? key, }) async { | ||||
|     final response = await addAssetsToSharedLinkWithHttpInfo(addAssetsDto,  key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Checks if assets exist by checksums | ||||
|   /// | ||||
|   /// Note: This method returns the HTTP [Response]. | ||||
| @@ -235,53 +180,6 @@ class AssetApi { | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'POST /asset/shared-link' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [CreateAssetsShareLinkDto] createAssetsShareLinkDto (required): | ||||
|   Future<Response> createAssetsSharedLinkWithHttpInfo(CreateAssetsShareLinkDto createAssetsShareLinkDto,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/asset/shared-link'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = createAssetsShareLinkDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'POST', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [CreateAssetsShareLinkDto] createAssetsShareLinkDto (required): | ||||
|   Future<SharedLinkResponseDto?> createAssetsSharedLink(CreateAssetsShareLinkDto createAssetsShareLinkDto,) async { | ||||
|     final response = await createAssetsSharedLinkWithHttpInfo(createAssetsShareLinkDto,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'DELETE /asset' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
| @@ -1225,61 +1123,6 @@ class AssetApi { | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'PATCH /asset/shared-link/remove' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [RemoveAssetsDto] removeAssetsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> removeAssetsFromSharedLinkWithHttpInfo(RemoveAssetsDto removeAssetsDto, { String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/asset/shared-link/remove'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = removeAssetsDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'PATCH', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [RemoveAssetsDto] removeAssetsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<SharedLinkResponseDto?> removeAssetsFromSharedLink(RemoveAssetsDto removeAssetsDto, { String? key, }) async { | ||||
|     final response = await removeAssetsFromSharedLinkWithHttpInfo(removeAssetsDto,  key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'POST /asset/search' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   | ||||
							
								
								
									
										253
									
								
								mobile/openapi/lib/api/share_api.dart
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										253
									
								
								mobile/openapi/lib/api/share_api.dart
									
									
									
										generated
									
									
									
								
							| @@ -1,253 +0,0 @@ | ||||
| // | ||||
| // AUTO-GENERATED FILE, DO NOT MODIFY! | ||||
| // | ||||
| // @dart=2.12 | ||||
| 
 | ||||
| // ignore_for_file: unused_element, unused_import | ||||
| // ignore_for_file: always_put_required_named_parameters_first | ||||
| // ignore_for_file: constant_identifier_names | ||||
| // ignore_for_file: lines_longer_than_80_chars | ||||
| 
 | ||||
| part of openapi.api; | ||||
| 
 | ||||
| 
 | ||||
| class ShareApi { | ||||
|   ShareApi([ApiClient? apiClient]) : apiClient = apiClient ?? defaultApiClient; | ||||
| 
 | ||||
|   final ApiClient apiClient; | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /share' operation and returns the [Response]. | ||||
|   Future<Response> getAllSharedLinksWithHttpInfo() async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/share'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   Future<List<SharedLinkResponseDto>?> getAllSharedLinks() async { | ||||
|     final response = await getAllSharedLinksWithHttpInfo(); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       final responseBody = await _decodeBodyBytes(response); | ||||
|       return (await apiClient.deserializeAsync(responseBody, 'List<SharedLinkResponseDto>') as List) | ||||
|         .cast<SharedLinkResponseDto>() | ||||
|         .toList(); | ||||
| 
 | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /share/me' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> getMySharedLinkWithHttpInfo({ String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/share/me'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<SharedLinkResponseDto?> getMySharedLink({ String? key, }) async { | ||||
|     final response = await getMySharedLinkWithHttpInfo( key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /share/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<Response> getSharedLinkByIdWithHttpInfo(String id,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/share/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<SharedLinkResponseDto?> getSharedLinkById(String id,) async { | ||||
|     final response = await getSharedLinkByIdWithHttpInfo(id,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'DELETE /share/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<Response> removeSharedLinkWithHttpInfo(String id,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/share/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'DELETE', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<void> removeSharedLink(String id,) async { | ||||
|     final response = await removeSharedLinkWithHttpInfo(id,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'PATCH /share/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [EditSharedLinkDto] editSharedLinkDto (required): | ||||
|   Future<Response> updateSharedLinkWithHttpInfo(String id, EditSharedLinkDto editSharedLinkDto,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/share/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = editSharedLinkDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'PATCH', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [EditSharedLinkDto] editSharedLinkDto (required): | ||||
|   Future<SharedLinkResponseDto?> updateSharedLink(String id, EditSharedLinkDto editSharedLinkDto,) async { | ||||
|     final response = await updateSharedLinkWithHttpInfo(id, editSharedLinkDto,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										426
									
								
								mobile/openapi/lib/api/shared_link_api.dart
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										426
									
								
								mobile/openapi/lib/api/shared_link_api.dart
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,426 @@ | ||||
| // | ||||
| // AUTO-GENERATED FILE, DO NOT MODIFY! | ||||
| // | ||||
| // @dart=2.12 | ||||
| 
 | ||||
| // ignore_for_file: unused_element, unused_import | ||||
| // ignore_for_file: always_put_required_named_parameters_first | ||||
| // ignore_for_file: constant_identifier_names | ||||
| // ignore_for_file: lines_longer_than_80_chars | ||||
| 
 | ||||
| part of openapi.api; | ||||
| 
 | ||||
| 
 | ||||
| class SharedLinkApi { | ||||
|   SharedLinkApi([ApiClient? apiClient]) : apiClient = apiClient ?? defaultApiClient; | ||||
| 
 | ||||
|   final ApiClient apiClient; | ||||
| 
 | ||||
|   /// Performs an HTTP 'PUT /shared-link/{id}/assets' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [AssetIdsDto] assetIdsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> addSharedLinkAssetsWithHttpInfo(String id, AssetIdsDto assetIdsDto, { String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/{id}/assets' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = assetIdsDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'PUT', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [AssetIdsDto] assetIdsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<List<AssetIdsResponseDto>?> addSharedLinkAssets(String id, AssetIdsDto assetIdsDto, { String? key, }) async { | ||||
|     final response = await addSharedLinkAssetsWithHttpInfo(id, assetIdsDto,  key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       final responseBody = await _decodeBodyBytes(response); | ||||
|       return (await apiClient.deserializeAsync(responseBody, 'List<AssetIdsResponseDto>') as List) | ||||
|         .cast<AssetIdsResponseDto>() | ||||
|         .toList(); | ||||
| 
 | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'POST /shared-link' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [SharedLinkCreateDto] sharedLinkCreateDto (required): | ||||
|   Future<Response> createSharedLinkWithHttpInfo(SharedLinkCreateDto sharedLinkCreateDto,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = sharedLinkCreateDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'POST', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [SharedLinkCreateDto] sharedLinkCreateDto (required): | ||||
|   Future<SharedLinkResponseDto?> createSharedLink(SharedLinkCreateDto sharedLinkCreateDto,) async { | ||||
|     final response = await createSharedLinkWithHttpInfo(sharedLinkCreateDto,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /shared-link' operation and returns the [Response]. | ||||
|   Future<Response> getAllSharedLinksWithHttpInfo() async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   Future<List<SharedLinkResponseDto>?> getAllSharedLinks() async { | ||||
|     final response = await getAllSharedLinksWithHttpInfo(); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       final responseBody = await _decodeBodyBytes(response); | ||||
|       return (await apiClient.deserializeAsync(responseBody, 'List<SharedLinkResponseDto>') as List) | ||||
|         .cast<SharedLinkResponseDto>() | ||||
|         .toList(); | ||||
| 
 | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /shared-link/me' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> getMySharedLinkWithHttpInfo({ String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/me'; | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<SharedLinkResponseDto?> getMySharedLink({ String? key, }) async { | ||||
|     final response = await getMySharedLinkWithHttpInfo( key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'GET /shared-link/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<Response> getSharedLinkByIdWithHttpInfo(String id,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'GET', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<SharedLinkResponseDto?> getSharedLinkById(String id,) async { | ||||
|     final response = await getSharedLinkByIdWithHttpInfo(id,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'DELETE /shared-link/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<Response> removeSharedLinkWithHttpInfo(String id,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>[]; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'DELETE', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   Future<void> removeSharedLink(String id,) async { | ||||
|     final response = await removeSharedLinkWithHttpInfo(id,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'DELETE /shared-link/{id}/assets' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [AssetIdsDto] assetIdsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<Response> removeSharedLinkAssetsWithHttpInfo(String id, AssetIdsDto assetIdsDto, { String? key, }) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/{id}/assets' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = assetIdsDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     if (key != null) { | ||||
|       queryParams.addAll(_queryParams('', 'key', key)); | ||||
|     } | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'DELETE', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [AssetIdsDto] assetIdsDto (required): | ||||
|   /// | ||||
|   /// * [String] key: | ||||
|   Future<List<AssetIdsResponseDto>?> removeSharedLinkAssets(String id, AssetIdsDto assetIdsDto, { String? key, }) async { | ||||
|     final response = await removeSharedLinkAssetsWithHttpInfo(id, assetIdsDto,  key: key, ); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       final responseBody = await _decodeBodyBytes(response); | ||||
|       return (await apiClient.deserializeAsync(responseBody, 'List<AssetIdsResponseDto>') as List) | ||||
|         .cast<AssetIdsResponseDto>() | ||||
|         .toList(); | ||||
| 
 | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   /// Performs an HTTP 'PATCH /shared-link/{id}' operation and returns the [Response]. | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [SharedLinkEditDto] sharedLinkEditDto (required): | ||||
|   Future<Response> updateSharedLinkWithHttpInfo(String id, SharedLinkEditDto sharedLinkEditDto,) async { | ||||
|     // ignore: prefer_const_declarations | ||||
|     final path = r'/shared-link/{id}' | ||||
|       .replaceAll('{id}', id); | ||||
| 
 | ||||
|     // ignore: prefer_final_locals | ||||
|     Object? postBody = sharedLinkEditDto; | ||||
| 
 | ||||
|     final queryParams = <QueryParam>[]; | ||||
|     final headerParams = <String, String>{}; | ||||
|     final formParams = <String, String>{}; | ||||
| 
 | ||||
|     const contentTypes = <String>['application/json']; | ||||
| 
 | ||||
| 
 | ||||
|     return apiClient.invokeAPI( | ||||
|       path, | ||||
|       'PATCH', | ||||
|       queryParams, | ||||
|       postBody, | ||||
|       headerParams, | ||||
|       formParams, | ||||
|       contentTypes.isEmpty ? null : contentTypes.first, | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   /// Parameters: | ||||
|   /// | ||||
|   /// * [String] id (required): | ||||
|   /// | ||||
|   /// * [SharedLinkEditDto] sharedLinkEditDto (required): | ||||
|   Future<SharedLinkResponseDto?> updateSharedLink(String id, SharedLinkEditDto sharedLinkEditDto,) async { | ||||
|     final response = await updateSharedLinkWithHttpInfo(id, sharedLinkEditDto,); | ||||
|     if (response.statusCode >= HttpStatus.badRequest) { | ||||
|       throw ApiException(response.statusCode, await _decodeBodyBytes(response)); | ||||
|     } | ||||
|     // When a remote server returns no body with a status of 204, we shall not decode it. | ||||
|     // At the time of writing this, `dart:convert` will throw an "Unexpected end of input" | ||||
|     // FormatException when trying to decode an empty string. | ||||
|     if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) { | ||||
|       return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'SharedLinkResponseDto',) as SharedLinkResponseDto; | ||||
|      | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										10
									
								
								mobile/openapi/lib/api_client.dart
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										10
									
								
								mobile/openapi/lib/api_client.dart
									
									
									
										generated
									
									
									
								
							| @@ -241,10 +241,6 @@ class ApiClient { | ||||
|           return CheckExistingAssetsResponseDto.fromJson(value); | ||||
|         case 'CreateAlbumDto': | ||||
|           return CreateAlbumDto.fromJson(value); | ||||
|         case 'CreateAlbumShareLinkDto': | ||||
|           return CreateAlbumShareLinkDto.fromJson(value); | ||||
|         case 'CreateAssetsShareLinkDto': | ||||
|           return CreateAssetsShareLinkDto.fromJson(value); | ||||
|         case 'CreateProfileImageResponseDto': | ||||
|           return CreateProfileImageResponseDto.fromJson(value); | ||||
|         case 'CreateTagDto': | ||||
| @@ -263,8 +259,6 @@ class ApiClient { | ||||
|           return DeleteAssetStatusTypeTransformer().decode(value); | ||||
|         case 'DownloadFilesDto': | ||||
|           return DownloadFilesDto.fromJson(value); | ||||
|         case 'EditSharedLinkDto': | ||||
|           return EditSharedLinkDto.fromJson(value); | ||||
|         case 'ExifResponseDto': | ||||
|           return ExifResponseDto.fromJson(value); | ||||
|         case 'GetAssetByTimeBucketDto': | ||||
| @@ -333,6 +327,10 @@ class ApiClient { | ||||
|           return ServerStatsResponseDto.fromJson(value); | ||||
|         case 'ServerVersionReponseDto': | ||||
|           return ServerVersionReponseDto.fromJson(value); | ||||
|         case 'SharedLinkCreateDto': | ||||
|           return SharedLinkCreateDto.fromJson(value); | ||||
|         case 'SharedLinkEditDto': | ||||
|           return SharedLinkEditDto.fromJson(value); | ||||
|         case 'SharedLinkResponseDto': | ||||
|           return SharedLinkResponseDto.fromJson(value); | ||||
|         case 'SharedLinkType': | ||||
|   | ||||
| @@ -1,194 +0,0 @@ | ||||
| // | ||||
| // AUTO-GENERATED FILE, DO NOT MODIFY! | ||||
| // | ||||
| // @dart=2.12 | ||||
| 
 | ||||
| // ignore_for_file: unused_element, unused_import | ||||
| // ignore_for_file: always_put_required_named_parameters_first | ||||
| // ignore_for_file: constant_identifier_names | ||||
| // ignore_for_file: lines_longer_than_80_chars | ||||
| 
 | ||||
| part of openapi.api; | ||||
| 
 | ||||
| class CreateAlbumShareLinkDto { | ||||
|   /// Returns a new [CreateAlbumShareLinkDto] instance. | ||||
|   CreateAlbumShareLinkDto({ | ||||
|     required this.albumId, | ||||
|     this.expiresAt, | ||||
|     this.allowUpload, | ||||
|     this.allowDownload, | ||||
|     this.showExif, | ||||
|     this.description, | ||||
|   }); | ||||
| 
 | ||||
|   String albumId; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   DateTime? expiresAt; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? allowUpload; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? allowDownload; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? showExif; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   String? description; | ||||
| 
 | ||||
|   @override | ||||
|   bool operator ==(Object other) => identical(this, other) || other is CreateAlbumShareLinkDto && | ||||
|      other.albumId == albumId && | ||||
|      other.expiresAt == expiresAt && | ||||
|      other.allowUpload == allowUpload && | ||||
|      other.allowDownload == allowDownload && | ||||
|      other.showExif == showExif && | ||||
|      other.description == description; | ||||
| 
 | ||||
|   @override | ||||
|   int get hashCode => | ||||
|     // ignore: unnecessary_parenthesis | ||||
|     (albumId.hashCode) + | ||||
|     (expiresAt == null ? 0 : expiresAt!.hashCode) + | ||||
|     (allowUpload == null ? 0 : allowUpload!.hashCode) + | ||||
|     (allowDownload == null ? 0 : allowDownload!.hashCode) + | ||||
|     (showExif == null ? 0 : showExif!.hashCode) + | ||||
|     (description == null ? 0 : description!.hashCode); | ||||
| 
 | ||||
|   @override | ||||
|   String toString() => 'CreateAlbumShareLinkDto[albumId=$albumId, expiresAt=$expiresAt, allowUpload=$allowUpload, allowDownload=$allowDownload, showExif=$showExif, description=$description]'; | ||||
| 
 | ||||
|   Map<String, dynamic> toJson() { | ||||
|     final json = <String, dynamic>{}; | ||||
|       json[r'albumId'] = this.albumId; | ||||
|     if (this.expiresAt != null) { | ||||
|       json[r'expiresAt'] = this.expiresAt!.toUtc().toIso8601String(); | ||||
|     } else { | ||||
|       // json[r'expiresAt'] = null; | ||||
|     } | ||||
|     if (this.allowUpload != null) { | ||||
|       json[r'allowUpload'] = this.allowUpload; | ||||
|     } else { | ||||
|       // json[r'allowUpload'] = null; | ||||
|     } | ||||
|     if (this.allowDownload != null) { | ||||
|       json[r'allowDownload'] = this.allowDownload; | ||||
|     } else { | ||||
|       // json[r'allowDownload'] = null; | ||||
|     } | ||||
|     if (this.showExif != null) { | ||||
|       json[r'showExif'] = this.showExif; | ||||
|     } else { | ||||
|       // json[r'showExif'] = null; | ||||
|     } | ||||
|     if (this.description != null) { | ||||
|       json[r'description'] = this.description; | ||||
|     } else { | ||||
|       // json[r'description'] = null; | ||||
|     } | ||||
|     return json; | ||||
|   } | ||||
| 
 | ||||
|   /// Returns a new [CreateAlbumShareLinkDto] instance and imports its values from | ||||
|   /// [value] if it's a [Map], null otherwise. | ||||
|   // ignore: prefer_constructors_over_static_methods | ||||
|   static CreateAlbumShareLinkDto? fromJson(dynamic value) { | ||||
|     if (value is Map) { | ||||
|       final json = value.cast<String, dynamic>(); | ||||
| 
 | ||||
|       // Ensure that the map contains the required keys. | ||||
|       // Note 1: the values aren't checked for validity beyond being non-null. | ||||
|       // Note 2: this code is stripped in release mode! | ||||
|       assert(() { | ||||
|         requiredKeys.forEach((key) { | ||||
|           assert(json.containsKey(key), 'Required key "CreateAlbumShareLinkDto[$key]" is missing from JSON.'); | ||||
|           assert(json[key] != null, 'Required key "CreateAlbumShareLinkDto[$key]" has a null value in JSON.'); | ||||
|         }); | ||||
|         return true; | ||||
|       }()); | ||||
| 
 | ||||
|       return CreateAlbumShareLinkDto( | ||||
|         albumId: mapValueOfType<String>(json, r'albumId')!, | ||||
|         expiresAt: mapDateTime(json, r'expiresAt', ''), | ||||
|         allowUpload: mapValueOfType<bool>(json, r'allowUpload'), | ||||
|         allowDownload: mapValueOfType<bool>(json, r'allowDownload'), | ||||
|         showExif: mapValueOfType<bool>(json, r'showExif'), | ||||
|         description: mapValueOfType<String>(json, r'description'), | ||||
|       ); | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   static List<CreateAlbumShareLinkDto> listFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final result = <CreateAlbumShareLinkDto>[]; | ||||
|     if (json is List && json.isNotEmpty) { | ||||
|       for (final row in json) { | ||||
|         final value = CreateAlbumShareLinkDto.fromJson(row); | ||||
|         if (value != null) { | ||||
|           result.add(value); | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|     return result.toList(growable: growable); | ||||
|   } | ||||
| 
 | ||||
|   static Map<String, CreateAlbumShareLinkDto> mapFromJson(dynamic json) { | ||||
|     final map = <String, CreateAlbumShareLinkDto>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       json = json.cast<String, dynamic>(); // ignore: parameter_assignments | ||||
|       for (final entry in json.entries) { | ||||
|         final value = CreateAlbumShareLinkDto.fromJson(entry.value); | ||||
|         if (value != null) { | ||||
|           map[entry.key] = value; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|     return map; | ||||
|   } | ||||
| 
 | ||||
|   // maps a json object with a list of CreateAlbumShareLinkDto-objects as value to a dart map | ||||
|   static Map<String, List<CreateAlbumShareLinkDto>> mapListFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final map = <String, List<CreateAlbumShareLinkDto>>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       // ignore: parameter_assignments | ||||
|       json = json.cast<String, dynamic>(); | ||||
|       for (final entry in json.entries) { | ||||
|         map[entry.key] = CreateAlbumShareLinkDto.listFromJson(entry.value, growable: growable,); | ||||
|       } | ||||
|     } | ||||
|     return map; | ||||
|   } | ||||
| 
 | ||||
|   /// The list of required keys that must be present in a JSON. | ||||
|   static const requiredKeys = <String>{ | ||||
|     'albumId', | ||||
|   }; | ||||
| } | ||||
| 
 | ||||
| @@ -10,17 +10,21 @@ | ||||
| 
 | ||||
| part of openapi.api; | ||||
| 
 | ||||
| class CreateAssetsShareLinkDto { | ||||
|   /// Returns a new [CreateAssetsShareLinkDto] instance. | ||||
|   CreateAssetsShareLinkDto({ | ||||
| class SharedLinkCreateDto { | ||||
|   /// Returns a new [SharedLinkCreateDto] instance. | ||||
|   SharedLinkCreateDto({ | ||||
|     required this.type, | ||||
|     this.assetIds = const [], | ||||
|     this.expiresAt, | ||||
|     this.allowUpload, | ||||
|     this.allowDownload, | ||||
|     this.showExif, | ||||
|     this.albumId, | ||||
|     this.description, | ||||
|     this.expiresAt, | ||||
|     this.allowUpload = false, | ||||
|     this.allowDownload = true, | ||||
|     this.showExif = true, | ||||
|   }); | ||||
| 
 | ||||
|   SharedLinkType type; | ||||
| 
 | ||||
|   List<String> assetIds; | ||||
| 
 | ||||
|   /// | ||||
| @@ -29,31 +33,7 @@ class CreateAssetsShareLinkDto { | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   DateTime? expiresAt; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? allowUpload; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? allowDownload; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   bool? showExif; | ||||
|   String? albumId; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
| @@ -63,63 +43,69 @@ class CreateAssetsShareLinkDto { | ||||
|   /// | ||||
|   String? description; | ||||
| 
 | ||||
|   DateTime? expiresAt; | ||||
| 
 | ||||
|   bool allowUpload; | ||||
| 
 | ||||
|   bool allowDownload; | ||||
| 
 | ||||
|   bool showExif; | ||||
| 
 | ||||
|   @override | ||||
|   bool operator ==(Object other) => identical(this, other) || other is CreateAssetsShareLinkDto && | ||||
|   bool operator ==(Object other) => identical(this, other) || other is SharedLinkCreateDto && | ||||
|      other.type == type && | ||||
|      other.assetIds == assetIds && | ||||
|      other.albumId == albumId && | ||||
|      other.description == description && | ||||
|      other.expiresAt == expiresAt && | ||||
|      other.allowUpload == allowUpload && | ||||
|      other.allowDownload == allowDownload && | ||||
|      other.showExif == showExif && | ||||
|      other.description == description; | ||||
|      other.showExif == showExif; | ||||
| 
 | ||||
|   @override | ||||
|   int get hashCode => | ||||
|     // ignore: unnecessary_parenthesis | ||||
|     (type.hashCode) + | ||||
|     (assetIds.hashCode) + | ||||
|     (albumId == null ? 0 : albumId!.hashCode) + | ||||
|     (description == null ? 0 : description!.hashCode) + | ||||
|     (expiresAt == null ? 0 : expiresAt!.hashCode) + | ||||
|     (allowUpload == null ? 0 : allowUpload!.hashCode) + | ||||
|     (allowDownload == null ? 0 : allowDownload!.hashCode) + | ||||
|     (showExif == null ? 0 : showExif!.hashCode) + | ||||
|     (description == null ? 0 : description!.hashCode); | ||||
|     (allowUpload.hashCode) + | ||||
|     (allowDownload.hashCode) + | ||||
|     (showExif.hashCode); | ||||
| 
 | ||||
|   @override | ||||
|   String toString() => 'CreateAssetsShareLinkDto[assetIds=$assetIds, expiresAt=$expiresAt, allowUpload=$allowUpload, allowDownload=$allowDownload, showExif=$showExif, description=$description]'; | ||||
|   String toString() => 'SharedLinkCreateDto[type=$type, assetIds=$assetIds, albumId=$albumId, description=$description, expiresAt=$expiresAt, allowUpload=$allowUpload, allowDownload=$allowDownload, showExif=$showExif]'; | ||||
| 
 | ||||
|   Map<String, dynamic> toJson() { | ||||
|     final json = <String, dynamic>{}; | ||||
|       json[r'type'] = this.type; | ||||
|       json[r'assetIds'] = this.assetIds; | ||||
|     if (this.expiresAt != null) { | ||||
|       json[r'expiresAt'] = this.expiresAt!.toUtc().toIso8601String(); | ||||
|     if (this.albumId != null) { | ||||
|       json[r'albumId'] = this.albumId; | ||||
|     } else { | ||||
|       // json[r'expiresAt'] = null; | ||||
|     } | ||||
|     if (this.allowUpload != null) { | ||||
|       json[r'allowUpload'] = this.allowUpload; | ||||
|     } else { | ||||
|       // json[r'allowUpload'] = null; | ||||
|     } | ||||
|     if (this.allowDownload != null) { | ||||
|       json[r'allowDownload'] = this.allowDownload; | ||||
|     } else { | ||||
|       // json[r'allowDownload'] = null; | ||||
|     } | ||||
|     if (this.showExif != null) { | ||||
|       json[r'showExif'] = this.showExif; | ||||
|     } else { | ||||
|       // json[r'showExif'] = null; | ||||
|       // json[r'albumId'] = null; | ||||
|     } | ||||
|     if (this.description != null) { | ||||
|       json[r'description'] = this.description; | ||||
|     } else { | ||||
|       // json[r'description'] = null; | ||||
|     } | ||||
|     if (this.expiresAt != null) { | ||||
|       json[r'expiresAt'] = this.expiresAt!.toUtc().toIso8601String(); | ||||
|     } else { | ||||
|       // json[r'expiresAt'] = null; | ||||
|     } | ||||
|       json[r'allowUpload'] = this.allowUpload; | ||||
|       json[r'allowDownload'] = this.allowDownload; | ||||
|       json[r'showExif'] = this.showExif; | ||||
|     return json; | ||||
|   } | ||||
| 
 | ||||
|   /// Returns a new [CreateAssetsShareLinkDto] instance and imports its values from | ||||
|   /// Returns a new [SharedLinkCreateDto] instance and imports its values from | ||||
|   /// [value] if it's a [Map], null otherwise. | ||||
|   // ignore: prefer_constructors_over_static_methods | ||||
|   static CreateAssetsShareLinkDto? fromJson(dynamic value) { | ||||
|   static SharedLinkCreateDto? fromJson(dynamic value) { | ||||
|     if (value is Map) { | ||||
|       final json = value.cast<String, dynamic>(); | ||||
| 
 | ||||
| @@ -128,31 +114,33 @@ class CreateAssetsShareLinkDto { | ||||
|       // Note 2: this code is stripped in release mode! | ||||
|       assert(() { | ||||
|         requiredKeys.forEach((key) { | ||||
|           assert(json.containsKey(key), 'Required key "CreateAssetsShareLinkDto[$key]" is missing from JSON.'); | ||||
|           assert(json[key] != null, 'Required key "CreateAssetsShareLinkDto[$key]" has a null value in JSON.'); | ||||
|           assert(json.containsKey(key), 'Required key "SharedLinkCreateDto[$key]" is missing from JSON.'); | ||||
|           assert(json[key] != null, 'Required key "SharedLinkCreateDto[$key]" has a null value in JSON.'); | ||||
|         }); | ||||
|         return true; | ||||
|       }()); | ||||
| 
 | ||||
|       return CreateAssetsShareLinkDto( | ||||
|       return SharedLinkCreateDto( | ||||
|         type: SharedLinkType.fromJson(json[r'type'])!, | ||||
|         assetIds: json[r'assetIds'] is Iterable | ||||
|             ? (json[r'assetIds'] as Iterable).cast<String>().toList(growable: false) | ||||
|             : const [], | ||||
|         expiresAt: mapDateTime(json, r'expiresAt', ''), | ||||
|         allowUpload: mapValueOfType<bool>(json, r'allowUpload'), | ||||
|         allowDownload: mapValueOfType<bool>(json, r'allowDownload'), | ||||
|         showExif: mapValueOfType<bool>(json, r'showExif'), | ||||
|         albumId: mapValueOfType<String>(json, r'albumId'), | ||||
|         description: mapValueOfType<String>(json, r'description'), | ||||
|         expiresAt: mapDateTime(json, r'expiresAt', ''), | ||||
|         allowUpload: mapValueOfType<bool>(json, r'allowUpload') ?? false, | ||||
|         allowDownload: mapValueOfType<bool>(json, r'allowDownload') ?? true, | ||||
|         showExif: mapValueOfType<bool>(json, r'showExif') ?? true, | ||||
|       ); | ||||
|     } | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   static List<CreateAssetsShareLinkDto> listFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final result = <CreateAssetsShareLinkDto>[]; | ||||
|   static List<SharedLinkCreateDto> listFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final result = <SharedLinkCreateDto>[]; | ||||
|     if (json is List && json.isNotEmpty) { | ||||
|       for (final row in json) { | ||||
|         final value = CreateAssetsShareLinkDto.fromJson(row); | ||||
|         final value = SharedLinkCreateDto.fromJson(row); | ||||
|         if (value != null) { | ||||
|           result.add(value); | ||||
|         } | ||||
| @@ -161,12 +149,12 @@ class CreateAssetsShareLinkDto { | ||||
|     return result.toList(growable: growable); | ||||
|   } | ||||
| 
 | ||||
|   static Map<String, CreateAssetsShareLinkDto> mapFromJson(dynamic json) { | ||||
|     final map = <String, CreateAssetsShareLinkDto>{}; | ||||
|   static Map<String, SharedLinkCreateDto> mapFromJson(dynamic json) { | ||||
|     final map = <String, SharedLinkCreateDto>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       json = json.cast<String, dynamic>(); // ignore: parameter_assignments | ||||
|       for (final entry in json.entries) { | ||||
|         final value = CreateAssetsShareLinkDto.fromJson(entry.value); | ||||
|         final value = SharedLinkCreateDto.fromJson(entry.value); | ||||
|         if (value != null) { | ||||
|           map[entry.key] = value; | ||||
|         } | ||||
| @@ -175,14 +163,14 @@ class CreateAssetsShareLinkDto { | ||||
|     return map; | ||||
|   } | ||||
| 
 | ||||
|   // maps a json object with a list of CreateAssetsShareLinkDto-objects as value to a dart map | ||||
|   static Map<String, List<CreateAssetsShareLinkDto>> mapListFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final map = <String, List<CreateAssetsShareLinkDto>>{}; | ||||
|   // maps a json object with a list of SharedLinkCreateDto-objects as value to a dart map | ||||
|   static Map<String, List<SharedLinkCreateDto>> mapListFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final map = <String, List<SharedLinkCreateDto>>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       // ignore: parameter_assignments | ||||
|       json = json.cast<String, dynamic>(); | ||||
|       for (final entry in json.entries) { | ||||
|         map[entry.key] = CreateAssetsShareLinkDto.listFromJson(entry.value, growable: growable,); | ||||
|         map[entry.key] = SharedLinkCreateDto.listFromJson(entry.value, growable: growable,); | ||||
|       } | ||||
|     } | ||||
|     return map; | ||||
| @@ -190,7 +178,7 @@ class CreateAssetsShareLinkDto { | ||||
| 
 | ||||
|   /// The list of required keys that must be present in a JSON. | ||||
|   static const requiredKeys = <String>{ | ||||
|     'assetIds', | ||||
|     'type', | ||||
|   }; | ||||
| } | ||||
| 
 | ||||
| @@ -10,9 +10,9 @@ | ||||
| 
 | ||||
| part of openapi.api; | ||||
| 
 | ||||
| class EditSharedLinkDto { | ||||
|   /// Returns a new [EditSharedLinkDto] instance. | ||||
|   EditSharedLinkDto({ | ||||
| class SharedLinkEditDto { | ||||
|   /// Returns a new [SharedLinkEditDto] instance. | ||||
|   SharedLinkEditDto({ | ||||
|     this.description, | ||||
|     this.expiresAt, | ||||
|     this.allowUpload, | ||||
| @@ -55,7 +55,7 @@ class EditSharedLinkDto { | ||||
|   bool? showExif; | ||||
| 
 | ||||
|   @override | ||||
|   bool operator ==(Object other) => identical(this, other) || other is EditSharedLinkDto && | ||||
|   bool operator ==(Object other) => identical(this, other) || other is SharedLinkEditDto && | ||||
|      other.description == description && | ||||
|      other.expiresAt == expiresAt && | ||||
|      other.allowUpload == allowUpload && | ||||
| @@ -72,7 +72,7 @@ class EditSharedLinkDto { | ||||
|     (showExif == null ? 0 : showExif!.hashCode); | ||||
| 
 | ||||
|   @override | ||||
|   String toString() => 'EditSharedLinkDto[description=$description, expiresAt=$expiresAt, allowUpload=$allowUpload, allowDownload=$allowDownload, showExif=$showExif]'; | ||||
|   String toString() => 'SharedLinkEditDto[description=$description, expiresAt=$expiresAt, allowUpload=$allowUpload, allowDownload=$allowDownload, showExif=$showExif]'; | ||||
| 
 | ||||
|   Map<String, dynamic> toJson() { | ||||
|     final json = <String, dynamic>{}; | ||||
| @@ -104,10 +104,10 @@ class EditSharedLinkDto { | ||||
|     return json; | ||||
|   } | ||||
| 
 | ||||
|   /// Returns a new [EditSharedLinkDto] instance and imports its values from | ||||
|   /// Returns a new [SharedLinkEditDto] instance and imports its values from | ||||
|   /// [value] if it's a [Map], null otherwise. | ||||
|   // ignore: prefer_constructors_over_static_methods | ||||
|   static EditSharedLinkDto? fromJson(dynamic value) { | ||||
|   static SharedLinkEditDto? fromJson(dynamic value) { | ||||
|     if (value is Map) { | ||||
|       final json = value.cast<String, dynamic>(); | ||||
| 
 | ||||
| @@ -116,13 +116,13 @@ class EditSharedLinkDto { | ||||
|       // Note 2: this code is stripped in release mode! | ||||
|       assert(() { | ||||
|         requiredKeys.forEach((key) { | ||||
|           assert(json.containsKey(key), 'Required key "EditSharedLinkDto[$key]" is missing from JSON.'); | ||||
|           assert(json[key] != null, 'Required key "EditSharedLinkDto[$key]" has a null value in JSON.'); | ||||
|           assert(json.containsKey(key), 'Required key "SharedLinkEditDto[$key]" is missing from JSON.'); | ||||
|           assert(json[key] != null, 'Required key "SharedLinkEditDto[$key]" has a null value in JSON.'); | ||||
|         }); | ||||
|         return true; | ||||
|       }()); | ||||
| 
 | ||||
|       return EditSharedLinkDto( | ||||
|       return SharedLinkEditDto( | ||||
|         description: mapValueOfType<String>(json, r'description'), | ||||
|         expiresAt: mapDateTime(json, r'expiresAt', ''), | ||||
|         allowUpload: mapValueOfType<bool>(json, r'allowUpload'), | ||||
| @@ -133,11 +133,11 @@ class EditSharedLinkDto { | ||||
|     return null; | ||||
|   } | ||||
| 
 | ||||
|   static List<EditSharedLinkDto> listFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final result = <EditSharedLinkDto>[]; | ||||
|   static List<SharedLinkEditDto> listFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final result = <SharedLinkEditDto>[]; | ||||
|     if (json is List && json.isNotEmpty) { | ||||
|       for (final row in json) { | ||||
|         final value = EditSharedLinkDto.fromJson(row); | ||||
|         final value = SharedLinkEditDto.fromJson(row); | ||||
|         if (value != null) { | ||||
|           result.add(value); | ||||
|         } | ||||
| @@ -146,12 +146,12 @@ class EditSharedLinkDto { | ||||
|     return result.toList(growable: growable); | ||||
|   } | ||||
| 
 | ||||
|   static Map<String, EditSharedLinkDto> mapFromJson(dynamic json) { | ||||
|     final map = <String, EditSharedLinkDto>{}; | ||||
|   static Map<String, SharedLinkEditDto> mapFromJson(dynamic json) { | ||||
|     final map = <String, SharedLinkEditDto>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       json = json.cast<String, dynamic>(); // ignore: parameter_assignments | ||||
|       for (final entry in json.entries) { | ||||
|         final value = EditSharedLinkDto.fromJson(entry.value); | ||||
|         final value = SharedLinkEditDto.fromJson(entry.value); | ||||
|         if (value != null) { | ||||
|           map[entry.key] = value; | ||||
|         } | ||||
| @@ -160,14 +160,14 @@ class EditSharedLinkDto { | ||||
|     return map; | ||||
|   } | ||||
| 
 | ||||
|   // maps a json object with a list of EditSharedLinkDto-objects as value to a dart map | ||||
|   static Map<String, List<EditSharedLinkDto>> mapListFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final map = <String, List<EditSharedLinkDto>>{}; | ||||
|   // maps a json object with a list of SharedLinkEditDto-objects as value to a dart map | ||||
|   static Map<String, List<SharedLinkEditDto>> mapListFromJson(dynamic json, {bool growable = false,}) { | ||||
|     final map = <String, List<SharedLinkEditDto>>{}; | ||||
|     if (json is Map && json.isNotEmpty) { | ||||
|       // ignore: parameter_assignments | ||||
|       json = json.cast<String, dynamic>(); | ||||
|       for (final entry in json.entries) { | ||||
|         map[entry.key] = EditSharedLinkDto.listFromJson(entry.value, growable: growable,); | ||||
|         map[entry.key] = SharedLinkEditDto.listFromJson(entry.value, growable: growable,); | ||||
|       } | ||||
|     } | ||||
|     return map; | ||||
| @@ -15,7 +15,7 @@ class SharedLinkResponseDto { | ||||
|   SharedLinkResponseDto({ | ||||
|     required this.type, | ||||
|     required this.id, | ||||
|     this.description, | ||||
|     required this.description, | ||||
|     required this.userId, | ||||
|     required this.key, | ||||
|     required this.createdAt, | ||||
| @@ -31,12 +31,6 @@ class SharedLinkResponseDto { | ||||
| 
 | ||||
|   String id; | ||||
| 
 | ||||
|   /// | ||||
|   /// Please note: This property should have been non-nullable! Since the specification file | ||||
|   /// does not include a default value (using the "default:" property), however, the generated | ||||
|   /// source code must fall back to having a nullable type. | ||||
|   /// Consider adding a "default:" property in the specification file to hide this note. | ||||
|   /// | ||||
|   String? description; | ||||
| 
 | ||||
|   String userId; | ||||
| @@ -206,6 +200,7 @@ class SharedLinkResponseDto { | ||||
|   static const requiredKeys = <String>{ | ||||
|     'type', | ||||
|     'id', | ||||
|     'description', | ||||
|     'userId', | ||||
|     'key', | ||||
|     'createdAt', | ||||
|   | ||||
		Reference in New Issue
	
	Block a user