diff --git a/packages/twenty-server/src/engine/core-modules/logic-function/logic-function-resource/logic-function-resource.service.ts b/packages/twenty-server/src/engine/core-modules/logic-function/logic-function-resource/logic-function-resource.service.ts index 47bd0e17a8..130de5f27d 100644 --- a/packages/twenty-server/src/engine/core-modules/logic-function/logic-function-resource/logic-function-resource.service.ts +++ b/packages/twenty-server/src/engine/core-modules/logic-function/logic-function-resource/logic-function-resource.service.ts @@ -4,7 +4,6 @@ import crypto from 'crypto'; import { promises as fs } from 'fs'; import { dirname, join } from 'path'; import { type QueryRunner } from 'typeorm'; - import { FileFolder } from 'twenty-shared/types'; import { isDefined } from 'twenty-shared/utils'; @@ -299,6 +298,33 @@ export class LogicFunctionResourceService { } await Promise.all(promises); + + await this.removeBuildTimeSdkFromDependencies( + join(inMemoryFolderPath, 'package.json'), + ); + } + + private async removeBuildTimeSdkFromDependencies( + packageJsonPath: string, + ): Promise { + const packageJson = JSON.parse( + await fs.readFile(packageJsonPath, 'utf-8'), + ) as { dependencies?: Record }; + + const dependencies = packageJson.dependencies; + const sdkVersionRange = dependencies?.['twenty-sdk']; + + if (!isDefined(dependencies) || !isDefined(sdkVersionRange)) { + return; + } + + delete dependencies['twenty-sdk']; + + await fs.writeFile( + packageJsonPath, + `${JSON.stringify(packageJson, null, 2)}\n`, + 'utf-8', + ); } async getBuiltCode({