From e0ace9955afd3bad711e24fa51f4ab16767a229e Mon Sep 17 00:00:00 2001 From: uiolee <22849383+uiolee@users.noreply.github.com> Date: Fri, 7 Jul 2023 21:26:18 +0800 Subject: [PATCH] update eslint --- .eslintrc.js | 37 +++++++++++++++++++++++++++++++++++++ .eslintrc.json | 25 ------------------------- .github/workflows/lint.yml | 20 ++++++++++++++++++++ .travis.yml | 3 --- package.json | 13 +++++++------ 5 files changed, 64 insertions(+), 34 deletions(-) create mode 100644 .eslintrc.js delete mode 100644 .eslintrc.json create mode 100644 .github/workflows/lint.yml delete mode 100644 .travis.yml diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 00000000..48b47941 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,37 @@ +module.exports = { + 'root': true, + 'env': { + 'browser': true, + 'es2021': true, + 'node': true, + 'webextensions': true + }, + 'extends': [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended' + ], + 'globals': { + 'globalThis': false + }, + 'overrides': [ + ], + 'parser': '@typescript-eslint/parser', + 'parserOptions': { + 'ecmaVersion': 'latest' + }, + 'plugins': [ + '@typescript-eslint' + ], + 'rules': { + 'no-console': 0, + 'no-unused-vars': ['warn', { 'vars': 'all', 'args': 'after-used' }], + 'no-undef': ['warn'], + 'no-proto': ['error'], + 'prefer-arrow-callback': ['warn'], + 'prefer-spread': ['warn'], + 'indent': ['error', 2], + 'linebreak-style': ['error', 'unix'], + 'quotes': ['error', 'single'], + 'semi': ['error', 'always'] + } +}; diff --git a/.eslintrc.json b/.eslintrc.json deleted file mode 100644 index 22a593cb..00000000 --- a/.eslintrc.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "root": true, - "parserOptions": { - "ecmaVersion": 2017 - }, - "env": { - "browser": true, - "es6": true, - "webextensions": true - }, - "globals": { - "globalThis": false - }, - "extends": [ - "eslint:recommended" - ], - "rules": { - "no-console": 0, - "no-unused-vars": ["warn", { "vars": "all", "args": "after-used" } ], - "no-undef": ["warn"], - "no-proto": ["error"], - "prefer-arrow-callback": ["warn"], - "prefer-spread": ["warn"] - } -} diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000..1195d6a1 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,20 @@ +name: lint +on: [pull_request] + +jobs: + eslint: + name: eslint + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: write + + steps: + - uses: actions/checkout@v3 + + - uses: reviewdog/action-eslint@v1 + with: + reporter: github-pr-review + eslint_flags: "." + filter_mode: "file" + fail_on_error: true diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 6892e2f8..00000000 --- a/.travis.yml +++ /dev/null @@ -1,3 +0,0 @@ -language: node_js -node_js: stable -sudo: false diff --git a/package.json b/package.json index a47007c4..9d3fcd62 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,10 @@ "version": "1.0.0", "description": "Example Firefox add-ons created using the WebExtensions API", "devDependencies": { - "eslint": "^4.4.1" + "@typescript-eslint/eslint-plugin": "^5.61.0", + "@typescript-eslint/parser": "^5.61.0", + "babel-eslint": "^10.1.0", + "eslint": "^8.44.0" }, "repository": { "type": "git", @@ -12,7 +15,8 @@ }, "scripts": { "test": "eslint .", - "lint": "eslint ." + "lint": "eslint .", + "lint:fix": "eslint . --fix" }, "license": "MIT", "bugs": { @@ -25,8 +29,5 @@ "firefox", "mozilla" ], - "homepage": "https://developer.mozilla.org/Add-ons/WebExtensions/Examples", - "dependencies": { - "babel-eslint": "^7.2.3" - } + "homepage": "https://developer.mozilla.org/Add-ons/WebExtensions/Examples" }