From ca3c9dcfd78efc7f7d216dd00765994a9ad71538 Mon Sep 17 00:00:00 2001 From: Salihu Date: Mon, 17 Aug 2026 16:17:03 +0100 Subject: [PATCH] index label ids on typesense --- apps/server/src/core/label/label.service.ts | 16 +++++++++++++++- .../src/database/repos/label/label.repo.ts | 14 -------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/apps/server/src/core/label/label.service.ts b/apps/server/src/core/label/label.service.ts index 4c5aa1065..9ec0ab300 100644 --- a/apps/server/src/core/label/label.service.ts +++ b/apps/server/src/core/label/label.service.ts @@ -7,12 +7,15 @@ import { executeTx } from '@docmost/db/utils'; import { PaginationOptions } from '@docmost/db/pagination/pagination-options'; import { PagePermissionRepo } from '@docmost/db/repos/page/page-permission.repo'; import { normalizeLabelName } from './utils'; +import { EventEmitter2 } from "@nestjs/event-emitter"; +import { EventName } from "src/common/events/event.contants"; @Injectable() export class LabelService { constructor( private readonly labelRepo: LabelRepo, private readonly pagePermissionRepo: PagePermissionRepo, + private readonly eventEmitter: EventEmitter2, @InjectKysely() private readonly db: KyselyDB, ) {} @@ -30,10 +33,16 @@ export class LabelService { LabelType.PAGE, trx, ); - await this.labelRepo.addLabelToPage(pageId, label.id, workspaceId, trx); + await this.labelRepo.addLabelToPage(pageId, label.id, trx); attached.push(label); } }); + + this.eventEmitter.emit(EventName.PAGE_UPDATED, { + pageIds: [pageId], + workspaceId: workspaceId, + }); + return attached; } @@ -64,6 +73,11 @@ export class LabelService { await this.labelRepo.deleteLabel(labelId, workspaceId, trx); } }); + + this.eventEmitter.emit(EventName.PAGE_UPDATED, { + pageIds: [pageId], + workspaceId: workspaceId, + }); } async getPageLabels(pageId: string, pagination: PaginationOptions) { diff --git a/apps/server/src/database/repos/label/label.repo.ts b/apps/server/src/database/repos/label/label.repo.ts index 9f25d26eb..bac199ed4 100644 --- a/apps/server/src/database/repos/label/label.repo.ts +++ b/apps/server/src/database/repos/label/label.repo.ts @@ -8,8 +8,6 @@ import { PaginationOptions } from '@docmost/db/pagination/pagination-options'; import { executeWithCursorPagination } from '@docmost/db/pagination/cursor-pagination'; import { jsonArrayFrom, jsonObjectFrom } from 'kysely/helpers/postgres'; import { normalizeLabelName } from '../../../core/label/utils'; -import { EventEmitter2 } from '@nestjs/event-emitter'; -import { EventName } from 'src/common/events/event.contants'; export const LabelType = { PAGE: 'page', @@ -23,7 +21,6 @@ export class LabelRepo { constructor( @InjectKysely() private readonly db: KyselyDB, private readonly spaceMemberRepo: SpaceMemberRepo, - private readonly eventEmitter: EventEmitter2, ) {} async findById( @@ -169,7 +166,6 @@ export class LabelRepo { async addLabelToPage( pageId: string, labelId: string, - workspaceId: string, trx?: KyselyTransaction, ): Promise { const db = dbOrTx(this.db, trx); @@ -178,11 +174,6 @@ export class LabelRepo { .values({ pageId, labelId }) .onConflict((oc) => oc.doNothing()) .execute(); - - this.eventEmitter.emit(EventName.PAGE_UPDATED, { - pageIds: [pageId], - workspaceId: workspaceId, - }); } async removeLabelFromPage( @@ -206,11 +197,6 @@ export class LabelRepo { ), ) .execute(); - - this.eventEmitter.emit(EventName.PAGE_UPDATED, { - pageIds: [pageId], - workspaceId: workspaceId, - }); } async getPageLabelCount(