Skip to content

Commit efdec06

Browse files
committed
fix: use ts compiler or babel depending on environment
1 parent 9de7917 commit efdec06

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

lib/process.js

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@ const { parse, compileTemplate } = require('@vue/compiler-sfc')
22
const { transform } = require('@babel/core')
33
const convertSourceMap = require('convert-source-map')
44
const babelTransformer = require('babel-jest')
5+
const { transpileModule } = require('typescript')
56

67
const generateSourceMap = require('./generate-source-map')
78
const typescriptTransformer = require('./transformers/typescript')
89
const coffeescriptTransformer = require('./transformers/coffee')
910
const _processStyle = require('./process-style')
1011
const processCustomBlocks = require('./process-custom-blocks')
1112
const getVueJestConfig = require('./utils').getVueJestConfig
13+
const getTsJestConfig = require('./utils').getTsJestConfig
1214
const logResultErrors = require('./utils').logResultErrors
1315
const stripInlineSourceMap = require('./utils').stripInlineSourceMap
1416
const getCustomTransformer = require('./utils').getCustomTransformer
@@ -68,10 +70,19 @@ function processTemplate(template, filename, config) {
6870

6971
logResultErrors(result)
7072

71-
const babelify = transform(result.code, { filename: 'file.js' })
73+
const tsconfig = getTsJestConfig(config)
7274

73-
return {
74-
code: babelify.code
75+
if (tsconfig) {
76+
// they are using TypeScript.
77+
const { outputText } = transpileModule(result.code, { tsconfig })
78+
return { code: outputText }
79+
} else {
80+
// babel
81+
const babelify = transform(result.code, { filename: 'file.js' })
82+
83+
return {
84+
code: babelify.code
85+
}
7586
}
7687
}
7788

0 commit comments

Comments
 (0)