12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- module.exports = {
- env: {
- browser: true,
- node: true,
- es6: true,
- jest: true,
- },
- parser: '@typescript-eslint/parser',
- extends: [
- 'eslint:recommended',
- 'plugin:@typescript-eslint/recommended',
- 'plugin:react/recommended',
- 'plugin:react-hooks/recommended',
- // turns off the rules which may conflict with prettier
- 'prettier',
- ],
- plugins: ['@emotion', '@typescript-eslint'],
- settings: {
- react: {
- version: 'detect',
- },
- },
- rules: {
- // taken care of by typescript
- 'react/prop-types': 'off',
- // disable explicit return types
- '@typescript-eslint/explicit-module-boundary-types': 'off',
- // allow "_" prefixed function arguments
- '@typescript-eslint/no-unused-vars': [
- 'warn',
- { 'args': 'after-used', 'argsIgnorePattern': '^_', 'ignoreRestSiblings': true },
- ],
- '@typescript-eslint/no-empty-function': 'warn',
- '@typescript-eslint/class-name-casing': 'off',
- '@typescript-eslint/ban-ts-comment': [
- 'error',
- {
- 'ts-ignore': 'allow-with-description',
- },
- ],
- '@typescript-eslint/ban-types': [
- 'error',
- {
- types: {
- object: false,
- },
- },
- ],
- // force using Logger object
- 'no-console': ['warn'],
- // sort import member order
- // can be removed once https://github.com/trivago/prettier-plugin-sort-imports/pull/44 gets released
- 'sort-imports': [
- 'warn',
- {
- 'ignoreDeclarationSort': true,
- },
- ],
- // make sure we use the proper Emotion imports
- '@emotion/pkg-renaming': 'error',
- '@emotion/no-vanilla': 'error',
- '@emotion/syntax-preference': [2, 'string'],
- },
- }
|