@evaneos/front-config 1.0.5 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -4
- package/package.json +1 -1
- package/eslint/index.js.map +0 -1
- package/eslint/index.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -15,22 +15,83 @@ npm install @evaneos/front-config@latest
|
|
|
15
15
|
In your `eslint.config.(c|m)js` file, add:
|
|
16
16
|
|
|
17
17
|
```cjs
|
|
18
|
-
const evaneosConfig = require(
|
|
18
|
+
const evaneosConfig = require('@evaneos/front-config/eslint/index.js');
|
|
19
19
|
module.export = [...evaneosConfig];
|
|
20
20
|
```
|
|
21
21
|
|
|
22
22
|
```mjs
|
|
23
|
-
import evaneosConfig from
|
|
23
|
+
import evaneosConfig from '@evaneos/front-config/eslint/index.mjs';
|
|
24
24
|
export default [...evaneosConfig];
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
+
You may want to turn off the new rules, here is an example from rm
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
import globals from 'globals';
|
|
31
|
+
import evaneosConfig from '@evaneos/front-config/eslint/index.mjs';
|
|
32
|
+
|
|
33
|
+
export default [
|
|
34
|
+
...evaneosConfig,
|
|
35
|
+
{
|
|
36
|
+
files: ['**/*.ts', '**/*.tsx'],
|
|
37
|
+
rules: {
|
|
38
|
+
'@typescript-eslint/ban-ts-comment': 'off',
|
|
39
|
+
'@typescript-eslint/no-unsafe-assignment': 'off',
|
|
40
|
+
'@typescript-eslint/no-unsafe-member-access': 'off',
|
|
41
|
+
'@typescript-eslint/no-unsafe-argument': 'off',
|
|
42
|
+
'@typescript-eslint/no-unsafe-return': 'off',
|
|
43
|
+
'@typescript-eslint/no-unsafe-call': 'off',
|
|
44
|
+
'@typescript-eslint/no-duplicate-type-constituents': 'off',
|
|
45
|
+
'@typescript-eslint/no-unnecessary-type-assertion': 'off',
|
|
46
|
+
'@typescript-eslint/no-unused-expressions': 'off',
|
|
47
|
+
'@typescript-eslint/unbound-method': 'off',
|
|
48
|
+
'@typescript-eslint/no-unsafe-enum-comparison': 'off',
|
|
49
|
+
'@typescript-eslint/only-throw-error': 'off',
|
|
50
|
+
'@typescript-eslint/no-redundant-type-constituents': 'off',
|
|
51
|
+
'@typescript-eslint/await-thenable': 'off',
|
|
52
|
+
'@typescript-eslint/require-await': 'off',
|
|
53
|
+
'no-constant-binary-expression': 'off',
|
|
54
|
+
'@typescript-eslint/no-empty-function': 'off',
|
|
55
|
+
'jsx-a11y/alt-text': 'off',
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
];
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
You may want to lint some files differently, for example if its node or browser or test files, if so you can do like this:
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
{
|
|
67
|
+
files: [
|
|
68
|
+
'webpack.config.dev.js',
|
|
69
|
+
'webpack.config.prod.js',
|
|
70
|
+
'webpack.config.common.js',
|
|
71
|
+
'.jestrc.js',
|
|
72
|
+
'.prettierrc.js',
|
|
73
|
+
'babel.config.js',
|
|
74
|
+
'jest/mediaFileTransformer.js',
|
|
75
|
+
'jest/setup.js',
|
|
76
|
+
],
|
|
77
|
+
rules: {
|
|
78
|
+
'@typescript-eslint/no-require-imports': 'off',
|
|
79
|
+
},
|
|
80
|
+
languageOptions: {
|
|
81
|
+
globals: {
|
|
82
|
+
...globals.node,
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
```
|
|
87
|
+
|
|
27
88
|
## TSConfig
|
|
28
89
|
|
|
29
90
|
In your `tsconfig.json` file, add:
|
|
30
91
|
|
|
31
92
|
```json
|
|
32
93
|
{
|
|
33
|
-
|
|
94
|
+
"extends": "@evaneos/front-config/config/tsconfig.json"
|
|
34
95
|
}
|
|
35
96
|
```
|
|
36
97
|
|
|
@@ -40,7 +101,7 @@ In your `.prettierrc.js` file add:
|
|
|
40
101
|
|
|
41
102
|
```js
|
|
42
103
|
module.exports = {
|
|
43
|
-
|
|
104
|
+
...require('@evaneos/front-config/prettier/index.js'),
|
|
44
105
|
};
|
|
45
106
|
```
|
|
46
107
|
|
package/package.json
CHANGED
package/eslint/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../linting/eslint.config.ts","../linting/rules/react.ts","../linting/rules/test.ts","../linting/rules/override.ts"],"sourcesContent":["import eslintConfigPrettier from \"eslint-config-prettier\";\n\nimport eslint from \"@eslint/js\";\nimport tseslint from \"typescript-eslint\";\n\nimport reactLint from \"./rules/react\";\nimport testLint from \"./rules/test\";\nimport evaneosOverrides from \"./rules/override\";\n\nexport default tseslint.config(\n eslint.configs.recommended,\n tseslint.configs.recommendedTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n projectService: true,\n tsconfigRootDir: process.cwd(),\n },\n },\n },\n {\n files: [\"**/*.js\", \"**/*.cjs\"],\n extends: [tseslint.configs.disableTypeChecked],\n },\n eslintConfigPrettier,\n testLint,\n ...reactLint,\n // custom evaneos rules\n ...evaneosOverrides\n);\n","import reactPlugin from \"eslint-plugin-react\";\n\nexport default [\n reactPlugin.configs.flat.recommended,\n reactPlugin.configs.flat[\"jsx-runtime\"],\n {\n rules: {\n \"react/display-name\": 0,\n \"react/prop-types\": 0,\n \"react/react-in-jsx-scope\": 0,\n },\n },\n];\n","import testingLibrary from \"eslint-plugin-testing-library\";\r\n\r\nexport default {\r\n files: [\"**/__tests__/**/*.[jt]s?(x)\", \"**/?(*.)+(spec|test).[jt]s?(x)\"],\r\n ...testingLibrary.configs[\"flat/react\"],\r\n};\r\n","export default [\n {\n rules: {\n \"no-process-env\": 0,\n \"prefer-const\": 1,\n \"prefer-destructuring\": 1,\n \"prefer-spread\": 1,\n \"arrow-body-style\": 0,\n },\n },\n] as const;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oCAAiC;AAEjC,gBAAmB;AACnB,+BAAqB;;;ACHrB,iCAAwB;AAExB,IAAO,gBAAQ;AAAA,EACb,2BAAAA,QAAY,QAAQ,KAAK;AAAA,EACzB,2BAAAA,QAAY,QAAQ,KAAK,aAAa;AAAA,EACtC;AAAA,IACE,OAAO;AAAA,MACL,sBAAsB;AAAA,MACtB,oBAAoB;AAAA,MACpB,4BAA4B;AAAA,IAC9B;AAAA,EACF;AACF;;;ACZA,2CAA2B;AAE3B,IAAO,eAAQ;AAAA,EACb,OAAO,CAAC,+BAA+B,gCAAgC;AAAA,GACpE,qCAAAC,QAAe,QAAQ,YAAY;;;ACJxC,IAAO,mBAAQ;AAAA,EACb;AAAA,IACE,OAAO;AAAA,MACL,kBAAkB;AAAA,MAClB,gBAAgB;AAAA,MAChB,wBAAwB;AAAA,MACxB,iBAAiB;AAAA,MACjB,oBAAoB;AAAA,IACtB;AAAA,EACF;AACF;;;AHDA,IAAO,wBAAQ,yBAAAC,QAAS;AAAA,EACtB,UAAAC,QAAO,QAAQ;AAAA,EACf,yBAAAD,QAAS,QAAQ;AAAA,EACjB;AAAA,IACE,iBAAiB;AAAA,MACf,eAAe;AAAA,QACb,gBAAgB;AAAA,QAChB,iBAAiB,QAAQ,IAAI;AAAA,MAC/B;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,OAAO,CAAC,WAAW,UAAU;AAAA,IAC7B,SAAS,CAAC,yBAAAA,QAAS,QAAQ,kBAAkB;AAAA,EAC/C;AAAA,EACA,8BAAAE;AAAA,EACA;AAAA,EACA,GAAG;AAAA,EAEH,GAAG;AACL;","names":["reactPlugin","testingLibrary","tseslint","eslint","eslintConfigPrettier"]}
|
package/eslint/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../linting/eslint.config.ts","../linting/rules/react.ts","../linting/rules/test.ts","../linting/rules/override.ts"],"sourcesContent":["import eslintConfigPrettier from \"eslint-config-prettier\";\n\nimport eslint from \"@eslint/js\";\nimport tseslint from \"typescript-eslint\";\n\nimport reactLint from \"./rules/react\";\nimport testLint from \"./rules/test\";\nimport evaneosOverrides from \"./rules/override\";\n\nexport default tseslint.config(\n eslint.configs.recommended,\n tseslint.configs.recommendedTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n projectService: true,\n tsconfigRootDir: process.cwd(),\n },\n },\n },\n {\n files: [\"**/*.js\", \"**/*.cjs\"],\n extends: [tseslint.configs.disableTypeChecked],\n },\n eslintConfigPrettier,\n testLint,\n ...reactLint,\n // custom evaneos rules\n ...evaneosOverrides\n);\n","import reactPlugin from \"eslint-plugin-react\";\n\nexport default [\n reactPlugin.configs.flat.recommended,\n reactPlugin.configs.flat[\"jsx-runtime\"],\n {\n rules: {\n \"react/display-name\": 0,\n \"react/prop-types\": 0,\n \"react/react-in-jsx-scope\": 0,\n },\n },\n];\n","import testingLibrary from \"eslint-plugin-testing-library\";\r\n\r\nexport default {\r\n files: [\"**/__tests__/**/*.[jt]s?(x)\", \"**/?(*.)+(spec|test).[jt]s?(x)\"],\r\n ...testingLibrary.configs[\"flat/react\"],\r\n};\r\n","export default [\n {\n rules: {\n \"no-process-env\": 0,\n \"prefer-const\": 1,\n \"prefer-destructuring\": 1,\n \"prefer-spread\": 1,\n \"arrow-body-style\": 0,\n },\n },\n] as const;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAO,0BAA0B;AAEjC,OAAO,YAAY;AACnB,OAAO,cAAc;;;ACHrB,OAAO,iBAAiB;AAExB,IAAO,gBAAQ;AAAA,EACb,YAAY,QAAQ,KAAK;AAAA,EACzB,YAAY,QAAQ,KAAK,aAAa;AAAA,EACtC;AAAA,IACE,OAAO;AAAA,MACL,sBAAsB;AAAA,MACtB,oBAAoB;AAAA,MACpB,4BAA4B;AAAA,IAC9B;AAAA,EACF;AACF;;;ACZA,OAAO,oBAAoB;AAE3B,IAAO,eAAQ;AAAA,EACb,OAAO,CAAC,+BAA+B,gCAAgC;AAAA,GACpE,eAAe,QAAQ,YAAY;;;ACJxC,IAAO,mBAAQ;AAAA,EACb;AAAA,IACE,OAAO;AAAA,MACL,kBAAkB;AAAA,MAClB,gBAAgB;AAAA,MAChB,wBAAwB;AAAA,MACxB,iBAAiB;AAAA,MACjB,oBAAoB;AAAA,IACtB;AAAA,EACF;AACF;;;AHDA,IAAO,wBAAQ,SAAS;AAAA,EACtB,OAAO,QAAQ;AAAA,EACf,SAAS,QAAQ;AAAA,EACjB;AAAA,IACE,iBAAiB;AAAA,MACf,eAAe;AAAA,QACb,gBAAgB;AAAA,QAChB,iBAAiB,QAAQ,IAAI;AAAA,MAC/B;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,OAAO,CAAC,WAAW,UAAU;AAAA,IAC7B,SAAS,CAAC,SAAS,QAAQ,kBAAkB;AAAA,EAC/C;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AAAA,EAEH,GAAG;AACL;","names":[]}
|