UNPKG

@elsikora/eslint-config

Version:

ESLint configuration vision of ElsiKora

50 lines (47 loc) 1.6 kB
import featureSlicedPlugin from '@conarti/eslint-plugin-feature-sliced'; import 'eslint/use-at-your-own-risk'; import { formatPluginName } from '../utility/format-plugin-name.utility.js'; import { formatRuleName } from '../utility/format-rule-name.utility.js'; import tseslint from 'typescript-eslint'; // @ts-ignore /** * Loads the ESLint configuration for Feature-Sliced Design architecture * @returns {Array<Linter.Config>} An array of ESLint configurations for FSD */ function loadConfig() { return [ { plugins: { [formatPluginName("@conarti/feature-sliced")]: featureSlicedPlugin, }, rules: { [formatRuleName("@conarti/feature-sliced/absolute-relative")]: "error", [formatRuleName("@conarti/feature-sliced/layers-slices")]: "error", [formatRuleName("@conarti/feature-sliced/public-api")]: "error", }, }, { files: ["**/*.ts", "**/*.tsx"], languageOptions: { // @ts-ignore parser: tseslint.parser, parserOptions: { projectService: true, }, }, }, { files: ["**/*.js", "**/*.jsx"], languageOptions: { parserOptions: { ecmaFeatures: { jsx: true, }, ecmaVersion: "latest", }, }, }, ]; } export { loadConfig as default }; //# sourceMappingURL=fsd.js.map