From 8743870d1f326c4e29171ec0debef08dade59cfe Mon Sep 17 00:00:00 2001 From: ezolenko Date: Fri, 19 May 2023 17:16:41 -0600 Subject: [PATCH] - keeping node* modules option, overriding classic to node10, overriding bundler to node16 --- src/get-options-overrides.ts | 15 ++++++++++++++- tsconfig.json | 2 +- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/get-options-overrides.ts b/src/get-options-overrides.ts index f4c756f..a95c073 100644 --- a/src/get-options-overrides.ts +++ b/src/get-options-overrides.ts @@ -16,13 +16,26 @@ export function getOptionsOverrides({ useTsconfigDeclarationDir, cacheRoot }: IO noEmitOnError: false, inlineSourceMap: false, outDir: normalize(`${cacheRoot}/placeholder`), // need an outdir that is different from source or tsconfig parsing trips up. https://github.com/Microsoft/TypeScript/issues/24715 - moduleResolution: tsModule.ModuleResolutionKind.NodeJs, allowNonTsExtensions: true, }; if (!preParsedTsconfig) return overrides; + switch (preParsedTsconfig.options.moduleResolution) + { + case tsModule.ModuleResolutionKind.Node10: + case tsModule.ModuleResolutionKind.Node16: + case tsModule.ModuleResolutionKind.NodeNext: + break; + case tsModule.ModuleResolutionKind.Classic: + overrides.moduleResolution = tsModule.ModuleResolutionKind.Node10; + break; + case tsModule.ModuleResolutionKind.Bundler: + default: + overrides.moduleResolution = tsModule.ModuleResolutionKind.Node16; + } + if (preParsedTsconfig.options.module === undefined) overrides.module = tsModule.ModuleKind.ES2015; diff --git a/tsconfig.json b/tsconfig.json index 41ced74..01f3b70 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,7 +8,7 @@ "noUnusedLocals": true, "diagnostics": true, "listFiles": true, - "moduleResolution": "node", + "moduleResolution": "node16", "forceConsistentCasingInFileNames": true, "noImplicitReturns": true, "strict": true,