// TODO: https://eslint.org/docs/latest/rules/func-names // TODO: https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/naming-convention.md module.exports = { env: { browser: true, es2021: true }, extends: [ 'plugin:react/recommended', 'standard-with-typescript' ], parser: '@typescript-eslint/parser', parserOptions: { ecmaFeatures: { jsx: true }, ecmaVersion: 'latest', sourceType: 'module', project: './tsconfig.json' }, plugins: [ 'only-warn', 'react', 'react-hooks', '@typescript-eslint' ], rules: { 'space-before-function-paren': ['error', 'never'], '@typescript-eslint/space-before-function-paren': ['error', 'never'], indent: 'off', '@typescript-eslint/indent': ['warn', 2, {SwitchCase: 1}], semi: 'off', '@typescript-eslint/semi': ['warn', 'always'], 'no-unused-vars': 'off', '@typescript-eslint/no-unused-vars': 'error', '@typescript-eslint/ban-types': ['error'], '@typescript-eslint/no-floating-promises': 'off', // disabled cuz troublesome for SweetAlert since they never reject 'react-hooks/rules-of-hooks': 'error', // Checks rules of Hooks 'react-hooks/exhaustive-deps': 'warn' // Checks effect dependencies } };