diff --git a/packages/syncing-server/src/Domain/Extension/ExtensionsHttpService.ts b/packages/syncing-server/src/Domain/Extension/ExtensionsHttpService.ts index 0b903d42b..2bb5d106e 100644 --- a/packages/syncing-server/src/Domain/Extension/ExtensionsHttpService.ts +++ b/packages/syncing-server/src/Domain/Extension/ExtensionsHttpService.ts @@ -139,7 +139,7 @@ export class ExtensionsHttpService implements ExtensionsHttpServiceInterface { userUuid: string, email: string, ): Promise { - const extension = await this.itemRepository.findByUuidAndUserUuid(extensionId, userUuid, true) + const extension = await this.itemRepository.findByUuidAndUserUuid(extensionId, userUuid) if (extension === null || !extension.props.content) { throw Error(`Could not find extensions with id ${extensionId}`) } diff --git a/packages/syncing-server/src/Domain/Handler/DuplicateItemSyncedEventHandler.ts b/packages/syncing-server/src/Domain/Handler/DuplicateItemSyncedEventHandler.ts index 1e622962b..0f8e367bb 100644 --- a/packages/syncing-server/src/Domain/Handler/DuplicateItemSyncedEventHandler.ts +++ b/packages/syncing-server/src/Domain/Handler/DuplicateItemSyncedEventHandler.ts @@ -16,7 +16,7 @@ export class DuplicateItemSyncedEventHandler implements DomainEventHandlerInterf ) {} async handle(event: DuplicateItemSyncedEvent): Promise { - const item = await this.itemRepository.findByUuidAndUserUuid(event.payload.itemUuid, event.payload.userUuid, true) + const item = await this.itemRepository.findByUuidAndUserUuid(event.payload.itemUuid, event.payload.userUuid) if (item === null) { this.logger.warn(`Could not find item with uuid ${event.payload.itemUuid}`) @@ -33,7 +33,6 @@ export class DuplicateItemSyncedEventHandler implements DomainEventHandlerInterf const existingOriginalItem = await this.itemRepository.findByUuidAndUserUuid( item.props.duplicateOf.value, event.payload.userUuid, - true, ) if (existingOriginalItem !== null) { diff --git a/packages/syncing-server/src/Domain/Handler/EmailBackupRequestedEventHandler.ts b/packages/syncing-server/src/Domain/Handler/EmailBackupRequestedEventHandler.ts index 4105a6260..4e6b9f6c3 100644 --- a/packages/syncing-server/src/Domain/Handler/EmailBackupRequestedEventHandler.ts +++ b/packages/syncing-server/src/Domain/Handler/EmailBackupRequestedEventHandler.ts @@ -53,14 +53,11 @@ export class EmailBackupRequestedEventHandler implements DomainEventHandlerInter const backupFileNames: string[] = [] for (const itemUuidBundle of itemUuidBundles) { - const items = await this.itemRepository.findAll( - { - uuids: itemUuidBundle, - sortBy: 'updated_at_timestamp', - sortOrder: 'ASC', - }, - true, - ) + const items = await this.itemRepository.findAll({ + uuids: itemUuidBundle, + sortBy: 'updated_at_timestamp', + sortOrder: 'ASC', + }) const bundleBackupFileNames = await this.itemBackupService.backup( items, diff --git a/packages/syncing-server/src/Domain/Item/ItemRepositoryInterface.ts b/packages/syncing-server/src/Domain/Item/ItemRepositoryInterface.ts index 636e1ff1e..7b3ecad56 100644 --- a/packages/syncing-server/src/Domain/Item/ItemRepositoryInterface.ts +++ b/packages/syncing-server/src/Domain/Item/ItemRepositoryInterface.ts @@ -7,7 +7,7 @@ import { ExtendedIntegrityPayload } from './ExtendedIntegrityPayload' export interface ItemRepositoryInterface { deleteByUserUuid(userUuid: string): Promise - findAll(query: ItemQuery, noAssociations: boolean): Promise + findAll(query: ItemQuery): Promise findAllRaw(query: ItemQuery): Promise streamAll(query: ItemQuery): Promise countAll(query: ItemQuery): Promise @@ -16,7 +16,7 @@ export interface ItemRepositoryInterface { ): Promise> findDatesForComputingIntegrityHash(userUuid: string): Promise> findItemsForComputingIntegrityPayloads(userUuid: string): Promise - findByUuidAndUserUuid(uuid: string, userUuid: string, noAssociations: boolean): Promise + findByUuidAndUserUuid(uuid: string, userUuid: string): Promise findByUuid(uuid: Uuid, noAssociations: boolean): Promise remove(item: Item): Promise save(item: Item): Promise diff --git a/packages/syncing-server/src/Domain/UseCase/Syncing/GetItem/GetItem.ts b/packages/syncing-server/src/Domain/UseCase/Syncing/GetItem/GetItem.ts index 56c9f3307..f8b56ebfa 100644 --- a/packages/syncing-server/src/Domain/UseCase/Syncing/GetItem/GetItem.ts +++ b/packages/syncing-server/src/Domain/UseCase/Syncing/GetItem/GetItem.ts @@ -8,7 +8,7 @@ export class GetItem implements UseCaseInterface { constructor(private itemRepository: ItemRepositoryInterface) {} async execute(dto: GetItemDTO): Promise> { - const item = await this.itemRepository.findByUuidAndUserUuid(dto.itemUuid, dto.userUuid, true) + const item = await this.itemRepository.findByUuidAndUserUuid(dto.itemUuid, dto.userUuid) if (item === null) { return Result.fail(`Could not find item with uuid ${dto.itemUuid}`) diff --git a/packages/syncing-server/src/Domain/UseCase/Syncing/GetItems/GetItems.ts b/packages/syncing-server/src/Domain/UseCase/Syncing/GetItems/GetItems.ts index 702210009..12aed4d0d 100644 --- a/packages/syncing-server/src/Domain/UseCase/Syncing/GetItems/GetItems.ts +++ b/packages/syncing-server/src/Domain/UseCase/Syncing/GetItems/GetItems.ts @@ -56,14 +56,11 @@ export class GetItems implements UseCaseInterface { ) let items: Array = [] if (itemUuidsToFetch.length > 0) { - items = await this.itemRepository.findAll( - { - uuids: itemUuidsToFetch, - sortBy: 'updated_at_timestamp', - sortOrder: 'ASC', - }, - true, - ) + items = await this.itemRepository.findAll({ + uuids: itemUuidsToFetch, + sortBy: 'updated_at_timestamp', + sortOrder: 'ASC', + }) } const totalItemsCount = await this.itemRepository.countAll(itemQuery) diff --git a/packages/syncing-server/src/Domain/UseCase/Syncing/SaveItems/SaveItems.ts b/packages/syncing-server/src/Domain/UseCase/Syncing/SaveItems/SaveItems.ts index 3d363bd25..fa8a75b79 100644 --- a/packages/syncing-server/src/Domain/UseCase/Syncing/SaveItems/SaveItems.ts +++ b/packages/syncing-server/src/Domain/UseCase/Syncing/SaveItems/SaveItems.ts @@ -42,7 +42,7 @@ export class SaveItems implements UseCaseInterface { } const itemUuid = itemUuidOrError.getValue() - const existingItem = await this.itemRepository.findByUuid(itemUuid, true) + const existingItem = await this.itemRepository.findByUuid(itemUuid, false) if (dto.readOnlyAccess) { conflicts.push({ diff --git a/packages/syncing-server/src/Domain/UseCase/Syncing/SyncItems/SyncItems.ts b/packages/syncing-server/src/Domain/UseCase/Syncing/SyncItems/SyncItems.ts index 552f44650..0b0531994 100644 --- a/packages/syncing-server/src/Domain/UseCase/Syncing/SyncItems/SyncItems.ts +++ b/packages/syncing-server/src/Domain/UseCase/Syncing/SyncItems/SyncItems.ts @@ -126,15 +126,12 @@ export class SyncItems implements UseCaseInterface { } private async frontLoadKeysItemsToTop(userUuid: string, retrievedItems: Array): Promise> { - const itemsKeys = await this.itemRepository.findAll( - { - userUuid, - contentType: ContentType.TYPES.ItemsKey, - sortBy: 'updated_at_timestamp', - sortOrder: 'ASC', - }, - true, - ) + const itemsKeys = await this.itemRepository.findAll({ + userUuid, + contentType: ContentType.TYPES.ItemsKey, + sortBy: 'updated_at_timestamp', + sortOrder: 'ASC', + }) const retrievedItemsIds: Array = retrievedItems.map((item: Item) => item.id.toString()) diff --git a/packages/syncing-server/src/Infra/TypeORM/TypeORMItemRepository.ts b/packages/syncing-server/src/Infra/TypeORM/TypeORMItemRepository.ts index e9567af71..c09fb6ce4 100644 --- a/packages/syncing-server/src/Infra/TypeORM/TypeORMItemRepository.ts +++ b/packages/syncing-server/src/Infra/TypeORM/TypeORMItemRepository.ts @@ -130,7 +130,7 @@ export class TypeORMItemRepository implements ItemRepositoryInterface { return items.sort((itemA, itemB) => itemB.updated_at_timestamp - itemA.updated_at_timestamp) } - async findByUuidAndUserUuid(uuid: string, userUuid: string, noAssociations: boolean): Promise { + async findByUuidAndUserUuid(uuid: string, userUuid: string): Promise { const persistence = await this.ormRepository .createQueryBuilder('item') .where('item.uuid = :uuid AND item.user_uuid = :userUuid', { @@ -146,10 +146,6 @@ export class TypeORMItemRepository implements ItemRepositoryInterface { try { const item = this.mapper.toDomain(persistence) - if (noAssociations) { - return item - } - await this.decorateItemWithAssociations(item) return item @@ -160,7 +156,7 @@ export class TypeORMItemRepository implements ItemRepositoryInterface { } } - async findAll(query: ItemQuery, noAssociations: boolean): Promise { + async findAll(query: ItemQuery): Promise { const persistence = await this.createFindAllQueryBuilder(query).getMany() const domainItems: Item[] = [] @@ -172,10 +168,6 @@ export class TypeORMItemRepository implements ItemRepositoryInterface { } } - if (noAssociations) { - return domainItems - } - await Promise.all(domainItems.map((item) => this.decorateItemWithAssociations(item))) return domainItems