diff --git a/packages/twenty-server/src/engine/twenty-orm/repository/workspace-insert-query-builder.ts b/packages/twenty-server/src/engine/twenty-orm/repository/workspace-insert-query-builder.ts index 24527be146..6e16229f88 100644 --- a/packages/twenty-server/src/engine/twenty-orm/repository/workspace-insert-query-builder.ts +++ b/packages/twenty-server/src/engine/twenty-orm/repository/workspace-insert-query-builder.ts @@ -43,11 +43,22 @@ export class WorkspaceInsertQueryBuilder< private internalContext: WorkspaceInternalContext; private authContext: AuthContext; private featureFlagMap: FeatureFlagMap; - private relationNestedQueries: RelationNestedQueries; private relationNestedConfig: | [RelationConnectQueryConfig[], RelationDisconnectQueryFieldsByEntityIndex] | null; - private filesFieldSync: FilesFieldSync; + + private _relationNestedQueries?: RelationNestedQueries; + private _filesFieldSync?: FilesFieldSync; + + private get relationNestedQueries(): RelationNestedQueries { + return (this._relationNestedQueries ??= new RelationNestedQueries( + this.internalContext, + )); + } + + private get filesFieldSync(): FilesFieldSync { + return (this._filesFieldSync ??= new FilesFieldSync(this.internalContext)); + } constructor( queryBuilder: InsertQueryBuilder, @@ -63,10 +74,6 @@ export class WorkspaceInsertQueryBuilder< this.shouldBypassPermissionChecks = shouldBypassPermissionChecks; this.authContext = authContext; this.featureFlagMap = featureFlagMap; - this.relationNestedQueries = new RelationNestedQueries( - this.internalContext, - ); - this.filesFieldSync = new FilesFieldSync(this.internalContext); } override clone(): this { diff --git a/packages/twenty-server/src/engine/twenty-orm/repository/workspace-update-query-builder.ts b/packages/twenty-server/src/engine/twenty-orm/repository/workspace-update-query-builder.ts index 9b78bda2c1..edb303cdc1 100644 --- a/packages/twenty-server/src/engine/twenty-orm/repository/workspace-update-query-builder.ts +++ b/packages/twenty-server/src/engine/twenty-orm/repository/workspace-update-query-builder.ts @@ -50,7 +50,6 @@ export class WorkspaceUpdateQueryBuilder< private internalContext: WorkspaceInternalContext; private authContext: AuthContext; private featureFlagMap: FeatureFlagMap; - private relationNestedQueries: RelationNestedQueries; private relationNestedConfig: | [RelationConnectQueryConfig[], RelationDisconnectQueryFieldsByEntityIndex] | null; @@ -58,7 +57,19 @@ export class WorkspaceUpdateQueryBuilder< criteria: string; partialEntity: QueryDeepPartialEntity; }[]; - private filesFieldSync: FilesFieldSync; + + private _relationNestedQueries?: RelationNestedQueries; + private _filesFieldSync?: FilesFieldSync; + + private get relationNestedQueries(): RelationNestedQueries { + return (this._relationNestedQueries ??= new RelationNestedQueries( + this.internalContext, + )); + } + + private get filesFieldSync(): FilesFieldSync { + return (this._filesFieldSync ??= new FilesFieldSync(this.internalContext)); + } constructor( queryBuilder: UpdateQueryBuilder, @@ -74,10 +85,6 @@ export class WorkspaceUpdateQueryBuilder< this.shouldBypassPermissionChecks = shouldBypassPermissionChecks; this.authContext = authContext; this.featureFlagMap = featureFlagMap; - this.relationNestedQueries = new RelationNestedQueries( - this.internalContext, - ); - this.filesFieldSync = new FilesFieldSync(this.internalContext); } override clone(): this {