30 lines
563 B
JavaScript
30 lines
563 B
JavaScript
'use strict';
|
|
|
|
const babelJest = require('babel-jest').default;
|
|
|
|
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,
|
|
});
|