mirror of
https://github.com/immich-app/immich.git
synced 2025-01-01 16:41:59 +00:00
4a2a7b7735
Album update jobs will now wait five minutes to send. If a new image is added while that job is pending, the old job will be cancelled, and a new one will be enqueued for a minute. This is to prevent a flood of notifications by dragging in images directly to the album, which adds them to the album one at a time. Album updates now include a list of users to email, which is generally everybody except the updater. If somebody else updates the album within that minute, both people will get an album update email in a minute, as they both added images and the other should be notified.
96 lines
2.5 KiB
TypeScript
96 lines
2.5 KiB
TypeScript
import { UserEntity } from 'src/entities/user.entity';
|
|
import { UserAvatarColor, UserMetadataKey } from 'src/enum';
|
|
import { authStub } from 'test/fixtures/auth.stub';
|
|
|
|
export const userStub = {
|
|
admin: Object.freeze<UserEntity>({
|
|
...authStub.admin.user,
|
|
password: 'admin_password',
|
|
name: 'admin_name',
|
|
id: 'admin_id',
|
|
storageLabel: 'admin',
|
|
oauthId: '',
|
|
shouldChangePassword: false,
|
|
profileImagePath: '',
|
|
createdAt: new Date('2021-01-01'),
|
|
deletedAt: null,
|
|
updatedAt: new Date('2021-01-01'),
|
|
tags: [],
|
|
assets: [],
|
|
metadata: [],
|
|
quotaSizeInBytes: null,
|
|
quotaUsageInBytes: 0,
|
|
}),
|
|
user1: Object.freeze<UserEntity>({
|
|
...authStub.user1.user,
|
|
password: 'immich_password',
|
|
name: 'immich_name',
|
|
storageLabel: null,
|
|
oauthId: '',
|
|
shouldChangePassword: false,
|
|
profileImagePath: '',
|
|
createdAt: new Date('2021-01-01'),
|
|
deletedAt: null,
|
|
updatedAt: new Date('2021-01-01'),
|
|
tags: [],
|
|
assets: [],
|
|
metadata: [
|
|
{
|
|
user: authStub.user1.user,
|
|
userId: authStub.user1.user.id,
|
|
key: UserMetadataKey.PREFERENCES,
|
|
value: { avatar: { color: UserAvatarColor.PRIMARY } },
|
|
},
|
|
],
|
|
quotaSizeInBytes: null,
|
|
quotaUsageInBytes: 0,
|
|
}),
|
|
user2: Object.freeze<UserEntity>({
|
|
...authStub.user2.user,
|
|
password: 'immich_password',
|
|
name: 'immich_name',
|
|
storageLabel: null,
|
|
oauthId: '',
|
|
shouldChangePassword: false,
|
|
profileImagePath: '',
|
|
createdAt: new Date('2021-01-01'),
|
|
deletedAt: null,
|
|
updatedAt: new Date('2021-01-01'),
|
|
tags: [],
|
|
assets: [],
|
|
quotaSizeInBytes: null,
|
|
quotaUsageInBytes: 0,
|
|
}),
|
|
storageLabel: Object.freeze<UserEntity>({
|
|
...authStub.user1.user,
|
|
password: 'immich_password',
|
|
name: 'immich_name',
|
|
storageLabel: 'label-1',
|
|
oauthId: '',
|
|
shouldChangePassword: false,
|
|
profileImagePath: '',
|
|
createdAt: new Date('2021-01-01'),
|
|
deletedAt: null,
|
|
updatedAt: new Date('2021-01-01'),
|
|
tags: [],
|
|
assets: [],
|
|
quotaSizeInBytes: null,
|
|
quotaUsageInBytes: 0,
|
|
}),
|
|
profilePath: Object.freeze<UserEntity>({
|
|
...authStub.user1.user,
|
|
password: 'immich_password',
|
|
name: 'immich_name',
|
|
storageLabel: 'label-1',
|
|
oauthId: '',
|
|
shouldChangePassword: false,
|
|
profileImagePath: '/path/to/profile.jpg',
|
|
createdAt: new Date('2021-01-01'),
|
|
deletedAt: null,
|
|
updatedAt: new Date('2021-01-01'),
|
|
tags: [],
|
|
assets: [],
|
|
quotaSizeInBytes: null,
|
|
quotaUsageInBytes: 0,
|
|
}),
|
|
};
|