2022-02-11 19:09:58 +00:00
|
|
|
const LEGACY_FILES = ["example/**"];
|
2018-08-07 21:47:50 +00:00
|
|
|
module.exports = {
|
|
|
|
"env": {
|
|
|
|
"browser": true,
|
|
|
|
"es6": true,
|
|
|
|
"jasmine": true,
|
|
|
|
"amd": true
|
|
|
|
},
|
2019-12-04 20:39:09 +00:00
|
|
|
"globals": {
|
|
|
|
"_": "readonly"
|
|
|
|
},
|
2023-05-18 21:29:20 +00:00
|
|
|
"plugins": ["prettier"],
|
2019-12-04 20:39:09 +00:00
|
|
|
"extends": [
|
|
|
|
"eslint:recommended",
|
2022-03-21 19:27:18 +00:00
|
|
|
"plugin:compat/recommended",
|
2020-05-27 17:59:02 +00:00
|
|
|
"plugin:vue/recommended",
|
2023-05-18 21:29:20 +00:00
|
|
|
"plugin:you-dont-need-lodash-underscore/compatible",
|
|
|
|
"plugin:prettier/recommended"
|
2019-12-04 20:39:09 +00:00
|
|
|
],
|
|
|
|
"parser": "vue-eslint-parser",
|
2018-08-07 21:47:50 +00:00
|
|
|
"parserOptions": {
|
2022-03-21 18:40:35 +00:00
|
|
|
"parser": "@babel/eslint-parser",
|
|
|
|
"requireConfigFile": false,
|
2018-08-07 21:47:50 +00:00
|
|
|
"allowImportExportEverywhere": true,
|
|
|
|
"ecmaVersion": 2015,
|
|
|
|
"ecmaFeatures": {
|
|
|
|
"impliedStrict": true
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"rules": {
|
2023-05-18 21:29:20 +00:00
|
|
|
"prettier/prettier": "error",
|
2020-05-27 17:59:02 +00:00
|
|
|
"you-dont-need-lodash-underscore/omit": "off",
|
|
|
|
"you-dont-need-lodash-underscore/throttle": "off",
|
|
|
|
"you-dont-need-lodash-underscore/flatten": "off",
|
2022-05-26 16:45:16 +00:00
|
|
|
"you-dont-need-lodash-underscore/get": "off",
|
2018-08-07 21:47:50 +00:00
|
|
|
"no-bitwise": "error",
|
|
|
|
"curly": "error",
|
|
|
|
"eqeqeq": "error",
|
|
|
|
"guard-for-in": "error",
|
|
|
|
"no-extend-native": "error",
|
|
|
|
"no-inner-declarations": "off",
|
|
|
|
"no-use-before-define": ["error", "nofunc"],
|
|
|
|
"no-caller": "error",
|
|
|
|
"no-irregular-whitespace": "error",
|
|
|
|
"no-new": "error",
|
|
|
|
"no-shadow": "error",
|
|
|
|
"no-undef": "error",
|
|
|
|
"no-unused-vars": [
|
|
|
|
"error",
|
|
|
|
{
|
|
|
|
"vars": "all",
|
|
|
|
"args": "none"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"no-console": "off",
|
|
|
|
"new-cap": [
|
|
|
|
"error",
|
|
|
|
{
|
|
|
|
"capIsNew": false,
|
|
|
|
"properties": false
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"dot-notation": "error",
|
2020-05-16 23:19:36 +00:00
|
|
|
|
|
|
|
// https://eslint.org/docs/rules/no-case-declarations
|
|
|
|
"no-case-declarations": "error",
|
|
|
|
// https://eslint.org/docs/rules/max-classes-per-file
|
|
|
|
"max-classes-per-file": ["error", 1],
|
|
|
|
// https://eslint.org/docs/rules/no-eq-null
|
|
|
|
"no-eq-null": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-eval
|
|
|
|
"no-eval": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-implicit-globals
|
|
|
|
"no-implicit-globals": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-implied-eval
|
|
|
|
"no-implied-eval": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-lone-blocks
|
|
|
|
"no-lone-blocks": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-loop-func
|
|
|
|
"no-loop-func": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-new-func
|
|
|
|
"no-new-func": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-new-wrappers
|
|
|
|
"no-new-wrappers": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-octal-escape
|
|
|
|
"no-octal-escape": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-proto
|
|
|
|
"no-proto": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-return-await
|
|
|
|
"no-return-await": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-script-url
|
|
|
|
"no-script-url": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-self-compare
|
|
|
|
"no-self-compare": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-sequences
|
|
|
|
"no-sequences": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-unmodified-loop-condition
|
|
|
|
"no-unmodified-loop-condition": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-useless-call
|
|
|
|
"no-useless-call": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-nested-ternary
|
|
|
|
"no-nested-ternary": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-useless-computed-key
|
|
|
|
"no-useless-computed-key": "error",
|
2020-08-10 19:13:23 +00:00
|
|
|
// https://eslint.org/docs/rules/no-var
|
|
|
|
"no-var": "error",
|
|
|
|
// https://eslint.org/docs/rules/one-var
|
|
|
|
"one-var": ["error", "never"],
|
2020-08-10 18:23:35 +00:00
|
|
|
// https://eslint.org/docs/rules/default-case-last
|
|
|
|
"default-case-last": "error",
|
|
|
|
// https://eslint.org/docs/rules/default-param-last
|
|
|
|
"default-param-last": "error",
|
|
|
|
// https://eslint.org/docs/rules/grouped-accessor-pairs
|
|
|
|
"grouped-accessor-pairs": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-constructor-return
|
|
|
|
"no-constructor-return": "error",
|
2020-08-10 17:59:18 +00:00
|
|
|
// https://eslint.org/docs/rules/array-callback-return
|
|
|
|
"array-callback-return": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-invalid-this
|
|
|
|
"no-invalid-this": "error", // Believe this one actually surfaces some bugs
|
|
|
|
// https://eslint.org/docs/rules/func-style
|
|
|
|
"func-style": ["error", "declaration"],
|
2020-08-10 17:35:40 +00:00
|
|
|
// https://eslint.org/docs/rules/no-unused-expressions
|
|
|
|
"no-unused-expressions": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-useless-concat
|
|
|
|
"no-useless-concat": "error",
|
|
|
|
// https://eslint.org/docs/rules/radix
|
|
|
|
"radix": "error",
|
|
|
|
// https://eslint.org/docs/rules/require-await
|
|
|
|
"require-await": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-alert
|
|
|
|
"no-alert": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-useless-constructor
|
|
|
|
"no-useless-constructor": "error",
|
|
|
|
// https://eslint.org/docs/rules/no-duplicate-imports
|
|
|
|
"no-duplicate-imports": "error",
|
2020-05-16 23:19:36 +00:00
|
|
|
|
2020-07-31 19:11:03 +00:00
|
|
|
// https://eslint.org/docs/rules/no-implicit-coercion
|
|
|
|
"no-implicit-coercion": "error",
|
|
|
|
//https://eslint.org/docs/rules/no-unneeded-ternary
|
|
|
|
"no-unneeded-ternary": "error",
|
2022-03-21 18:40:35 +00:00
|
|
|
"vue/first-attribute-linebreak": "error",
|
2019-12-04 20:39:09 +00:00
|
|
|
"vue/multiline-html-element-content-newline": "off",
|
2020-08-10 18:23:35 +00:00
|
|
|
"vue/singleline-html-element-content-newline": "off",
|
2022-03-21 18:40:35 +00:00
|
|
|
"vue/multi-word-component-names": "off", // TODO enable, align with conventions
|
2021-02-12 21:46:53 +00:00
|
|
|
"vue/no-mutating-props": "off"
|
2018-08-07 21:47:50 +00:00
|
|
|
},
|
|
|
|
"overrides": [
|
|
|
|
{
|
2020-08-10 18:23:35 +00:00
|
|
|
"files": LEGACY_FILES,
|
2018-08-07 21:47:50 +00:00
|
|
|
"rules": {
|
|
|
|
"no-unused-vars": [
|
|
|
|
"warn",
|
|
|
|
{
|
|
|
|
"vars": "all",
|
|
|
|
"args": "none",
|
2020-08-10 18:23:35 +00:00
|
|
|
"varsIgnorePattern": "controller"
|
2018-08-07 21:47:50 +00:00
|
|
|
}
|
2020-08-10 18:23:35 +00:00
|
|
|
],
|
2020-05-16 23:19:36 +00:00
|
|
|
"no-nested-ternary": "off",
|
2020-08-10 19:13:23 +00:00
|
|
|
"no-var": "off",
|
|
|
|
"one-var": "off"
|
2020-05-16 23:19:36 +00:00
|
|
|
}
|
2018-08-07 21:47:50 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
};
|