.eslintrc.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. module.exports = {
  2. "extends": ["eslint-config-airbnb"],
  3. "parser": "babel-eslint",
  4. "settings": {
  5. "ecmascript": 6
  6. },
  7. "ecmaFeatures": {
  8. "jsx": true,
  9. "modules": true,
  10. "destructuring": true,
  11. "classes": true,
  12. "forOf": true,
  13. "blockBindings": true,
  14. "arrowFunctions": true
  15. },
  16. "env": {
  17. "browser": true
  18. },
  19. "globals": {
  20. "io": true,
  21. "grecaptcha": true
  22. },
  23. "rules": {
  24. "linebreak-style": ["error", "windows"],
  25. "arrow-body-style": 0,
  26. "arrow-parens": 0,
  27. "class-methods-use-this": 0,
  28. "func-names": 0,
  29. "indent": ["error", "tab"],
  30. "no-tabs": 0,
  31. "new-cap": 0,
  32. "no-plusplus": 0,
  33. "no-return-assign": 0,
  34. "quote-props": 0,
  35. "template-curly-spacing": [2, "always"],
  36. "comma-dangle": ["error", {
  37. "arrays": "always-multiline",
  38. "objects": "always-multiline",
  39. "imports": "always-multiline",
  40. "exports": "always-multiline",
  41. "functions": "never"
  42. }],
  43. "jsx-quotes": [2, "prefer-double"],
  44. "quotes": [2, "double"],
  45. "react/jsx-indent": [2, "tab"],
  46. "react/jsx-indent-props": [2, "tab"],
  47. "react/forbid-prop-types": 0,
  48. "react/jsx-curly-spacing": [2, "always"],
  49. "react/jsx-filename-extension": 0,
  50. "react/jsx-boolean-value": 0,
  51. "react/prefer-stateless-function": 0,
  52. "import/extensions": 0,
  53. "import/no-extraneous-dependencies": 0,
  54. "import/no-unresolved": 0,
  55. "import/prefer-default-export": 0
  56. }
  57. }