refactor(server): flatten infra folders (#2120)

* refactor: flatten infra folders

* fix: database migrations

* fix: test related import

* fix: github actions workflow

* chore: rename schemas to typesense-schemas
This commit is contained in:
Jason Rasmussen
2023-03-30 15:38:55 -04:00
committed by GitHub
parent 468e620372
commit 34d300d1da
176 changed files with 185 additions and 176 deletions

View File

@@ -1,4 +1,4 @@
import { AlbumEntity } from '@app/infra/db/entities';
import { AlbumEntity } from '@app/infra/entities';
export const IAlbumRepository = 'IAlbumRepository';

View File

@@ -1,4 +1,4 @@
import { AlbumEntity } from '@app/infra/db/entities';
import { AlbumEntity } from '@app/infra/entities';
import { Inject, Injectable } from '@nestjs/common';
import { IAssetRepository } from '../asset';
import { AuthUserDto } from '../auth';

View File

@@ -1,4 +1,4 @@
import { AlbumEntity } from '@app/infra/db/entities';
import { AlbumEntity } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
import { AssetResponseDto, mapAsset } from '../../asset';
import { mapUser, UserResponseDto } from '../../user';

View File

@@ -1,4 +1,4 @@
import { APIKeyEntity } from '@app/infra/db/entities';
import { APIKeyEntity } from '@app/infra/entities';
export const IKeyRepository = 'IKeyRepository';

View File

@@ -1,4 +1,4 @@
import { APIKeyEntity } from '@app/infra/db/entities';
import { APIKeyEntity } from '@app/infra/entities';
export class APIKeyResponseDto {
id!: string;

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType } from '@app/infra/db/entities';
import { AssetEntity, AssetType } from '@app/infra/entities';
import { IJobRepository, JobName } from '../job';
import { AssetSearchOptions, IAssetRepository } from './asset.repository';

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType } from '@app/infra/db/entities';
import { AssetEntity, AssetType } from '@app/infra/entities';
export interface AssetSearchOptions {
isVisible?: boolean;

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType } from '@app/infra/db/entities';
import { AssetEntity, AssetType } from '@app/infra/entities';
import { assetEntityStub, newAssetRepositoryMock, newJobRepositoryMock } from '../../test';
import { AssetService, IAssetRepository } from '../asset';
import { IJobRepository, JobName } from '../job';

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType } from '@app/infra/db/entities';
import { AssetEntity, AssetType } from '@app/infra/entities';
import { Inject } from '@nestjs/common';
import { IAssetUploadedJob, IJobRepository, JobName } from '../job';
import { AssetCore } from './asset.core';

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType } from '@app/infra/db/entities';
import { AssetEntity, AssetType } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
import { mapTag, TagResponseDto } from '../../tag';
import { ExifResponseDto, mapExif } from './exif-response.dto';

View File

