forked from Cutlery/immich
		
	* feat(server, web): implement share with partner * chore: regenerate api * chore: regenerate api * Pass userId to getAssetCountByTimeBucket and getAssetByTimeBucket * chore: regenerate api * Use AssetGrid to view partner's assets * Remove disableNavBarActions flag * Check access to buckets * Apply suggestions from code review Co-authored-by: Jason Rasmussen <jrasm91@gmail.com> * Remove exception rethrowing * Simplify partner access check * Create new PartnerController * chore api:generate * Use partnerApi * Remove id from PartnerResponseDto * Refactor PartnerEntity * Rename args * Remove duplicate code in getAll * Create composite primary keys for partners table * Move asset access check into PartnerCore * Remove redundant getUserAssets call * Remove unused getUserAssets method * chore: regenerate api * Simplify getAll * Replace ?? with || * Simplify PartnerRepository.create * Introduce PartnerIds interface * Replace two database migrations with one * Simplify getAll * Change PartnerResponseDto to include UserResponseDto * Move partner sharing endpoints to PartnerController * Rename ShareController to SharedLinkController * chore: regenerate api after rebase * refactor: shared link remove return type * refactor: return user response dto * chore: regenerate open api * refactor: partner getAll * refactor: partner settings event typing * chore: remove unused code * refactor: add partners modal trigger * refactor: update url for viewing partner photos * feat: update partner sharing title * refactor: rename service method names * refactor: http exception logic to service, PartnerIds interface * chore: regenerate open api * test: coverage for domain code * fix: addPartner => createPartner * fix: missed rename * refactor: more code cleanup * chore: alphabetize settings order * feat: stop sharing confirmation modal * Enhance contrast of the email in dark mode * Replace button with CircleIconButton * Fix linter warning * Fix date types for PartnerEntity * Fix PartnerEntity creation * Reset assetStore state * Change layout of the partner's assets page * Add bulk download action for partner's assets --------- Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
		
			
				
	
	
		
			181 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
		
			Generated
		
	
	
			
		
		
	
	
			181 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
		
			Generated
		
	
	
| # openapi.api.PartnerApi
 | |
| 
 | |
| ## Load the API package
 | |
| ```dart
 | |
| import 'package:openapi/api.dart';
 | |
| ```
 | |
| 
 | |
| All URIs are relative to */api*
 | |
| 
 | |
| Method | HTTP request | Description
 | |
| ------------- | ------------- | -------------
 | |
