UNPKG

@elsikora/eslint-config

Version:

ESLint configuration vision of ElsiKora

55 lines (50 loc) 1.8 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); require('eslint/use-at-your-own-risk'); var formatPluginName_utility = require('../utility/format-plugin-name.utility.js'); var formatRuleName_utility = require('../utility/format-rule-name.utility.js'); var i18nextPlugin = require('eslint-plugin-i18next'); var tseslint = require('typescript-eslint'); /** * Loads the ESLint configuration for i18next internationalization * @returns {Array<Linter.Config>} An array of ESLint configurations for i18next */ function loadConfig() { return [ { files: ["**/*.ts", "**/*.tsx"], languageOptions: { // @ts-ignore parser: tseslint.parser, parserOptions: { projectService: true, }, }, plugins: { [formatPluginName_utility.formatPluginName("i18next")]: i18nextPlugin, }, rules: { [formatRuleName_utility.formatRuleName("i18next/no-literal-string")]: ["error", { mode: "jsx-text-only" }], }, }, { files: ["**/*.js", "**/*.jsx"], languageOptions: { parserOptions: { ecmaFeatures: { jsx: true, }, ecmaVersion: "latest", }, }, plugins: { [formatPluginName_utility.formatPluginName("i18next")]: i18nextPlugin, }, rules: { [formatRuleName_utility.formatRuleName("i18next/no-literal-string")]: ["error", { mode: "jsx-text-only" }], }, }, ]; } exports.default = loadConfig; //# sourceMappingURL=i18next.js.map