index label ids on typesense

This commit is contained in:
Salihu
2026-08-17 16:17:03 +01:00
parent 436f257ef7
commit ca3c9dcfd7
2 changed files with 15 additions and 15 deletions
+15 -1
View File
@@ -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) {
@@ -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<void> {
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(