diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..11b7cd1 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +dist/* +emojis.json \ No newline at end of file diff --git a/.eslintrc.json b/.eslintrc.json index 780693c..6cc5f63 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -17,8 +17,7 @@ "ecmaVersion": 2018, "sourceType": "module", "ecmaFeatures": { - "impliedStrict": true, - "jsx": true + "impliedStrict": true } }, "plugins": ["import", "prettiest", "@typescript-eslint"], diff --git a/package-lock.json b/package-lock.json index 94cd5f0..db4cc6a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -195,12 +195,12 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-1.11.0.tgz", - "integrity": "sha512-mXv9ccCou89C8/4avKHuPB2WkSZyY/XcTQUXd5LFZAcLw1I3mWYVjUu6eS9Ja0QkP/ClolbcW9tb3Ov/pMdcqw==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-1.12.0.tgz", + "integrity": "sha512-J/ZTZF+pLNqjXBGNfq5fahsoJ4vJOkYbitWPavA05IrZ7BXUaf4XWlhUB/ic1lpOGTRpLWF+PLAePjiHp6dz8g==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "1.11.0", + "@typescript-eslint/experimental-utils": "1.12.0", "eslint-utils": "^1.3.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^2.0.1", @@ -208,31 +208,31 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-1.11.0.tgz", - "integrity": "sha512-7LbfaqF6B8oa8cp/315zxKk8FFzosRzzhF8Kn/ZRsRsnpm7Qcu25cR/9RnAQo5utZ2KIWVgaALr+ZmcbG47ruw==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-1.12.0.tgz", + "integrity": "sha512-s0soOTMJloytr9GbPteMLNiO2HvJ+qgQkRNplABXiVw6vq7uQRvidkby64Gqt/nA7pys74HksHwRULaB/QRVyw==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "1.11.0", + "@typescript-eslint/typescript-estree": "1.12.0", "eslint-scope": "^4.0.0" } }, "@typescript-eslint/parser": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-1.11.0.tgz", - "integrity": "sha512-5xBExyXaxVyczrZvbRKEXvaTUFFq7gIM9BynXukXZE0zF3IQP/FxF4mPmmh3gJ9egafZFqByCpPTFm3dk4SY7Q==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-1.12.0.tgz", + "integrity": "sha512-0uzbaa9ZLCA5yMWJywnJJ7YVENKGWVUhJDV5UrMoldC5HoI54W5kkdPhTfmtFKpPFp93MIwmJj0/61ztvmz5Dw==", "dev": true, "requires": { "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "1.11.0", - "@typescript-eslint/typescript-estree": "1.11.0", + "@typescript-eslint/experimental-utils": "1.12.0", + "@typescript-eslint/typescript-estree": "1.12.0", "eslint-visitor-keys": "^1.0.0" } }, "@typescript-eslint/typescript-estree": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-1.11.0.tgz", - "integrity": "sha512-fquUHF5tAx1sM2OeRCC7wVxFd1iMELWMGCzOSmJ3pLzArj9+kRixdlC4d5MncuzXpjEqc6045p3KwM0o/3FuUA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-1.12.0.tgz", + "integrity": "sha512-nwN6yy//XcVhFs0ZyU+teJHB8tbCm7AIA8mu6E2r5hu6MajwYBY3Uwop7+rPZWUN/IUOHpL8C+iUPMDVYUU3og==", "dev": true, "requires": { "lodash.unescape": "4.0.1", @@ -2865,19 +2865,6 @@ } } }, - "eslint-loader": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz", - "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==", - "dev": true, - "requires": { - "loader-fs-cache": "^1.0.0", - "loader-utils": "^1.0.2", - "object-assign": "^4.0.1", - "object-hash": "^1.1.4", - "rimraf": "^2.6.1" - } - }, "eslint-module-utils": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz", @@ -3543,17 +3530,6 @@ } } }, - "find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, "find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", @@ -3643,9 +3619,9 @@ "dev": true }, "fork-ts-checker-webpack-plugin": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.3.7.tgz", - "integrity": "sha512-n55O6fIIZrPdWFSQ0WYBs6Umdx0EatCvCM7xstegycDucnDQJmyUO9tc1lvabTh8ojL6a9aN/Sh0iFXZxq4mfA==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.4.2.tgz", + "integrity": "sha512-y6A8nwRp3/mq1nEpuMKneTWz3TGBkXytkIfpcBdLFO+tsADQwdhIg1VvnMSi7q86r1UGJcSruRboYLwo1RF5Ew==", "dev": true, "requires": { "babel-code-frame": "^6.22.0", @@ -5752,9 +5728,9 @@ } }, "linkify-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", - "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", "dev": true, "requires": { "uc.micro": "^1.0.1" @@ -5780,16 +5756,6 @@ } } }, - "loader-fs-cache": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.2.tgz", - "integrity": "sha512-70IzT/0/L+M20jUlEqZhZyArTU6VKLRTYRDAYN26g4jfzpJqjipLL3/hgYpySqI9PwsVRHHFja0LfEmsx9X2Cw==", - "dev": true, - "requires": { - "find-cache-dir": "^0.1.1", - "mkdirp": "0.5.1" - } - }, "loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", @@ -6830,12 +6796,6 @@ } } }, - "object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", - "dev": true - }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -7299,15 +7259,6 @@ "pinkie": "^2.0.0" } }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, - "requires": { - "find-up": "^1.0.0" - } - }, "pngquant-bin": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-5.0.2.tgz", @@ -9743,9 +9694,9 @@ "dev": true }, "vsce": { - "version": "1.64.0", - "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.64.0.tgz", - "integrity": "sha512-t3R7QTe2nAXQZs2kD+nA8GjdlX8pAQlnzxaNTG2976i5cyQ8r+ZsMNa/f9PDt7bhjcQM+u/fL+LkNuw+hwoy2A==", + "version": "1.65.0", + "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.65.0.tgz", + "integrity": "sha512-1bGyeoaxjhNVz9fVAqUzGWc1e5CxsxZFpVSnS/anRVyZju0y4DJCPi685WkBsRYU/lfp3AI1smpatuSfb2Lllg==", "dev": true, "requires": { "azure-devops-node-api": "^7.2.0", @@ -9926,9 +9877,9 @@ } }, "webpack-cli": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.5.tgz", - "integrity": "sha512-w0j/s42c5UhchwTmV/45MLQnTVwRoaUTu9fM5LuyOd/8lFoCNCELDogFoecx5NzRUndO0yD/gF2b02XKMnmAWQ==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.6.tgz", + "integrity": "sha512-0vEa83M7kJtxK/jUhlpZ27WHIOndz5mghWL2O53kiDoA9DIxSKnfqB92LoqEn77cT4f3H2cZm1BMEat/6AZz3A==", "dev": true, "requires": { "chalk": "2.4.2", diff --git a/package.json b/package.json index c93c358..3e71c8d 100644 --- a/package.json +++ b/package.json @@ -5330,18 +5330,17 @@ "@types/lodash-es": "4.17.3", "@types/node": "10.11.7", "@types/vscode": "1.31.0", - "@typescript-eslint/eslint-plugin": "1.11.0", - "@typescript-eslint/parser": "1.11.0", + "@typescript-eslint/eslint-plugin": "1.12.0", + "@typescript-eslint/parser": "1.12.0", "clean-webpack-plugin": "3.0.0", "circular-dependency-plugin": "5.0.2", "css-loader": "3.0.0", "eslint": "6.0.1", "eslint-cli": "1.1.1", "eslint-config-prettier": "6.0.0", - "eslint-loader": "2.2.1", "eslint-plugin-import": "2.18.0", "eslint-plugin-prettiest": "0.0.2", - "fork-ts-checker-webpack-plugin": "1.3.7", + "fork-ts-checker-webpack-plugin": "1.4.2", "html-webpack-exclude-assets-plugin": "0.0.7", "html-webpack-inline-source-plugin": "0.0.10", "html-webpack-plugin": "3.2.0", @@ -5354,9 +5353,9 @@ "terser-webpack-plugin": "1.3.0", "ts-loader": "6.0.4", "typescript": "3.5.3", - "vsce": "1.64.0", + "vsce": "1.65.0", "webpack": "4.35.3", - "webpack-cli": "3.3.5", + "webpack-cli": "3.3.6", "webpack-bundle-analyzer": "3.3.2" } } diff --git a/webpack.config.js b/webpack.config.js index 6053f3e..b038baa 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -37,6 +37,7 @@ function getExtensionConfig(env) { new CleanPlugin({ cleanOnceBeforeBuildPatterns: ['**/*', '!**/webviews/**'] }), new ForkTsCheckerPlugin({ async: false, + eslint: true, useTypescriptIncrementalApi: true }) ]; @@ -95,18 +96,6 @@ function getExtensionConfig(env) { module: { rules: [ { - enforce: 'pre', - exclude: /node_modules|\.d\.ts$/, - test: /\.tsx?$/, - use: { - loader: 'eslint-loader', - options: { - cache: true, - failOnError: true - } - } - }, - { exclude: /node_modules|\.d\.ts$/, test: /\.tsx?$/, use: { @@ -150,6 +139,7 @@ function getWebviewsConfig(env) { new ForkTsCheckerPlugin({ tsconfig: path.resolve(__dirname, 'webviews.tsconfig.json'), async: false, + eslint: true, useTypescriptIncrementalApi: true }), new MiniCssExtractPlugin({ @@ -234,18 +224,6 @@ function getWebviewsConfig(env) { module: { rules: [ { - enforce: 'pre', - exclude: /node_modules|\.d\.ts$/, - test: /\.tsx?$/, - use: { - loader: 'eslint-loader', - options: { - cache: true, - failOnError: true - } - } - }, - { exclude: /node_modules|\.d\.ts$/, test: /\.tsx?$/, use: {