123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- module.exports = {
- root: true,
- env: { browser: true, es2020: true },
- extends: [
- 'eslint:recommended',
- 'plugin:@typescript-eslint/recommended',
- 'plugin:react-hooks/recommended',
- ],
- ignorePatterns: ['dist', '.eslintrc.cjs'],
- parser: '@typescript-eslint/parser',
- plugins: ['react-refresh'],
- rules: {
- 'react-refresh/only-export-components': [
- 'warn',
- { allowConstantExport: true },
- ],
- '@typescript-eslint/consistent-type-imports': 'error',
- '@typescript-eslint/member-delimiter-style': [
- 'error',
- {
- 'multiline': {
- 'delimiter': 'none',
- 'requireLast': true
- },
- 'singleline': {
- 'delimiter': 'comma',
- 'requireLast': false
- }
- }
- ],
- '@typescript-eslint/type-annotation-spacing': [
- 'error',
- {
- 'before': false,
- 'after': true,
- 'overrides': {
- 'arrow': {
- 'before': true,
- 'after': true
- }
- }
- }
- ],
- 'arrow-body-style': [
- 'error',
- 'as-needed'
- ],
- 'arrow-spacing': 'error',
- 'brace-style': [
- 'error',
- '1tbs'
- ],
- 'comma-dangle': [
- 'error',
- 'always-multiline'
- ],
- 'curly': [
- 'off'
- ],
- 'eol-last': [
- 'error',
- 'always'
- ],
- 'indent': [
- 'error',
- 2
- ],
- 'jsx-quotes': [
- 'error',
- 'prefer-double'
- ],
- 'line-comment-position': [
- 'error',
- 'above'
- ],
- 'linebreak-style': [
- 'error',
- 'unix'
- ],
- 'max-len': [
- 'warn',
- {
- 'code': 160
- }
- ],
- 'no-array-constructor': 'error',
- 'no-eval': 'error',
- 'no-lonely-if': 'error',
- 'no-multi-assign': 'error',
- 'no-new-object': 'error',
- 'no-tabs': 'error',
- 'no-trailing-spaces': 'warn',
- 'no-unreachable': 'error',
- 'no-var': 'error',
- 'nonblock-statement-body-position': 'error',
- 'one-var': [
- 'error',
- 'never'
- ],
- 'prefer-arrow-callback': 'error',
- 'prefer-const': 'warn',
- 'quotes': [
- 'error',
- 'single'
- ],
- 'semi': [
- 'error',
- 'never'
- ],
- 'sort-imports': [
- 'warn',
- {
- 'memberSyntaxSortOrder': [
- 'none',
- 'all',
- 'single',
- 'multiple'
- ]
- }
- ],
- 'sort-vars': 'error'
- },
- 'overrides': [
- {
- 'files': [
- '*.tsx'
- ],
- 'rules': {
- 'max-len': [
- 'off'
- ]
- }
- }
- ]
- }
|