mirror of
https://github.com/BradNut/dotfiles
synced 2025-09-08 17:40:19 +00:00
Changing eslint to match Wes Bos and making JS file. Editing vscode settings and changing to JSON file.
This commit is contained in:
parent
a40b3f98d7
commit
1b8e82f787
3 changed files with 132 additions and 137 deletions
136
.eslintrc
136
.eslintrc
|
|
@ -1,136 +0,0 @@
|
||||||
{
|
|
||||||
"extends": [
|
|
||||||
"airbnb",
|
|
||||||
"prettier",
|
|
||||||
"prettier/react"
|
|
||||||
],
|
|
||||||
"parser": "babel-eslint",
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaVersion": 2018,
|
|
||||||
"ecmaFeatures": {
|
|
||||||
"impliedStrict": true,
|
|
||||||
"classes": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"browser": true,
|
|
||||||
"node": true,
|
|
||||||
"jquery": true,
|
|
||||||
"jest": true
|
|
||||||
},
|
|
||||||
"rules": {
|
|
||||||
"no-debugger": 0,
|
|
||||||
"no-alert": 0,
|
|
||||||
"no-await-in-loop": 0,
|
|
||||||
"no-return-assign": [
|
|
||||||
"error",
|
|
||||||
"except-parens"
|
|
||||||
],
|
|
||||||
"no-restricted-syntax": [
|
|
||||||
2,
|
|
||||||
"ForInStatement",
|
|
||||||
"LabeledStatement",
|
|
||||||
"WithStatement"
|
|
||||||
],
|
|
||||||
"no-unused-vars": [
|
|
||||||
1,
|
|
||||||
{
|
|
||||||
"ignoreSiblings": true,
|
|
||||||
"argsIgnorePattern": "res|next|^err"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"prefer-const": [
|
|
||||||
"error",
|
|
||||||
{
|
|
||||||
"destructuring": "all",
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"arrow-body-style": [
|
|
||||||
2,
|
|
||||||
"as-needed"
|
|
||||||
],
|
|
||||||
"no-unused-expressions": [
|
|
||||||
2,
|
|
||||||
{
|
|
||||||
"allowTaggedTemplates": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"no-param-reassign": [
|
|
||||||
2,
|
|
||||||
{
|
|
||||||
"props": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"no-console": 0,
|
|
||||||
"import/prefer-default-export": 0,
|
|
||||||
"import": 0,
|
|
||||||
"func-names": 0,
|
|
||||||
"space-before-function-paren": 0,
|
|
||||||
"comma-dangle": 0,
|
|
||||||
"max-len": 0,
|
|
||||||
"import/extensions": 0,
|
|
||||||
"no-underscore-dangle": 0,
|
|
||||||
"consistent-return": 0,
|
|
||||||
"react/display-name": 1,
|
|
||||||
"react/no-array-index-key": 0,
|
|
||||||
"react/react-in-jsx-scope": 0,
|
|
||||||
"react/prefer-stateless-function": 0,
|
|
||||||
"react/forbid-prop-types": 0,
|
|
||||||
"react/no-unescaped-entities": 0,
|
|
||||||
"jsx-a11y/accessible-emoji": 0,
|
|
||||||
"react/require-default-props": 0,
|
|
||||||
"react/jsx-filename-extension": [
|
|
||||||
1,
|
|
||||||
{
|
|
||||||
"extensions": [
|
|
||||||
".js",
|
|
||||||
".jsx"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"radix": 0,
|
|
||||||
"no-shadow": [
|
|
||||||
2,
|
|
||||||
{
|
|
||||||
"hoist": "all",
|
|
||||||
"allow": [
|
|
||||||
"resolve",
|
|
||||||
"reject",
|
|
||||||
"done",
|
|
||||||
"next",
|
|
||||||
"err",
|
|
||||||
"error"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"quotes": [
|
|
||||||
2,
|
|
||||||
"single",
|
|
||||||
{
|
|
||||||
"avoidEscape": true,
|
|
||||||
"allowTemplateLiterals": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"prettier/prettier": [
|
|
||||||
"error",
|
|
||||||
{
|
|
||||||
"trailingComma": "es5",
|
|
||||||
"singleQuote": true,
|
|
||||||
"printWidth": 80,
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"jsx-a11y/href-no-hash": "off",
|
|
||||||
"jsx-a11y/anchor-is-valid": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"aspects": [
|
|
||||||
"invalidHref"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"plugins": [
|
|
||||||
// "html",
|
|
||||||
"prettier"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
115
.eslintrc.js
Normal file
115
.eslintrc.js
Normal file
|
|
@ -0,0 +1,115 @@
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
extends: ['airbnb', 'prettier', 'prettier/react'],
|
||||||
|
parser: 'babel-eslint',
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 2020,
|
||||||
|
// Can I remove these now?
|
||||||
|
ecmaFeatures: {
|
||||||
|
impliedStrict: true,
|
||||||
|
classes: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
node: true,
|
||||||
|
jquery: true,
|
||||||
|
jest: true,
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
'no-debugger': 0,
|
||||||
|
'no-alert': 0,
|
||||||
|
'no-await-in-loop': 0,
|
||||||
|
'no-return-assign': ['error', 'except-parens'],
|
||||||
|
'no-restricted-syntax': [
|
||||||
|
2,
|
||||||
|
'ForInStatement',
|
||||||
|
'LabeledStatement',
|
||||||
|
'WithStatement',
|
||||||
|
],
|
||||||
|
'no-unused-vars': [
|
||||||
|
1,
|
||||||
|
{
|
||||||
|
ignoreRestSiblings: true,
|
||||||
|
argsIgnorePattern: 'res|next|^err',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'prefer-const': [
|
||||||
|
'error',
|
||||||
|
{
|
||||||
|
destructuring: 'all',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'arrow-body-style': [2, 'as-needed'],
|
||||||
|
'no-unused-expressions': [
|
||||||
|
2,
|
||||||
|
{
|
||||||
|
allowTaggedTemplates: true,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'no-param-reassign': [
|
||||||
|
2,
|
||||||
|
{
|
||||||
|
props: false,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'no-console': 0,
|
||||||
|
'import/prefer-default-export': 0,
|
||||||
|
import: 0,
|
||||||
|
'func-names': 0,
|
||||||
|
'space-before-function-paren': 0,
|
||||||
|
'comma-dangle': 0,
|
||||||
|
'max-len': 0,
|
||||||
|
'import/extensions': 0,
|
||||||
|
'no-underscore-dangle': 0,
|
||||||
|
'consistent-return': 0,
|
||||||
|
'react/display-name': 1,
|
||||||
|
'react/no-array-index-key': 0,
|
||||||
|
'react/react-in-jsx-scope': 0,
|
||||||
|
'react/prefer-stateless-function': 0,
|
||||||
|
'react/forbid-prop-types': 0,
|
||||||
|
'react/no-unescaped-entities': 0,
|
||||||
|
'jsx-a11y/accessible-emoji': 0,
|
||||||
|
'react/require-default-props': 0,
|
||||||
|
'react/jsx-filename-extension': [
|
||||||
|
1,
|
||||||
|
{
|
||||||
|
extensions: ['.js', '.jsx'],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
radix: 0,
|
||||||
|
'no-shadow': [
|
||||||
|
2,
|
||||||
|
{
|
||||||
|
hoist: 'all',
|
||||||
|
allow: ['resolve', 'reject', 'done', 'next', 'err', 'error'],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
quotes: [
|
||||||
|
2,
|
||||||
|
'single',
|
||||||
|
{
|
||||||
|
avoidEscape: true,
|
||||||
|
allowTemplateLiterals: true,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'prettier/prettier': [
|
||||||
|
'error',
|
||||||
|
{
|
||||||
|
trailingComma: 'es5',
|
||||||
|
singleQuote: true,
|
||||||
|
printWidth: 80,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'jsx-a11y/href-no-hash': 'off',
|
||||||
|
'jsx-a11y/anchor-is-valid': [
|
||||||
|
'warn',
|
||||||
|
{
|
||||||
|
aspects: ['invalidHref'],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'react-hooks/rules-of-hooks': 'error',
|
||||||
|
'react-hooks/exhaustive-deps': 'warn',
|
||||||
|
},
|
||||||
|
plugins: ['html', 'prettier', 'react-hooks'],
|
||||||
|
};
|
||||||
|
|
@ -3,7 +3,23 @@
|
||||||
"editor.wordWrap": "off",
|
"editor.wordWrap": "off",
|
||||||
"javascript.updateImportsOnFileMove.enabled": "always",
|
"javascript.updateImportsOnFileMove.enabled": "always",
|
||||||
"editor.renderWhitespace": "all",
|
"editor.renderWhitespace": "all",
|
||||||
"editor.formatOnSave": false,
|
// These are all my auto-save configs
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
// turn it off for JS and JSX, we will do this via eslint
|
||||||
|
"[javascript]": {
|
||||||
|
"editor.formatOnSave": false
|
||||||
|
},
|
||||||
|
"[javascriptreact]": {
|
||||||
|
"editor.formatOnSave": false
|
||||||
|
},
|
||||||
|
// show eslint icon at bottom toolbar
|
||||||
|
"eslint.alwaysShowStatus": true,
|
||||||
|
// tell the ESLint plugin to run on save
|
||||||
|
"editor.codeActionsOnSave": {
|
||||||
|
"source.fixAll": true
|
||||||
|
},
|
||||||
|
// Optional BUT IMPORTANT: If you have the prettier extension enabled for other languages like CSS and HTML, turn it off for JS since we are doing it through Eslint already
|
||||||
|
"prettier.disableLanguages": ["javascript", "javascriptreact"],
|
||||||
"editor.tabSize": 2,
|
"editor.tabSize": 2,
|
||||||
"workbench.colorTheme": "Cobalt2",
|
"workbench.colorTheme": "Cobalt2",
|
||||||
"editor.fontFamily": "Menlo, Monaco, 'Courier New', monospace, Fira Code Retina",
|
"editor.fontFamily": "Menlo, Monaco, 'Courier New', monospace, Fira Code Retina",
|
||||||
Loading…
Reference in a new issue