You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
2.6 KiB
129 lines
2.6 KiB
import ljharb from '@ljharb/eslint-config/flat'; |
|
import ljharbNodeLatest from '@ljharb/eslint-config/flat/node/latest'; |
|
import ljharbTests from '@ljharb/eslint-config/flat/tests'; |
|
|
|
export default [ |
|
{ |
|
ignores: [ |
|
'.nyc_output', |
|
], |
|
}, |
|
...ljharb, |
|
{ |
|
languageOptions: { |
|
globals: { |
|
DataView: false, |
|
Float16Array: false, |
|
Float32Array: false, |
|
Float64Array: false, |
|
Int8Array: false, |
|
Int16Array: false, |
|
Int32Array: false, |
|
Intl: false, |
|
Uint8Array: false, |
|
Uint8ClampedArray: false, |
|
Uint16Array: false, |
|
Uint32Array: false, |
|
}, |
|
}, |
|
rules: { |
|
'array-bracket-newline': 'off', |
|
complexity: 'off', |
|
eqeqeq: ['error', 'allow-null'], |
|
'func-name-matching': 'off', |
|
'id-length': ['error', { min: 1, max: 40 }], |
|
'max-lines-per-function': 'warn', |
|
'max-params': ['error', 5], |
|
'max-statements': 'warn', |
|
'max-statements-per-line': ['error', { max: 2 }], |
|
'multiline-comment-style': 'off', |
|
'new-cap': 'off', |
|
'no-extra-parens': 'warn', |
|
'no-implicit-coercion': ['error', { |
|
boolean: false, |
|
number: false, |
|
string: true, |
|
}], |
|
'no-magic-numbers': 'off', |
|
'sort-keys': 'off', |
|
}, |
|
}, |
|
{ |
|
files: ['GetIntrinsic.js'], |
|
rules: { |
|
'max-statements': 'off', |
|
}, |
|
}, |
|
{ |
|
files: ['operations/*'], |
|
rules: { |
|
'max-lines': 'off', |
|
}, |
|
}, |
|
...ljharbNodeLatest |
|
.filter((c) => !c.files?.some((f) => typeof f === 'function' || f === '**/*.mjs')) |
|
.map((c) => ({ |
|
...c, |
|
files: [ |
|
'operations/deltas.js', |
|
'operations/getOps.js', |
|
'operations/spackle.js', |
|
'operations/years.js', |
|
], |
|
})), |
|
{ |
|
files: [ |
|
'operations/deltas.js', |
|
'operations/getOps.js', |
|
'operations/spackle.js', |
|
'operations/years.js', |
|
], |
|
rules: { |
|
complexity: 'off', |
|
'func-style': 'off', |
|
'max-lines-per-function': 'off', |
|
'max-nested-callbacks': 'off', |
|
'max-statements': 'off', |
|
'no-magic-numbers': 'off', |
|
'no-throw-literal': 'off', |
|
}, |
|
}, |
|
...ljharbTests.map((c) => ({ |
|
...c, |
|
files: ['test/**'], |
|
})), |
|
{ |
|
files: ['test/**'], |
|
rules: { |
|
'max-len': 'off', |
|
'max-lines-per-function': 'off', |
|
'no-implicit-coercion': 'off', |
|
'no-invalid-this': 'warn', |
|
'prefer-promise-reject-errors': 'off', |
|
}, |
|
}, |
|
{ |
|
files: [ |
|
'*/Num*ToRawBytes.js', |
|
'*/RawBytesToNum*.js', |
|
'helpers/bytesAs*.js', |
|
'helpers/valueToFloat*.js', |
|
], |
|
rules: { |
|
'max-lines-per-function': 'off', |
|
'max-statements': 'off', |
|
'no-redeclare': 'warn', |
|
'operator-linebreak': ['error', 'before', { |
|
overrides: { |
|
'=': 'none', |
|
}, |
|
}], |
|
}, |
|
}, |
|
{ |
|
files: ['*/GetSubstitution.js'], |
|
rules: { |
|
'max-depth': 'off', |
|
}, |
|
}, |
|
];
|
|
|