UNPKG

@shayanthenerd/eslint-config

Version:

A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style

23 lines (21 loc) 972 B
import { globs } from "../utils/globs.js"; import { isEnabled } from "../utils/isEnabled.js"; import { defaultOptions } from "../utils/options/defaultOptions.js"; import { getPerfectionistRules } from "../rules/perfectionist.js"; import { mergeConfigs } from "eslint-flat-config-utils"; import eslintPluginPerfectionist from "eslint-plugin-perfectionist"; //#region src/configs/perfectionist.ts function getPerfectionistConfig(options) { const { vue, perfectionist } = options.configs; const { sortType, overrides } = isEnabled(perfectionist) ? perfectionist : defaultOptions.configs.perfectionist; const perfectionistConfig = { name: "shayanthenerd/perfectionist", files: [globs.src, vue ? globs.vue : ""], plugins: { perfectionist: eslintPluginPerfectionist }, settings: { perfectionist: { type: sortType } }, rules: getPerfectionistRules(options) }; return mergeConfigs(perfectionistConfig, overrides); } //#endregion export { getPerfectionistConfig };