.eslintrc.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // eslint-disable-next-line
  2. module.exports = {
  3. // eslint-disable-line import/no-commonjs
  4. env: {
  5. browser: true,
  6. es6: true,
  7. node: true,
  8. },
  9. extends: [
  10. 'eslint:recommended',
  11. 'plugin:import/errors',
  12. 'plugin:import/warnings',
  13. ],
  14. parser: 'babel-eslint',
  15. parserOptions: {
  16. sourceType: 'module',
  17. ecmaVersion: 8,
  18. },
  19. rules: {
  20. 'no-trailing-spaces': ['error'],
  21. 'import/first': ['error'],
  22. 'import/no-commonjs': ['error'],
  23. 'import/order': [
  24. 'error',
  25. {
  26. groups: [
  27. ['internal', 'external', 'builtin'],
  28. ['index', 'sibling', 'parent'],
  29. ],
  30. 'newlines-between': 'always',
  31. },
  32. ],
  33. indent: [
  34. 'error',
  35. 2,
  36. {
  37. MemberExpression: 1,
  38. SwitchCase: 1,
  39. },
  40. ],
  41. 'linebreak-style': ['error', 'unix'],
  42. 'no-console': [0],
  43. quotes: [
  44. 'error',
  45. 'single',
  46. {avoidEscape: true, allowTemplateLiterals: true},
  47. ],
  48. 'require-await': ['error'],
  49. semi: ['error', 'always'],
  50. },
  51. settings: {
  52. react: {
  53. version: 'detect',
  54. },
  55. },
  56. };