2020-07-27 00:53:09 +09:00
|
|
|
parser: '@typescript-eslint/parser'
|
|
|
|
|
|
|
|
parserOptions:
|
|
|
|
ecmaFeatures:
|
|
|
|
jsx: true
|
2021-11-19 15:58:21 +09:00
|
|
|
ecmaVersion: latest
|
2020-07-27 00:53:09 +09:00
|
|
|
sourceType: module
|
2023-11-02 13:57:11 +09:00
|
|
|
project:
|
|
|
|
- ./tsconfig.root-lint.json
|
2020-07-27 00:53:09 +09:00
|
|
|
|
|
|
|
env:
|
|
|
|
browser: true
|
|
|
|
es6: true
|
|
|
|
node: true
|
|
|
|
|
|
|
|
plugins:
|
|
|
|
- import
|
2020-08-24 17:16:35 +09:00
|
|
|
- '@typescript-eslint'
|
2020-07-27 00:53:09 +09:00
|
|
|
|
|
|
|
extends:
|
|
|
|
- eslint:recommended
|
2023-07-17 15:56:02 +09:00
|
|
|
- prettier
|
2020-07-27 00:53:09 +09:00
|
|
|
|
2020-08-24 17:16:35 +09:00
|
|
|
globals:
|
|
|
|
BigInt: 'readonly'
|
2020-09-04 17:22:15 +09:00
|
|
|
NodeJS: 'readonly'
|
2023-11-02 13:57:11 +09:00
|
|
|
globalThis: true
|
2020-08-24 17:16:35 +09:00
|
|
|
|
2020-07-27 00:53:09 +09:00
|
|
|
rules:
|
|
|
|
# 0 = off, 1 = warn, 2 = error
|
|
|
|
'space-before-function-paren': 0
|
|
|
|
'no-useless-constructor': 0
|
|
|
|
'no-undef': 2
|
|
|
|
'no-console': [2, { allow: ['error', 'warn', 'info', 'assert'] }]
|
|
|
|
'comma-dangle': ['error', 'only-multiline']
|
|
|
|
'no-unused-vars': 0
|
|
|
|
'no-var': 2
|
|
|
|
'one-var-declaration-per-line': 2
|
|
|
|
'prefer-const': 2
|
|
|
|
'no-const-assign': 2
|
|
|
|
'no-duplicate-imports': 2
|
|
|
|
'no-use-before-define': [2, { 'functions': false, 'classes': false }]
|
|
|
|
'eqeqeq': [2, 'always', { 'null': 'ignore' }]
|
|
|
|
'no-case-declarations': 0
|
|
|
|
'no-dupe-class-members': 0
|
|
|
|
|
|
|
|
'import/first': 2
|
|
|
|
'import/newline-after-import': 2
|
|
|
|
'import/order':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
'newlines-between': 'always',
|
|
|
|
'alphabetize': { 'order': 'asc', 'caseInsensitive': true },
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
2023-01-19 01:32:52 +09:00
|
|
|
'import/no-extraneous-dependencies': 2
|
|
|
|
|
2020-07-27 00:53:09 +09:00
|
|
|
'@typescript-eslint/adjacent-overload-signatures': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/consistent-type-assertions': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/ban-types':
|
|
|
|
[
|
|
|
|
'error',
|
|
|
|
{
|
|
|
|
'types':
|
|
|
|
{
|
|
|
|
'String': { 'message': 'Use string instead', 'fixWith': 'string' },
|
|
|
|
'Number': { 'message': 'Use number instead', 'fixWith': 'number' },
|
|
|
|
'Boolean':
|
|
|
|
{ 'message': 'Use boolean instead', 'fixWith': 'boolean' },
|
|
|
|
'Function': { 'message': 'Use explicit type instead' },
|
|
|
|
},
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
|
|
|
'@typescript-eslint/explicit-member-accessibility':
|
|
|
|
[
|
|
|
|
'error',
|
|
|
|
{
|
|
|
|
accessibility: 'explicit',
|
|
|
|
overrides:
|
|
|
|
{
|
|
|
|
accessors: 'no-public',
|
|
|
|
constructors: 'no-public',
|
|
|
|
methods: 'no-public',
|
|
|
|
properties: 'no-public',
|
|
|
|
parameterProperties: 'explicit',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
|
|
|
'@typescript-eslint/method-signature-style': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/ban-ts-comment':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
'ts-expect-error': false,
|
|
|
|
'ts-ignore': true,
|
|
|
|
'ts-nocheck': true,
|
|
|
|
'ts-check': false,
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
|
|
|
'@typescript-eslint/naming-convention':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
selector: 'memberLike',
|
|
|
|
format: ['camelCase', 'PascalCase'],
|
|
|
|
modifiers: ['private'],
|
|
|
|
leadingUnderscore: 'forbid',
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
|
|
|
'@typescript-eslint/no-unused-vars':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
varsIgnorePattern: '^_',
|
|
|
|
argsIgnorePattern: '^_',
|
|
|
|
ignoreRestSiblings: true,
|
|
|
|
},
|
|
|
|
]
|
|
|
|
'@typescript-eslint/member-ordering':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
default:
|
|
|
|
[
|
|
|
|
'public-static-field',
|
|
|
|
'protected-static-field',
|
|
|
|
'private-static-field',
|
|
|
|
'public-static-method',
|
|
|
|
'protected-static-method',
|
|
|
|
'private-static-method',
|
|
|
|
'public-instance-field',
|
|
|
|
'protected-instance-field',
|
|
|
|
'private-instance-field',
|
|
|
|
'public-constructor',
|
|
|
|
'protected-constructor',
|
|
|
|
'private-constructor',
|
|
|
|
'public-instance-method',
|
|
|
|
'protected-instance-method',
|
|
|
|
'private-instance-method',
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
2020-08-24 18:06:26 +09:00
|
|
|
|
|
|
|
overrides:
|
2021-08-07 01:22:53 +09:00
|
|
|
- files:
|
2023-04-06 12:04:53 +09:00
|
|
|
- ./**/*.ts
|
2021-08-07 01:22:53 +09:00
|
|
|
plugins:
|
|
|
|
- '@typescript-eslint'
|
|
|
|
parserOptions:
|
|
|
|
project: ./tsconfig.json
|
2023-06-17 18:03:57 +09:00
|
|
|
rules:
|
|
|
|
'@typescript-eslint/await-thenable': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-floating-promises': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-implied-eval': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-for-in-array': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-inferrable-types': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-invalid-void-type': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-misused-new': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-misused-promises': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-namespace': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-non-null-asserted-optional-chain': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-throw-literal': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/no-unnecessary-boolean-literal-compare': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/prefer-for-of': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/prefer-nullish-coalescing': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/switch-exhaustiveness-check': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/prefer-optional-chain': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/prefer-readonly': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/prefer-string-starts-ends-with': 0
|
|
|
|
|
|
|
|
'@typescript-eslint/no-array-constructor': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/require-await': 2
|
|
|
|
|
|
|
|
'@typescript-eslint/return-await': 2
|
2020-08-24 18:06:26 +09:00
|
|
|
- files:
|
2021-09-23 02:29:09 +09:00
|
|
|
- ./examples/**/*.{ts,js}
|
2020-08-24 18:06:26 +09:00
|
|
|
plugins:
|
|
|
|
- '@typescript-eslint'
|
|
|
|
parserOptions:
|
2021-09-23 02:29:09 +09:00
|
|
|
project:
|
|
|
|
- ./examples/tsconfig.json
|
2023-03-28 13:03:00 +09:00
|
|
|
rules:
|
2023-11-02 13:57:11 +09:00
|
|
|
'import/order':
|
|
|
|
[
|
|
|
|
2,
|
|
|
|
{
|
|
|
|
'newlines-between': 'always',
|
|
|
|
'alphabetize': { 'order': 'asc', 'caseInsensitive': true },
|
|
|
|
},
|
|
|
|
]
|
|
|
|
|
2023-03-28 13:03:00 +09:00
|
|
|
'import/no-extraneous-dependencies': 0
|
2020-09-30 15:34:26 +09:00
|
|
|
|
|
|
|
- files:
|
|
|
|
- ./bench/**/*.{ts,js}
|
|
|
|
plugins:
|
|
|
|
- '@typescript-eslint'
|
|
|
|
parserOptions:
|
|
|
|
project: ./bench/tsconfig.json
|
2020-10-14 12:44:37 +09:00
|
|
|
|
2021-05-28 19:50:16 +09:00
|
|
|
- files:
|
|
|
|
- ./memory-testing/*.{js,mjs}
|
|
|
|
plugins:
|
|
|
|
- '@typescript-eslint'
|
|
|
|
parserOptions:
|
|
|
|
project: ./tsconfig.root-lint.json
|
|
|
|
|
2020-10-14 12:44:37 +09:00
|
|
|
- files:
|
2020-10-14 17:15:20 +09:00
|
|
|
- ./*.js
|
2023-11-02 13:57:11 +09:00
|
|
|
- ./*.cjs
|
|
|
|
- ./*.mjs
|
2020-10-14 12:44:37 +09:00
|
|
|
plugins:
|
|
|
|
- '@typescript-eslint'
|
|
|
|
parserOptions:
|
|
|
|
project: ./tsconfig.root-lint.json
|