Skip to content

Commit 5026bfa

Browse files
committed
chore(eslint): us prettierrc for better editor integration
1 parent c965a10 commit 5026bfa

File tree

2 files changed

+79
-100
lines changed

2 files changed

+79
-100
lines changed

.eslintrc.js

Lines changed: 74 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,134 +1,108 @@
1-
const { resolve } = require("path");
1+
const { resolve } = require('path');
22

3-
const PACKAGE_DIR = "./packages";
3+
const PACKAGE_DIR = './packages';
44

5-
const noExtraneousOverrides = require("./scripts/packages").map(package => {
5+
const noExtraneousOverrides = require('./scripts/packages').map(package => {
66
return {
77
files: [`${PACKAGE_DIR}/${package}/**/*`],
88
rules: {
9-
"import/no-extraneous-dependencies": [
10-
"error",
9+
'import/no-extraneous-dependencies': [
10+
'error',
1111
{
1212
devDependencies: true,
1313
optionalDependencies: true,
1414
peerDependencies: true,
15-
packageDir: [resolve(__dirname, PACKAGE_DIR, package)]
16-
}
17-
]
18-
}
15+
packageDir: [resolve(__dirname, PACKAGE_DIR, package)],
16+
},
17+
],
18+
},
1919
};
2020
});
2121

