Skip to content

Commit c1ebb50

Browse files
author
Sushant Kulkarni
authored
Merge pull request #216 from nitor-infotech-oss/feature/package-upgrade
upgrade packages, fix linting
2 parents 759b61d + 922c981 commit c1ebb50

File tree

7 files changed

+5886
-3984
lines changed

7 files changed

+5886
-3984
lines changed

.eslintrc.js

Lines changed: 58 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
module.exports = {
2-
extends: ['airbnb', 'prettier', 'prettier/react'],
3-
parser: 'babel-eslint',
4-
plugins: ['react', 'jest', 'flowtype', 'react-hooks'],
2+
extends: [
3+
'airbnb',
4+
'plugin:prettier/recommended',
5+
'eslint:recommended',
6+
'plugin:@typescript-eslint/recommended',
7+
'plugin:@typescript-eslint/eslint-recommended',
8+
],
9+
parser: '@typescript-eslint/parser',
10+
plugins: ['react', 'jest', 'react-hooks', '@typescript-eslint'],
511
env: {
612
browser: true,
713
node: true,
@@ -10,10 +16,10 @@ module.exports = {
1016
jest: true,
1117
},
1218
settings: {
13-
ecmascript: 6,
14-
jsx: true,
15-
flowtype: {
16-
onlyFilesWithFlowAnnotation: true,
19+
'import/resolver': {
20+
node: {
21+
extensions: ['.js', '.jsx', '.ts', '.tsx'],
22+
},
1723
},
1824
},
1925
rules: {
@@ -29,7 +35,8 @@ module.exports = {
2935
'no-debugger': 0,
3036
'no-underscore-dangle': 0,
3137
'no-shadow': 0,
32-
'no-unused-vars': [
38+
'no-useless-constructor': 1,
39+
'@typescript-eslint/no-unused-vars': [
3340
2,
3441
{
3542
vars: 'all',
@@ -39,7 +46,16 @@ module.exports = {
3946
},
4047
],
4148
'import/first': 0,
42-
'import/extensions': [2, 'always', { js: 'never', json: 'never' }],
49+
'import/extensions': [
50+
'error',
51+
'ignorePackages',
52+
{
53+
js: 'never',
54+
jsx: 'never',
55+
ts: 'never',
56+
tsx: 'never',
57+
},
58+
],
4359
'import/no-named-as-default': 0,
4460
'arrow-body-style': 0,
4561
'no-else-return': 0,
@@ -52,7 +68,6 @@ module.exports = {
5268
'no-restricted-syntax': 0,
5369
'no-nested-ternary': 0,
5470
'import/prefer-default-export': 0,
55-
'import/no-named-as-default': 0,
5671
curly: [2, 'all'],
5772

5873
// React
@@ -94,36 +109,39 @@ module.exports = {
94109
'jest/no-identical-title': 'error',
95110
'jest/valid-expect': 'error',
96111

112+
// Typescript
113+
'@typescript-eslint/explicit-module-boundary-types': 'off',
114+
97115
// Flow
98-
'flowtype/boolean-style': [2, 'boolean'],
99-
'flowtype/define-flow-type': 1,
100-
'flowtype/delimiter-dangle': 0,
101-
'flowtype/generic-spacing': [2, 'never'],
102-
'flowtype/no-primitive-constructor-types': 2,
103-
'flowtype/no-types-missing-file-annotation': 2,
104-
'flowtype/no-weak-types': [
105-
2,
106-
{ Function: false, Object: false, any: false },
107-
],
108-
'flowtype/object-type-delimiter': [2, 'comma'],
109-
'flowtype/require-parameter-type': 0,
110-
'flowtype/require-return-type': [
111-
0,
112-
'always',
113-
{
114-
annotateUndefined: 'never',
115-
},
116-
],
117-
'flowtype/require-valid-file-annotation': 2,
118-
'flowtype/semi': [2, 'always'],
119-
'flowtype/space-after-type-colon': [2, 'always'],
120-
'flowtype/space-before-generic-bracket': [2, 'never'],
121-
'flowtype/space-before-type-colon': [2, 'never'],
122-
'flowtype/type-id-match': 0,
123-
'flowtype/union-intersection-spacing': [2, 'always'],
124-
'flowtype/use-flow-type': 1,
125-
'flowtype/valid-syntax': 1,
126-
'react-hooks/rules-of-hooks': 'error',
127-
'react-hooks/exhaustive-deps': 'warn',
116+
// 'flowtype/boolean-style': [2, 'boolean'],
117+
// 'flowtype/define-flow-type': 1,
118+
// 'flowtype/delimiter-dangle': 0,
119+
// 'flowtype/generic-spacing': [2, 'never'],
120+
// 'flowtype/no-primitive-constructor-types': 2,
121+
// 'flowtype/no-types-missing-file-annotation': 2,
122+
// 'flowtype/no-weak-types': [
123+
// 2,
124+
// { Function: false, Object: false, any: false },
125+
// ],
126+
// 'flowtype/object-type-delimiter': [2, 'comma'],
127+
// 'flowtype/require-parameter-type': 0,
128+
// 'flowtype/require-return-type': [
129+
// 0,
130+
// 'always',
131+
// {
132+
// annotateUndefined: 'never',
133+
// },
134+
// ],
135+
// 'flowtype/require-valid-file-annotation': 2,
136+
// 'flowtype/semi': [2, 'always'],
137+
// 'flowtype/space-after-type-colon': [2, 'always'],
138+
// 'flowtype/space-before-generic-bracket': [2, 'never'],
139+
// 'flowtype/space-before-type-colon': [2, 'never'],
140+
// 'flowtype/type-id-match': 0,
141+
// 'flowtype/union-intersection-spacing': [2, 'always'],
142+
// 'flowtype/use-flow-type': 1,
143+
// 'flowtype/valid-syntax': 1,
144+
// 'react-hooks/rules-of-hooks': 'error',
145+
// 'react-hooks/exhaustive-deps': 'warn',
128146
},
129147
};

package.json

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,30 @@
44
"private": false,
55
"license": "MIT",
66
"dependencies": {
7-
"@datorama/akita": "^4.14.1",
7+
"@datorama/akita": "^6.1.3",
88
"@nitor-infotech/rxjs-use-selector": "^0.1.1",
9-
"@types/jest": "24.0.23",
10-
"@types/node": "12.12.11",
11-
"@types/react": "16.9.11",
12-
"@types/react-dom": "16.9.4",
9+
"@types/jest": "26.0.23",
10+
"@types/node": "15.6.0",
11+
"@types/react": "17.0.6",
12+
"@types/react-dom": "17.0.5",
1313
"prop-types": "^15.7.2",
14-
"react": "^16.12.0",
15-
"react-dom": "^16.12.0",
16-
"react-markdown": "^4.2.2",
17-
"react-router-dom": "^5.1.2",
18-
"react-scripts": "3.2.0",
19-
"rxjs": "^6.5.3",
20-
"rxjs-compat": "^6.5.3",
21-
"typescript": "3.7.2"
14+
"react": "^17.0.2",
15+
"react-dom": "^17.0.2",
16+
"react-markdown": "^6.0.2",
17+
"react-router-dom": "^5.2.0",
18+
"react-scripts": "4.0.3",
19+
"rxjs": "^7.1.0",
20+
"rxjs-compat": "^6.6.7",
21+
"typescript": "^4.2.4"
2222
},
2323
"scripts": {
2424
"start": "react-scripts start",
2525
"build": "react-scripts build",
2626
"test": "react-scripts test",
2727
"eject": "react-scripts eject",
28-
"lint": "tslint -c tslint.json src/**/*.{ts,tsx} && eslint src/**/*.{js,jsx}",
29-
"prettier": "prettier \"**/*.{ts,tsx,scss,css,js,json,md}\" --write"
28+
"lint": "eslint src/**/*.{js,jsx,ts,tsx}",
29+
"lint:fix": "eslint --fix src/**/*.{js,ts,tsx}",
30+
"format": "prettier \"**/*.{ts,tsx,scss,css,js,json,md}\" --write"
3031
},
3132
"husky": {
3233
"hooks": {
@@ -55,19 +56,22 @@
5556
"not op_mini all"
5657
],
5758
"devDependencies": {
58-
"@datorama/akita-cli": "^6.0.3",
59-
"eslint-config-airbnb": "^18.0.1",
60-
"eslint-config-prettier": "^6.7.0",
61-
"eslint-plugin-flowtype": "^4.4.1",
62-
"eslint-plugin-import": "^2.18.2",
63-
"eslint-plugin-jest": "^23.0.4",
59+
"@datorama/akita-cli": "^6.1.1",
60+
"@typescript-eslint/eslint-plugin": "^4.24.0",
61+
"@typescript-eslint/parser": "^4.24.0",
62+
"eslint": "^7.27.0",
63+
"eslint-config-airbnb": "^18.2.1",
64+
"eslint-config-prettier": "^8.3.0",
65+
"eslint-plugin-flowtype": "^5.7.2",
66+
"eslint-plugin-import": "^2.23.3",
67+
"eslint-plugin-jest": "^24.3.6",
68+
"eslint-plugin-jsx-a11y": "^6.4.1",
6469
"eslint-plugin-jsx-control-statements": "^2.2.1",
65-
"eslint-plugin-react-hooks": "^2.3.0",
66-
"husky": "^3.1.0",
67-
"lint-staged": "^9.4.3",
68-
"prettier": "^1.19.1",
69-
"tslint": "^5.20.1",
70-
"tslint-config-react-app": "^0.0.0",
71-
"tslint-react": "^4.1.0"
70+
"eslint-plugin-prettier": "^3.4.0",
71+
"eslint-plugin-react": "^7.23.2",
72+
"eslint-plugin-react-hooks": "^4.2.0",
73+
"husky": "^6.0.0",
74+
"lint-staged": "^11.0.0",
75+
"prettier": "^2.3.0"
7276
}
7377
}

src/App.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ const App = () => {
1717
<Search />
1818
</div>
1919
</header>
20-
2120
<Home />
2221
</div>
2322
);

src/components/Thread/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import React from 'react';
22

3+
import useSelector from '@nitor-infotech/rxjs-use-selector';
34
import { threadService } from '../../core/threads/thread.service';
45
import { threadQuery } from '../../core/threads/thread.query';
5-
import useSelector from '@nitor-infotech/rxjs-use-selector';
66
import Comment from './Comment';
77

88
const useThreadService = () => {

src/components/ThreadList/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import React from 'react';
22

3+
import useSelector from '@nitor-infotech/rxjs-use-selector';
34
import List from './List';
45
import { threadService } from '../../core/threads/thread.service';
56
import { threadQuery } from '../../core/threads/thread.query';
6-
import useSelector from '@nitor-infotech/rxjs-use-selector';
77

88
import searchGif from '../../assets/searching.gif';
99

tslint.json

Lines changed: 0 additions & 14 deletions
This file was deleted.

0 commit comments

Comments
 (0)