30 lines
526 B
JavaScript
30 lines
526 B
JavaScript
|
'use strict';
|
||
|
|
||
|
const babelJest = require('babel-jest');
|
||
|
|
||
|
const hasJsxRuntime = (() => {
|
||
|
if (process.env.DISABLE_NEW_JSX_TRANSFORM === 'true') {
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
try {
|
||
|
require.resolve('react/jsx-runtime');
|
||
|
return true;
|
||
|
} catch (e) {
|
||
|
return false;
|
||
|
}
|
||
|
})();
|
||
|
|
||
|
module.exports = babelJest.createTransformer({
|
||
|
presets: [
|
||
|
[
|
||
|
require.resolve('babel-preset-react-app'),
|
||
|
{
|
||
|
runtime: hasJsxRuntime ? 'automatic' : 'classic',
|
||
|
},
|
||
|
],
|
||
|
],
|
||
|
babelrc: false,
|
||
|
configFile: false,
|
||
|
});
|