Skip to content

Commit 5ce0ece

Browse files
committed
squash: fixing
1 parent 1ab99cd commit 5ce0ece

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

src/transformer.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,17 @@ function getTsProperties(args: Parameters<typeof transformer>) {
4343
}
4444
// RunMode: TsNode
4545
else if (maybeIsTsNode) {
46-
runMode = RunMode.TsNode;
4746
fileNames = tsNodeProps.fileNames;
48-
compilerOptions = tsNodeProps.compilerOptions;
47+
48+
runMode =
49+
!program || (fileNames.length > 1 && program.getRootFileNames().length === 1)
50+
? RunMode.TsNodeTranspileOnly
51+
: RunMode.TsNode;
52+
53+
compilerOptions = {
54+
...(program?.getCompilerOptions() ?? {}),
55+
...tsNodeProps!.compilerOptions
56+
};
4957
} else {
5058
throw new Error(
5159
`Cannot transform without a Program, ts-node instance, or manual parameters supplied. ` +
@@ -89,7 +97,7 @@ export default function transformer(
8997

9098
/* Add supplements for various run modes */
9199
let emitHost = transformationContext.getEmitHost();
92-
if (!emitHost) {
100+
if (!emitHost || runMode === RunMode.TsNodeTranspileOnly) {
93101
if (!fileNames)
94102
throw new Error(
95103
`No EmitHost found and could not determine files to be processed. Please file an issue with a reproduction!`

src/types.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,9 @@ export interface VisitorContext extends TsTransformPathsContext {
6464

6565
export enum RunMode {
6666
TsNode = "ts-node",
67+
TsNodeTranspileOnly = "ts-node-transpile-only",
6768
Manual = "manual",
68-
Program = "program",
69+
Program = "program"
6970
}
7071

7172
// endregion

0 commit comments

Comments
 (0)