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:
parent
422ad20641
commit
a9fb1d435a
BIN
mobile/openapi/README.md
generated
BIN
mobile/openapi/README.md
generated
Binary file not shown.
BIN
mobile/openapi/doc/AssetApi.md
generated
BIN
mobile/openapi/doc/AssetApi.md
generated
Binary file not shown.
BIN
mobile/openapi/lib/api/asset_api.dart
generated
BIN
mobile/openapi/lib/api/asset_api.dart
generated
Binary file not shown.
BIN
mobile/openapi/test/asset_api_test.dart
generated
BIN
mobile/openapi/test/asset_api_test.dart
generated
Binary file not shown.
@ -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('/')
|
||||||
|
@ -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;
|
|
||||||
}
|
|
@ -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": {
|
||||||
|
140
web/src/api/open-api/api.ts
generated
140
web/src/api/open-api/api.ts
generated
@ -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));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -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' }
|
||||||
|
@ -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
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -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
|
||||||
}
|
}
|
||||||
|
@ -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
|
||||||
}
|
}
|
||||||
|
@ -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'
|
||||||
}
|
}
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
}
|
}
|
||||||
|
@ -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;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user