Skip to content

Commit c0aa800

Browse files
committed
💥 update typescript settings
1 parent 2ad298c commit c0aa800

File tree

4 files changed

+33
-18
lines changed

4 files changed

+33
-18
lines changed

lib/configs/_ts.js

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,34 @@ const moduleConfig = require("./+modules")
1010
module.exports = {
1111
overrides: [
1212
merge({ files: ["*.ts", "*.tsx"] }, moduleConfig, {
13-
parser: require.resolve("typescript-eslint-parser"),
13+
parser: require.resolve("@typescript-eslint/parser"),
14+
parserOptions: {
15+
loggerFn: false,
16+
},
1417
rules: {
1518
// Enabled rules
1619
"@mysticatea/ts/adjacent-overload-signatures": "error",
20+
"@mysticatea/ts/array-type": "error",
1721
"@mysticatea/ts/class-name-casing": "error",
1822
"@mysticatea/ts/explicit-member-accessibility": "error",
23+
"@mysticatea/ts/interface-name-prefix": "error",
1924
"@mysticatea/ts/member-naming": "error",
2025
"@mysticatea/ts/no-angle-bracket-type-assertion": "error",
2126
"@mysticatea/ts/no-array-constructor": "error",
2227
"@mysticatea/ts/no-empty-interface": "error",
28+
"@mysticatea/ts/no-extraneous-class": "error",
2329
"@mysticatea/ts/no-inferrable-types": "error",
30+
"@mysticatea/ts/no-misused-new": "error",
31+
"@mysticatea/ts/no-object-literal-type-assertion": "error",
2432
"@mysticatea/ts/no-parameter-properties": "error",
33+
"@mysticatea/ts/no-this-alias": [
34+
"error",
35+
{ allowDestructuring: true },
36+
],
2537
"@mysticatea/ts/no-triple-slash-reference": "error",
2638
"@mysticatea/ts/no-var-requires": "error",
2739
"@mysticatea/ts/prefer-namespace-keyword": "error",
40+
"@mysticatea/ts/restrict-plus-operands": "error",
2841
"@mysticatea/prettier": [
2942
"error",
3043
{
@@ -50,9 +63,11 @@ module.exports = {
5063
"no-unused-vars": "off",
5164
"no-use-before-define": "off",
5265
"one-var": "off",
66+
"@mysticatea/ts/ban-types": "off",
67+
"@mysticatea/ts/camelcase": "off", // ?
5368
"@mysticatea/ts/explicit-function-return-type": "off", // I want but this is not so...
5469
"@mysticatea/ts/generic-type-naming": "off",
55-
"@mysticatea/ts/interface-name-prefix": "off",
70+
"@mysticatea/ts/indent": "off", // favor of Prettier.
5671
"@mysticatea/ts/member-delimiter-style": "off", // favor of Prettier.
5772
"@mysticatea/ts/member-ordering": "off",
5873
"@mysticatea/ts/no-explicit-any": "off",
@@ -61,6 +76,7 @@ module.exports = {
6176
"@mysticatea/ts/no-type-alias": "off",
6277
"@mysticatea/ts/no-unused-vars": "off", // tsc verifies it.
6378
"@mysticatea/ts/no-use-before-define": "off", // tsc verifies it.
79+
"@mysticatea/ts/prefer-interface": "off",
6480
"@mysticatea/ts/type-annotation-spacing": "off", // favor of Prettier.
6581
},
6682
settings: {

lib/configs/es5.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ module.exports = merge(
158158
],
159159
"no-use-before-define": ["error", "nofunc"],
160160
"no-useless-call": "error",
161+
"no-useless-catch": "error",
161162
"no-useless-concat": "error",
162163
"no-useless-escape": "error",
163164
"no-useless-return": "error",

lib/foreign-rules/ts.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*/
55
"use strict"
66

7-
const rules = require("eslint-plugin-typescript").rules
7+
const rules = require("@typescript-eslint/eslint-plugin").rules
88

99
module.exports = Object.keys(rules).reduce((obj, ruleId) => {
1010
obj[`ts/${ruleId}`] = rules[ruleId]

package.json

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,23 @@
1010
"lib"
1111
],
1212
"peerDependencies": {
13-
"eslint": ">=5.3.0"
13+
"eslint": ">=5.12.1"
1414
},
1515
"dependencies": {
16+
"@typescript-eslint/eslint-plugin": "~1.1.1",
17+
"@typescript-eslint/parser": "~1.1.1",
1618
"eslint-plugin-eslint-comments": "~3.0.1",
1719
"eslint-plugin-eslint-plugin": "~2.0.0",
1820
"eslint-plugin-node": "~8.0.0",
1921
"eslint-plugin-prettier": "~3.0.0",
20-
"eslint-plugin-typescript": "~0.14.0",
21-
"eslint-plugin-vue": "~5.0.0",
22+
"eslint-plugin-vue": "~5.1.0",
2223
"prettier": "~1.14.3",
23-
"typescript-eslint-parser": "^21.0.2",
24-
"vue-eslint-parser": "^4.0.3"
24+
"vue-eslint-parser": "^5.0.0"
2525
},
2626
"devDependencies": {
2727
"@mysticatea/eslint-plugin": "^7.0.0",
28-
"chokidar-cli": "^1.2.1",
2928
"codecov": "^3.1.0",
30-
"eslint": "~5.10.0",
29+
"eslint": "~5.12.1",
3130
"fs-extra": "^7.0.1",
3231
"globals": "^11.9.0",
3332
"mocha": "^5.2.0",
@@ -37,17 +36,16 @@
3736
"rimraf": "^2.6.2"
3837
},
3938
"scripts": {
40-
"preversion": "run-s clean update test",
41-
"version": "eslint lib/rules --fix && git add lib",
42-
"postversion": "git push && git push --tags",
4339
"clean": "rimraf .nyc_output coverage",
40+
"coverage": "nyc report --reporter lcov && opener coverage/lcov-report/index.html",
41+
"codecov": "nyc report --reporter lcov && codecov",
4442
"lint": "eslint lib scripts tests",
45-
"pretest": "npm run -s lint",
46-
"test": "nyc mocha \"tests/lib/**/*.js\" --reporter dot",
43+
"test": "npm run -s lint && nyc mocha \"tests/lib/**/*.js\" --reporter dot",
4744
"update": "node scripts/generate-browser-globals && node scripts/generate-configs && node scripts/generate-rules",
48-
"watch": "chokidar lib tests --initial --command \"npm test && nyc report --reporter lcov\"",
49-
"coverage": "nyc report --reporter lcov && opener coverage/lcov-report/index.html",
50-
"codecov": "nyc report --reporter lcovonly && codecov"
45+
"preversion": "run-s clean update test",
46+
"version": "eslint lib/rules --fix && git add lib",
47+
"postversion": "git push && git push --tags",
48+
"watch": "mocha \"tests/lib/**/*.js\" --reporter dot --watch --growl"
5149
},
5250
"repository": {
5351
"type": "git",

0 commit comments

Comments
 (0)