README.md: refine documentation
[e-mobility-charging-stations-simulator.git] / .eslintrc
index a32321444c505a03c36a257ae7ed49c49eefe4de..255533c3d5adb84f85a281c53d412b4128273bbf 100644 (file)
--- a/.eslintrc
+++ b/.eslintrc
     "plugin:import/errors",
     "plugin:import/warnings",
     "plugin:import/typescript",
-    "plugin:jsdoc/recommended"
-  ],
-  "plugins": [
-    "import",
-    "jsdoc",
-    "@typescript-eslint"
+    "plugin:jsdoc/recommended",
+    "plugin:prettier/recommended"
   ],
+  "plugins": ["import", "jsdoc", "@typescript-eslint"],
   "settings": {
     "jsdoc": {
       "mode": "typescript"
     }
   },
   "rules": {
-    "indent": "off",
-    "@typescript-eslint/indent": [
-      "error",
-      2,
-      {
-        "SwitchCase": 1,
-        "FunctionDeclaration": {
-          "parameters": 2
-        },
-        "FunctionExpression": {
-          "parameters": 2
-        }
-      }
-    ],
     "@typescript-eslint/array-type": "off",
     "semi": "off",
-    "@typescript-eslint/semi": [
-      "error",
-      "always"
-    ],
-    "space-before-blocks": [
-      "error",
-      "always"
-    ],
+    "@typescript-eslint/semi": ["error", "always"],
+    "space-before-blocks": ["error", "always"],
     "@typescript-eslint/no-empty-function": [
       "warn",
       {
-        "allow": [
-          "arrowFunctions",
-          "methods"
-        ]
+        "allow": ["arrowFunctions", "methods"]
       }
     ],
     "@typescript-eslint/member-ordering": "error",
     "@typescript-eslint/no-floating-promises": "error",
     "@typescript-eslint/promise-function-async": "error",
     "@typescript-eslint/no-misused-promises": "error",
-    "curly": "error",
+    "curly": ["error", "all"],
     "brace-style": "error",
-    "eqeqeq": [
-      "error",
-      "always"
-    ],
+    "eqeqeq": ["error", "always"],
     "no-else-return": "error",
     "no-eq-null": "error",
     "no-undefined": "error",
     "no-lone-blocks": "error",
     "no-multi-spaces": "error",
     "no-empty": "error",
-    "no-return-assign": [
-      "error",
-      "always"
-    ],
+    "no-return-assign": ["error", "always"],
     "no-useless-catch": "error",
     "no-useless-return": "error",
     "no-shadow": "off", // This one is generating false positive no-shadow errors on exported/const enums
     //     "ignorePattern": "pragma|ignored"
     //   }
     // ],
-    "eol-last": [
-      "error",
-      "always"
-    ],
-    "consistent-this": [
-      "error",
-      "self"
-    ],
-    "func-call-spacing": [
-      "error",
-      "never"
-    ],
-    "keyword-spacing": [
-      "error"
-    ],
+    "eol-last": ["error", "always"],
+    "consistent-this": ["error", "self"],
+    "func-call-spacing": ["error", "never"],
+    "keyword-spacing": ["error"],
     "id-blacklist": [
       "error",
       "any",
       "Symbol",
       "symbol"
     ],
-    "linebreak-style": [
-      "error",
-      "unix"
-    ],
+    "linebreak-style": ["error", "unix"],
     "max-len": [
       "warn",
       {
-        "code": 180,
-        "ignoreComments": true,
-        "ignoreUrls": true,
-        "ignoreStrings": true,
-        "ignoreTemplateLiterals": true,
-        "ignoreRegExpLiterals": true,
-        "ignorePattern": "(^(import|export)|(public|private))\\s.+;"
+        "code": 100,
+        "ignoreUrls": true
       }
     ],
     "no-lonely-if": "error",
         "asyncArrow": "always"
       }
     ],
-    "space-in-parens": [
-      "error",
-      "never"
-    ],
+    "space-in-parens": ["error", "never"],
     "space-infix-ops": "error",
     "space-unary-ops": "error",
-    "spaced-comment": [
-      "error",
-      "always"
-    ],
+    "spaced-comment": ["error", "always"],
     "switch-colon-spacing": "error",
-    "arrow-body-style": [
-      "error",
-      "as-needed"
-    ],
-    "arrow-parens": [
-      "error",
-      "always"
-    ],
+    "arrow-body-style": ["error", "as-needed"],
+    "arrow-parens": ["error", "always"],
     "arrow-spacing": "error",
     "no-duplicate-imports": "error",
     "no-var": "error",
         "ignoreCase": false,
         "ignoreDeclarationSort": false,
         "ignoreMemberSort": false,
-        "memberSyntaxSortOrder": [
-          "none",
-          "all",
-          "multiple",
-          "single"
-        ]
+        "memberSyntaxSortOrder": ["none", "all", "multiple", "single"]
       }
     ],
-    "object-curly-spacing": [
-      "error",
-      "always"
-    ],
+    "object-curly-spacing": ["error", "always"],
     "lines-between-class-members": [
       "error",
       "always",
     ],
     "quotes": [
       "error",
-      "single"
+      "single",
+      {
+        "avoidEscape": true,
+        "allowTemplateLiterals": false
+      }
     ]
-  }
+  },
+  "overrides": [
+    {
+      "files": ["*.js"],
+      "extends": "plugin:node/recommended",
+      "rules": {
+        "node/shebang": "off",
+        "@typescript-eslint/no-unused-vars": "off",
+        "@typescript-eslint/no-var-requires": "off"
+      }
+    }
+  ]
 }