You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

babel.config.js 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // use `babel.config.js` instead of `.babelrc` to use this babel configuration even for files from `sonar-web`
  2. // more: https://babeljs.io/docs/en/config-files#project-wide-configuration
  3. module.exports = {
  4. presets: [
  5. [
  6. '@babel/preset-env',
  7. {
  8. modules: false,
  9. targets: {
  10. browsers: [
  11. 'last 3 Chrome versions',
  12. 'last 3 Firefox versions',
  13. 'last 3 Safari versions',
  14. 'last 3 Edge versions',
  15. 'IE 11'
  16. ]
  17. },
  18. corejs: 3,
  19. useBuiltIns: 'entry'
  20. }
  21. ],
  22. '@babel/preset-react'
  23. ],
  24. plugins: [
  25. '@babel/plugin-proposal-class-properties',
  26. ['@babel/plugin-proposal-object-rest-spread', { useBuiltIns: true }],
  27. 'lodash'
  28. ],
  29. env: {
  30. production: {
  31. plugins: [
  32. '@babel/plugin-syntax-dynamic-import',
  33. '@babel/plugin-transform-react-constant-elements'
  34. ]
  35. },
  36. development: {
  37. plugins: [
  38. '@babel/plugin-syntax-dynamic-import',
  39. '@babel/plugin-transform-react-jsx-source',
  40. '@babel/plugin-transform-react-jsx-self'
  41. ]
  42. },
  43. test: {
  44. plugins: [
  45. '@babel/plugin-transform-modules-commonjs',
  46. 'dynamic-import-node',
  47. '@babel/plugin-transform-react-jsx-source',
  48. '@babel/plugin-transform-react-jsx-self'
  49. ]
  50. }
  51. },
  52. ignore: ['**/libs/**']
  53. };