Skip to content

Reusable configuration fragments

Projects that need a different composition can import creators from /configs:

js
const {
	createCommonConfigs,
	createEnvironmentConfigs,
	createJavaScriptConfigs,
	createTypeScriptConfigs,
	createVueConfigs,
} = require("@fast-china/eslint-config-legacy/configs");
const { GLOBS_CODE } = require("@fast-china/eslint-config-legacy/constants");

module.exports = {
	root: true,
	overrides: [
		...createEnvironmentConfigs({ environment: "browser", files: GLOBS_CODE }),
		...createCommonConfigs(GLOBS_CODE),
		...createJavaScriptConfigs(),
		...createTypeScriptConfigs(),
		...createVueConfigs({ version: 2 }),
		{
			files: ["src/**/*.{js,ts,vue}"],
			rules: {
				"no-console": "warn",
			},
		},
	],
};

Use createVueConfigs({ version: 3 }) for Vue 3. React, Angular, type-aware TypeScript, sorting, Lodash import policies, JSON, YAML, Markdown, Promise, RegExp, import, and Prettier creators are exported from the same /configs entry.

createMarkdownConfigs() returns root extends and code-block overrides separately; preserve both when composing it manually.