2022-04-11 04:58:58 +08:00
|
|
|
parser: '@typescript-eslint/parser'
|
|
|
|
parserOptions:
|
|
|
|
sourceType: module
|
|
|
|
project:
|
|
|
|
- ./tsconfig.json
|
|
|
|
extraFileExtensions:
|
|
|
|
- .svelte
|
|
|
|
env:
|
|
|
|
es6: true
|
|
|
|
browser: true
|
|
|
|
extends:
|
|
|
|
- 'plugin:import/recommended'
|
|
|
|
- 'plugin:import/typescript'
|
|
|
|
- 'plugin:@typescript-eslint/all'
|
2024-07-17 00:54:07 +08:00
|
|
|
- 'plugin:svelte/recommended'
|
2022-04-11 04:58:58 +08:00
|
|
|
plugins:
|
|
|
|
- import
|
|
|
|
- '@typescript-eslint/eslint-plugin'
|
|
|
|
settings:
|
|
|
|
import/resolver:
|
|
|
|
typescript: {}
|
|
|
|
rules:
|
|
|
|
'@typescript-eslint/semi':
|
|
|
|
- error
|
|
|
|
- never
|
|
|
|
'@typescript-eslint/indent':
|
|
|
|
- error
|
|
|
|
- 4
|
|
|
|
'@typescript-eslint/explicit-member-accessibility':
|
|
|
|
- error
|
|
|
|
- accessibility: no-public
|
|
|
|
overrides:
|
|
|
|
parameterProperties: explicit
|
|
|
|
'@typescript-eslint/no-require-imports': 'off'
|
|
|
|
'@typescript-eslint/no-parameter-properties': 'off'
|
|
|
|
'@typescript-eslint/explicit-function-return-type': 'off'
|
|
|
|
'@typescript-eslint/no-explicit-any': 'off'
|
|
|
|
'@typescript-eslint/no-magic-numbers': 'off'
|
|
|
|
'@typescript-eslint/member-delimiter-style': 'off'
|
|
|
|
'@typescript-eslint/promise-function-async': 'off'
|
|
|
|
'@typescript-eslint/require-array-sort-compare': 'off'
|
|
|
|
'@typescript-eslint/no-floating-promises': 'off'
|
|
|
|
'@typescript-eslint/prefer-readonly': 'off'
|
|
|
|
'@typescript-eslint/require-await': 'off'
|
|
|
|
'@typescript-eslint/strict-boolean-expressions': 'off'
|
|
|
|
'@typescript-eslint/no-misused-promises':
|
|
|
|
- error
|
|
|
|
- checksVoidReturn: false
|
|
|
|
'@typescript-eslint/typedef': 'off'
|
|
|
|
'@typescript-eslint/consistent-type-imports': 'off'
|
|
|
|
'@typescript-eslint/sort-type-union-intersection-members': 'off'
|
|
|
|
'@typescript-eslint/no-use-before-define':
|
|
|
|
- error
|
|
|
|
- classes: false
|
2022-05-30 18:55:09 +08:00
|
|
|
functions: false
|
2022-04-11 04:58:58 +08:00
|
|
|
no-duplicate-imports: error
|
|
|
|
array-bracket-spacing:
|
|
|
|
- error
|
|
|
|
- never
|
|
|
|
block-scoped-var: error
|
|
|
|
brace-style: 'off'
|
|
|
|
'@typescript-eslint/brace-style':
|
|
|
|
- error
|
|
|
|
- 1tbs
|
|
|
|
- allowSingleLine: true
|
|
|
|
computed-property-spacing:
|
|
|
|
- error
|
|
|
|
- never
|
|
|
|
curly: error
|
|
|
|
eol-last: error
|
|
|
|
eqeqeq:
|
|
|
|
- error
|
|
|
|
- smart
|
|
|
|
max-depth:
|
|
|
|
- 1
|
|
|
|
- 5
|
|
|
|
max-statements:
|
|
|
|
- 1
|
|
|
|
- 80
|
|
|
|
no-multiple-empty-lines: error
|
|
|
|
no-mixed-spaces-and-tabs: error
|
|
|
|
no-trailing-spaces: error
|
|
|
|
'@typescript-eslint/no-unused-vars':
|
|
|
|
- error
|
|
|
|
- vars: all
|
|
|
|
args: after-used
|
|
|
|
argsIgnorePattern: ^_
|
|
|
|
no-undef: error
|
|
|
|
no-var: error
|
|
|
|
object-curly-spacing: 'off'
|
|
|
|
'@typescript-eslint/object-curly-spacing':
|
|
|
|
- error
|
|
|
|
- always
|
|
|
|
quote-props:
|
|
|
|
- warn
|
|
|
|
- as-needed
|
|
|
|
- keywords: true
|
|
|
|
numbers: true
|
|
|
|
quotes: 'off'
|
|
|
|
'@typescript-eslint/quotes':
|
|
|
|
- error
|
|
|
|
- single
|
|
|
|
- allowTemplateLiterals: true
|
|
|
|
'@typescript-eslint/no-confusing-void-expression':
|
|
|
|
- error
|
|
|
|
- ignoreArrowShorthand: true
|
|
|
|
'@typescript-eslint/no-non-null-assertion': 'off'
|
|
|
|
'@typescript-eslint/no-unnecessary-condition':
|
|
|
|
- error
|
|
|
|
- allowConstantLoopConditions: true
|
|
|
|
'@typescript-eslint/restrict-template-expressions': 'off'
|
|
|
|
'@typescript-eslint/prefer-readonly-parameter-types': 'off'
|
|
|
|
'@typescript-eslint/no-unsafe-member-access': 'off'
|
|
|
|
'@typescript-eslint/no-unsafe-call': 'off'
|
|
|
|
'@typescript-eslint/no-unsafe-return': 'off'
|
|
|
|
'@typescript-eslint/no-unsafe-assignment': 'off'
|
|
|
|
'@typescript-eslint/naming-convention': 'off'
|
|
|
|
'@typescript-eslint/lines-between-class-members':
|
|
|
|
- error
|
2024-07-17 00:54:07 +08:00
|
|
|
- always
|
2022-04-11 04:58:58 +08:00
|
|
|
- exceptAfterSingleLine: true
|
|
|
|
'@typescript-eslint/dot-notation': 'off'
|
|
|
|
'@typescript-eslint/no-implicit-any-catch': 'off'
|
|
|
|
'@typescript-eslint/member-ordering': 'off'
|
|
|
|
'@typescript-eslint/no-var-requires': 'off'
|
|
|
|
'@typescript-eslint/no-unsafe-argument': 'off'
|
|
|
|
'@typescript-eslint/restrict-plus-operands': 'off'
|
|
|
|
'@typescript-eslint/space-infix-ops': 'off'
|
|
|
|
'@typescript-eslint/no-type-alias':
|
|
|
|
- error
|
|
|
|
- allowAliases: in-unions-and-intersections
|
|
|
|
allowLiterals: always
|
|
|
|
allowCallbacks: always
|
2022-05-30 18:55:09 +08:00
|
|
|
'@typescript-eslint/comma-dangle':
|
|
|
|
- error
|
|
|
|
- arrays: always-multiline
|
|
|
|
objects: always-multiline
|
|
|
|
imports: always-multiline
|
|
|
|
exports: always-multiline
|
|
|
|
functions: only-multiline
|
2024-07-27 03:09:41 +08:00
|
|
|
'@typescript-eslint/use-unknown-in-catch-callback-variable': off
|
2022-04-11 04:58:58 +08:00
|
|
|
|
|
|
|
overrides:
|
|
|
|
- files: '*.svelte'
|
2024-07-17 00:54:07 +08:00
|
|
|
parser: 'svelte-eslint-parser'
|
|
|
|
parserOptions:
|
2024-07-27 03:09:41 +08:00
|
|
|
svelteFeatures:
|
|
|
|
experimentalGenerics: true
|
2024-07-17 00:54:07 +08:00
|
|
|
parser:
|
|
|
|
ts: '@typescript-eslint/parser'
|
|
|
|
js: 'espree'
|
|
|
|
typescript: '@typescript-eslint/parser'
|
2022-05-30 15:32:45 +08:00
|
|
|
rules:
|
2022-05-30 18:55:09 +08:00
|
|
|
# To allow prop definitions
|
2022-05-30 15:32:45 +08:00
|
|
|
'@typescript-eslint/init-declarations': off
|
2022-05-30 18:55:09 +08:00
|
|
|
# False positives for {#if}
|
|
|
|
'@typescript-eslint/no-unnecessary-condition': off
|
2022-05-30 19:14:53 +08:00
|
|
|
# False positives for FontAwesome
|
|
|
|
import/no-named-as-default: off
|
2022-05-30 20:08:32 +08:00
|
|
|
import/no-named-as-default-member: off
|
2022-04-11 04:58:58 +08:00
|
|
|
|
|
|
|
ignorePatterns:
|
|
|
|
- svelte.config.js
|
|
|
|
- vite.config.ts
|
2022-06-27 02:50:04 +08:00
|
|
|
- src/*/lib/api-client/**
|