From 7da8b64b4c1e5fdfa307dbfe571936c2138c3faf Mon Sep 17 00:00:00 2001 From: DarkPhoenix2704 Date: Fri, 29 May 2026 05:22:24 +0000 Subject: [PATCH] fix: review corrections --- packages/nocodb-sdk/src/lib/enums.ts | 1 + .../nocodb/src/services/columns.service.ts | 22 +++++++++++++++++++ .../meta-dependency/event-handler.service.ts | 1 + packages/nocodb/src/services/views.service.ts | 9 ++++++++ 4 files changed, 33 insertions(+) diff --git a/packages/nocodb-sdk/src/lib/enums.ts b/packages/nocodb-sdk/src/lib/enums.ts index cbe702b4bc..aa821843d5 100644 --- a/packages/nocodb-sdk/src/lib/enums.ts +++ b/packages/nocodb-sdk/src/lib/enums.ts @@ -740,6 +740,7 @@ export enum MetaEventType { FILTER_UPDATED = 'FILTER_UPDATED', FILTER_DELETED = 'FILTER_DELETED', VIEW_UPDATED = 'VIEW_UPDATED', + VIEW_DELETED = 'VIEW_DELETED', TABLE_DELETED = 'TABLE_DELETED', } diff --git a/packages/nocodb/src/services/columns.service.ts b/packages/nocodb/src/services/columns.service.ts index e29e4cd7aa..20ad4f3d1a 100644 --- a/packages/nocodb/src/services/columns.service.ts +++ b/packages/nocodb/src/services/columns.service.ts @@ -4342,6 +4342,18 @@ export class ColumnsService implements IColumnsService { }); } + await this.metaDependencyEventHandler.handleEvent( + context, + { + eventType: MetaEventType.COLUMN_ADDED, + newEntity: newColumn ?? { + ...param.column, + fk_model_id: table.id, + }, + }, + ncMeta, + ); + NocoSocket.broadcastEvent( context, { @@ -6415,6 +6427,11 @@ export class ColumnsService implements IColumnsService { columns: await refTable.getCachedColumns(context), }); + await this.metaDependencyEventHandler.handleEvent(refContext, { + eventType: MetaEventType.COLUMN_ADDED, + newEntity: parentRelCol, + }); + this.appHooksService.emit(AppEvents.COLUMN_CREATE, { table: table, column: savedColumn, @@ -6424,6 +6441,11 @@ export class ColumnsService implements IColumnsService { columns: await table.getCachedColumns(context), }); + await this.metaDependencyEventHandler.handleEvent(context, { + eventType: MetaEventType.COLUMN_ADDED, + newEntity: savedColumn, + }); + // todo: create index for virtual relations as well // create index for foreign key in pg if (param.source.type === 'pg') { diff --git a/packages/nocodb/src/services/meta-dependency/event-handler.service.ts b/packages/nocodb/src/services/meta-dependency/event-handler.service.ts index 38c6887deb..e6f27d9cd5 100644 --- a/packages/nocodb/src/services/meta-dependency/event-handler.service.ts +++ b/packages/nocodb/src/services/meta-dependency/event-handler.service.ts @@ -26,6 +26,7 @@ export class MetaDependencyEventHandler { FILTER_UPDATED: [], FILTER_DELETED: [], VIEW_UPDATED: [], + VIEW_DELETED: [], TABLE_DELETED: [], }; diff --git a/packages/nocodb/src/services/views.service.ts b/packages/nocodb/src/services/views.service.ts index 6961f4265b..02baf11c94 100644 --- a/packages/nocodb/src/services/views.service.ts +++ b/packages/nocodb/src/services/views.service.ts @@ -663,6 +663,15 @@ export class ViewsService { }); } + await this.metaDependencyEventHandler.handleEvent( + context, + { + eventType: MetaEventType.VIEW_DELETED, + oldEntity: view, + }, + ncMeta, + ); + NocoSocket.broadcastEvent( context, {