feat: NestJS 12 and ESM (#31237)
This commit is contained in:
+76
-76
@@ -12,82 +12,82 @@ import { ZodSerializerInterceptor, ZodValidationPipe } from 'nestjs-zod';
|
||||
import { ChildProcessWithoutNullStreams } from 'node:child_process';
|
||||
import { Duplex, Readable, Writable } from 'node:stream';
|
||||
import { PNG } from 'pngjs';
|
||||
import { UploadFieldName } from 'src/dtos/asset-media.dto';
|
||||
import { AssetUploadInterceptor } from 'src/middleware/asset-upload.interceptor';
|
||||
import { AuthGuard } from 'src/middleware/auth.guard';
|
||||
import { FileUploadInterceptor } from 'src/middleware/file-upload.interceptor';
|
||||
import { GlobalExceptionFilter } from 'src/middleware/global-exception.filter';
|
||||
import { AccessRepository } from 'src/repositories/access.repository';
|
||||
import { ActivityRepository } from 'src/repositories/activity.repository';
|
||||
import { AlbumUserRepository } from 'src/repositories/album-user.repository';
|
||||
import { AlbumRepository } from 'src/repositories/album.repository';
|
||||
import { ApiKeyRepository } from 'src/repositories/api-key.repository';
|
||||
import { AppRepository } from 'src/repositories/app.repository';
|
||||
import { AssetEditRepository } from 'src/repositories/asset-edit.repository';
|
||||
import { AssetFileRepository } from 'src/repositories/asset-file.repository';
|
||||
import { AssetJobRepository } from 'src/repositories/asset-job.repository';
|
||||
import { AssetRepository } from 'src/repositories/asset.repository';
|
||||
import { ClusterGroupRepository } from 'src/repositories/cluster-group.repository';
|
||||
import { ConfigRepository } from 'src/repositories/config.repository';
|
||||
import { CronRepository } from 'src/repositories/cron.repository';
|
||||
import { CryptoRepository } from 'src/repositories/crypto.repository';
|
||||
import { DatabaseRepository } from 'src/repositories/database.repository';
|
||||
import { DownloadRepository } from 'src/repositories/download.repository';
|
||||
import { DuplicateRepository } from 'src/repositories/duplicate.repository';
|
||||
import { EmailRepository } from 'src/repositories/email.repository';
|
||||
import { EventRepository } from 'src/repositories/event.repository';
|
||||
import { IntegrityRepository } from 'src/repositories/integrity.repository';
|
||||
import { JobRepository } from 'src/repositories/job.repository';
|
||||
import { LibraryRepository } from 'src/repositories/library.repository';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { MachineLearningRepository } from 'src/repositories/machine-learning.repository';
|
||||
import { MapRepository } from 'src/repositories/map.repository';
|
||||
import { MediaRepository } from 'src/repositories/media.repository';
|
||||
import { MemoryRepository } from 'src/repositories/memory.repository';
|
||||
import { MetadataRepository } from 'src/repositories/metadata.repository';
|
||||
import { MoveRepository } from 'src/repositories/move.repository';
|
||||
import { NotificationRepository } from 'src/repositories/notification.repository';
|
||||
import { OAuthRepository } from 'src/repositories/oauth.repository';
|
||||
import { OcrRepository } from 'src/repositories/ocr.repository';
|
||||
import { PartnerRepository } from 'src/repositories/partner.repository';
|
||||
import { PersonRepository } from 'src/repositories/person.repository';
|
||||
import { PluginRepository } from 'src/repositories/plugin.repository';
|
||||
import { ProcessRepository } from 'src/repositories/process.repository';
|
||||
import { SearchRepository } from 'src/repositories/search.repository';
|
||||
import { ServerInfoRepository } from 'src/repositories/server-info.repository';
|
||||
import { SessionRepository } from 'src/repositories/session.repository';
|
||||
import { SharedLinkAssetRepository } from 'src/repositories/shared-link-asset.repository';
|
||||
import { SharedLinkRepository } from 'src/repositories/shared-link.repository';
|
||||
import { StackRepository } from 'src/repositories/stack.repository';
|
||||
import { StorageRepository } from 'src/repositories/storage.repository';
|
||||
import { SyncCheckpointRepository } from 'src/repositories/sync-checkpoint.repository';
|
||||
import { SyncRepository } from 'src/repositories/sync.repository';
|
||||
import { SystemMetadataRepository } from 'src/repositories/system-metadata.repository';
|
||||
import { TagRepository } from 'src/repositories/tag.repository';
|
||||
import { TelemetryRepository } from 'src/repositories/telemetry.repository';
|
||||
import { TrashRepository } from 'src/repositories/trash.repository';
|
||||
import { UserRepository } from 'src/repositories/user.repository';
|
||||
import { VersionHistoryRepository } from 'src/repositories/version-history.repository';
|
||||
import { VideoStreamRepository } from 'src/repositories/video-stream.repository';
|
||||
import { ViewRepository } from 'src/repositories/view-repository';
|
||||
import { WebsocketRepository } from 'src/repositories/websocket.repository';
|
||||
import { WorkflowRepository } from 'src/repositories/workflow.repository';
|
||||
import { DB } from 'src/schema';
|
||||
import { AuthService } from 'src/services/auth.service';
|
||||
import { BaseService } from 'src/services/base.service';
|
||||
import { RepositoryInterface } from 'src/types';
|
||||
import { getKyselyConfig } from 'src/utils/database';
|
||||
import { ClusterGroupFactory } from 'test/factories/cluster-group.factory';
|
||||
import { IAccessRepositoryMock, newAccessRepositoryMock } from 'test/repositories/access.repository.mock';
|
||||
import { newAssetRepositoryMock } from 'test/repositories/asset.repository.mock';
|
||||
import { newConfigRepositoryMock } from 'test/repositories/config.repository.mock';
|
||||
import { newCryptoRepositoryMock } from 'test/repositories/crypto.repository.mock';
|
||||
import { newJobRepositoryMock } from 'test/repositories/job.repository.mock';
|
||||
import { newMediaRepositoryMock } from 'test/repositories/media.repository.mock';
|
||||
import { newMetadataRepositoryMock } from 'test/repositories/metadata.repository.mock';
|
||||
import { newStorageRepositoryMock } from 'test/repositories/storage.repository.mock';
|
||||
import { newSystemMetadataRepositoryMock } from 'test/repositories/system-metadata.repository.mock';
|
||||
import { ITelemetryRepositoryMock, newTelemetryRepositoryMock } from 'test/repositories/telemetry.repository.mock';
|
||||
import { UploadFieldName } from 'src/dtos/asset-media.dto.js';
|
||||
import { AssetUploadInterceptor } from 'src/middleware/asset-upload.interceptor.js';
|
||||
import { AuthGuard } from 'src/middleware/auth.guard.js';
|
||||
import { FileUploadInterceptor } from 'src/middleware/file-upload.interceptor.js';
|
||||
import { GlobalExceptionFilter } from 'src/middleware/global-exception.filter.js';
|
||||
import { AccessRepository } from 'src/repositories/access.repository.js';
|
||||
import { ActivityRepository } from 'src/repositories/activity.repository.js';
|
||||
import { AlbumUserRepository } from 'src/repositories/album-user.repository.js';
|
||||
import { AlbumRepository } from 'src/repositories/album.repository.js';
|
||||
import { ApiKeyRepository } from 'src/repositories/api-key.repository.js';
|
||||
import { AppRepository } from 'src/repositories/app.repository.js';
|
||||
import { AssetEditRepository } from 'src/repositories/asset-edit.repository.js';
|
||||
import { AssetFileRepository } from 'src/repositories/asset-file.repository.js';
|
||||
import { AssetJobRepository } from 'src/repositories/asset-job.repository.js';
|
||||
import { AssetRepository } from 'src/repositories/asset.repository.js';
|
||||
import { ClusterGroupRepository } from 'src/repositories/cluster-group.repository.js';
|
||||
import { ConfigRepository } from 'src/repositories/config.repository.js';
|
||||
import { CronRepository } from 'src/repositories/cron.repository.js';
|
||||
import { CryptoRepository } from 'src/repositories/crypto.repository.js';
|
||||
import { DatabaseRepository } from 'src/repositories/database.repository.js';
|
||||
import { DownloadRepository } from 'src/repositories/download.repository.js';
|
||||
import { DuplicateRepository } from 'src/repositories/duplicate.repository.js';
|
||||
import { EmailRepository } from 'src/repositories/email.repository.js';
|
||||
import { EventRepository } from 'src/repositories/event.repository.js';
|
||||
import { IntegrityRepository } from 'src/repositories/integrity.repository.js';
|
||||
import { JobRepository } from 'src/repositories/job.repository.js';
|
||||
import { LibraryRepository } from 'src/repositories/library.repository.js';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository.js';
|
||||
import { MachineLearningRepository } from 'src/repositories/machine-learning.repository.js';
|
||||
import { MapRepository } from 'src/repositories/map.repository.js';
|
||||
import { MediaRepository } from 'src/repositories/media.repository.js';
|
||||
import { MemoryRepository } from 'src/repositories/memory.repository.js';
|
||||
import { MetadataRepository } from 'src/repositories/metadata.repository.js';
|
||||
import { MoveRepository } from 'src/repositories/move.repository.js';
|
||||
import { NotificationRepository } from 'src/repositories/notification.repository.js';
|
||||
import { OAuthRepository } from 'src/repositories/oauth.repository.js';
|
||||
import { OcrRepository } from 'src/repositories/ocr.repository.js';
|
||||
import { PartnerRepository } from 'src/repositories/partner.repository.js';
|
||||
import { PersonRepository } from 'src/repositories/person.repository.js';
|
||||
import { PluginRepository } from 'src/repositories/plugin.repository.js';
|
||||
import { ProcessRepository } from 'src/repositories/process.repository.js';
|
||||
import { SearchRepository } from 'src/repositories/search.repository.js';
|
||||
import { ServerInfoRepository } from 'src/repositories/server-info.repository.js';
|
||||
import { SessionRepository } from 'src/repositories/session.repository.js';
|
||||
import { SharedLinkAssetRepository } from 'src/repositories/shared-link-asset.repository.js';
|
||||
import { SharedLinkRepository } from 'src/repositories/shared-link.repository.js';
|
||||
import { StackRepository } from 'src/repositories/stack.repository.js';
|
||||
import { StorageRepository } from 'src/repositories/storage.repository.js';
|
||||
import { SyncCheckpointRepository } from 'src/repositories/sync-checkpoint.repository.js';
|
||||
import { SyncRepository } from 'src/repositories/sync.repository.js';
|
||||
import { SystemMetadataRepository } from 'src/repositories/system-metadata.repository.js';
|
||||
import { TagRepository } from 'src/repositories/tag.repository.js';
|
||||
import { TelemetryRepository } from 'src/repositories/telemetry.repository.js';
|
||||
import { TrashRepository } from 'src/repositories/trash.repository.js';
|
||||
import { UserRepository } from 'src/repositories/user.repository.js';
|
||||
import { VersionHistoryRepository } from 'src/repositories/version-history.repository.js';
|
||||
import { VideoStreamRepository } from 'src/repositories/video-stream.repository.js';
|
||||
import { ViewRepository } from 'src/repositories/view-repository.js';
|
||||
import { WebsocketRepository } from 'src/repositories/websocket.repository.js';
|
||||
import { WorkflowRepository } from 'src/repositories/workflow.repository.js';
|
||||
import { DB } from 'src/schema/index.js';
|
||||
import { AuthService } from 'src/services/auth.service.js';
|
||||
import { BaseService } from 'src/services/base.service.js';
|
||||
import type { RepositoryInterface } from 'src/types.js';
|
||||
import { getKyselyConfig } from 'src/utils/database.js';
|
||||
import { ClusterGroupFactory } from 'test/factories/cluster-group.factory.js';
|
||||
import { IAccessRepositoryMock, newAccessRepositoryMock } from 'test/repositories/access.repository.mock.js';
|
||||
import { newAssetRepositoryMock } from 'test/repositories/asset.repository.mock.js';
|
||||
import { newConfigRepositoryMock } from 'test/repositories/config.repository.mock.js';
|
||||
import { newCryptoRepositoryMock } from 'test/repositories/crypto.repository.mock.js';
|
||||
import { newJobRepositoryMock } from 'test/repositories/job.repository.mock.js';
|
||||
import { newMediaRepositoryMock } from 'test/repositories/media.repository.mock.js';
|
||||
import { newMetadataRepositoryMock } from 'test/repositories/metadata.repository.mock.js';
|
||||
import { newStorageRepositoryMock } from 'test/repositories/storage.repository.mock.js';
|
||||
import { newSystemMetadataRepositoryMock } from 'test/repositories/system-metadata.repository.mock.js';
|
||||
import { ITelemetryRepositoryMock, newTelemetryRepositoryMock } from 'test/repositories/telemetry.repository.mock.js';
|
||||
import { assert, Mock, Mocked, vitest } from 'vitest';
|
||||
|
||||
export type ControllerContext = {
|
||||
|
||||
Reference in New Issue
Block a user