mirror of
				https://github.com/immich-app/immich.git
				synced 2025-11-04 03:39:37 -05:00 
			
		
		
		
	* 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)
 | 
						|
 |