aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2021-07-25 13:23:19 +0200
committerHampusM <hampus@hampusmat.com>2021-07-25 13:23:19 +0200
commit49c80c82d5bcbf92aa51ab84ee4a99b1af3b0694 (patch)
tree7222104f1bd9abcef1016470498eab1c72455bf8
parentc63e558f402cfad914031a58fdcf3d8e0f3d125d (diff)
Moved eslint stuff to the workspace root
-rw-r--r--.eslintrc.json (renamed from packages/server/.eslintrc.js)90
-rw-r--r--package.json6
-rw-r--r--packages/client/.eslintrc.js56
-rw-r--r--packages/client/package.json5
-rw-r--r--packages/server/package.json5
-rw-r--r--yarn.lock50
6 files changed, 96 insertions, 116 deletions
diff --git a/packages/server/.eslintrc.js b/.eslintrc.json
index df161ad..3a4dead 100644
--- a/packages/server/.eslintrc.js
+++ b/.eslintrc.json
@@ -1,20 +1,30 @@
-module.exports = {
- env: {
- commonjs: true,
- es2021: true,
- node: true
+{
+ "root": true,
+ "env": {
+ "commonjs": true,
+ "es2021": true,
+ "node": true
},
- extends: [ "standard", "plugin:@typescript-eslint/recommended" ],
- parser: "@typescript-eslint/parser",
- parserOptions: {
- ecmaVersion: 12
+ "extends": [
+ "standard",
+ "plugin:@typescript-eslint/recommended",
+ "plugin:vue/vue3-strongly-recommended",
+ "@vue/standard",
+ "@vue/typescript"
+ ],
+ "parser": "@typescript-eslint/parser",
+ "parserOptions": {
+ "ecmaVersion": 12
},
- plugins: [ "@typescript-eslint" ],
- rules: {
+ "plugins": [ "@typescript-eslint" ],
+ "rules": {
+ "no-console": "off",
+ "no-debugger": "off",
"array-bracket-spacing": [
"error",
"always"
],
+ "array-bracket-newline": [ "warn", "consistent" ],
"array-element-newline": "off",
"arrow-body-style": "off",
"arrow-parens": [
@@ -24,12 +34,12 @@ module.exports = {
"arrow-spacing": [
"error",
{
- after: true,
- before: true
+ "after": true,
+ "before": true
}
],
"brace-style": [ "error", "stroustrup", { "allowSingleLine": false } ],
- camelcase: "off",
+ "camelcase": "off",
"capitalized-comments": [
"error",
"always"
@@ -37,25 +47,26 @@ module.exports = {
"comma-spacing": [
"error",
{
- after: true,
- before: false
+ "after": true,
+ "before": false
}
],
"comma-style": [
"error",
"last"
],
+ "comma-dangle": [ "error", "never" ],
"computed-property-spacing": [
"error",
"never"
],
- curly: [ "error", "all" ],
+ "curly": [ "error", "all" ],
"dot-notation": "off",
"eol-last": [
"error",
"never"
],
- eqeqeq: "error",
+ "eqeqeq": "error",
"func-names": "off",
"func-style": [ "error", "declaration" ],
"id-length": "off",
@@ -63,8 +74,14 @@ module.exports = {
"error",
"beside"
],
- indent: [ "warn", "tab" ],
- "keyword-spacing": "off",
+ "indent": [ "warn", "tab" ],
+ "keyword-spacing": [ "error", {
+ "overrides": {
+ "if": { "after": false },
+ "for": { "after": false },
+ "while": { "after": false }
+ }
+ } ],
"linebreak-style": [
"error",
"unix"
@@ -75,11 +92,10 @@ module.exports = {
"max-statements": "off",
"multiline-comment-style": [ "error", "bare-block" ],
"no-await-in-loop": "off",
- "no-console": "off",
"no-else-return": [
"error",
{
- allowElseIf: true
+ "allowElseIf": true
}
],
"no-extra-parens": "off",
@@ -87,6 +103,7 @@ module.exports = {
"no-tabs": "off",
"no-ternary": "off",
"no-underscore-dangle": [ "error", { "allowAfterThis": true } ],
+ "no-var": "error",
"object-curly-spacing": [
"error",
"always"
@@ -98,9 +115,9 @@ module.exports = {
"prefer-const": "off",
"prefer-destructuring": "off",
"prefer-template": "off",
- "quote-props": "off",
- quotes: [ "error", "double" ],
- semi: [ "error", "always" ],
+ "quote-props": [ "error", "as-needed" ],
+ "quotes": [ "error", "double" ],
+ "semi": [ "error", "always" ],
"semi-style": [
"error",
"last"
@@ -115,7 +132,7 @@ module.exports = {
"error",
"always"
],
- strict: [
+ "strict": [
"error",
"never"
],
@@ -127,9 +144,24 @@ module.exports = {
"error",
"never"
],
- yoda: [
+ "yoda": [
"error",
"never"
- ]
+ ],
+ "vue/max-attributes-per-line": [ "warn", {
+ "singleline": {
+ "max": 2,
+ "allowFirstLine": true
+ },
+ "multiline": {
+ "max": 2,
+ "allowFirstLine": false
+ }
+ } ],
+ "vue/html-closing-bracket-newline": [ "error", {
+ "singleline": "never",
+ "multiline": "never"
+ } ],
+ "vue/html-indent": [ "error", "tab" ]
}
-}; \ No newline at end of file
+} \ No newline at end of file
diff --git a/package.json b/package.json
index 0bf51d9..0539fa6 100644
--- a/package.json
+++ b/package.json
@@ -20,6 +20,12 @@
"client": "^1.0.0",
"concurrently": "^6.2.0",
"dotenv": "^10.0.0",
+ "eslint": "^7.31.0",
+ "eslint-config-standard": "^16.0.3",
+ "eslint-plugin-import": "^2.23.4",
+ "eslint-plugin-node": "^11.1.0",
+ "eslint-plugin-promise": "^5.1.0",
+ "eslint-plugin-vue": "^7.14.0",
"fs-extra": "^10.0.0",
"jest": "^27.0.6",
"server": "^1.0.0",
diff --git a/packages/client/.eslintrc.js b/packages/client/.eslintrc.js
deleted file mode 100644
index 595cce8..0000000
--- a/packages/client/.eslintrc.js
+++ /dev/null
@@ -1,56 +0,0 @@
-module.exports = {
- root: true,
- env: {
- node: true
- },
- extends: [
- "plugin:vue/vue3-strongly-recommended",
- "@vue/standard",
- "@vue/typescript"
- ],
- parserOptions: {
- parser: "@typescript-eslint/parser"
- },
- ignorePatterns: [ "/src/lib/*" ],
- rules: {
- "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
- "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
- curly: "warn",
- "array-bracket-newline": [ "warn", "consistent" ],
- "array-bracket-spacing": [ "warn", "always" ],
- "capitalized-comments": [ "warn", "always" ],
- "implicit-arrow-linebreak": [ "warn", "beside" ],
- indent: [ "warn", "tab" ],
- "linebreak-style": [ "warn", "unix" ],
- "comma-dangle": [ "error", "never" ],
- semi: [ "error", "always" ],
- "no-var": "error",
- quotes: [ "error", "double" ],
- "quote-props": [ "error", "as-needed" ],
- "space-before-function-paren": [ "error", "never" ],
- camelcase: "off",
- "no-tabs": "off",
- "keyword-spacing": [ "error", {
- overrides: {
- if: { after: false },
- for: { after: false },
- while: { after: false }
- }
- } ],
- "vue/max-attributes-per-line": [ "warn", {
- singleline: {
- max: 2,
- allowFirstLine: true
- },
- multiline: {
- max: 2,
- allowFirstLine: false
- }
- } ],
- "vue/html-closing-bracket-newline": [ "error", {
- singleline: "never",
- multiline: "never"
- } ],
- "vue/html-indent": [ "error", "tab" ]
- }
-};
diff --git a/packages/client/package.json b/packages/client/package.json
index d532de9..0c69871 100644
--- a/packages/client/package.json
+++ b/packages/client/package.json
@@ -33,11 +33,6 @@
"@vue/compiler-sfc": "^3.0.0",
"@vue/eslint-config-standard": "^6.0.0",
"@vue/eslint-config-typescript": "^7.0.0",
- "eslint": "^7.30.0",
- "eslint-plugin-import": "^2.23.4",
- "eslint-plugin-node": "^11.1.0",
- "eslint-plugin-promise": "^4.2.1",
- "eslint-plugin-vue": "^7.0.0",
"sass": "^1.26.5",
"sass-loader": "^12.1.0",
"shared_types": "^1.0.0",
diff --git a/packages/server/package.json b/packages/server/package.json
index e5bc228..f5ff6e1 100644
--- a/packages/server/package.json
+++ b/packages/server/package.json
@@ -24,11 +24,6 @@
"@types/whatwg-url": "^8.2.0",
"@typescript-eslint/eslint-plugin": "^4.26.0",
"@typescript-eslint/parser": "^4.26.0",
- "eslint": "^7.30.0",
- "eslint-config-standard": "^16.0.3",
- "eslint-plugin-import": "^2.23.4",
- "eslint-plugin-node": "^11.1.0",
- "eslint-plugin-promise": "^5.1.0",
"nodemon": "^2.0.12",
"shared_types": "^1.0.0",
"ts-node": "^10.1.0",
diff --git a/yarn.lock b/yarn.lock
index a32be0b..bd871a1 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -945,10 +945,10 @@
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-"@eslint/eslintrc@^0.4.2":
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.2.tgz#f63d0ef06f5c0c57d76c4ab5f63d3835c51b0179"
- integrity sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==
+"@eslint/eslintrc@^0.4.3":
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c"
+ integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==
dependencies:
ajv "^6.12.4"
debug "^4.1.1"
@@ -4424,25 +4424,20 @@ eslint-plugin-node@^11.1.0:
resolve "^1.10.1"
semver "^6.1.0"
-eslint-plugin-promise@^4.2.1:
- version "4.3.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz#61485df2a359e03149fdafc0a68b0e030ad2ac45"
- integrity sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==
-
eslint-plugin-promise@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz#fb2188fb734e4557993733b41aa1a688f46c6f24"
integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==
-eslint-plugin-vue@^7.0.0:
- version "7.13.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-7.13.0.tgz#6f3d232bf1fcd0428353b0d581ebaca1c5dbc17a"
- integrity sha512-u0+jL8h2MshRuMTCLslktxRsPTjlENNcNufhgHu01N982DmHVdeFniyMPoVLLRjACQOwdz3FdlsgYGBMBG+AKg==
+eslint-plugin-vue@^7.14.0:
+ version "7.14.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-7.14.0.tgz#8c00f211064bd2708fc1aa4abd0592538fbb2cb1"
+ integrity sha512-IW5A2Td0wEWjFGaGVEO24JNXa8cVFzAQTXrYv/Vu3zyDVS9sjwOpZY0iqub7FOkT2AK3Imtw4U4wg48pP9oWww==
dependencies:
eslint-utils "^2.1.0"
natural-compare "^1.4.0"
- semver "^7.3.2"
- vue-eslint-parser "^7.8.0"
+ semver "^6.3.0"
+ vue-eslint-parser "^7.9.0"
eslint-scope@5.1.1, eslint-scope@^5.1.1:
version "5.1.1"
@@ -4487,13 +4482,13 @@ eslint-webpack-plugin@2.4.3:
micromatch "^4.0.2"
schema-utils "^3.0.0"
-eslint@^7.30.0:
- version "7.30.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.30.0.tgz#6d34ab51aaa56112fd97166226c9a97f505474f8"
- integrity sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==
+eslint@^7.31.0:
+ version "7.31.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.31.0.tgz#f972b539424bf2604907a970860732c5d99d3aca"
+ integrity sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==
dependencies:
"@babel/code-frame" "7.12.11"
- "@eslint/eslintrc" "^0.4.2"
+ "@eslint/eslintrc" "^0.4.3"
"@humanwhocodes/config-array" "^0.5.0"
ajv "^6.10.0"
chalk "^4.0.0"
@@ -10518,7 +10513,7 @@ verror@1.10.0:
core-util-is "1.0.2"
extsprintf "^1.2.0"
-vue-eslint-parser@^7.0.0, vue-eslint-parser@^7.8.0:
+vue-eslint-parser@^7.0.0:
version "7.8.0"
resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.8.0.tgz#43850bf856c9a69d62c0e12769609c338423684b"
integrity sha512-ehmmrLZNYLUoKayvVW8l8HyPQIfuYZHiJoQLRP3dapDlTU7bGs4tqIKVGdAEpMuXS/b4R/PImCt7Tkj4UhX1SQ==
@@ -10531,6 +10526,19 @@ vue-eslint-parser@^7.0.0, vue-eslint-parser@^7.8.0:
lodash "^4.17.21"
semver "^6.3.0"
+vue-eslint-parser@^7.9.0:
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.9.0.tgz#5eeedc71f22ebc7b18b957d1ab171acf29a41e64"
+ integrity sha512-QBlhZ5LteDRVy2dISfQhNEmmcqph+GTaD4SH41bYzXcVHFPJ9p34zCG6QAqOZVa8PKaVgbomFnoZpGJRZi14vg==
+ dependencies:
+ debug "^4.1.1"
+ eslint-scope "^5.1.1"
+ eslint-visitor-keys "^1.1.0"
+ espree "^6.2.1"
+ esquery "^1.4.0"
+ lodash "^4.17.21"
+ semver "^6.3.0"
+
vue-hot-reload-api@^2.3.0:
version "2.3.4"
resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2"