diff --git a/index.js b/index.js index 7bb4b97..c1fc772 100644 --- a/index.js +++ b/index.js @@ -2,6 +2,7 @@ module.exports = { plugins: [ + 'editorconfig', 'es-x', 'import', 'jsdoc', @@ -19,6 +20,7 @@ module.exports = { 'plugin:unicorn/recommended', 'plugin:promise/recommended', 'plugin:jsdoc/recommended', + 'plugin:editorconfig/all', ], root: true, settings: { diff --git a/package-lock.json b/package-lock.json index 797f373..fdbe4f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "@commitlint/config-conventional": "^17.6.3", "eslint": "^8.40.0", "eslint-config-standard": "^17.0.0", + "eslint-plugin-editorconfig": "^4.0.3", "eslint-plugin-es-x": "^6.1.0", "eslint-plugin-import": "^2.27.5", "eslint-plugin-jsdoc": "^44.2.4", @@ -32,6 +33,7 @@ "peerDependencies": { "eslint": "^8.40.0", "eslint-config-standard": "^17.0.0", + "eslint-plugin-editorconfig": "^4.0.3", "eslint-plugin-es-x": "^6.1.0", "eslint-plugin-import": "^2.27.5", "eslint-plugin-jsdoc": "^44.2.4", @@ -592,6 +594,12 @@ "node": ">= 8" } }, + "node_modules/@one-ini/wasm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", + "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", + "dev": true + }, "node_modules/@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -1007,6 +1015,15 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/comment-parser": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", @@ -1248,6 +1265,48 @@ "node": ">=8" } }, + "node_modules/editorconfig": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.2.tgz", + "integrity": "sha512-l8CnaNCz0dgCqJQ3hKqW2qtUavm1WLdJUvlxufaZ6JDkds3UFxgUKnKJz982yJPYko/78LkWAiwJadFnFtUBjw==", + "dev": true, + "dependencies": { + "@one-ini/wasm": "0.1.1", + "commander": "^10.0.0", + "minimatch": "6.1.6", + "semver": "^7.3.8" + }, + "bin": { + "editorconfig": "bin/editorconfig" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/editorconfig/node_modules/minimatch": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.6.tgz", + "integrity": "sha512-6bR3UIeh/DF8+p6A9Spyuy67ShOq42rOkHWi7eUe3Ua99Zo5lZfGC6lJJWkeoK4k9jQFT3Pl7czhTXimG2XheA==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -1501,6 +1560,21 @@ "ms": "^2.1.1" } }, + "node_modules/eslint-plugin-editorconfig": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-editorconfig/-/eslint-plugin-editorconfig-4.0.3.tgz", + "integrity": "sha512-5YeDxm6mlv75DrTbRBK9Jw2ogqhjiz8ZCvv9bkuz/MXq0603q9FpQvQlamtas4bX1Gji4YcksY7dq7stPeGaLQ==", + "dev": true, + "dependencies": { + "editorconfig": "^1.0.2", + "eslint": "^8.40.0", + "klona": "^2.0.4" + }, + "engines": { + "node": ">=14", + "npm": ">=8" + } + }, "node_modules/eslint-plugin-es-x": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-6.1.0.tgz", @@ -3207,6 +3281,15 @@ "node": ">=0.10.0" } }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", diff --git a/package.json b/package.json index f288d5b..c70f23e 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ "@commitlint/cli": "^17.6.3", "@commitlint/config-conventional": "^17.6.3", "eslint": "^8.40.0", + "eslint-plugin-editorconfig": "^4.0.3", "eslint-config-standard": "^17.0.0", "eslint-plugin-es-x": "^6.1.0", "eslint-plugin-import": "^2.27.5", @@ -44,6 +45,7 @@ "peerDependencies": { "eslint": "^8.40.0", "eslint-config-standard": "^17.0.0", + "eslint-plugin-editorconfig": "^4.0.3", "eslint-plugin-es-x": "^6.1.0", "eslint-plugin-import": "^2.27.5", "eslint-plugin-jsdoc": "^44.2.4",