// @ts-check const eslint = require('@eslint/js'); const tseslint = require('typescript-eslint'); const angular = require('angular-eslint'); const eslintPluginPrettierRecommended = require('eslint-plugin-prettier/recommended'); module.exports = tseslint.config( { files: ['**/*.ts'], extends: [ eslint.configs.recommended, ...tseslint.configs.recommended, ...tseslint.configs.stylistic, ...angular.configs.tsRecommended, eslintPluginPrettierRecommended, ], processor: angular.processInlineTemplates, rules: { '@angular-eslint/directive-selector': [ 'error', { type: 'attribute', prefix: 'app', style: 'camelCase', }, ], '@angular-eslint/component-selector': [ 'error', { type: 'element', prefix: 'app', style: 'kebab-case', }, ], '@typescript-eslint/no-explicit-any': ['off'], '@typescript-eslint/member-ordering': 0, '@typescript-eslint/naming-convention': 0, '@angular-eslint/no-host-metadata-property': 'off', '@angular-eslint/no-output-on-prefix': 'off', '@typescript-eslint/ban-types': 'off', '@typescript-eslint/no-inferrable-types': 'off', }, }, { files: ['**/*.html'], extends: [...angular.configs.templateRecommended, ...angular.configs.templateAccessibility], rules: {}, } );