2222
module.exports = {
23-
plugins: ["functional", "sonarjs", "wdio", "simple-import-sort", "promise"],
23+
plugins: ['functional', 'sonarjs', 'wdio', 'simple-import-sort', 'promise'],
2424
extends: [
25-
"algolia/jest",
26-
"algolia/typescript",
27-
"plugin:functional/recommended",
28-
"plugin:sonarjs/recommended",
29-
"plugin:wdio/recommended",
30-
"plugin:promise/recommended"
25+
'algolia/jest',
26+
'algolia/typescript',
27+
'plugin:functional/recommended',
28+
'plugin:sonarjs/recommended',
29+
'plugin:wdio/recommended',
30+
'plugin:promise/recommended',
3131
],
3232
rules: {
33-
"eslint-comments/disable-enable-pair": ["error", { allowWholeFile: true }],
34-
"simple-import-sort/sort": "error",
35-
"max-len": [1, 120, 2, { ignoreComments: true }],
36-
"prettier/prettier": [
37-
"error",
38-
{
39-
trailingComma: "es5",
40-
singleQuote: true,
41-
printWidth: 100
42-
}
43-
],
44-
"object-shorthand": [
45-
"error",
46-
"always",
47-
{ avoidExplicitReturnArrows: true }
48-
],
49-
"lines-between-class-members": ["error", "always"],
50-
"newline-before-return": ["error"],
51-
"import/no-extraneous-dependencies": [
52-
"error",
53-
{ packageDir: "./", devDependencies: true }
54-
],
55-
"import/extensions": ["off"],
56-
"no-bitwise": ["off"],
57-
"valid-jsdoc": ["off"],
58-
"functional/no-expression-statement": ["off"],
59-
"functional/no-conditional-statement": ["off"],
60-
"functional/no-throw-statement": ["off"],
61-
"functional/no-mixed-type": ["off"],
62-
"promise/always-return": ["off"],
63-
"functional/functional-parameters": ["off"],
64-
"functional/no-return-void": ["off"],
65-
"@typescript-eslint/no-triple-slash-reference": ["off"]
33+
'eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }],
34+
'simple-import-sort/sort': 'error',
35+
'max-len': [1, 120, 2, { ignoreComments: true }],
36+
'prettier/prettier': ['error', {}, { usePrettierrc: true }],
37+
'object-shorthand': ['error', 'always', { avoidExplicitReturnArrows: true }],
38+
'lines-between-class-members': ['error', 'always'],
39+
'newline-before-return': ['error'],
40+
'import/no-extraneous-dependencies': ['error', { packageDir: './', devDependencies: true }],
41+
'import/extensions': ['off'],
42+
'no-bitwise': ['off'],
43+
'valid-jsdoc': ['off'],
44+
'functional/no-expression-statement': ['off'],
45+
'functional/no-conditional-statement': ['off'],
46+
'functional/no-throw-statement': ['off'],
47+
'functional/no-mixed-type': ['off'],
48+
'promise/always-return': ['off'],
49+
'functional/functional-parameters': ['off'],
50+
'functional/no-return-void': ['off'],
51+
'@typescript-eslint/no-triple-slash-reference': ['off'],
6652
},
6753
settings: {
68-
"import/resolver": {
54+
'import/resolver': {
6955
alias: {
7056
map: [
71-
["^algoliasearch", "./packages/algoliasearch/src"],
72-
[
73-
"@algolia/cache-browser-local-storage",
74-
"./packages/cache-browser-local-storage/src"
75-
],
76-
["@algolia/cache-common", "./packages/cache-common/src"],
77-
["@algolia/cache-in-memory", "./packages/cache-in-memory/src"],
78-
["@algolia/client-account", "./packages/client-account/src"],
79-
["@algolia/client-analytics", "./packages/client-analytics/src"],
80-
["@algolia/client-common", "./packages/client-common/src"],
81-
["@algolia/client-search", "./packages/client-search/src"],
82-
[
83-
"@algolia/client-recommendation",
84-
"./packages/client-recommendation/src"
85-
],
86-
["@algolia/logger-common", "./packages/logger-common/src"],
87-
["@algolia/logger-console", "./packages/logger-console/src"],
88-
[
89-
"@algolia/requester-browser-xhr",
90-
"./packages/requester-browser-xhr/src"
91-
],
92-
["@algolia/requester-common", "./packages/requester-common/src"],
93-
[
94-
"@algolia/requester-node-http",
95-
"./packages/requester-node-http/src"
96-
],
97-
["@algolia/transporter", "./packages/transporter/src"]
57+
['^algoliasearch', './packages/algoliasearch/src'],
58+
['@algolia/cache-browser-local-storage', './packages/cache-browser-local-storage/src'],
59+
['@algolia/cache-common', './packages/cache-common/src'],
60+
['@algolia/cache-in-memory', './packages/cache-in-memory/src'],
61+
['@algolia/client-account', './packages/client-account/src'],
62+
['@algolia/client-analytics', './packages/client-analytics/src'],
63+
['@algolia/client-common', './packages/client-common/src'],
64+
['@algolia/client-search', './packages/client-search/src'],
65+
['@algolia/client-recommendation', './packages/client-recommendation/src'],
66+
['@algolia/logger-common', './packages/logger-common/src'],
67+
['@algolia/logger-console', './packages/logger-console/src'],
68+
['@algolia/requester-browser-xhr', './packages/requester-browser-xhr/src'],
69+
['@algolia/requester-common', './packages/requester-common/src'],
70+
['@algolia/requester-node-http', './packages/requester-node-http/src'],
71+
['@algolia/transporter', './packages/transporter/src'],
9872
],
99-
extensions: [".ts"]
73+
extensions: ['.ts'],
10074
},
10175
node: {
102-
extensions: [".ts"]
103-
}
104-
}
76+
extensions: ['.ts'],
77+
},
78+
},
10579
},
10680
overrides: [
10781
...noExtraneousOverrides,
10882
{
109-
files: ["**/__tests__/**"],
83+
files: ['**/__tests__/**'],
11084
rules: {
111-
"functional/immutable-data": 0,
112-
"import/no-extraneous-dependencies": 0,
113-
"functional/no-let": 0,
114-
"functional/no-this-expression": 0,
115-
"functional/no-loop-statement": 0,
116-
"functional/no-try-statement": 0,
117-
"@typescript-eslint/explicit-function-return-type": 0,
118-
"functional/prefer-readonly-type": 0,
119-
"sonarjs/no-duplicate-string": 0,
120-
"jest/expect-expect": 0
121-
}
85+
'functional/immutable-data': 0,
86+
'import/no-extraneous-dependencies': 0,
87+
'functional/no-let': 0,
88+
'functional/no-this-expression': 0,
89+
'functional/no-loop-statement': 0,
90+
'functional/no-try-statement': 0,
91+
'@typescript-eslint/explicit-function-return-type': 0,
92+
'functional/prefer-readonly-type': 0,
93+
'sonarjs/no-duplicate-string': 0,
94+
'jest/expect-expect': 0,
95+
},
12296
},
12397
{
124-
files: ["**/src/types/*Response.ts"],
98+
files: ['**/src/types/*Response.ts'],
12599
rules: {
126-
"functional/prefer-readonly-type": 0
127-
}
128-
}
100+
'functional/prefer-readonly-type': 0,
101+
},
102+
},
129103
],
130104
globals: {
131-
testing: "readonly",
132-
browser: "readonly"
133-
}
105+
testing: 'readonly',
106+
browser: 'readonly',
107+
},
134108
};

.prettierrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"trailingComma": "es5",
3+
"singleQuote": true,
4+
"printWidth": 100
5+
}

0 commit comments

Comments
 (0)