mirror of
https://github.com/immich-app/immich.git
synced 2024-11-16 18:42:17 -07:00
292 lines
8.8 KiB
TypeScript
292 lines
8.8 KiB
TypeScript
import { AssetEntity, AssetType, ExifEntity } from '@app/infra/entities';
|
|
import { authStub } from './auth.stub';
|
|
import { fileStub } from './file.stub';
|
|
import { userStub } from './user.stub';
|
|
|
|
export const assetStub = {
|
|
noResizePath: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
originalFileName: 'IMG_123',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: 'upload/library/IMG_123.jpg',
|
|
resizePath: null,
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: '/uploads/user-id/webp/path.ext',
|
|
thumbhash: Buffer.from('blablabla', 'base64'),
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
faces: [],
|
|
sidecarPath: null,
|
|
isReadOnly: false,
|
|
}),
|
|
noWebpPath: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: 'upload/library/IMG_456.jpg',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: null,
|
|
thumbhash: Buffer.from('blablabla', 'base64'),
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'IMG_456',
|
|
faces: [],
|
|
sidecarPath: null,
|
|
isReadOnly: false,
|
|
exifInfo: {
|
|
fileSizeInByte: 123_000,
|
|
} as ExifEntity,
|
|
}),
|
|
noThumbhash: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: '/original/path.ext',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: '/uploads/user-id/webp/path.ext',
|
|
thumbhash: null,
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'asset-id.ext',
|
|
faces: [],
|
|
sidecarPath: null,
|
|
}),
|
|
image: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: '/original/path.jpg',
|
|
resizePath: '/uploads/user-id/thumbs/path.jpg',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: '/uploads/user-id/webp/path.ext',
|
|
thumbhash: Buffer.from('blablabla', 'base64'),
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'asset-id.jpg',
|
|
faces: [],
|
|
sidecarPath: null,
|
|
exifInfo: {
|
|
fileSizeInByte: 5_000,
|
|
} as ExifEntity,
|
|
}),
|
|
image1: Object.freeze<AssetEntity>({
|
|
id: 'asset-id-1',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: '/original/path.ext',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: '/uploads/user-id/webp/path.ext',
|
|
thumbhash: Buffer.from('blablabla', 'base64'),
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'asset-id.ext',
|
|
faces: [],
|
|
sidecarPath: null,
|
|
exifInfo: {
|
|
fileSizeInByte: 5_000,
|
|
} as ExifEntity,
|
|
}),
|
|
video: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
originalFileName: 'asset-id.ext',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: '/original/path.ext',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.VIDEO,
|
|
webpPath: null,
|
|
thumbhash: null,
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
faces: [],
|
|
sidecarPath: null,
|
|
exifInfo: {
|
|
fileSizeInByte: 100_000,
|
|
} as ExifEntity,
|
|
}),
|
|
livePhotoMotionAsset: Object.freeze({
|
|
id: 'live-photo-motion-asset',
|
|
originalPath: fileStub.livePhotoMotion.originalPath,
|
|
ownerId: authStub.user1.id,
|
|
type: AssetType.VIDEO,
|
|
isVisible: false,
|
|
fileModifiedAt: new Date('2022-06-19T23:41:36.910Z'),
|
|
fileCreatedAt: new Date('2022-06-19T23:41:36.910Z'),
|
|
exifInfo: {
|
|
fileSizeInByte: 100_000,
|
|
},
|
|
} as AssetEntity),
|
|
|
|
livePhotoStillAsset: Object.freeze({
|
|
id: 'live-photo-still-asset',
|
|
originalPath: fileStub.livePhotoStill.originalPath,
|
|
ownerId: authStub.user1.id,
|
|
type: AssetType.IMAGE,
|
|
livePhotoVideoId: 'live-photo-motion-asset',
|
|
isVisible: true,
|
|
fileModifiedAt: new Date('2022-06-19T23:41:36.910Z'),
|
|
fileCreatedAt: new Date('2022-06-19T23:41:36.910Z'),
|
|
exifInfo: {
|
|
fileSizeInByte: 25_000,
|
|
},
|
|
} as AssetEntity),
|
|
|
|
withLocation: Object.freeze<AssetEntity>({
|
|
id: 'asset-with-favorite-id',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
originalPath: '/original/path.ext',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
sidecarPath: null,
|
|
type: AssetType.IMAGE,
|
|
webpPath: null,
|
|
thumbhash: null,
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: false,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'asset-id.ext',
|
|
faces: [],
|
|
exifInfo: {
|
|
latitude: 100,
|
|
longitude: 100,
|
|
fileSizeInByte: 23_456,
|
|
} as ExifEntity,
|
|
}),
|
|
sidecar: Object.freeze<AssetEntity>({
|
|
id: 'asset-id',
|
|
deviceAssetId: 'device-asset-id',
|
|
fileModifiedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
fileCreatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
owner: userStub.user1,
|
|
ownerId: 'user-id',
|
|
deviceId: 'device-id',
|
|
originalPath: '/original/path.ext',
|
|
resizePath: '/uploads/user-id/thumbs/path.ext',
|
|
thumbhash: null,
|
|
checksum: Buffer.from('file hash', 'utf8'),
|
|
type: AssetType.IMAGE,
|
|
webpPath: null,
|
|
encodedVideoPath: null,
|
|
createdAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
updatedAt: new Date('2023-02-23T05:06:29.716Z'),
|
|
isFavorite: true,
|
|
isArchived: false,
|
|
isReadOnly: false,
|
|
duration: null,
|
|
isVisible: true,
|
|
livePhotoVideo: null,
|
|
livePhotoVideoId: null,
|
|
tags: [],
|
|
sharedLinks: [],
|
|
originalFileName: 'asset-id.ext',
|
|
faces: [],
|
|
sidecarPath: '/original/path.ext.xmp',
|
|
}),
|
|
};
|