From aa01b7bd2d30bc4b16f831189d153eca618ec27b Mon Sep 17 00:00:00 2001 From: Nozomu Miyamoto Date: Mon, 12 Sep 2022 22:14:23 +0900 Subject: [PATCH] feat(js): add `srcRootForCompilationRoot` option to tsc executor (#10707) * feat(js): add `srcRootForCompilationRoot` option to tsc executor ISSUES CLOSED: #9410 * docs(js): add description for `srcRootForCompilationRoot` option --- docs/generated/packages/js.json | 4 ++++ packages/js/src/executors/tsc/schema.json | 4 ++++ packages/js/src/utils/schema.d.ts | 1 + packages/js/src/utils/typescript/compile-typescript-files.ts | 1 + 4 files changed, 10 insertions(+) diff --git a/docs/generated/packages/js.json b/docs/generated/packages/js.json index e184ac1c35..3a0513473a 100644 --- a/docs/generated/packages/js.json +++ b/docs/generated/packages/js.json @@ -305,6 +305,10 @@ "description": "When `updateBuildableProjectDepsInPackageJson` is `true`, this adds dependencies to either `peerDependencies` or `dependencies`.", "enum": ["dependencies", "peerDependencies"], "default": "peerDependencies" + }, + "srcRootForCompilationRoot": { + "type": "string", + "description": "Sets the rootDir for TypeScript compilation. When not defined, it uses the project's root property" } }, "required": ["main", "outputPath", "tsConfig"], diff --git a/packages/js/src/executors/tsc/schema.json b/packages/js/src/executors/tsc/schema.json index 183d06d701..7a394557a8 100644 --- a/packages/js/src/executors/tsc/schema.json +++ b/packages/js/src/executors/tsc/schema.json @@ -57,6 +57,10 @@ "description": "When `updateBuildableProjectDepsInPackageJson` is `true`, this adds dependencies to either `peerDependencies` or `dependencies`.", "enum": ["dependencies", "peerDependencies"], "default": "peerDependencies" + }, + "srcRootForCompilationRoot": { + "type": "string", + "description": "Sets the rootDir for TypeScript compilation. When not defined, it uses the project's root property" } }, "required": ["main", "outputPath", "tsConfig"], diff --git a/packages/js/src/utils/schema.d.ts b/packages/js/src/utils/schema.d.ts index 8e585b0ffe..230d001857 100644 --- a/packages/js/src/utils/schema.d.ts +++ b/packages/js/src/utils/schema.d.ts @@ -42,6 +42,7 @@ export interface ExecutorOptions { transformers: TransformerEntry[]; updateBuildableProjectDepsInPackageJson?: boolean; buildableProjectDepsInPackageJsonType?: 'dependencies' | 'peerDependencies'; + srcRootForCompilationRoot?: string; } export interface NormalizedExecutorOptions extends ExecutorOptions { diff --git a/packages/js/src/utils/typescript/compile-typescript-files.ts b/packages/js/src/utils/typescript/compile-typescript-files.ts index 09d7e0ac66..bf75d2aaaf 100644 --- a/packages/js/src/utils/typescript/compile-typescript-files.ts +++ b/packages/js/src/utils/typescript/compile-typescript-files.ts @@ -54,6 +54,7 @@ export async function* compileTypeScriptFiles( outputPath: normalizedOptions.outputPath, projectName: context.projectName, projectRoot: normalizedOptions.projectRoot, + rootDir: normalizedOptions.srcRootForCompilationRoot, tsConfig: normalizedOptions.tsConfig, watch: normalizedOptions.watch, deleteOutputPath: normalizedOptions.clean,