commit
47e3252606
5 changed files with 313 additions and 0 deletions
@ -0,0 +1 @@ |
|||
node_modules |
@ -0,0 +1,3 @@ |
|||
# @joepie91/eslint-config |
|||
|
|||
Work in progress. No guarantees. |
@ -0,0 +1,88 @@ |
|||
"use strict"; |
|||
|
|||
module.exports = { |
|||
"env": { |
|||
"browser": true, |
|||
"commonjs": true, |
|||
"es6": true, |
|||
"node": true |
|||
}, |
|||
"parserOptions": { |
|||
"ecmaVersion": 2019, |
|||
"ecmaFeatures": { |
|||
"jsx": true |
|||
} |
|||
}, |
|||
"plugins": [ |
|||
"react", |
|||
"react-hooks" |
|||
], |
|||
"rules": { |
|||
/* Things that should effectively be syntax errors. */ |
|||
"indent": [ "error", "tab", { |
|||
SwitchCase: 1 |
|||
}], |
|||
"linebreak-style": [ "error", "unix" ], |
|||
"semi": [ "error", "always" ], |
|||
/* Things that are always mistakes. */ |
|||
"getter-return": [ "error" ], |
|||
"no-compare-neg-zero": [ "error" ], |
|||
"no-dupe-args": [ "error" ], |
|||
"no-dupe-keys": [ "error" ], |
|||
"no-duplicate-case": [ "error" ], |
|||
"no-empty": [ "error" ], |
|||
"no-empty-character-class": [ "error" ], |
|||
"no-ex-assign": [ "error" ], |
|||
"no-extra-semi": [ "error" ], |
|||
"no-func-assign": [ "error" ], |
|||
"no-invalid-regexp": [ "error" ], |
|||
"no-irregular-whitespace": [ "error" ], |
|||
"no-obj-calls": [ "error" ], |
|||
"no-sparse-arrays": [ "error" ], |
|||
"no-undef": [ "error" ], |
|||
"no-unreachable": [ "error" ], |
|||
"no-unsafe-finally": [ "error" ], |
|||
"use-isnan": [ "error" ], |
|||
"valid-typeof": [ "error" ], |
|||
"curly": [ "error" ], |
|||
"no-caller": [ "error" ], |
|||
"no-fallthrough": [ "error" ], |
|||
"no-extra-bind": [ "error" ], |
|||
"no-extra-label": [ "error" ], |
|||
"array-callback-return": [ "error" ], |
|||
"prefer-promise-reject-errors": [ "error" ], |
|||
"no-with": [ "error" ], |
|||
"no-useless-concat": [ "error" ], |
|||
"no-unused-labels": [ "error" ], |
|||
"no-unused-expressions": [ "error" ], |
|||
"no-unused-vars": [ "error" , { |
|||
argsIgnorePattern: "^_", |
|||
varsIgnorePattern: "^_" |
|||
} ], |
|||
"no-return-assign": [ "error" ], |
|||
"no-self-assign": [ "error" ], |
|||
"no-new-wrappers": [ "error" ], |
|||
"no-redeclare": [ "error" ], |
|||
"no-loop-func": [ "error" ], |
|||
"no-implicit-globals": [ "error" ], |
|||
"strict": [ "error", "global" ], |
|||
/* Make JSX not cause 'unused variable' errors. */ |
|||
"react/react-in-jsx-scope": [ "error" ], |
|||
"react/jsx-uses-react": [ "error" ], |
|||
"react/jsx-uses-vars": [ "error" ], |
|||
/* Hooks-specific rules, as recommended by https://reactjs.org/docs/hooks-rules.html */ |
|||
"react-hooks/rules-of-hooks": "error", |
|||
"react-hooks/exhaustive-deps": "warn", |
|||
/* Development code that should be removed before deployment. */ |
|||
"no-console": [ "warn" ], |
|||
"no-constant-condition": [ "warn" ], |
|||
"no-debugger": [ "warn" ], |
|||
"no-alert": [ "warn" ], |
|||
"no-warning-comments": [ "warn", { |
|||
terms: ["fixme"] |
|||
}], |
|||
/* Common mistakes that can *occasionally* be intentional. */ |
|||
"no-template-curly-in-string": [ "warn" ], |
|||
"no-unsafe-negation": [ "warn" ], |
|||
} |
|||
}; |
@ -0,0 +1,13 @@ |
|||
{ |
|||
"name": "@joepie91/eslint-config", |
|||
"description": "An ESLint configuration for correctness, not style", |
|||
"version": "1.0.0", |
|||
"main": "index.js", |
|||
"repository": "http://git.cryto.net/joepie91/eslint-configuration.git", |
|||
"author": "Sven Slootweg <admin@cryto.net>", |
|||
"license": "WTFPL OR CC0-1.0", |
|||
"peerDependencies": { |
|||
"eslint-plugin-react": "^7.14.3", |
|||
"eslint-plugin-react-hooks": "^2.0.1" |
|||
} |
|||
} |
@ -0,0 +1,208 @@ |
|||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. |
|||
# yarn lockfile v1 |
|||
|
|||
|
|||
array-includes@^3.0.3: |
|||
version "3.0.3" |
|||
resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" |
|||
integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= |
|||
dependencies: |
|||
define-properties "^1.1.2" |
|||
es-abstract "^1.7.0" |
|||
|
|||
define-properties@^1.1.2, define-properties@^1.1.3: |
|||
version "1.1.3" |
|||
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" |
|||
integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== |
|||
dependencies: |
|||
object-keys "^1.0.12" |
|||
|
|||
doctrine@^2.1.0: |
|||
version "2.1.0" |
|||
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" |
|||
integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== |
|||
dependencies: |
|||
esutils "^2.0.2" |
|||
|
|||
es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.7.0: |
|||
version "1.13.0" |
|||
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" |
|||
integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== |
|||
dependencies: |
|||
es-to-primitive "^1.2.0" |
|||
function-bind "^1.1.1" |
|||
has "^1.0.3" |
|||
is-callable "^1.1.4" |
|||
is-regex "^1.0.4" |
|||
object-keys "^1.0.12" |
|||
|
|||
es-to-primitive@^1.2.0: |
|||
version "1.2.0" |
|||
resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" |
|||
integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== |
|||
dependencies: |
|||
is-callable "^1.1.4" |
|||
is-date-object "^1.0.1" |
|||
is-symbol "^1.0.2" |
|||
|
|||
eslint-plugin-react-hooks@^2.0.1: |
|||
version "2.0.1" |
|||
resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.0.1.tgz#e898ec26a0a335af6f7b0ad1f0bedda7143ed756" |
|||
integrity sha512-xir+3KHKo86AasxlCV8AHRtIZPHljqCRRUYgASkbatmt0fad4+5GgC7zkT7o/06hdKM6MIwp8giHVXqBPaarHQ== |
|||
|
|||
eslint-plugin-react@^7.14.3: |
|||
version "7.14.3" |
|||
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz#911030dd7e98ba49e1b2208599571846a66bdf13" |
|||
integrity sha512-EzdyyBWC4Uz2hPYBiEJrKCUi2Fn+BJ9B/pJQcjw5X+x/H2Nm59S4MJIvL4O5NEE0+WbnQwEBxWY03oUk+Bc3FA== |
|||
dependencies: |
|||
array-includes "^3.0.3" |
|||
doctrine "^2.1.0" |
|||
has "^1.0.3" |
|||
jsx-ast-utils "^2.1.0" |
|||
object.entries "^1.1.0" |
|||
object.fromentries "^2.0.0" |
|||
object.values "^1.1.0" |
|||
prop-types "^15.7.2" |
|||
resolve "^1.10.1" |
|||
|
|||
esutils@^2.0.2: |
|||
version "2.0.3" |
|||
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" |
|||
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== |
|||
|
|||
function-bind@^1.1.1: |
|||
version "1.1.1" |
|||
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" |
|||
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== |
|||
|
|||
has-symbols@^1.0.0: |
|||
version "1.0.0" |
|||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" |
|||
integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= |
|||
|
|||
has@^1.0.1, has@^1.0.3: |
|||
version "1.0.3" |
|||
resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" |
|||
integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== |
|||
dependencies: |
|||
function-bind "^1.1.1" |
|||
|
|||
is-callable@^1.1.4: |
|||
version "1.1.4" |
|||
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" |
|||
integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== |
|||
|
|||
is-date-object@^1.0.1: |
|||
version "1.0.1" |
|||
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" |
|||
integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= |
|||
|
|||
is-regex@^1.0.4: |
|||
version "1.0.4" |
|||
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" |
|||
integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= |
|||
dependencies: |
|||
has "^1.0.1" |
|||
|
|||
is-symbol@^1.0.2: |
|||
version "1.0.2" |
|||
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" |
|||
integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== |
|||
dependencies: |
|||
has-symbols "^1.0.0" |
|||
|
|||
"js-tokens@^3.0.0 || ^4.0.0": |
|||
version "4.0.0" |
|||
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" |
|||
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== |
|||
|
|||
jsx-ast-utils@^2.1.0: |
|||
version "2.2.1" |
|||
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb" |
|||
integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ== |
|||
dependencies: |
|||
array-includes "^3.0.3" |
|||
object.assign "^4.1.0" |
|||
|
|||
loose-envify@^1.4.0: |
|||
version "1.4.0" |
|||
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" |
|||
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== |
|||
dependencies: |
|||
js-tokens "^3.0.0 || ^4.0.0" |
|||
|
|||
object-assign@^4.1.1: |
|||
version "4.1.1" |
|||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" |
|||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= |
|||
|
|||
object-keys@^1.0.11, object-keys@^1.0.12: |
|||
version "1.1.1" |
|||
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" |
|||
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== |
|||
|
|||
object.assign@^4.1.0: |
|||
version "4.1.0" |
|||
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" |
|||
integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== |
|||
dependencies: |
|||
define-properties "^1.1.2" |
|||
function-bind "^1.1.1" |
|||
has-symbols "^1.0.0" |
|||
object-keys "^1.0.11" |
|||
|
|||
object.entries@^1.1.0: |
|||
version "1.1.0" |
|||
resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" |
|||
integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== |
|||
dependencies: |
|||
define-properties "^1.1.3" |
|||
es-abstract "^1.12.0" |
|||
function-bind "^1.1.1" |
|||
has "^1.0.3" |
|||
|
|||
object.fromentries@^2.0.0: |
|||
version "2.0.0" |
|||
resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" |
|||
integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== |
|||
dependencies: |
|||
define-properties "^1.1.2" |
|||
es-abstract "^1.11.0" |
|||
function-bind "^1.1.1" |
|||
has "^1.0.1" |
|||
|
|||
object.values@^1.1.0: |
|||
version "1.1.0" |
|||
resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" |
|||
integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== |
|||
dependencies: |
|||
define-properties "^1.1.3" |
|||
es-abstract "^1.12.0" |
|||
function-bind "^1.1.1" |
|||
has "^1.0.3" |
|||
|
|||
path-parse@^1.0.6: |
|||
version "1.0.6" |
|||
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" |
|||
integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== |
|||
|
|||
prop-types@^15.7.2: |
|||
version "15.7.2" |
|||
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" |
|||
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== |
|||
dependencies: |
|||
loose-envify "^1.4.0" |
|||
object-assign "^4.1.1" |
|||
react-is "^16.8.1" |
|||
|
|||
react-is@^16.8.1: |
|||
version "16.9.0" |
|||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" |
|||
integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== |
|||
|
|||
resolve@^1.10.1: |
|||
version "1.12.0" |
|||
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" |
|||
integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== |
|||
dependencies: |
|||
path-parse "^1.0.6" |
Loading…
Reference in new issue