UNPKG

@elsikora/eslint-config

Version:

ESLint configuration vision of ElsiKora

48 lines (43 loc) 2.1 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); require('eslint/use-at-your-own-risk'); var extractSubPlugin_utility = require('../utility/extract-sub-plugin.utility.js'); var formatConfig_utility = require('../utility/format-config.utility.js'); var formatPluginName_utility = require('../utility/format-plugin-name.utility.js'); var formatRuleName_utility = require('../utility/format-rule-name.utility.js'); var eslintPluginJsonc = require('eslint-plugin-jsonc'); /** * Loads the ESLint configuration for JSON files * @returns {Array<Linter.Config>} An array of ESLint configurations for JSON */ function loadConfig() { return [ { ...formatConfig_utility.formatConfig([...eslintPluginJsonc.configs["flat/recommended-with-json"]])[0], plugins: { // @ts-ignore ...formatConfig_utility.formatConfig([...eslintPluginJsonc.configs["flat/recommended-with-json"]])[0].plugins, // @ts-ignore // eslint-disable-next-line @elsikora/typescript/no-unsafe-argument [formatPluginName_utility.formatPluginName("jsonc/vue-custom-block")]: extractSubPlugin_utility.extractSubPlugin(eslintPluginJsonc.configs["flat/recommended-with-json"][0].plugins.jsonc, "vue-custom-block", "jsonc"), }, }, { ...formatConfig_utility.formatConfig([...eslintPluginJsonc.configs["flat/recommended-with-json"]])[1], }, { files: ["*.json", "**/*.json", "*.json5", "**/*.json5", "*.jsonc", "**/*.jsonc"], // @ts-ignore rules: formatConfig_utility.formatConfig([...eslintPluginJsonc.configs["flat/recommended-with-json"]])[2].rules, }, { files: ["*.json", "**/*.json", "*.json5", "**/*.json5", "*.jsonc", "**/*.jsonc"], ignores: ["**/package.json"], rules: { [formatRuleName_utility.formatRuleName("jsonc/sort-keys")]: "error", }, }, ]; } exports.default = loadConfig; //# sourceMappingURL=json.js.map