refactor: repositories (#16036)
This commit is contained in:
@@ -5,12 +5,12 @@ import { UploadFieldName } from 'src/dtos/asset-media.dto';
|
||||
import { AuthDto } from 'src/dtos/auth.dto';
|
||||
import { AssetFileEntity } from 'src/entities/asset-files.entity';
|
||||
import { AssetFileType, AssetType, Permission } from 'src/enum';
|
||||
import { IAssetRepository } from 'src/interfaces/asset.interface';
|
||||
import { IEventRepository } from 'src/interfaces/event.interface';
|
||||
import { IPartnerRepository } from 'src/interfaces/partner.interface';
|
||||
import { AuthRequest } from 'src/middleware/auth.guard';
|
||||
import { ImmichFile } from 'src/middleware/file-upload.interceptor';
|
||||
import { AccessRepository } from 'src/repositories/access.repository';
|
||||
import { AssetRepository } from 'src/repositories/asset.repository';
|
||||
import { PartnerRepository } from 'src/repositories/partner.repository';
|
||||
import { UploadFile } from 'src/services/asset-media.service';
|
||||
import { checkAccess } from 'src/utils/access';
|
||||
|
||||
@@ -111,7 +111,7 @@ export const removeAssets = async (
|
||||
|
||||
export type PartnerIdOptions = {
|
||||
userId: string;
|
||||
repository: IPartnerRepository;
|
||||
repository: PartnerRepository;
|
||||
/** only include partners with `inTimeline: true` */
|
||||
timelineEnabled?: boolean;
|
||||
};
|
||||
@@ -139,7 +139,7 @@ export const getMyPartnerIds = async ({ userId, repository, timelineEnabled }: P
|
||||
return [...partnerIds];
|
||||
};
|
||||
|
||||
export type AssetHookRepositories = { asset: IAssetRepository; event: IEventRepository };
|
||||
export type AssetHookRepositories = { asset: AssetRepository; event: IEventRepository };
|
||||
|
||||
export const onBeforeLink = async (
|
||||
{ asset: assetRepository, event: eventRepository }: AssetHookRepositories,
|
||||
|
||||
@@ -6,8 +6,8 @@ import * as _ from 'lodash';
|
||||
import { SystemConfig, defaults } from 'src/config';
|
||||
import { SystemConfigDto } from 'src/dtos/system-config.dto';
|
||||
import { SystemMetadataKey } from 'src/enum';
|
||||
import { DatabaseLock } from 'src/interfaces/database.interface';
|
||||
import { ConfigRepository } from 'src/repositories/config.repository';
|
||||
import { DatabaseLock } from 'src/repositories/database.repository';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { SystemMetadataRepository } from 'src/repositories/system-metadata.repository';
|
||||
import { DeepPartial } from 'src/types';
|
||||
|
||||
@@ -4,8 +4,8 @@ import { access, constants } from 'node:fs/promises';
|
||||
import { basename, extname, isAbsolute } from 'node:path';
|
||||
import { promisify } from 'node:util';
|
||||
import { CacheControl } from 'src/enum';
|
||||
import { ImmichReadStream } from 'src/interfaces/storage.interface';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { ImmichReadStream } from 'src/repositories/storage.repository';
|
||||
import { isConnectionAborted } from 'src/utils/misc';
|
||||
|
||||
export function getFileNameWithoutExtension(path: string): string {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { TagEntity } from 'src/entities/tag.entity';
|
||||
import { ITagRepository } from 'src/interfaces/tag.interface';
|
||||
import { TagRepository } from 'src/repositories/tag.repository';
|
||||
|
||||
type UpsertRequest = { userId: string; tags: string[] };
|
||||
export const upsertTags = async (repository: ITagRepository, { userId, tags }: UpsertRequest) => {
|
||||
export const upsertTags = async (repository: TagRepository, { userId, tags }: UpsertRequest) => {
|
||||
tags = [...new Set(tags)];
|
||||
|
||||
const results: TagEntity[] = [];
|
||||
|
||||
Reference in New Issue
Block a user