123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import type { Linter } from 'eslint';
- import {
- command,
- comments,
- disableds,
- ignores,
- importPluginConfig,
- javascript,
- jsdoc,
- jsonc,
- node,
- perfectionist,
- prettier,
- regexp,
- test,
- turbo,
- typescript,
- unicorn,
- vue,
- } from './configs';
- import { customConfig } from './custom-config';
- type FlatConfig = Linter.Config;
- type FlatConfigPromise =
- | FlatConfig
- | FlatConfig[]
- | Promise<FlatConfig>
- | Promise<FlatConfig[]>;
- async function defineConfig(config: FlatConfig[] = []) {
- const configs: FlatConfigPromise[] = [
- vue(),
- javascript(),
- ignores(),
- prettier(),
- typescript(),
- jsonc(),
- disableds(),
- importPluginConfig(),
- node(),
- perfectionist(),
- comments(),
- jsdoc(),
- unicorn(),
- test(),
- regexp(),
- command(),
- turbo(),
- ...customConfig,
- ...config,
- ];
- const resolved = await Promise.all(configs);
- return resolved.flat();
- }
- export { defineConfig };
|