Skip to content

Commit 08a520c

Browse files
iansuKrivega
authored andcommitted
Pass JSX runtime setting to Babel preset in Jest config (facebook#9865)
1 parent e71b35f commit 08a520c

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

packages/react-scripts/config/jest/babelTransform.js

+21-1
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,28 @@
99

1010
const babelJest = require('babel-jest');
1111

12+
const hasJsxRuntime = (() => {
13+
if (process.env.DISABLE_NEW_JSX_TRANSFORM === 'true') {
14+
return false;
15+
}
16+
17+
try {
18+
require.resolve('react/jsx-runtime');
19+
return true;
20+
} catch (e) {
21+
return false;
22+
}
23+
})();
24+
1225
module.exports = babelJest.createTransformer({
13-
presets: [require.resolve('babel-preset-react-app')],
26+
presets: [
27+
[
28+
require.resolve('babel-preset-react-app'),
29+
{
30+
runtime: hasJsxRuntime ? 'automatic' : 'classic',
31+
},
32+
],
33+
],
1434
babelrc: false,
1535
configFile: false,
1636
});

0 commit comments

Comments
 (0)