From 856ff4b82c0f85cb46e8f45bfc3b4ae6b204e2a3 Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Tue, 21 Jan 2025 16:47:48 -0500 Subject: [PATCH] chore: remove unused code (#15499) --- server/src/entities/system-metadata.entity.ts | 3 +- server/src/entities/user-metadata.entity.ts | 3 +- .../services/system-config.service.spec.ts | 3 +- server/src/types.ts | 2 + server/src/utils/config.ts | 3 +- server/src/utils/pagination.ts | 49 +------------------ server/src/utils/preferences.ts | 2 +- server/test/fixtures/system-config.stub.ts | 2 +- 8 files changed, 11 insertions(+), 56 deletions(-) diff --git a/server/src/entities/system-metadata.entity.ts b/server/src/entities/system-metadata.entity.ts index 0a03a554039f39..678b8f701a486a 100644 --- a/server/src/entities/system-metadata.entity.ts +++ b/server/src/entities/system-metadata.entity.ts @@ -1,6 +1,7 @@ import { SystemConfig } from 'src/config'; import { StorageFolder, SystemMetadataKey } from 'src/enum'; -import { Column, DeepPartial, Entity, PrimaryColumn } from 'typeorm'; +import { DeepPartial } from 'src/types'; +import { Column, Entity, PrimaryColumn } from 'typeorm'; @Entity('system_metadata') export class SystemMetadataEntity { diff --git a/server/src/entities/user-metadata.entity.ts b/server/src/entities/user-metadata.entity.ts index e3e9bc6bd9a429..211f2131837734 100644 --- a/server/src/entities/user-metadata.entity.ts +++ b/server/src/entities/user-metadata.entity.ts @@ -1,7 +1,8 @@ import { UserEntity } from 'src/entities/user.entity'; import { UserAvatarColor, UserMetadataKey } from 'src/enum'; +import { DeepPartial } from 'src/types'; import { HumanReadableSize } from 'src/utils/bytes'; -import { Column, DeepPartial, Entity, ManyToOne, PrimaryColumn } from 'typeorm'; +import { Column, Entity, ManyToOne, PrimaryColumn } from 'typeorm'; @Entity('user_metadata') export class UserMetadataEntity { diff --git a/server/src/services/system-config.service.spec.ts b/server/src/services/system-config.service.spec.ts index 87991fc6c7fca9..bba62013344e2e 100644 --- a/server/src/services/system-config.service.spec.ts +++ b/server/src/services/system-config.service.spec.ts @@ -17,10 +17,9 @@ import { QueueName } from 'src/interfaces/job.interface'; import { ILoggerRepository } from 'src/interfaces/logger.interface'; import { ISystemMetadataRepository } from 'src/interfaces/system-metadata.interface'; import { SystemConfigService } from 'src/services/system-config.service'; -import { IConfigRepository } from 'src/types'; +import { DeepPartial, IConfigRepository } from 'src/types'; import { mockEnvData } from 'test/repositories/config.repository.mock'; import { newTestService } from 'test/utils'; -import { DeepPartial } from 'typeorm'; import { Mocked } from 'vitest'; const partialConfig = { diff --git a/server/src/types.ts b/server/src/types.ts index 55e19c8aee846d..63bd8f8f059406 100644 --- a/server/src/types.ts +++ b/server/src/types.ts @@ -7,6 +7,8 @@ import { AuditRepository } from 'src/repositories/audit.repository'; import { ConfigRepository } from 'src/repositories/config.repository'; import { ViewRepository } from 'src/repositories/view-repository'; +export type DeepPartial = T extends object ? { [K in keyof T]?: DeepPartial } : T; + export type AuthApiKey = { id: string; key: string; diff --git a/server/src/utils/config.ts b/server/src/utils/config.ts index 645d0fe0932087..317f41d120814f 100644 --- a/server/src/utils/config.ts +++ b/server/src/utils/config.ts @@ -9,9 +9,8 @@ import { SystemMetadataKey } from 'src/enum'; import { DatabaseLock } from 'src/interfaces/database.interface'; import { ILoggerRepository } from 'src/interfaces/logger.interface'; import { ISystemMetadataRepository } from 'src/interfaces/system-metadata.interface'; -import { IConfigRepository } from 'src/types'; +import { DeepPartial, IConfigRepository } from 'src/types'; import { getKeysDeep, unsetDeep } from 'src/utils/misc'; -import { DeepPartial } from 'typeorm'; export type SystemConfigValidator = (config: SystemConfig, newConfig: SystemConfig) => void | Promise; diff --git a/server/src/utils/pagination.ts b/server/src/utils/pagination.ts index 4f1bd1a7f84358..7cb31d1e046bf3 100644 --- a/server/src/utils/pagination.ts +++ b/server/src/utils/pagination.ts @@ -1,18 +1,8 @@ -import _ from 'lodash'; -import { PaginationMode } from 'src/enum'; -import { FindManyOptions, ObjectLiteral, Repository, SelectQueryBuilder } from 'typeorm'; - export interface PaginationOptions { take: number; skip?: number; } -export interface PaginatedBuilderOptions { - take: number; - skip?: number; - mode?: PaginationMode; -} - export interface PaginationResult { items: T[]; hasNextPage: boolean; @@ -33,46 +23,9 @@ export async function* usePagination( } } -export function paginationHelper( - items: Entity[], - take: number, -): PaginationResult { +export function paginationHelper(items: Entity[], take: number): PaginationResult { const hasNextPage = items.length > take; items.splice(take); return { items, hasNextPage }; } - -export async function paginate( - repository: Repository, - { take, skip }: PaginationOptions, - searchOptions?: FindManyOptions, -): Paginated { - const items = await repository.find( - _.omitBy( - { - ...searchOptions, - // Take one more item to check if there's a next page - take: take + 1, - skip, - }, - _.isUndefined, - ), - ); - - return paginationHelper(items, take); -} - -export async function paginatedBuilder( - qb: SelectQueryBuilder, - { take, skip, mode }: PaginatedBuilderOptions, -): Paginated { - if (mode === PaginationMode.LIMIT_OFFSET) { - qb.limit(take + 1).offset(skip); - } else { - qb.take(take + 1).skip(skip); - } - - const items = await qb.getMany(); - return paginationHelper(items, take); -} diff --git a/server/src/utils/preferences.ts b/server/src/utils/preferences.ts index beaeb472eca4cc..ed9b5f2b83ae7c 100644 --- a/server/src/utils/preferences.ts +++ b/server/src/utils/preferences.ts @@ -3,8 +3,8 @@ import { UserPreferencesUpdateDto } from 'src/dtos/user-preferences.dto'; import { UserPreferences, getDefaultPreferences } from 'src/entities/user-metadata.entity'; import { UserEntity } from 'src/entities/user.entity'; import { UserMetadataKey } from 'src/enum'; +import { DeepPartial } from 'src/types'; import { getKeysDeep } from 'src/utils/misc'; -import { DeepPartial } from 'typeorm'; export const getPreferences = (user: UserEntity) => { const preferences = getDefaultPreferences(user); diff --git a/server/test/fixtures/system-config.stub.ts b/server/test/fixtures/system-config.stub.ts index ed8cc8694ac9ec..89828d781fca4d 100644 --- a/server/test/fixtures/system-config.stub.ts +++ b/server/test/fixtures/system-config.stub.ts @@ -1,5 +1,5 @@ import { SystemConfig } from 'src/config'; -import { DeepPartial } from 'typeorm'; +import { DeepPartial } from 'src/types'; export const systemConfigStub = { enabled: {