Revert "fix(server): use thumbnail content type instead of application/octet-stream (#3075)" (#3134)

* Revert "fix(server): use thumbnail content type instead of application/octet-stream (#3075)"

This reverts commit 3cc77d945b476db5e8bc24c8235bb99b7ef34186.

* generate api
This commit is contained in:
Alex 2023-07-06 17:25:56 -05:00 committed by GitHub
parent 852ef3cd1b
commit 812cb3d940
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 93 additions and 41 deletions

View File

@ -5895,7 +5895,7 @@ export const AssetApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetThumbnail(id, format, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetThumbnail(id, format, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -5992,7 +5992,7 @@ export const AssetApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.serveFile(id, isThumb, isWeb, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.serveFile(id, isThumb, isWeb, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -6161,7 +6161,7 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetThumbnail(requestParameters: AssetApiGetAssetThumbnailRequest, options?: AxiosRequestConfig): AxiosPromise<void> { getAssetThumbnail(requestParameters: AssetApiGetAssetThumbnailRequest, options?: AxiosRequestConfig): AxiosPromise<File> {
return localVarFp.getAssetThumbnail(requestParameters.id, requestParameters.format, requestParameters.key, options).then((request) => request(axios, basePath)); return localVarFp.getAssetThumbnail(requestParameters.id, requestParameters.format, requestParameters.key, options).then((request) => request(axios, basePath));
}, },
/** /**
@ -6240,7 +6240,7 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
serveFile(requestParameters: AssetApiServeFileRequest, options?: AxiosRequestConfig): AxiosPromise<void> { serveFile(requestParameters: AssetApiServeFileRequest, options?: AxiosRequestConfig): AxiosPromise<File> {
return localVarFp.serveFile(requestParameters.id, requestParameters.isThumb, requestParameters.isWeb, requestParameters.key, options).then((request) => request(axios, basePath)); return localVarFp.serveFile(requestParameters.id, requestParameters.isThumb, requestParameters.isWeb, requestParameters.key, options).then((request) => request(axios, basePath));
}, },
/** /**
@ -8868,7 +8868,7 @@ export const PersonApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getPersonThumbnail(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async getPersonThumbnail(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonThumbnail(id, options); const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonThumbnail(id, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -8925,7 +8925,7 @@ export const PersonApiFactory = function (configuration?: Configuration, basePat
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getPersonThumbnail(requestParameters: PersonApiGetPersonThumbnailRequest, options?: AxiosRequestConfig): AxiosPromise<void> { getPersonThumbnail(requestParameters: PersonApiGetPersonThumbnailRequest, options?: AxiosRequestConfig): AxiosPromise<File> {
return localVarFp.getPersonThumbnail(requestParameters.id, options).then((request) => request(axios, basePath)); return localVarFp.getPersonThumbnail(requestParameters.id, options).then((request) => request(axios, basePath));
}, },
/** /**

View File

@ -768,7 +768,7 @@ This endpoint does not need any parameter.
[[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) [[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)
# **getAssetThumbnail** # **getAssetThumbnail**
> getAssetThumbnail(id, format, key) > MultipartFile getAssetThumbnail(id, format, key)
@ -796,7 +796,8 @@ final format = ; // ThumbnailFormat |
final key = key_example; // String | final key = key_example; // String |
try { try {
api_instance.getAssetThumbnail(id, format, key); final result = api_instance.getAssetThumbnail(id, format, key);
print(result);
} catch (e) { } catch (e) {
print('Exception when calling AssetApi->getAssetThumbnail: $e\n'); print('Exception when calling AssetApi->getAssetThumbnail: $e\n');
} }
@ -812,7 +813,7 @@ Name | Type | Description | Notes
### Return type ### Return type
void (empty response body) [**MultipartFile**](MultipartFile.md)
### Authorization ### Authorization
@ -821,7 +822,7 @@ void (empty response body)
### HTTP request headers ### HTTP request headers
- **Content-Type**: Not defined - **Content-Type**: Not defined
- **Accept**: Not defined - **Accept**: application/octet-stream
[[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) [[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)
@ -1272,7 +1273,7 @@ Name | Type | Description | Notes
[[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) [[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)
# **serveFile** # **serveFile**
> serveFile(id, isThumb, isWeb, key) > MultipartFile serveFile(id, isThumb, isWeb, key)
@ -1301,7 +1302,8 @@ final isWeb = true; // bool |
final key = key_example; // String | final key = key_example; // String |
try { try {
api_instance.serveFile(id, isThumb, isWeb, key); final result = api_instance.serveFile(id, isThumb, isWeb, key);
print(result);
} catch (e) { } catch (e) {
print('Exception when calling AssetApi->serveFile: $e\n'); print('Exception when calling AssetApi->serveFile: $e\n');
} }
@ -1318,7 +1320,7 @@ Name | Type | Description | Notes
### Return type ### Return type
void (empty response body) [**MultipartFile**](MultipartFile.md)
### Authorization ### Authorization
@ -1327,7 +1329,7 @@ void (empty response body)
### HTTP request headers ### HTTP request headers
- **Content-Type**: Not defined - **Content-Type**: Not defined
- **Accept**: Not defined - **Accept**: application/octet-stream
[[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) [[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)

View File

@ -178,7 +178,7 @@ Name | Type | Description | Notes
[[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) [[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)
# **getPersonThumbnail** # **getPersonThumbnail**
> getPersonThumbnail(id) > MultipartFile getPersonThumbnail(id)
@ -204,7 +204,8 @@ final api_instance = PersonApi();
final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String |
try { try {
api_instance.getPersonThumbnail(id); final result = api_instance.getPersonThumbnail(id);
print(result);
} catch (e) { } catch (e) {
print('Exception when calling PersonApi->getPersonThumbnail: $e\n'); print('Exception when calling PersonApi->getPersonThumbnail: $e\n');
} }
@ -218,7 +219,7 @@ Name | Type | Description | Notes
### Return type ### Return type
void (empty response body) [**MultipartFile**](MultipartFile.md)
### Authorization ### Authorization
@ -227,7 +228,7 @@ void (empty response body)
### HTTP request headers ### HTTP request headers
- **Content-Type**: Not defined - **Content-Type**: Not defined
- **Accept**: Not defined - **Accept**: application/octet-stream
[[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) [[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)

View File

@ -772,11 +772,19 @@ class AssetApi {
/// * [ThumbnailFormat] format: /// * [ThumbnailFormat] format:
/// ///
/// * [String] key: /// * [String] key:
Future<void> getAssetThumbnail(String id, { ThumbnailFormat? format, String? key, }) async { Future<MultipartFile?> getAssetThumbnail(String id, { ThumbnailFormat? format, String? key, }) async {
final response = await getAssetThumbnailWithHttpInfo(id, format: format, key: key, ); final response = await getAssetThumbnailWithHttpInfo(id, format: format, key: key, );
if (response.statusCode >= HttpStatus.badRequest) { if (response.statusCode >= HttpStatus.badRequest) {
throw ApiException(response.statusCode, await _decodeBodyBytes(response)); 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), 'MultipartFile',) as MultipartFile;
}
return null;
} }
/// Performs an HTTP 'GET /asset/curated-locations' operation and returns the [Response]. /// Performs an HTTP 'GET /asset/curated-locations' operation and returns the [Response].
@ -1276,11 +1284,19 @@ class AssetApi {
/// * [bool] isWeb: /// * [bool] isWeb:
/// ///
/// * [String] key: /// * [String] key:
Future<void> serveFile(String id, { bool? isThumb, bool? isWeb, String? key, }) async { Future<MultipartFile?> serveFile(String id, { bool? isThumb, bool? isWeb, String? key, }) async {
final response = await serveFileWithHttpInfo(id, isThumb: isThumb, isWeb: isWeb, key: key, ); final response = await serveFileWithHttpInfo(id, isThumb: isThumb, isWeb: isWeb, key: key, );
if (response.statusCode >= HttpStatus.badRequest) { if (response.statusCode >= HttpStatus.badRequest) {
throw ApiException(response.statusCode, await _decodeBodyBytes(response)); 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), 'MultipartFile',) as MultipartFile;
}
return null;
} }
/// Update an asset /// Update an asset

View File

@ -192,11 +192,19 @@ class PersonApi {
/// Parameters: /// Parameters:
/// ///
/// * [String] id (required): /// * [String] id (required):
Future<void> getPersonThumbnail(String id,) async { Future<MultipartFile?> getPersonThumbnail(String id,) async {
final response = await getPersonThumbnailWithHttpInfo(id,); final response = await getPersonThumbnailWithHttpInfo(id,);
if (response.statusCode >= HttpStatus.badRequest) { if (response.statusCode >= HttpStatus.badRequest) {
throw ApiException(response.statusCode, await _decodeBodyBytes(response)); 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), 'MultipartFile',) as MultipartFile;
}
return null;
} }
/// Performs an HTTP 'PUT /person/{id}' operation and returns the [Response]. /// Performs an HTTP 'PUT /person/{id}' operation and returns the [Response].

View File

@ -92,7 +92,7 @@ void main() {
// TODO // TODO
}); });
//Future getAssetThumbnail(String id, { ThumbnailFormat format, String key }) async //Future<MultipartFile> getAssetThumbnail(String id, { ThumbnailFormat format, String key }) async
test('test getAssetThumbnail', () async { test('test getAssetThumbnail', () async {
// TODO // TODO
}); });
@ -139,7 +139,7 @@ void main() {
// TODO // TODO
}); });
//Future serveFile(String id, { bool isThumb, bool isWeb, String key }) async //Future<MultipartFile> serveFile(String id, { bool isThumb, bool isWeb, String key }) async
test('test serveFile', () async { test('test serveFile', () async {
// TODO // TODO
}); });

View File

@ -32,7 +32,7 @@ void main() {
// TODO // TODO
}); });
//Future getPersonThumbnail(String id) async //Future<MultipartFile> getPersonThumbnail(String id) async
test('test getPersonThumbnail', () async { test('test getPersonThumbnail', () async {
// TODO // TODO
}); });

View File

@ -1351,6 +1351,14 @@
], ],
"responses": { "responses": {
"200": { "200": {
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary"
}
}
},
"description": "" "description": ""
} }
}, },
@ -1664,6 +1672,14 @@
], ],
"responses": { "responses": {
"200": { "200": {
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary"
}
}
},
"description": "" "description": ""
} }
}, },
@ -2687,6 +2703,14 @@
], ],
"responses": { "responses": {
"200": { "200": {
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary"
}
}
},
"description": "" "description": ""
} }
}, },

View File

@ -19,7 +19,7 @@ import {
ValidationPipe, ValidationPipe,
} from '@nestjs/common'; } from '@nestjs/common';
import { FileFieldsInterceptor } from '@nestjs/platform-express'; import { FileFieldsInterceptor } from '@nestjs/platform-express';
import { ApiBody, ApiConsumes, ApiHeader, ApiTags } from '@nestjs/swagger'; import { ApiBody, ApiConsumes, ApiHeader, ApiOkResponse, ApiTags } from '@nestjs/swagger';
import { Response as Res } from 'express'; import { Response as Res } from 'express';
import { Authenticated, AuthUser, SharedLinkRoute } from '../../app.guard'; import { Authenticated, AuthUser, SharedLinkRoute } from '../../app.guard';
import { assetUploadOption, ImmichFile } from '../../config/asset-upload.config'; import { assetUploadOption, ImmichFile } from '../../config/asset-upload.config';
@ -122,6 +122,7 @@ export class AssetController {
@SharedLinkRoute() @SharedLinkRoute()
@Get('/file/:id') @Get('/file/:id')
@Header('Cache-Control', 'private, max-age=86400, no-transform') @Header('Cache-Control', 'private, max-age=86400, no-transform')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
serveFile( serveFile(
@AuthUser() authUser: AuthUserDto, @AuthUser() authUser: AuthUserDto,
@Headers() headers: Record<string, string>, @Headers() headers: Record<string, string>,
@ -135,6 +136,7 @@ export class AssetController {
@SharedLinkRoute() @SharedLinkRoute()
@Get('/thumbnail/:id') @Get('/thumbnail/:id')
@Header('Cache-Control', 'private, max-age=86400, no-transform') @Header('Cache-Control', 'private, max-age=86400, no-transform')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
getAssetThumbnail( getAssetThumbnail(
@AuthUser() authUser: AuthUserDto, @AuthUser() authUser: AuthUserDto,
@Headers() headers: Record<string, string>, @Headers() headers: Record<string, string>,

View File

@ -256,8 +256,8 @@ export class AssetService {
} }
try { try {
const [thumbnailPath, contentType] = this.getThumbnailPath(asset, query.format); const thumbnailPath = this.getThumbnailPath(asset, query.format);
return this.streamFile(thumbnailPath, res, headers, contentType); return this.streamFile(thumbnailPath, res, headers);
} catch (e) { } catch (e) {
res.header('Cache-Control', 'none'); res.header('Cache-Control', 'none');
this.logger.error(`Cannot create read stream for asset ${asset.id}`, 'getAssetThumbnail'); this.logger.error(`Cannot create read stream for asset ${asset.id}`, 'getAssetThumbnail');
@ -522,17 +522,16 @@ export class AssetService {
private getThumbnailPath(asset: AssetEntity, format: GetAssetThumbnailFormatEnum) { private getThumbnailPath(asset: AssetEntity, format: GetAssetThumbnailFormatEnum) {
switch (format) { switch (format) {
case GetAssetThumbnailFormatEnum.WEBP: case GetAssetThumbnailFormatEnum.WEBP:
if (asset.webpPath) { if (asset.webpPath && asset.webpPath.length > 0) {
return [asset.webpPath, 'image/webp']; return asset.webpPath;
} }
this.logger.warn(`WebP thumbnail requested but not found for asset ${asset.id}, falling back to JPEG`);
case GetAssetThumbnailFormatEnum.JPEG: case GetAssetThumbnailFormatEnum.JPEG:
default: default:
if (!asset.resizePath) { if (!asset.resizePath) {
throw new NotFoundException(`No thumbnail found for asset ${asset.id}`); throw new NotFoundException('resizePath not set');
} }
return [asset.resizePath, 'image/jpeg']; return asset.resizePath;
} }
} }

View File

@ -1,5 +1,5 @@
import { ApiProperty } from '@nestjs/swagger'; import { ApiProperty } from '@nestjs/swagger';
import { IsEnum, IsOptional } from 'class-validator'; import { IsOptional } from 'class-validator';
export enum GetAssetThumbnailFormatEnum { export enum GetAssetThumbnailFormatEnum {
JPEG = 'JPEG', JPEG = 'JPEG',
@ -8,7 +8,6 @@ export enum GetAssetThumbnailFormatEnum {
export class GetAssetThumbnailDto { export class GetAssetThumbnailDto {
@IsOptional() @IsOptional()
@IsEnum(GetAssetThumbnailFormatEnum)
@ApiProperty({ @ApiProperty({
type: String, type: String,
enum: GetAssetThumbnailFormatEnum, enum: GetAssetThumbnailFormatEnum,

View File

@ -7,7 +7,7 @@ import {
PersonUpdateDto, PersonUpdateDto,
} from '@app/domain'; } from '@app/domain';
import { Body, Controller, Get, Param, Put, StreamableFile } from '@nestjs/common'; import { Body, Controller, Get, Param, Put, StreamableFile } from '@nestjs/common';
import { ApiTags } from '@nestjs/swagger'; import { ApiOkResponse, ApiTags } from '@nestjs/swagger';
import { Authenticated, AuthUser } from '../app.guard'; import { Authenticated, AuthUser } from '../app.guard';
import { UseValidation } from '../app.utils'; import { UseValidation } from '../app.utils';
import { UUIDParamDto } from './dto/uuid-param.dto'; import { UUIDParamDto } from './dto/uuid-param.dto';
@ -43,6 +43,7 @@ export class PersonController {
} }
@Get(':id/thumbnail') @Get(':id/thumbnail')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
getPersonThumbnail(@AuthUser() authUser: AuthUserDto, @Param() { id }: UUIDParamDto) { getPersonThumbnail(@AuthUser() authUser: AuthUserDto, @Param() { id }: UUIDParamDto) {
return this.service.getThumbnail(authUser, id).then(asStreamableFile); return this.service.getThumbnail(authUser, id).then(asStreamableFile);
} }

View File

@ -5904,7 +5904,7 @@ export const AssetApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetThumbnail(id, format, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetThumbnail(id, format, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -6001,7 +6001,7 @@ export const AssetApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.serveFile(id, isThumb, isWeb, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.serveFile(id, isThumb, isWeb, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -6181,7 +6181,7 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: any): AxiosPromise<void> { getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: any): AxiosPromise<File> {
return localVarFp.getAssetThumbnail(id, format, key, options).then((request) => request(axios, basePath)); return localVarFp.getAssetThumbnail(id, format, key, options).then((request) => request(axios, basePath));
}, },
/** /**
@ -6269,7 +6269,7 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: any): AxiosPromise<void> { serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: any): AxiosPromise<File> {
return localVarFp.serveFile(id, isThumb, isWeb, key, options).then((request) => request(axios, basePath)); return localVarFp.serveFile(id, isThumb, isWeb, key, options).then((request) => request(axios, basePath));
}, },
/** /**
@ -8913,7 +8913,7 @@ export const PersonApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getPersonThumbnail(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async getPersonThumbnail(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonThumbnail(id, options); const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonThumbnail(id, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
@ -8970,7 +8970,7 @@ export const PersonApiFactory = function (configuration?: Configuration, basePat
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getPersonThumbnail(id: string, options?: any): AxiosPromise<void> { getPersonThumbnail(id: string, options?: any): AxiosPromise<File> {
return localVarFp.getPersonThumbnail(id, options).then((request) => request(axios, basePath)); return localVarFp.getPersonThumbnail(id, options).then((request) => request(axios, basePath));
}, },
/** /**