| [**createPartner**](PartnerApi.md#createpartner) | **POST** /partner/{id} | 
 | |
| [**getPartners**](PartnerApi.md#getpartners) | **GET** /partner | 
 | |
| [**removePartner**](PartnerApi.md#removepartner) | **DELETE** /partner/{id} | 
 | |
| 
 | |
| 
 | |
| # **createPartner**
 | |
| > UserResponseDto createPartner(id)
 | |
| 
 | |
| 
 | |
| 
 | |
| ### Example
 | |
| ```dart
 | |
| import 'package:openapi/api.dart';
 | |
| // TODO Configure API key authorization: cookie
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure API key authorization: api_key
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure HTTP Bearer authorization: bearer
 | |
| // Case 1. Use String Token
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken('YOUR_ACCESS_TOKEN');
 | |
| // Case 2. Use Function which generate token.
 | |
| // String yourTokenGeneratorFunction() { ... }
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken(yourTokenGeneratorFunction);
 | |
| 
 | |
| final api_instance = PartnerApi();
 | |
| final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | 
 | |
| 
 | |
| try {
 | |
|     final result = api_instance.createPartner(id);
 | |
|     print(result);
 | |
| } catch (e) {
 | |
|     print('Exception when calling PartnerApi->createPartner: $e\n');
 | |
| }
 | |
| ```
 | |
| 
 | |
| ### Parameters
 | |
| 
 | |
| Name | Type | Description  | Notes
 | |
| ------------- | ------------- | ------------- | -------------
 | |
|  **id** | **String**|  | 
 | |
| 
 | |
| ### Return type
 | |
| 
 | |
| [**UserResponseDto**](UserResponseDto.md)
 | |
| 
 | |
| ### Authorization
 | |
| 
 | |
| [cookie](../README.md#cookie), [api_key](../README.md#api_key), [bearer](../README.md#bearer)
 | |
| 
 | |
| ### HTTP request headers
 | |
| 
 | |
|  - **Content-Type**: Not defined
 | |
|  - **Accept**: application/json
 | |
| 
 | |
| [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | |
| 
 | |
| # **getPartners**
 | |
| > List<UserResponseDto> getPartners(direction)
 | |
| 
 | |
| 
 | |
| 
 | |
| ### Example
 | |
| ```dart
 | |
| import 'package:openapi/api.dart';
 | |
| // TODO Configure API key authorization: cookie
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure API key authorization: api_key
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure HTTP Bearer authorization: bearer
 | |
| // Case 1. Use String Token
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken('YOUR_ACCESS_TOKEN');
 | |
| // Case 2. Use Function which generate token.
 | |
| // String yourTokenGeneratorFunction() { ... }
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken(yourTokenGeneratorFunction);
 | |
| 
 | |
| final api_instance = PartnerApi();
 | |
| final direction = direction_example; // String | 
 | |
| 
 | |
| try {
 | |
|     final result = api_instance.getPartners(direction);
 | |
|     print(result);
 | |
| } catch (e) {
 | |
|     print('Exception when calling PartnerApi->getPartners: $e\n');
 | |
| }
 | |
| ```
 | |
| 
 | |
| ### Parameters
 | |
| 
 | |
| Name | Type | Description  | Notes
 | |
| ------------- | ------------- | ------------- | -------------
 | |
|  **direction** | **String**|  | 
 | |
| 
 | |
| ### Return type
 | |
| 
 | |
| [**List<UserResponseDto>**](UserResponseDto.md)
 | |
| 
 | |
| ### Authorization
 | |
| 
 | |
| [cookie](../README.md#cookie), [api_key](../README.md#api_key), [bearer](../README.md#bearer)
 | |
| 
 | |
| ### HTTP request headers
 | |
| 
 | |
|  - **Content-Type**: Not defined
 | |
|  - **Accept**: application/json
 | |
| 
 | |
| [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | |
| 
 | |
| # **removePartner**
 | |
| > removePartner(id)
 | |
| 
 | |
| 
 | |
| 
 | |
| ### Example
 | |
| ```dart
 | |
| import 'package:openapi/api.dart';
 | |
| // TODO Configure API key authorization: cookie
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure API key authorization: api_key
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKey = 'YOUR_API_KEY';
 | |
| // uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | |
| //defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKeyPrefix = 'Bearer';
 | |
| // TODO Configure HTTP Bearer authorization: bearer
 | |
| // Case 1. Use String Token
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken('YOUR_ACCESS_TOKEN');
 | |
| // Case 2. Use Function which generate token.
 | |
| // String yourTokenGeneratorFunction() { ... }
 | |
| //defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken(yourTokenGeneratorFunction);
 | |
| 
 | |
| final api_instance = PartnerApi();
 | |
| final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | 
 | |
| 
 | |
| try {
 | |
|     api_instance.removePartner(id);
 | |
| } catch (e) {
 | |
|     print('Exception when calling PartnerApi->removePartner: $e\n');
 | |
| }
 | |
| ```
 | |
| 
 | |
| ### Parameters
 | |
| 
 | |
| Name | Type | Description  | Notes
 | |
| ------------- | ------------- | ------------- | -------------
 | |
|  **id** | **String**|  | 
 | |
| 
 | |
| ### Return type
 | |
| 
 | |
| void (empty response body)
 | |
| 
 | |
| ### Authorization
 | |
| 
 | |
| [cookie](../README.md#cookie), [api_key](../README.md#api_key), [bearer](../README.md#bearer)
 | |
| 
 | |
| ### HTTP request headers
 | |
| 
 | |
|  - **Content-Type**: Not defined
 | |
|  - **Accept**: Not defined
 | |
| 
 | |
| [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | |
| 
 |