@@ -1,4 +1,4 @@
import { ExifEntity } from '@app/infra/db/entities';
import { ExifEntity } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
export class ExifResponseDto {

View File

@@ -1,4 +1,4 @@
import { SmartInfoEntity } from '@app/infra/db/entities';
import { SmartInfoEntity } from '@app/infra/entities';
export class SmartInfoResponseDto {
tags?: string[] | null;

View File

@@ -1,4 +1,4 @@
import { SystemConfig, UserEntity } from '@app/infra/db/entities';
import { SystemConfig, UserEntity } from '@app/infra/entities';
import { ISystemConfigRepository } from '../system-config';
import { SystemConfigCore } from '../system-config/system-config.core';
import { AuthType, IMMICH_ACCESS_COOKIE, IMMICH_AUTH_TYPE_COOKIE } from './auth.constant';

View File

@@ -1,4 +1,4 @@
import { SystemConfig, UserEntity } from '@app/infra/db/entities';
import { SystemConfig, UserEntity } from '@app/infra/entities';
import { BadRequestException, UnauthorizedException } from '@nestjs/common';
import { IncomingHttpHeaders } from 'http';
import { generators, Issuer } from 'openid-client';

View File

@@ -1,4 +1,4 @@
import { SystemConfig } from '@app/infra/db/entities';
import { SystemConfig } from '@app/infra/entities';
import {
BadRequestException,
Inject,

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
export class AdminSignupResponseDto {
id!: string;

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
import { ApiResponseProperty } from '@nestjs/swagger';
export class LoginResponseDto {

View File

@@ -1,4 +1,4 @@
import { DeviceInfoEntity } from '@app/infra/db/entities';
import { DeviceInfoEntity } from '@app/infra/entities';
import { IDeviceInfoRepository } from './device-info.repository';
type UpsertKeys = Pick<DeviceInfoEntity, 'deviceId' | 'userId'>;

View File

@@ -1,4 +1,4 @@
import { DeviceInfoEntity } from '@app/infra/db/entities';
import { DeviceInfoEntity } from '@app/infra/entities';
export const IDeviceInfoRepository = 'IDeviceInfoRepository';

View File

@@ -1,4 +1,4 @@
import { DeviceInfoEntity, DeviceType } from '@app/infra/db/entities';
import { DeviceInfoEntity, DeviceType } from '@app/infra/entities';
import { authStub, newDeviceInfoRepositoryMock } from '../../test';
import { IDeviceInfoRepository } from './device-info.repository';
import { DeviceInfoService } from './device-info.service';

View File

@@ -1,5 +1,5 @@
import { IsNotEmpty, IsOptional } from 'class-validator';
import { DeviceType } from '@app/infra/db/entities';
import { DeviceType } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
export class UpsertDeviceInfoDto {

View File

@@ -1,4 +1,4 @@
import { DeviceInfoEntity, DeviceType } from '@app/infra/db/entities';
import { DeviceInfoEntity, DeviceType } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
export class DeviceInfoResponseDto {

View File

@@ -1,4 +1,4 @@
import { AlbumEntity, AssetEntity, UserEntity } from '@app/infra/db/entities';
import { AlbumEntity, AssetEntity, UserEntity } from '@app/infra/entities';
export interface IBaseJob {
force?: boolean;

View File

@@ -1,4 +1,4 @@
import { AssetType } from '@app/infra/db/entities';
import { AssetType } from '@app/infra/entities';
import { Inject, Injectable, Logger } from '@nestjs/common';
import { join } from 'path';
import { IAssetRepository, mapAsset, WithoutProperty } from '../asset';

View File

@@ -1,4 +1,4 @@
import { SystemConfig } from '@app/infra/db/entities';
import { SystemConfig } from '@app/infra/entities';
import { BadRequestException, Injectable, Logger } from '@nestjs/common';
import { ClientMetadata, custom, generators, Issuer, UserinfoResponse } from 'openid-client';
import { ISystemConfigRepository } from '../system-config';

View File

@@ -1,4 +1,4 @@
import { SystemConfig, UserEntity } from '@app/infra/db/entities';
import { SystemConfig, UserEntity } from '@app/infra/entities';
import { BadRequestException } from '@nestjs/common';
import { generators, Issuer } from 'openid-client';
import {

View File

@@ -1,4 +1,4 @@
import { SystemConfig } from '@app/infra/db/entities';
import { SystemConfig } from '@app/infra/entities';
import { BadRequestException, Inject, Injectable, Logger } from '@nestjs/common';
import { AuthType, AuthUserDto, LoginResponseDto } from '../auth';
import { AuthCore } from '../auth/auth.core';

View File

@@ -1,4 +1,4 @@
import { AssetType } from '@app/infra/db/entities';
import { AssetType } from '@app/infra/entities';
import { Transform } from 'class-transformer';
import { IsArray, IsBoolean, IsEnum, IsNotEmpty, IsOptional, IsString } from 'class-validator';
import { toBoolean } from '../../../../../apps/immich/src/utils/transform.util';

View File

@@ -1,4 +1,4 @@
import { AlbumEntity, AssetEntity, AssetType } from '@app/infra/db/entities';
import { AlbumEntity, AssetEntity, AssetType } from '@app/infra/entities';
export enum SearchCollection {
ASSETS = 'assets',

View File

@@ -1,4 +1,4 @@
import { AlbumEntity, AssetEntity } from '@app/infra/db/entities';
import { AlbumEntity, AssetEntity } from '@app/infra/entities';
import { BadRequestException, Inject, Injectable, Logger } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { mapAlbum } from '../album';

View File

@@ -1,4 +1,4 @@
import { AlbumEntity, AssetEntity, SharedLinkType } from '@app/infra/db/entities';
import { AlbumEntity, AssetEntity, SharedLinkType } from '@app/infra/entities';
export class CreateSharedLinkDto {
description?: string;

View File

@@ -1,4 +1,4 @@
import { SharedLinkEntity, SharedLinkType } from '@app/infra/db/entities';
import { SharedLinkEntity, SharedLinkType } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
import _ from 'lodash';
import { AlbumResponseDto, mapAlbumExcludeAssetInfo } from '../../album';

View File

@@ -1,4 +1,4 @@
import { AssetEntity, SharedLinkEntity } from '@app/infra/db/entities';
import { AssetEntity, SharedLinkEntity } from '@app/infra/entities';
import {
BadRequestException,
ForbiddenException,

View File

@@ -1,4 +1,4 @@
import { SharedLinkEntity } from '@app/infra/db/entities';
import { SharedLinkEntity } from '@app/infra/entities';
export const ISharedLinkRepository = 'ISharedLinkRepository';

View File

@@ -1,4 +1,4 @@
import { SmartInfoEntity } from '@app/infra/db/entities';
import { SmartInfoEntity } from '@app/infra/entities';
export const ISmartInfoRepository = 'ISmartInfoRepository';

View File

@@ -1,4 +1,4 @@
import { AssetEntity } from '@app/infra/db/entities';
import { AssetEntity } from '@app/infra/entities';
import {
assetEntityStub,
newAssetRepositoryMock,

View File

@@ -1,4 +1,4 @@
import { AssetEntity, AssetType, SystemConfig } from '@app/infra/db/entities';
import { AssetEntity, AssetType, SystemConfig } from '@app/infra/entities';
import { Logger } from '@nestjs/common';
import handlebar from 'handlebars';
import * as luxon from 'luxon';

View File

@@ -1,4 +1,4 @@
import { AssetEntity, SystemConfig } from '@app/infra/db/entities';
import { AssetEntity, SystemConfig } from '@app/infra/entities';
import { Inject, Injectable, Logger } from '@nestjs/common';
import { IAssetRepository } from '../asset/asset.repository';
import { APP_MEDIA_LOCATION } from '../domain.constant';

View File

@@ -1,5 +1,5 @@
import { IsEnum, IsString } from 'class-validator';
import { TranscodePreset } from '@app/infra/db/entities';
import { TranscodePreset } from '@app/infra/entities';
export class SystemConfigFFmpegDto {
@IsString()

View File

@@ -1,4 +1,4 @@
import { SystemConfig } from '@app/infra/db/entities';
import { SystemConfig } from '@app/infra/entities';
import { ValidateNested } from 'class-validator';
import { SystemConfigFFmpegDto } from './system-config-ffmpeg.dto';
import { SystemConfigOAuthDto } from './system-config-oauth.dto';

View File

@@ -1,4 +1,4 @@
import { SystemConfig, SystemConfigEntity, SystemConfigKey, TranscodePreset } from '@app/infra/db/entities';
import { SystemConfig, SystemConfigEntity, SystemConfigKey, TranscodePreset } from '@app/infra/entities';
import { BadRequestException, Injectable, Logger } from '@nestjs/common';
import * as _ from 'lodash';
import { Subject } from 'rxjs';

View File

@@ -1,4 +1,4 @@
import { SystemConfigEntity } from '@app/infra/db/entities';
import { SystemConfigEntity } from '@app/infra/entities';
export const ISystemConfigRepository = 'ISystemConfigRepository';

View File

@@ -1,4 +1,4 @@
import { SystemConfigEntity, SystemConfigKey, TranscodePreset } from '@app/infra/db/entities';
import { SystemConfigEntity, SystemConfigKey, TranscodePreset } from '@app/infra/entities';
import { BadRequestException } from '@nestjs/common';
import { newJobRepositoryMock, newSystemConfigRepositoryMock, systemConfigStub } from '../../test';
import { IJobRepository, JobName } from '../job';

View File

@@ -1,4 +1,4 @@
import { TagEntity, TagType } from '@app/infra/db/entities';
import { TagEntity, TagType } from '@app/infra/entities';
import { ApiProperty } from '@nestjs/swagger';
export class TagResponseDto {

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
import { Injectable, UnauthorizedException } from '@nestjs/common';
import { ICryptoRepository } from '../crypto';
import { IUserTokenRepository } from './user-token.repository';

View File

@@ -1,4 +1,4 @@
import { UserTokenEntity } from '@app/infra/db/entities';
import { UserTokenEntity } from '@app/infra/entities';
export const IUserTokenRepository = 'IUserTokenRepository';

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
export class UserResponseDto {
id!: string;

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
import {
BadRequestException,
ForbiddenException,

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
export interface UserListFilter {
excludeId?: string;

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
import { BadRequestException, ForbiddenException, NotFoundException } from '@nestjs/common';
import { when } from 'jest-when';
import {

View File

@@ -1,4 +1,4 @@
import { UserEntity } from '@app/infra/db/entities';
import { UserEntity } from '@app/infra/entities';
import { BadRequestException, Inject, Injectable, Logger, NotFoundException } from '@nestjs/common';
import { randomBytes } from 'crypto';
import { ReadStream } from 'fs';

View File

@@ -9,7 +9,7 @@ import {
TranscodePreset,
UserEntity,
UserTokenEntity,
} from '@app/infra/db/entities';
} from '@app/infra/entities';
import {
AlbumResponseDto,
AssetResponseDto,