1
0
mirror of https://github.com/immich-app/immich.git synced 2024-12-25 10:43:13 +02:00

refactor(server): use UUID dto in asset controller (#2641)

* refactor: assetId => id

* chore: open api

* chore: remove unused dto

* fix(web): assetId => id

* fix: web test
This commit is contained in:
Jason Rasmussen 2023-06-01 22:19:25 -04:00 committed by GitHub
parent 422ad20641
commit a9fb1d435a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 111 additions and 123 deletions

BIN
mobile/openapi/README.md generated

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -54,7 +54,7 @@ import FileNotEmptyValidator from '../validation/file-not-empty-validator';
import { RemoveAssetsDto } from '../album/dto/remove-assets.dto'; import { RemoveAssetsDto } from '../album/dto/remove-assets.dto';
import { AssetBulkUploadCheckDto } from './dto/asset-check.dto'; import { AssetBulkUploadCheckDto } from './dto/asset-check.dto';
import { AssetBulkUploadCheckResponseDto } from './response-dto/asset-check-response.dto'; import { AssetBulkUploadCheckResponseDto } from './response-dto/asset-check-response.dto';
import { AssetIdDto } from './dto/asset-id.dto'; import { UUIDParamDto } from '../../controllers/dto/uuid-param.dto';
import { DeviceIdDto } from './dto/device-id.dto'; import { DeviceIdDto } from './dto/device-id.dto';
import { handleDownload } from '../../app.utils'; import { handleDownload } from '../../app.utils';
@ -114,14 +114,14 @@ export class AssetController {
} }
@SharedLinkRoute() @SharedLinkRoute()
@Get('/download/:assetId') @Get('/download/:id')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } }) @ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
async downloadFile( async downloadFile(
@GetAuthUser() authUser: AuthUserDto, @GetAuthUser() authUser: AuthUserDto,
@Response({ passthrough: true }) res: Res, @Response({ passthrough: true }) res: Res,
@Param() { assetId }: AssetIdDto, @Param() { id }: UUIDParamDto,
) { ) {
return this.assetService.downloadFile(authUser, assetId).then(asStreamableFile); return this.assetService.downloadFile(authUser, id).then(asStreamableFile);
} }
@SharedLinkRoute() @SharedLinkRoute()
@ -153,7 +153,7 @@ export class AssetController {
} }
@SharedLinkRoute() @SharedLinkRoute()
@Get('/file/:assetId') @Get('/file/:id')
@Header('Cache-Control', 'max-age=31536000') @Header('Cache-Control', 'max-age=31536000')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } }) @ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
async serveFile( async serveFile(
@ -161,25 +161,25 @@ export class AssetController {
@Headers() headers: Record<string, string>, @Headers() headers: Record<string, string>,
@Response({ passthrough: true }) res: Res, @Response({ passthrough: true }) res: Res,
@Query(new ValidationPipe({ transform: true })) query: ServeFileDto, @Query(new ValidationPipe({ transform: true })) query: ServeFileDto,
@Param() { assetId }: AssetIdDto, @Param() { id }: UUIDParamDto,
) { ) {
await this.assetService.checkAssetsAccess(authUser, [assetId]); await this.assetService.checkAssetsAccess(authUser, [id]);
return this.assetService.serveFile(authUser, assetId, query, res, headers); return this.assetService.serveFile(authUser, id, query, res, headers);
} }
@SharedLinkRoute() @SharedLinkRoute()
@Get('/thumbnail/:assetId') @Get('/thumbnail/:id')
@Header('Cache-Control', 'max-age=31536000') @Header('Cache-Control', 'max-age=31536000')
@ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } }) @ApiOkResponse({ content: { 'application/octet-stream': { schema: { type: 'string', format: 'binary' } } } })
async getAssetThumbnail( async getAssetThumbnail(
@GetAuthUser() authUser: AuthUserDto, @GetAuthUser() authUser: AuthUserDto,
@Headers() headers: Record<string, string>, @Headers() headers: Record<string, string>,
@Response({ passthrough: true }) res: Res, @Response({ passthrough: true }) res: Res,
@Param() { assetId }: AssetIdDto, @Param() { id }: UUIDParamDto,
@Query(new ValidationPipe({ transform: true })) query: GetAssetThumbnailDto, @Query(new ValidationPipe({ transform: true })) query: GetAssetThumbnailDto,
) { ) {
await this.assetService.checkAssetsAccess(authUser, [assetId]); await this.assetService.checkAssetsAccess(authUser, [id]);
return this.assetService.getAssetThumbnail(assetId, query, res, headers); return this.assetService.getAssetThumbnail(id, query, res, headers);
} }
@Get('/curated-objects') @Get('/curated-objects')
@ -259,26 +259,23 @@ export class AssetController {
* Get a single asset's information * Get a single asset's information
*/ */
@SharedLinkRoute() @SharedLinkRoute()
@Get('/assetById/:assetId') @Get('/assetById/:id')
async getAssetById( async getAssetById(@GetAuthUser() authUser: AuthUserDto, @Param() { id }: UUIDParamDto): Promise<AssetResponseDto> {
@GetAuthUser() authUser: AuthUserDto, await this.assetService.checkAssetsAccess(authUser, [id]);
@Param() { assetId }: AssetIdDto, return await this.assetService.getAssetById(authUser, id);
): Promise<AssetResponseDto> {
await this.assetService.checkAssetsAccess(authUser, [assetId]);
return await this.assetService.getAssetById(authUser, assetId);
} }
/** /**
* Update an asset * Update an asset
*/ */
@Put('/:assetId') @Put('/:id')
async updateAsset( async updateAsset(
@GetAuthUser() authUser: AuthUserDto, @GetAuthUser() authUser: AuthUserDto,
@Param() { assetId }: AssetIdDto, @Param() { id }: UUIDParamDto,
@Body(ValidationPipe) dto: UpdateAssetDto, @Body(ValidationPipe) dto: UpdateAssetDto,
): Promise<AssetResponseDto> { ): Promise<AssetResponseDto> {
await this.assetService.checkAssetsAccess(authUser, [assetId], true); await this.assetService.checkAssetsAccess(authUser, [id], true);
return await this.assetService.updateAsset(authUser, assetId, dto); return await this.assetService.updateAsset(authUser, id, dto);
} }
@Delete('/') @Delete('/')

View File

@ -1,9 +0,0 @@
import { ApiProperty } from '@nestjs/swagger';
import { IsNotEmpty, IsUUID } from 'class-validator';
export class AssetIdDto {
@IsNotEmpty()
@IsUUID('4')
@ApiProperty({ format: 'uuid' })
assetId!: string;
}

View File

@ -2801,12 +2801,12 @@
] ]
} }
}, },
"/asset/download/{assetId}": { "/asset/download/{id}": {
"get": { "get": {
"operationId": "downloadFile", "operationId": "downloadFile",
"parameters": [ "parameters": [
{ {
"name": "assetId", "name": "id",
"required": true, "required": true,
"in": "path", "in": "path",
"schema": { "schema": {
@ -2966,7 +2966,7 @@
] ]
} }
}, },
"/asset/file/{assetId}": { "/asset/file/{id}": {
"get": { "get": {
"operationId": "serveFile", "operationId": "serveFile",
"parameters": [ "parameters": [
@ -2989,7 +2989,7 @@
} }
}, },
{ {
"name": "assetId", "name": "id",
"required": true, "required": true,
"in": "path", "in": "path",
"schema": { "schema": {
@ -3035,12 +3035,12 @@
] ]
} }
}, },
"/asset/thumbnail/{assetId}": { "/asset/thumbnail/{id}": {
"get": { "get": {
"operationId": "getAssetThumbnail", "operationId": "getAssetThumbnail",
"parameters": [ "parameters": [
{ {
"name": "assetId", "name": "id",
"required": true, "required": true,
"in": "path", "in": "path",
"schema": { "schema": {
@ -3563,13 +3563,13 @@
] ]
} }
}, },
"/asset/assetById/{assetId}": { "/asset/assetById/{id}": {
"get": { "get": {
"operationId": "getAssetById", "operationId": "getAssetById",
"description": "Get a single asset's information", "description": "Get a single asset's information",
"parameters": [ "parameters": [
{ {
"name": "assetId", "name": "id",
"required": true, "required": true,
"in": "path", "in": "path",
"schema": { "schema": {
@ -3614,13 +3614,13 @@
] ]
} }
}, },
"/asset/{assetId}": { "/asset/{id}": {
"put": { "put": {
"operationId": "updateAsset", "operationId": "updateAsset",
"description": "Update an asset", "description": "Update an asset",
"parameters": [ "parameters": [
{ {
"name": "assetId", "name": "id",
"required": true, "required": true,
"in": "path", "in": "path",
"schema": { "schema": {

View File

@ -4847,16 +4847,16 @@ export const AssetApiAxiosParamCreator = function (configuration?: Configuration
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
downloadFile: async (assetId: string, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => { downloadFile: async (id: string, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'assetId' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('downloadFile', 'assetId', assetId) assertParamExists('downloadFile', 'id', id)
const localVarPath = `/asset/download/{assetId}` const localVarPath = `/asset/download/{id}`
.replace(`{${"assetId"}}`, encodeURIComponent(String(assetId))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions; let baseOptions;
@ -5097,16 +5097,16 @@ export const AssetApiAxiosParamCreator = function (configuration?: Configuration
}, },
/** /**
* Get a single asset\'s information * Get a single asset\'s information
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetById: async (assetId: string, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => { getAssetById: async (id: string, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'assetId' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('getAssetById', 'assetId', assetId) assertParamExists('getAssetById', 'id', id)
const localVarPath = `/asset/assetById/{assetId}` const localVarPath = `/asset/assetById/{id}`
.replace(`{${"assetId"}}`, encodeURIComponent(String(assetId))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions; let baseOptions;
@ -5308,17 +5308,17 @@ export const AssetApiAxiosParamCreator = function (configuration?: Configuration
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {ThumbnailFormat} [format] * @param {ThumbnailFormat} [format]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetThumbnail: async (assetId: string, format?: ThumbnailFormat, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => { getAssetThumbnail: async (id: string, format?: ThumbnailFormat, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'assetId' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('getAssetThumbnail', 'assetId', assetId) assertParamExists('getAssetThumbnail', 'id', id)
const localVarPath = `/asset/thumbnail/{assetId}` const localVarPath = `/asset/thumbnail/{id}`
.replace(`{${"assetId"}}`, encodeURIComponent(String(assetId))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions; let baseOptions;
@ -5628,18 +5628,18 @@ export const AssetApiAxiosParamCreator = function (configuration?: Configuration
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {boolean} [isThumb] * @param {boolean} [isThumb]
* @param {boolean} [isWeb] * @param {boolean} [isWeb]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
serveFile: async (assetId: string, isThumb?: boolean, isWeb?: boolean, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => { serveFile: async (id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'assetId' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('serveFile', 'assetId', assetId) assertParamExists('serveFile', 'id', id)
const localVarPath = `/asset/file/{assetId}` const localVarPath = `/asset/file/{id}`
.replace(`{${"assetId"}}`, encodeURIComponent(String(assetId))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions; let baseOptions;
@ -5685,18 +5685,18 @@ export const AssetApiAxiosParamCreator = function (configuration?: Configuration
}, },
/** /**
* Update an asset * Update an asset
* @param {string} assetId * @param {string} id
* @param {UpdateAssetDto} updateAssetDto * @param {UpdateAssetDto} updateAssetDto
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
updateAsset: async (assetId: string, updateAssetDto: UpdateAssetDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => { updateAsset: async (id: string, updateAssetDto: UpdateAssetDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'assetId' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('updateAsset', 'assetId', assetId) assertParamExists('updateAsset', 'id', id)
// verify required parameter 'updateAssetDto' is not null or undefined // verify required parameter 'updateAssetDto' is not null or undefined
assertParamExists('updateAsset', 'updateAssetDto', updateAssetDto) assertParamExists('updateAsset', 'updateAssetDto', updateAssetDto)
const localVarPath = `/asset/{assetId}` const localVarPath = `/asset/{id}`
.replace(`{${"assetId"}}`, encodeURIComponent(String(assetId))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions; let baseOptions;
@ -5933,13 +5933,13 @@ export const AssetApiFp = function(configuration?: Configuration) {
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async downloadFile(assetId: string, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> { async downloadFile(id: string, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFile(assetId, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFile(id, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
/** /**
@ -5990,13 +5990,13 @@ export const AssetApiFp = function(configuration?: Configuration) {
}, },
/** /**
* Get a single asset\'s information * Get a single asset\'s information
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getAssetById(assetId: string, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AssetResponseDto>> { async getAssetById(id: string, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AssetResponseDto>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetById(assetId, key, options); const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetById(id, key, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
/** /**
@ -6039,14 +6039,14 @@ export const AssetApiFp = function(configuration?: Configuration) {
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {ThumbnailFormat} [format] * @param {ThumbnailFormat} [format]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async getAssetThumbnail(assetId: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> { async getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.getAssetThumbnail(assetId, 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);
}, },
/** /**
@ -6112,26 +6112,26 @@ export const AssetApiFp = function(configuration?: Configuration) {
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {boolean} [isThumb] * @param {boolean} [isThumb]
* @param {boolean} [isWeb] * @param {boolean} [isWeb]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async serveFile(assetId: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> { async serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.serveFile(assetId, 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);
}, },
/** /**
* Update an asset * Update an asset
* @param {string} assetId * @param {string} id
* @param {UpdateAssetDto} updateAssetDto * @param {UpdateAssetDto} updateAssetDto
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async updateAsset(assetId: string, updateAssetDto: UpdateAssetDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AssetResponseDto>> { async updateAsset(id: string, updateAssetDto: UpdateAssetDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AssetResponseDto>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.updateAsset(assetId, updateAssetDto, options); const localVarAxiosArgs = await localVarAxiosParamCreator.updateAsset(id, updateAssetDto, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
}, },
/** /**
@ -6225,13 +6225,13 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
downloadFile(assetId: string, key?: string, options?: any): AxiosPromise<File> { downloadFile(id: string, key?: string, options?: any): AxiosPromise<File> {
return localVarFp.downloadFile(assetId, key, options).then((request) => request(axios, basePath)); return localVarFp.downloadFile(id, key, options).then((request) => request(axios, basePath));
}, },
/** /**
* *
@ -6277,13 +6277,13 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
}, },
/** /**
* Get a single asset\'s information * Get a single asset\'s information
* @param {string} assetId * @param {string} id
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetById(assetId: string, key?: string, options?: any): AxiosPromise<AssetResponseDto> { getAssetById(id: string, key?: string, options?: any): AxiosPromise<AssetResponseDto> {
return localVarFp.getAssetById(assetId, key, options).then((request) => request(axios, basePath)); return localVarFp.getAssetById(id, key, options).then((request) => request(axios, basePath));
}, },
/** /**
* *
@ -6321,14 +6321,14 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {ThumbnailFormat} [format] * @param {ThumbnailFormat} [format]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
getAssetThumbnail(assetId: string, format?: ThumbnailFormat, key?: string, options?: any): AxiosPromise<File> { getAssetThumbnail(id: string, format?: ThumbnailFormat, key?: string, options?: any): AxiosPromise<File> {
return localVarFp.getAssetThumbnail(assetId, format, key, options).then((request) => request(axios, basePath)); return localVarFp.getAssetThumbnail(id, format, key, options).then((request) => request(axios, basePath));
}, },
/** /**
* *
@ -6387,25 +6387,25 @@ export const AssetApiFactory = function (configuration?: Configuration, basePath
}, },
/** /**
* *
* @param {string} assetId * @param {string} id
* @param {boolean} [isThumb] * @param {boolean} [isThumb]
* @param {boolean} [isWeb] * @param {boolean} [isWeb]
* @param {string} [key] * @param {string} [key]
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
serveFile(assetId: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: any): AxiosPromise<File> { serveFile(id: string, isThumb?: boolean, isWeb?: boolean, key?: string, options?: any): AxiosPromise<File> {
return localVarFp.serveFile(assetId, isThumb, isWeb, key, options).then((request) => request(axios, basePath)); return localVarFp.serveFile(id, isThumb, isWeb, key, options).then((request) => request(axios, basePath));
}, },
/** /**
* Update an asset * Update an asset
* @param {string} assetId * @param {string} id
* @param {UpdateAssetDto} updateAssetDto * @param {UpdateAssetDto} updateAssetDto
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
updateAsset(assetId: string, updateAssetDto: UpdateAssetDto, options?: any): AxiosPromise<AssetResponseDto> { updateAsset(id: string, updateAssetDto: UpdateAssetDto, options?: any): AxiosPromise<AssetResponseDto> {
return localVarFp.updateAsset(assetId, updateAssetDto, options).then((request) => request(axios, basePath)); return localVarFp.updateAsset(id, updateAssetDto, options).then((request) => request(axios, basePath));
}, },
/** /**
* *
@ -6541,7 +6541,7 @@ export interface AssetApiDownloadFileRequest {
* @type {string} * @type {string}
* @memberof AssetApiDownloadFile * @memberof AssetApiDownloadFile
*/ */
readonly assetId: string readonly id: string
/** /**
* *
@ -6653,7 +6653,7 @@ export interface AssetApiGetAssetByIdRequest {
* @type {string} * @type {string}
* @memberof AssetApiGetAssetById * @memberof AssetApiGetAssetById
*/ */
readonly assetId: string readonly id: string
/** /**
* *
@ -6702,7 +6702,7 @@ export interface AssetApiGetAssetThumbnailRequest {
* @type {string} * @type {string}
* @memberof AssetApiGetAssetThumbnail * @memberof AssetApiGetAssetThumbnail
*/ */
readonly assetId: string readonly id: string
/** /**
* *
@ -6807,7 +6807,7 @@ export interface AssetApiServeFileRequest {
* @type {string} * @type {string}
* @memberof AssetApiServeFile * @memberof AssetApiServeFile
*/ */
readonly assetId: string readonly id: string
/** /**
* *
@ -6842,7 +6842,7 @@ export interface AssetApiUpdateAssetRequest {
* @type {string} * @type {string}
* @memberof AssetApiUpdateAsset * @memberof AssetApiUpdateAsset
*/ */
readonly assetId: string readonly id: string
/** /**
* *
@ -7038,7 +7038,7 @@ export class AssetApi extends BaseAPI {
* @memberof AssetApi * @memberof AssetApi
*/ */
public downloadFile(requestParameters: AssetApiDownloadFileRequest, options?: AxiosRequestConfig) { public downloadFile(requestParameters: AssetApiDownloadFileRequest, options?: AxiosRequestConfig) {
return AssetApiFp(this.configuration).downloadFile(requestParameters.assetId, requestParameters.key, options).then((request) => request(this.axios, this.basePath)); return AssetApiFp(this.configuration).downloadFile(requestParameters.id, requestParameters.key, options).then((request) => request(this.axios, this.basePath));
} }
/** /**
@ -7092,7 +7092,7 @@ export class AssetApi extends BaseAPI {
* @memberof AssetApi * @memberof AssetApi
*/ */
public getAssetById(requestParameters: AssetApiGetAssetByIdRequest, options?: AxiosRequestConfig) { public getAssetById(requestParameters: AssetApiGetAssetByIdRequest, options?: AxiosRequestConfig) {
return AssetApiFp(this.configuration).getAssetById(requestParameters.assetId, requestParameters.key, options).then((request) => request(this.axios, this.basePath)); return AssetApiFp(this.configuration).getAssetById(requestParameters.id, requestParameters.key, options).then((request) => request(this.axios, this.basePath));
} }
/** /**
@ -7145,7 +7145,7 @@ export class AssetApi extends BaseAPI {
* @memberof AssetApi * @memberof AssetApi
*/ */
public getAssetThumbnail(requestParameters: AssetApiGetAssetThumbnailRequest, options?: AxiosRequestConfig) { public getAssetThumbnail(requestParameters: AssetApiGetAssetThumbnailRequest, options?: AxiosRequestConfig) {
return AssetApiFp(this.configuration).getAssetThumbnail(requestParameters.assetId, requestParameters.format, requestParameters.key, options).then((request) => request(this.axios, this.basePath)); return AssetApiFp(this.configuration).getAssetThumbnail(requestParameters.id, requestParameters.format, requestParameters.key, options).then((request) => request(this.axios, this.basePath));
} }
/** /**
@ -7220,7 +7220,7 @@ export class AssetApi extends BaseAPI {
* @memberof AssetApi * @memberof AssetApi
*/ */
public serveFile(requestParameters: AssetApiServeFileRequest, options?: AxiosRequestConfig) { public serveFile(requestParameters: AssetApiServeFileRequest, options?: AxiosRequestConfig) {
return AssetApiFp(this.configuration).serveFile(requestParameters.assetId, requestParameters.isThumb, requestParameters.isWeb, requestParameters.key, options).then((request) => request(this.axios, this.basePath)); return AssetApiFp(this.configuration).serveFile(requestParameters.id, requestParameters.isThumb, requestParameters.isWeb, requestParameters.key, options).then((request) => request(this.axios, this.basePath));
} }
/** /**
@ -7231,7 +7231,7 @@ export class AssetApi extends BaseAPI {
* @memberof AssetApi * @memberof AssetApi
*/ */
public updateAsset(requestParameters: AssetApiUpdateAssetRequest, options?: AxiosRequestConfig) { public updateAsset(requestParameters: AssetApiUpdateAssetRequest, options?: AxiosRequestConfig) {
return AssetApiFp(this.configuration).updateAsset(requestParameters.assetId, requestParameters.updateAssetDto, options).then((request) => request(this.axios, this.basePath)); return AssetApiFp(this.configuration).updateAsset(requestParameters.id, requestParameters.updateAssetDto, options).then((request) => request(this.axios, this.basePath));
} }
/** /**

View File

@ -87,7 +87,7 @@ describe('AlbumCard component', () => {
expect(apiMock.assetApi.getAssetThumbnail).toHaveBeenCalledTimes(1); expect(apiMock.assetApi.getAssetThumbnail).toHaveBeenCalledTimes(1);
expect(apiMock.assetApi.getAssetThumbnail).toHaveBeenCalledWith( expect(apiMock.assetApi.getAssetThumbnail).toHaveBeenCalledWith(
{ {
assetId: 'thumbnailIdOne', id: 'thumbnailIdOne',
format: ThumbnailFormat.Jpeg format: ThumbnailFormat.Jpeg
}, },
{ responseType: 'blob' } { responseType: 'blob' }

View File

@ -37,7 +37,7 @@
const { data } = await api.assetApi.getAssetThumbnail( const { data } = await api.assetApi.getAssetThumbnail(
{ {
assetId: thubmnailId, id: thubmnailId,
format: ThumbnailFormat.Jpeg format: ThumbnailFormat.Jpeg
}, },
{ {

View File

@ -138,7 +138,7 @@
$downloadAssets[imageFileName] = 0; $downloadAssets[imageFileName] = 0;
const { data, status } = await api.assetApi.downloadFile( const { data, status } = await api.assetApi.downloadFile(
{ assetId, key }, { id: assetId, key },
{ {
responseType: 'blob', responseType: 'blob',
onDownloadProgress: (progressEvent) => { onDownloadProgress: (progressEvent) => {
@ -216,7 +216,7 @@
const toggleFavorite = async () => { const toggleFavorite = async () => {
const { data } = await api.assetApi.updateAsset({ const { data } = await api.assetApi.updateAsset({
assetId: asset.id, id: asset.id,
updateAssetDto: { updateAssetDto: {
isFavorite: !asset.isFavorite isFavorite: !asset.isFavorite
} }
@ -269,7 +269,7 @@
const toggleArchive = async () => { const toggleArchive = async () => {
try { try {
const { data } = await api.assetApi.updateAsset({ const { data } = await api.assetApi.updateAsset({
assetId: asset.id, id: asset.id,
updateAssetDto: { updateAssetDto: {
isArchived: !asset.isArchived isArchived: !asset.isArchived
} }

View File

@ -22,7 +22,7 @@
$: { $: {
// Get latest description from server // Get latest description from server
if (asset.id) { if (asset.id) {
api.assetApi.getAssetById({ assetId: asset.id }).then((res) => { api.assetApi.getAssetById({ id: asset.id }).then((res) => {
people = res.data?.people || []; people = res.data?.people || [];
textarea.value = res.data?.exifInfo?.description || ''; textarea.value = res.data?.exifInfo?.description || '';
}); });
@ -66,7 +66,7 @@
dispatch('description-focus-out'); dispatch('description-focus-out');
try { try {
await api.assetApi.updateAsset({ await api.assetApi.updateAsset({
assetId: asset.id, id: asset.id,
updateAssetDto: { updateAssetDto: {
description: description description: description
} }

View File

@ -29,7 +29,7 @@
const loadAssetData = async () => { const loadAssetData = async () => {
try { try {
const { data } = await api.assetApi.serveFile( const { data } = await api.assetApi.serveFile(
{ assetId: asset.id, isThumb: false, isWeb: true, key: publicSharedKey }, { id: asset.id, isThumb: false, isWeb: true, key: publicSharedKey },
{ {
responseType: 'blob' responseType: 'blob'
} }

View File

@ -28,7 +28,7 @@
for (const asset of getAssets()) { for (const asset of getAssets()) {
if (asset.isArchived !== isArchived) { if (asset.isArchived !== isArchived) {
api.assetApi.updateAsset({ assetId: asset.id, updateAssetDto: { isArchived } }); api.assetApi.updateAsset({ id: asset.id, updateAssetDto: { isArchived } });
onAssetArchive(asset, isArchived); onAssetArchive(asset, isArchived);
cnt = cnt + 1; cnt = cnt + 1;

View File

@ -28,7 +28,7 @@
let cnt = 0; let cnt = 0;
for (const asset of getAssets()) { for (const asset of getAssets()) {
if (asset.isFavorite !== isFavorite) { if (asset.isFavorite !== isFavorite) {
api.assetApi.updateAsset({ assetId: asset.id, updateAssetDto: { isFavorite } }); api.assetApi.updateAsset({ id: asset.id, updateAssetDto: { isFavorite } });
onAssetFavorite(asset, isFavorite); onAssetFavorite(asset, isFavorite);
cnt = cnt + 1; cnt = cnt + 1;
} }

View File

@ -30,7 +30,7 @@
assetId = link.assets[0].id; assetId = link.assets[0].id;
} }
const { data } = await api.assetApi.getAssetById({ assetId }); const { data } = await api.assetApi.getAssetById({ id: assetId });
return data; return data;
}; };