@zinkawaii/eslint-config 0.5.0 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +248 -2
- package/dist/index.mjs +321 -197
- package/package.json +40 -39
package/dist/index.d.mts
CHANGED
|
@@ -4,7 +4,7 @@ import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
|
|
|
4
4
|
import { ParserOptions } from "@typescript-eslint/parser";
|
|
5
5
|
import { FlatGitignoreOptions } from "eslint-config-flat-gitignore";
|
|
6
6
|
import { Options } from "eslint-processor-vue-blocks";
|
|
7
|
-
//#region ../../node_modules/.pnpm/@antfu+eslint-config@9.2.0_patch_hash=
|
|
7
|
+
//#region ../../node_modules/.pnpm/@antfu+eslint-config@9.2.0_patch_hash=69df02b36d793b2588fb6ed642c6c83986ef891c17d086eef_ded4dcd20d37bf56e1fcf68acf3c823d/node_modules/@antfu/eslint-config/dist/index.d.mts
|
|
8
8
|
//#region src/typegen.d.ts
|
|
9
9
|
interface RuleOptions {
|
|
10
10
|
/**
|
|
@@ -21754,6 +21754,12 @@ type TypedFlatConfigItem = Omit<ConfigWithExtends, 'plugins' | 'rules'> & {
|
|
|
21754
21754
|
*/
|
|
21755
21755
|
rules?: Rules;
|
|
21756
21756
|
};
|
|
21757
|
+
interface OptionsFiles {
|
|
21758
|
+
/**
|
|
21759
|
+
* Override the `files` option to provide custom globs.
|
|
21760
|
+
*/
|
|
21761
|
+
files?: string[];
|
|
21762
|
+
}
|
|
21757
21763
|
interface OptionsVue extends OptionsOverrides {
|
|
21758
21764
|
/**
|
|
21759
21765
|
* Create virtual files for Vue SFC blocks to enable linting.
|
|
@@ -21933,6 +21939,12 @@ interface OptionsTypeScriptWithTypes {
|
|
|
21933
21939
|
*/
|
|
21934
21940
|
overridesTypeAware?: TypedFlatConfigItem['rules'];
|
|
21935
21941
|
}
|
|
21942
|
+
interface OptionsHasTypeScript {
|
|
21943
|
+
typescript?: boolean;
|
|
21944
|
+
}
|
|
21945
|
+
interface OptionsStylistic {
|
|
21946
|
+
stylistic?: boolean | StylisticConfig;
|
|
21947
|
+
}
|
|
21936
21948
|
interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi' | 'braceStyle' | 'experimental'> {}
|
|
21937
21949
|
interface OptionsOverrides {
|
|
21938
21950
|
overrides?: TypedFlatConfigItem['rules'];
|
|
@@ -22260,6 +22272,18 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
|
|
|
22260
22272
|
svelte?: TypedFlatConfigItem['rules'];
|
|
22261
22273
|
};
|
|
22262
22274
|
}
|
|
22275
|
+
//#endregion
|
|
22276
|
+
//#region src/factory.d.ts
|
|
22277
|
+
declare const defaultPluginRenaming: {
|
|
22278
|
+
'@eslint-react': string;
|
|
22279
|
+
'@next/next': string;
|
|
22280
|
+
'@stylistic': string;
|
|
22281
|
+
'@typescript-eslint': string;
|
|
22282
|
+
'import-lite': string;
|
|
22283
|
+
n: string;
|
|
22284
|
+
vitest: string;
|
|
22285
|
+
yml: string;
|
|
22286
|
+
};
|
|
22263
22287
|
/**
|
|
22264
22288
|
* Construct an array of ESLint flat config items.
|
|
22265
22289
|
*
|
|
@@ -22271,8 +22295,230 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
|
|
|
22271
22295
|
* The merged ESLint configurations.
|
|
22272
22296
|
*/
|
|
22273
22297
|
declare function antfu(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files' | 'ignores'>, ...userConfigs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[] | FlatConfigComposer<any, any> | Linter.Config[]>[]): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
|
|
22298
|
+
type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
|
|
22299
|
+
declare function resolveSubOptions<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): ResolvedOptions<OptionsConfig[K]>;
|
|
22300
|
+
declare function getOverrides<K extends keyof OptionsConfig>(options: OptionsConfig, key: K): Partial<Linter.RulesRecord & RuleOptions>;
|
|
22301
|
+
//#endregion
|
|
22302
|
+
//#region src/config-presets.d.ts
|
|
22303
|
+
declare const CONFIG_PRESET_FULL_ON: OptionsConfig;
|
|
22304
|
+
declare const CONFIG_PRESET_FULL_OFF: OptionsConfig;
|
|
22305
|
+
//#endregion
|
|
22306
|
+
//#region src/configs/angular.d.ts
|
|
22307
|
+
declare function angular(options?: OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22308
|
+
//#endregion
|
|
22309
|
+
//#region src/configs/astro.d.ts
|
|
22310
|
+
declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22311
|
+
//#endregion
|
|
22312
|
+
//#region src/configs/command.d.ts
|
|
22313
|
+
declare function command(): Promise<TypedFlatConfigItem[]>;
|
|
22314
|
+
//#endregion
|
|
22315
|
+
//#region src/configs/comments.d.ts
|
|
22316
|
+
declare function comments(): Promise<TypedFlatConfigItem[]>;
|
|
22317
|
+
//#endregion
|
|
22318
|
+
//#region src/configs/disables.d.ts
|
|
22319
|
+
declare function disables(): Promise<TypedFlatConfigItem[]>;
|
|
22320
|
+
//#endregion
|
|
22321
|
+
//#region src/configs/formatters.d.ts
|
|
22322
|
+
declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<TypedFlatConfigItem[]>;
|
|
22323
|
+
//#endregion
|
|
22324
|
+
//#region src/configs/ignores.d.ts
|
|
22325
|
+
declare function ignores(userIgnores?: string[] | ((originals: string[]) => string[]), ignoreTypeScript?: boolean): Promise<TypedFlatConfigItem[]>;
|
|
22326
|
+
//#endregion
|
|
22327
|
+
//#region src/configs/imports.d.ts
|
|
22328
|
+
declare function imports(options?: OptionsOverrides & OptionsStylistic): Promise<TypedFlatConfigItem[]>;
|
|
22329
|
+
//#endregion
|
|
22330
|
+
//#region src/configs/javascript.d.ts
|
|
22331
|
+
declare function javascript(options?: OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22332
|
+
//#endregion
|
|
22333
|
+
//#region src/configs/jsdoc.d.ts
|
|
22334
|
+
declare function jsdoc(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
|
|
22335
|
+
//#endregion
|
|
22336
|
+
//#region src/configs/jsonc.d.ts
|
|
22337
|
+
declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22338
|
+
//#endregion
|
|
22339
|
+
//#region src/configs/jsx.d.ts
|
|
22340
|
+
declare function jsx(options?: OptionsJSX): Promise<TypedFlatConfigItem[]>;
|
|
22341
|
+
//#endregion
|
|
22342
|
+
//#region src/configs/markdown.d.ts
|
|
22343
|
+
declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsMarkdown): Promise<TypedFlatConfigItem[]>;
|
|
22344
|
+
//#endregion
|
|
22345
|
+
//#region src/configs/nextjs.d.ts
|
|
22346
|
+
declare function nextjs(options?: OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22347
|
+
//#endregion
|
|
22348
|
+
//#region src/configs/node.d.ts
|
|
22349
|
+
declare function node(): Promise<TypedFlatConfigItem[]>;
|
|
22350
|
+
//#endregion
|
|
22351
|
+
//#region src/configs/perfectionist.d.ts
|
|
22352
|
+
/**
|
|
22353
|
+
* Perfectionist plugin for props and items sorting.
|
|
22354
|
+
*
|
|
22355
|
+
* @see https://github.com/azat-io/eslint-plugin-perfectionist
|
|
22356
|
+
*/
|
|
22357
|
+
declare function perfectionist(options: OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22358
|
+
//#endregion
|
|
22359
|
+
//#region src/configs/pnpm.d.ts
|
|
22360
|
+
declare function pnpm(options: OptionsPnpm): Promise<TypedFlatConfigItem[]>;
|
|
22361
|
+
//#endregion
|
|
22362
|
+
//#region src/configs/react.d.ts
|
|
22363
|
+
declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsReact & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22364
|
+
//#endregion
|
|
22365
|
+
//#region src/configs/regexp.d.ts
|
|
22366
|
+
declare function regexp(options?: OptionsRegExp & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22367
|
+
//#endregion
|
|
22368
|
+
//#region src/configs/solid.d.ts
|
|
22369
|
+
declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<TypedFlatConfigItem[]>;
|
|
22370
|
+
//#endregion
|
|
22371
|
+
//#region src/configs/sort.d.ts
|
|
22372
|
+
/**
|
|
22373
|
+
* Sort package.json
|
|
22374
|
+
*
|
|
22375
|
+
* Requires `jsonc` config
|
|
22376
|
+
*/
|
|
22377
|
+
declare function sortPackageJson(): Promise<TypedFlatConfigItem[]>;
|
|
22378
|
+
/**
|
|
22379
|
+
* Sort tsconfig.json
|
|
22380
|
+
*
|
|
22381
|
+
* Requires `jsonc` config
|
|
22382
|
+
*/
|
|
22383
|
+
declare function sortTsconfig(): TypedFlatConfigItem[];
|
|
22384
|
+
//#endregion
|
|
22385
|
+
//#region src/configs/stylistic.d.ts
|
|
22386
|
+
declare const StylisticConfigDefaults: StylisticConfig;
|
|
22387
|
+
interface StylisticOptions extends StylisticConfig, OptionsOverrides {
|
|
22388
|
+
lessOpinionated?: boolean;
|
|
22389
|
+
}
|
|
22390
|
+
declare function stylistic(options?: StylisticOptions): Promise<TypedFlatConfigItem[]>;
|
|
22391
|
+
//#endregion
|
|
22392
|
+
//#region src/configs/svelte.d.ts
|
|
22393
|
+
declare function svelte(options?: OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22394
|
+
//#endregion
|
|
22395
|
+
//#region src/configs/test.d.ts
|
|
22396
|
+
declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
22397
|
+
//#endregion
|
|
22398
|
+
//#region src/configs/toml.d.ts
|
|
22399
|
+
declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22400
|
+
//#endregion
|
|
22401
|
+
//#region src/configs/typescript.d.ts
|
|
22402
|
+
declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType & OptionsTypeScriptErasableOnly): Promise<TypedFlatConfigItem[]>;
|
|
22403
|
+
//#endregion
|
|
22404
|
+
//#region src/configs/unicorn.d.ts
|
|
22405
|
+
declare function unicorn(options?: OptionsUnicorn): Promise<TypedFlatConfigItem[]>;
|
|
22406
|
+
//#endregion
|
|
22407
|
+
//#region src/configs/unocss.d.ts
|
|
22408
|
+
declare function unocss(options?: OptionsUnoCSS): Promise<TypedFlatConfigItem[]>;
|
|
22409
|
+
//#endregion
|
|
22410
|
+
//#region src/configs/vue.d.ts
|
|
22411
|
+
declare function vue(options?: OptionsVue & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22412
|
+
//#endregion
|
|
22413
|
+
//#region src/configs/yaml.d.ts
|
|
22414
|
+
declare function yaml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
|
|
22415
|
+
//#endregion
|
|
22416
|
+
//#region src/globs.d.ts
|
|
22417
|
+
declare const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
|
|
22418
|
+
declare const GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
|
|
22419
|
+
declare const GLOB_JS = "**/*.?([cm])js";
|
|
22420
|
+
declare const GLOB_JSX = "**/*.?([cm])jsx";
|
|
22421
|
+
declare const GLOB_TS = "**/*.?([cm])ts";
|
|
22422
|
+
declare const GLOB_TSX = "**/*.?([cm])tsx";
|
|
22423
|
+
declare const GLOB_STYLE = "**/*.{c,le,sc}ss";
|
|
22424
|
+
declare const GLOB_CSS = "**/*.css";
|
|
22425
|
+
declare const GLOB_POSTCSS = "**/*.{p,post}css";
|
|
22426
|
+
declare const GLOB_LESS = "**/*.less";
|
|
22427
|
+
declare const GLOB_SCSS = "**/*.scss";
|
|
22428
|
+
declare const GLOB_JSON = "**/*.json";
|
|
22429
|
+
declare const GLOB_JSON5 = "**/*.json5";
|
|
22430
|
+
declare const GLOB_JSONC = "**/*.jsonc";
|
|
22431
|
+
declare const GLOB_MARKDOWN = "**/*.md";
|
|
22432
|
+
declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
|
|
22433
|
+
declare const GLOB_SVELTE = "**/*.svelte?(.{js,ts})";
|
|
22434
|
+
declare const GLOB_VUE = "**/*.vue";
|
|
22435
|
+
declare const GLOB_YAML = "**/*.y?(a)ml";
|
|
22436
|
+
declare const GLOB_TOML = "**/*.toml";
|
|
22437
|
+
declare const GLOB_XML = "**/*.xml";
|
|
22438
|
+
declare const GLOB_SVG = "**/*.svg";
|
|
22439
|
+
declare const GLOB_HTML = "**/*.htm?(l)";
|
|
22440
|
+
declare const GLOB_ASTRO = "**/*.astro";
|
|
22441
|
+
declare const GLOB_ASTRO_TS = "**/*.astro/*.ts";
|
|
22442
|
+
declare const GLOB_GRAPHQL = "**/*.{g,graph}ql";
|
|
22443
|
+
declare const GLOB_MARKDOWN_CODE = "**/*.md/**/*.?([cm])[jt]s?(x)";
|
|
22444
|
+
declare const GLOB_TESTS: string[];
|
|
22445
|
+
declare const GLOB_ALL_SRC: string[];
|
|
22446
|
+
declare const GLOB_EXCLUDE: string[];
|
|
22447
|
+
//#endregion
|
|
22448
|
+
//#region src/utils.d.ts
|
|
22449
|
+
declare const parserPlain: {
|
|
22450
|
+
meta: {
|
|
22451
|
+
name: string;
|
|
22452
|
+
};
|
|
22453
|
+
parseForESLint: (code: string) => {
|
|
22454
|
+
ast: {
|
|
22455
|
+
body: never[];
|
|
22456
|
+
comments: never[];
|
|
22457
|
+
loc: {
|
|
22458
|
+
end: number;
|
|
22459
|
+
start: number;
|
|
22460
|
+
};
|
|
22461
|
+
range: number[];
|
|
22462
|
+
tokens: never[];
|
|
22463
|
+
type: string;
|
|
22464
|
+
};
|
|
22465
|
+
scopeManager: null;
|
|
22466
|
+
services: {
|
|
22467
|
+
isPlain: boolean;
|
|
22468
|
+
};
|
|
22469
|
+
visitorKeys: {
|
|
22470
|
+
Program: never[];
|
|
22471
|
+
};
|
|
22472
|
+
};
|
|
22473
|
+
};
|
|
22474
|
+
/**
|
|
22475
|
+
* Combine array and non-array configs into a single array.
|
|
22476
|
+
*/
|
|
22477
|
+
declare function combine(...configs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[]>[]): Promise<TypedFlatConfigItem[]>;
|
|
22478
|
+
/**
|
|
22479
|
+
* Rename plugin prefixes in a rule object.
|
|
22480
|
+
* Accepts a map of prefixes to rename.
|
|
22481
|
+
*
|
|
22482
|
+
* @example
|
|
22483
|
+
* ```ts
|
|
22484
|
+
* import { renameRules } from '@antfu/eslint-config'
|
|
22485
|
+
*
|
|
22486
|
+
* export default [{
|
|
22487
|
+
* rules: renameRules(
|
|
22488
|
+
* {
|
|
22489
|
+
* '@typescript-eslint/indent': 'error'
|
|
22490
|
+
* },
|
|
22491
|
+
* { '@typescript-eslint': 'ts' }
|
|
22492
|
+
* )
|
|
22493
|
+
* }]
|
|
22494
|
+
* ```
|
|
22495
|
+
*/
|
|
22496
|
+
declare function renameRules(rules: Record<string, any>, map: Record<string, string>): Record<string, any>;
|
|
22497
|
+
/**
|
|
22498
|
+
* Rename plugin names a flat configs array
|
|
22499
|
+
*
|
|
22500
|
+
* @example
|
|
22501
|
+
* ```ts
|
|
22502
|
+
* import { renamePluginInConfigs } from '@antfu/eslint-config'
|
|
22503
|
+
* import someConfigs from './some-configs'
|
|
22504
|
+
*
|
|
22505
|
+
* export default renamePluginInConfigs(someConfigs, {
|
|
22506
|
+
* '@typescript-eslint': 'ts',
|
|
22507
|
+
* '@stylistic': 'style',
|
|
22508
|
+
* })
|
|
22509
|
+
* ```
|
|
22510
|
+
*/
|
|
22511
|
+
declare function renamePluginInConfigs(configs: TypedFlatConfigItem[], map: Record<string, string>): TypedFlatConfigItem[];
|
|
22512
|
+
declare function toArray<T>(value: T | T[]): T[];
|
|
22513
|
+
declare function interopDefault<T>(m: Awaitable<T>): Promise<T extends {
|
|
22514
|
+
default: infer U;
|
|
22515
|
+
} ? U : T>;
|
|
22516
|
+
declare function isPackageInScope(name: string): boolean;
|
|
22517
|
+
declare function ensurePackages(packages: (string | undefined)[]): Promise<void>;
|
|
22518
|
+
declare function isInEditorEnv(): boolean;
|
|
22519
|
+
declare function isInGitHooksOrLintStaged(): boolean;
|
|
22274
22520
|
//#endregion
|
|
22275
22521
|
//#region src/index.d.ts
|
|
22276
22522
|
declare const zin: typeof antfu;
|
|
22277
22523
|
//#endregion
|
|
22278
|
-
export { zin as default, zin };
|
|
22524
|
+
export { Awaitable, CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsE18e, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsJSX, OptionsJSXA11y, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, StylisticOptions, TypedFlatConfigItem, angular, antfu, astro, combine, command, comments, zin as default, zin, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|
package/dist/index.mjs
CHANGED
|
@@ -16,7 +16,7 @@ import pluginUnusedImports from "eslint-plugin-unused-imports";
|
|
|
16
16
|
import globals from "globals";
|
|
17
17
|
import { mergeProcessors, processorPassThrough } from "eslint-merge-processors";
|
|
18
18
|
import { configs } from "eslint-plugin-regexp";
|
|
19
|
-
//#region ../../node_modules/.pnpm/@antfu+eslint-config@9.2.0_patch_hash=
|
|
19
|
+
//#region ../../node_modules/.pnpm/@antfu+eslint-config@9.2.0_patch_hash=69df02b36d793b2588fb6ed642c6c83986ef891c17d086eef_ded4dcd20d37bf56e1fcf68acf3c823d/node_modules/@antfu/eslint-config/dist/index.mjs
|
|
20
20
|
const toPath = (urlOrPath) => urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath;
|
|
21
21
|
async function findUp(name, { cwd = process.cwd(), type = "file", stopAt } = {}) {
|
|
22
22
|
let directory = path.resolve(toPath(cwd) ?? "");
|
|
@@ -50,9 +50,11 @@ function findUpSync(name, { cwd = process.cwd(), type = "file", stopAt } = {}) {
|
|
|
50
50
|
}
|
|
51
51
|
const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
|
|
52
52
|
const GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
|
|
53
|
+
const GLOB_JS = "**/*.?([cm])js";
|
|
53
54
|
const GLOB_JSX = "**/*.?([cm])jsx";
|
|
54
55
|
const GLOB_TS = "**/*.?([cm])ts";
|
|
55
56
|
const GLOB_TSX = "**/*.?([cm])tsx";
|
|
57
|
+
const GLOB_STYLE = "**/*.{c,le,sc}ss";
|
|
56
58
|
const GLOB_CSS = "**/*.css";
|
|
57
59
|
const GLOB_POSTCSS = "**/*.{p,post}css";
|
|
58
60
|
const GLOB_LESS = "**/*.less";
|
|
@@ -80,6 +82,18 @@ const GLOB_TESTS = [
|
|
|
80
82
|
`**/*.bench.${GLOB_SRC_EXT}`,
|
|
81
83
|
`**/*.benchmark.${GLOB_SRC_EXT}`
|
|
82
84
|
];
|
|
85
|
+
const GLOB_ALL_SRC = [
|
|
86
|
+
GLOB_SRC,
|
|
87
|
+
GLOB_STYLE,
|
|
88
|
+
GLOB_JSON,
|
|
89
|
+
GLOB_JSON5,
|
|
90
|
+
GLOB_MARKDOWN,
|
|
91
|
+
GLOB_SVELTE,
|
|
92
|
+
GLOB_VUE,
|
|
93
|
+
GLOB_YAML,
|
|
94
|
+
GLOB_XML,
|
|
95
|
+
GLOB_HTML
|
|
96
|
+
];
|
|
83
97
|
const GLOB_EXCLUDE = [
|
|
84
98
|
"**/node_modules",
|
|
85
99
|
"**/dist",
|
|
@@ -139,6 +153,12 @@ const parserPlain = {
|
|
|
139
153
|
})
|
|
140
154
|
};
|
|
141
155
|
/**
|
|
156
|
+
* Combine array and non-array configs into a single array.
|
|
157
|
+
*/
|
|
158
|
+
async function combine(...configs) {
|
|
159
|
+
return (await Promise.all(configs)).flat();
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
142
162
|
* Rename plugin prefixes in a rule object.
|
|
143
163
|
* Accepts a map of prefixes to rename.
|
|
144
164
|
*
|
|
@@ -162,6 +182,31 @@ function renameRules(rules, map) {
|
|
|
162
182
|
return [key, value];
|
|
163
183
|
}));
|
|
164
184
|
}
|
|
185
|
+
/**
|
|
186
|
+
* Rename plugin names a flat configs array
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```ts
|
|
190
|
+
* import { renamePluginInConfigs } from '@antfu/eslint-config'
|
|
191
|
+
* import someConfigs from './some-configs'
|
|
192
|
+
*
|
|
193
|
+
* export default renamePluginInConfigs(someConfigs, {
|
|
194
|
+
* '@typescript-eslint': 'ts',
|
|
195
|
+
* '@stylistic': 'style',
|
|
196
|
+
* })
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
199
|
+
function renamePluginInConfigs(configs, map) {
|
|
200
|
+
return configs.map((i) => {
|
|
201
|
+
const clone = { ...i };
|
|
202
|
+
if (clone.rules) clone.rules = renameRules(clone.rules, map);
|
|
203
|
+
if (clone.plugins) clone.plugins = Object.fromEntries(Object.entries(clone.plugins).map(([key, value]) => {
|
|
204
|
+
if (key in map) return [map[key], value];
|
|
205
|
+
return [key, value];
|
|
206
|
+
}));
|
|
207
|
+
return clone;
|
|
208
|
+
});
|
|
209
|
+
}
|
|
165
210
|
function toArray(value) {
|
|
166
211
|
return Array.isArray(value) ? value : [value];
|
|
167
212
|
}
|
|
@@ -1910,6 +1955,36 @@ async function typescript(options = {}) {
|
|
|
1910
1955
|
}] : []
|
|
1911
1956
|
];
|
|
1912
1957
|
}
|
|
1958
|
+
async function unicorn(options = {}) {
|
|
1959
|
+
const { allRecommended = false, overrides = {} } = options;
|
|
1960
|
+
return [{
|
|
1961
|
+
name: "antfu/unicorn/setup",
|
|
1962
|
+
plugins: { unicorn: pluginUnicorn }
|
|
1963
|
+
}, {
|
|
1964
|
+
files: [GLOB_SRC],
|
|
1965
|
+
name: "antfu/unicorn/rules",
|
|
1966
|
+
rules: {
|
|
1967
|
+
...allRecommended ? pluginUnicorn.configs.recommended.rules : {
|
|
1968
|
+
"unicorn/consistent-empty-array-spread": "error",
|
|
1969
|
+
"unicorn/error-message": "error",
|
|
1970
|
+
"unicorn/escape-case": "error",
|
|
1971
|
+
"unicorn/new-for-builtins": "error",
|
|
1972
|
+
"unicorn/no-instanceof-builtins": "error",
|
|
1973
|
+
"unicorn/no-new-array": "error",
|
|
1974
|
+
"unicorn/no-new-buffer": "error",
|
|
1975
|
+
"unicorn/number-literal-case": "error",
|
|
1976
|
+
"unicorn/prefer-dom-node-text-content": "error",
|
|
1977
|
+
"unicorn/prefer-includes": "error",
|
|
1978
|
+
"unicorn/prefer-node-protocol": "error",
|
|
1979
|
+
"unicorn/prefer-number-properties": "error",
|
|
1980
|
+
"unicorn/prefer-string-starts-ends-with": "error",
|
|
1981
|
+
"unicorn/prefer-type-error": "error",
|
|
1982
|
+
"unicorn/throw-new-error": "error"
|
|
1983
|
+
},
|
|
1984
|
+
...overrides
|
|
1985
|
+
}
|
|
1986
|
+
}];
|
|
1987
|
+
}
|
|
1913
1988
|
async function unocss(options = {}) {
|
|
1914
1989
|
const { attributify = true, strict = false } = options;
|
|
1915
1990
|
await ensurePackages(["@unocss/eslint-plugin"]);
|
|
@@ -2362,191 +2437,239 @@ function getOverrides(options, key) {
|
|
|
2362
2437
|
..."overrides" in sub ? sub.overrides : {}
|
|
2363
2438
|
};
|
|
2364
2439
|
}
|
|
2440
|
+
const CONFIG_PRESET_FULL_ON = {
|
|
2441
|
+
angular: true,
|
|
2442
|
+
astro: true,
|
|
2443
|
+
formatters: true,
|
|
2444
|
+
gitignore: true,
|
|
2445
|
+
imports: true,
|
|
2446
|
+
jsdoc: true,
|
|
2447
|
+
jsonc: true,
|
|
2448
|
+
jsx: { a11y: true },
|
|
2449
|
+
markdown: true,
|
|
2450
|
+
nextjs: true,
|
|
2451
|
+
node: true,
|
|
2452
|
+
perfectionist: true,
|
|
2453
|
+
pnpm: true,
|
|
2454
|
+
react: true,
|
|
2455
|
+
regexp: true,
|
|
2456
|
+
solid: true,
|
|
2457
|
+
stylistic: { experimental: true },
|
|
2458
|
+
svelte: true,
|
|
2459
|
+
test: true,
|
|
2460
|
+
toml: true,
|
|
2461
|
+
typescript: {
|
|
2462
|
+
erasableOnly: true,
|
|
2463
|
+
tsconfigPath: "tsconfig.json"
|
|
2464
|
+
},
|
|
2465
|
+
unicorn: true,
|
|
2466
|
+
unocss: true,
|
|
2467
|
+
vue: { a11y: true },
|
|
2468
|
+
yaml: true
|
|
2469
|
+
};
|
|
2470
|
+
const CONFIG_PRESET_FULL_OFF = {
|
|
2471
|
+
angular: false,
|
|
2472
|
+
astro: false,
|
|
2473
|
+
formatters: false,
|
|
2474
|
+
gitignore: false,
|
|
2475
|
+
imports: false,
|
|
2476
|
+
jsdoc: false,
|
|
2477
|
+
jsonc: false,
|
|
2478
|
+
jsx: false,
|
|
2479
|
+
markdown: false,
|
|
2480
|
+
nextjs: false,
|
|
2481
|
+
node: false,
|
|
2482
|
+
perfectionist: false,
|
|
2483
|
+
pnpm: false,
|
|
2484
|
+
react: false,
|
|
2485
|
+
regexp: false,
|
|
2486
|
+
solid: false,
|
|
2487
|
+
stylistic: false,
|
|
2488
|
+
svelte: false,
|
|
2489
|
+
test: false,
|
|
2490
|
+
toml: false,
|
|
2491
|
+
typescript: false,
|
|
2492
|
+
unicorn: false,
|
|
2493
|
+
unocss: false,
|
|
2494
|
+
vue: false,
|
|
2495
|
+
yaml: false
|
|
2496
|
+
};
|
|
2365
2497
|
var src_default = antfu;
|
|
2366
2498
|
//#endregion
|
|
2367
|
-
//#region src/
|
|
2499
|
+
//#region src/rules/javascript.ts
|
|
2368
2500
|
var javascript_default = {
|
|
2369
|
-
|
|
2370
|
-
|
|
2371
|
-
|
|
2372
|
-
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
"
|
|
2376
|
-
"
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
"prefer-template": "off",
|
|
2395
|
-
"symbol-description": "off"
|
|
2396
|
-
}
|
|
2501
|
+
"no-cond-assign": "off",
|
|
2502
|
+
"no-fallthrough": "off",
|
|
2503
|
+
"require-yield": "error",
|
|
2504
|
+
"curly": ["error", "multi-line"],
|
|
2505
|
+
"default-param-last": "error",
|
|
2506
|
+
"func-style": [
|
|
2507
|
+
"error",
|
|
2508
|
+
"declaration",
|
|
2509
|
+
{ allowArrowFunctions: true }
|
|
2510
|
+
],
|
|
2511
|
+
"logical-assignment-operators": "error",
|
|
2512
|
+
"no-console": "off",
|
|
2513
|
+
"no-constructor-return": "error",
|
|
2514
|
+
"no-labels": "off",
|
|
2515
|
+
"no-lonely-if": "error",
|
|
2516
|
+
"no-loop-func": "error",
|
|
2517
|
+
"no-sequences": "off",
|
|
2518
|
+
"no-undefined": "error",
|
|
2519
|
+
"no-useless-concat": "error",
|
|
2520
|
+
"operator-assignment": ["error", "always"],
|
|
2521
|
+
"prefer-numeric-literals": "error",
|
|
2522
|
+
"prefer-object-has-own": "error",
|
|
2523
|
+
"prefer-object-spread": "error",
|
|
2524
|
+
"prefer-template": "off",
|
|
2525
|
+
"symbol-description": "off"
|
|
2397
2526
|
};
|
|
2398
2527
|
//#endregion
|
|
2399
|
-
//#region src/
|
|
2528
|
+
//#region src/rules/misc.ts
|
|
2400
2529
|
var misc_default = {
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
"
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
"sibling",
|
|
2420
|
-
"index"
|
|
2421
|
-
],
|
|
2422
|
-
[
|
|
2423
|
-
"type-parent",
|
|
2424
|
-
"type-sibling",
|
|
2425
|
-
"type-index"
|
|
2426
|
-
],
|
|
2427
|
-
"style",
|
|
2428
|
-
"unknown"
|
|
2530
|
+
"antfu/curly": "off",
|
|
2531
|
+
"antfu/if-newline": "off",
|
|
2532
|
+
"antfu/no-top-level-await": "off",
|
|
2533
|
+
"antfu/top-level-function": "off",
|
|
2534
|
+
"e18e/prefer-static-regex": "off",
|
|
2535
|
+
"import/consistent-type-specifier-style": "off",
|
|
2536
|
+
"node/prefer-global/process": "off",
|
|
2537
|
+
"perfectionist/sort-imports": ["warn", {
|
|
2538
|
+
groups: [
|
|
2539
|
+
"builtin",
|
|
2540
|
+
"external",
|
|
2541
|
+
"type-external",
|
|
2542
|
+
"internal",
|
|
2543
|
+
"type-internal",
|
|
2544
|
+
[
|
|
2545
|
+
"parent",
|
|
2546
|
+
"sibling",
|
|
2547
|
+
"index"
|
|
2429
2548
|
],
|
|
2430
|
-
|
|
2431
|
-
"
|
|
2432
|
-
"
|
|
2433
|
-
"
|
|
2434
|
-
"~/.*",
|
|
2435
|
-
"~~/.*"
|
|
2549
|
+
[
|
|
2550
|
+
"type-parent",
|
|
2551
|
+
"type-sibling",
|
|
2552
|
+
"type-index"
|
|
2436
2553
|
],
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
|
|
2442
|
-
|
|
2554
|
+
"style",
|
|
2555
|
+
"unknown"
|
|
2556
|
+
],
|
|
2557
|
+
internalPattern: [
|
|
2558
|
+
"#.*",
|
|
2559
|
+
"@/.*",
|
|
2560
|
+
"@@/.*",
|
|
2561
|
+
"~/.*",
|
|
2562
|
+
"~~/.*"
|
|
2563
|
+
],
|
|
2564
|
+
newlinesBetween: 0
|
|
2565
|
+
}],
|
|
2566
|
+
"ts/no-empty-object-type": "off",
|
|
2567
|
+
"ts/no-unsafe-declaration-merging": "off",
|
|
2568
|
+
"yaml/quotes": ["warn", { prefer: "double" }]
|
|
2443
2569
|
};
|
|
2444
2570
|
//#endregion
|
|
2445
|
-
//#region src/
|
|
2571
|
+
//#region src/rules/stylistic.ts
|
|
2446
2572
|
var stylistic_default = {
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
|
|
2451
|
-
|
|
2452
|
-
|
|
2453
|
-
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
"
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
"
|
|
2483
|
-
"
|
|
2484
|
-
|
|
2485
|
-
|
|
2486
|
-
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2500
|
-
|
|
2501
|
-
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
"
|
|
2518
|
-
"
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
"
|
|
2542
|
-
"
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
|
-
"style/wrap-regex": "off",
|
|
2548
|
-
"style/yield-star-spacing": "warn"
|
|
2549
|
-
}
|
|
2573
|
+
"style/array-bracket-newline": ["warn", "consistent"],
|
|
2574
|
+
"style/array-bracket-spacing": "warn",
|
|
2575
|
+
"style/array-element-newline": ["warn", "consistent"],
|
|
2576
|
+
"style/arrow-parens": ["warn", "always"],
|
|
2577
|
+
"style/arrow-spacing": "warn",
|
|
2578
|
+
"style/block-spacing": "warn",
|
|
2579
|
+
"style/brace-style": ["warn", "stroustrup"],
|
|
2580
|
+
"style/comma-dangle": ["warn", "always-multiline"],
|
|
2581
|
+
"style/comma-spacing": "warn",
|
|
2582
|
+
"style/comma-style": "warn",
|
|
2583
|
+
"style/computed-property-spacing": "warn",
|
|
2584
|
+
"style/curly-newline": "off",
|
|
2585
|
+
"style/dot-location": ["warn", "property"],
|
|
2586
|
+
"style/eol-last": "warn",
|
|
2587
|
+
"style/function-call-argument-newline": ["warn", "consistent"],
|
|
2588
|
+
"style/function-call-spacing": "warn",
|
|
2589
|
+
"style/function-paren-newline": ["warn", "consistent"],
|
|
2590
|
+
"style/generator-star-spacing": ["warn", {
|
|
2591
|
+
named: "after",
|
|
2592
|
+
anonymous: "before",
|
|
2593
|
+
method: "both"
|
|
2594
|
+
}],
|
|
2595
|
+
"style/implicit-arrow-linebreak": "warn",
|
|
2596
|
+
"style/indent-binary-ops": "off",
|
|
2597
|
+
"style/indent": [
|
|
2598
|
+
"warn",
|
|
2599
|
+
2,
|
|
2600
|
+
{ SwitchCase: 1 }
|
|
2601
|
+
],
|
|
2602
|
+
"style/key-spacing": "warn",
|
|
2603
|
+
"style/keyword-spacing": "warn",
|
|
2604
|
+
"style/line-comment-position": "off",
|
|
2605
|
+
"style/linebreak-style": "warn",
|
|
2606
|
+
"style/lines-around-comment": "off",
|
|
2607
|
+
"style/lines-between-class-members": [
|
|
2608
|
+
"warn",
|
|
2609
|
+
"always",
|
|
2610
|
+
{ exceptAfterSingleLine: true }
|
|
2611
|
+
],
|
|
2612
|
+
"style/max-len": "off",
|
|
2613
|
+
"style/max-statements-per-line": "off",
|
|
2614
|
+
"style/member-delimiter-style": ["warn", { multiline: {
|
|
2615
|
+
delimiter: "semi",
|
|
2616
|
+
requireLast: true
|
|
2617
|
+
} }],
|
|
2618
|
+
"style/multiline-comment-style": "off",
|
|
2619
|
+
"style/multiline-ternary": "off",
|
|
2620
|
+
"style/new-parens": "warn",
|
|
2621
|
+
"style/newline-per-chained-call": "off",
|
|
2622
|
+
"style/no-confusing-arrow": "warn",
|
|
2623
|
+
"style/no-extra-parens": ["warn", "functions"],
|
|
2624
|
+
"style/no-extra-semi": "warn",
|
|
2625
|
+
"style/no-floating-decimal": "warn",
|
|
2626
|
+
"style/no-mixed-operators": "off",
|
|
2627
|
+
"style/no-mixed-spaces-and-tabs": "warn",
|
|
2628
|
+
"style/no-multi-spaces": ["warn", { ignoreEOLComments: true }],
|
|
2629
|
+
"style/no-multiple-empty-lines": ["warn", { max: 1 }],
|
|
2630
|
+
"style/no-tabs": "warn",
|
|
2631
|
+
"style/no-trailing-spaces": "warn",
|
|
2632
|
+
"style/no-whitespace-before-property": "warn",
|
|
2633
|
+
"style/nonblock-statement-body-position": "warn",
|
|
2634
|
+
"style/object-curly-newline": "warn",
|
|
2635
|
+
"style/object-curly-spacing": ["warn", "always"],
|
|
2636
|
+
"style/object-property-newline": ["warn", { allowAllPropertiesOnSameLine: true }],
|
|
2637
|
+
"style/one-var-declaration-per-line": "off",
|
|
2638
|
+
"style/operator-linebreak": "off",
|
|
2639
|
+
"style/padded-blocks": ["warn", "never"],
|
|
2640
|
+
"style/padding-line-between-statements": "off",
|
|
2641
|
+
"style/quote-props": ["warn", "as-needed"],
|
|
2642
|
+
"style/quotes": [
|
|
2643
|
+
"warn",
|
|
2644
|
+
"double",
|
|
2645
|
+
{ allowTemplateLiterals: "always" }
|
|
2646
|
+
],
|
|
2647
|
+
"style/rest-spread-spacing": "warn",
|
|
2648
|
+
"style/semi-spacing": "warn",
|
|
2649
|
+
"style/semi-style": "warn",
|
|
2650
|
+
"style/semi": ["warn", "always"],
|
|
2651
|
+
"style/space-before-blocks": "warn",
|
|
2652
|
+
"style/space-before-function-paren": ["warn", {
|
|
2653
|
+
named: "never",
|
|
2654
|
+
anonymous: "never"
|
|
2655
|
+
}],
|
|
2656
|
+
"style/space-in-parens": "warn",
|
|
2657
|
+
"style/space-infix-ops": "warn",
|
|
2658
|
+
"style/space-unary-ops": "warn",
|
|
2659
|
+
"style/spaced-comment": "off",
|
|
2660
|
+
"style/switch-colon-spacing": "warn",
|
|
2661
|
+
"style/template-curly-spacing": "warn",
|
|
2662
|
+
"style/template-tag-spacing": "warn",
|
|
2663
|
+
"style/type-annotation-spacing": "warn",
|
|
2664
|
+
"style/type-generic-spacing": "warn",
|
|
2665
|
+
"style/type-named-tuple-spacing": "warn",
|
|
2666
|
+
"style/wrap-iife": [
|
|
2667
|
+
"warn",
|
|
2668
|
+
"inside",
|
|
2669
|
+
{ functionPrototypeMethods: true }
|
|
2670
|
+
],
|
|
2671
|
+
"style/wrap-regex": "off",
|
|
2672
|
+
"style/yield-star-spacing": "warn"
|
|
2550
2673
|
};
|
|
2551
2674
|
//#endregion
|
|
2552
2675
|
//#region src/rules/vue.ts
|
|
@@ -2769,7 +2892,7 @@ var vue_default = {
|
|
|
2769
2892
|
],
|
|
2770
2893
|
"vue/valid-define-options": "error",
|
|
2771
2894
|
"vue/v-for-delimiter-style": ["error", "in"],
|
|
2772
|
-
...Object.fromEntries(["no-useless-concat", "prefer-template"].map((rule) => [`vue/${rule}`, javascript_default
|
|
2895
|
+
...Object.fromEntries(["no-useless-concat", "prefer-template"].map((rule) => [`vue/${rule}`, javascript_default[rule]])),
|
|
2773
2896
|
...Object.fromEntries([
|
|
2774
2897
|
"array-bracket-newline",
|
|
2775
2898
|
"array-bracket-spacing",
|
|
@@ -2795,7 +2918,7 @@ var vue_default = {
|
|
|
2795
2918
|
"space-infix-ops",
|
|
2796
2919
|
"space-unary-ops",
|
|
2797
2920
|
"template-curly-spacing"
|
|
2798
|
-
].map((rule) => [`vue/${rule}`, stylistic_default
|
|
2921
|
+
].map((rule) => [`vue/${rule}`, stylistic_default[`style/${rule}`]])),
|
|
2799
2922
|
"vue/no-undef-components": "off",
|
|
2800
2923
|
"vue/require-name-property": "off",
|
|
2801
2924
|
"vue/no-ref-object-reactivity-loss": "off",
|
|
@@ -2854,38 +2977,39 @@ var vue_default = {
|
|
|
2854
2977
|
};
|
|
2855
2978
|
//#endregion
|
|
2856
2979
|
//#region src/index.ts
|
|
2857
|
-
const fusedProps = [
|
|
2858
|
-
"name",
|
|
2859
|
-
"languageOptions",
|
|
2860
|
-
"linterOptions",
|
|
2861
|
-
"processor",
|
|
2862
|
-
"plugins",
|
|
2863
|
-
"rules",
|
|
2864
|
-
"settings"
|
|
2865
|
-
];
|
|
2866
2980
|
const zin = (options = {}, ...userConfigs) => {
|
|
2867
|
-
const
|
|
2868
|
-
if (key in options) {
|
|
2869
|
-
acc[key] = options[key];
|
|
2870
|
-
delete options[key];
|
|
2871
|
-
}
|
|
2872
|
-
return acc;
|
|
2873
|
-
}, {});
|
|
2981
|
+
const stylistic = options.stylistic === false || typeof options.stylistic === "object" ? options.stylistic : {};
|
|
2874
2982
|
const vue = options.vue === false || typeof options.vue === "object" ? options.vue : {};
|
|
2875
2983
|
return src_default({
|
|
2876
2984
|
pnpm: true,
|
|
2877
2985
|
...options,
|
|
2986
|
+
javascript: {
|
|
2987
|
+
...options.javascript,
|
|
2988
|
+
overrides: {
|
|
2989
|
+
...javascript_default,
|
|
2990
|
+
...options.javascript?.overrides
|
|
2991
|
+
}
|
|
2992
|
+
},
|
|
2993
|
+
stylistic: stylistic && {
|
|
2994
|
+
...stylistic,
|
|
2995
|
+
overrides: {
|
|
2996
|
+
...stylistic_default,
|
|
2997
|
+
...stylistic.overrides
|
|
2998
|
+
}
|
|
2999
|
+
},
|
|
2878
3000
|
vue: vue && {
|
|
2879
3001
|
...vue,
|
|
2880
3002
|
overrides: {
|
|
3003
|
+
"style/indent": "off",
|
|
2881
3004
|
...vue_default,
|
|
2882
3005
|
...vue.overrides
|
|
2883
3006
|
}
|
|
3007
|
+
},
|
|
3008
|
+
rules: {
|
|
3009
|
+
...misc_default,
|
|
3010
|
+
...options.rules
|
|
2884
3011
|
}
|
|
2885
|
-
}, javascript_default, misc_default, stylistic_default, configFused, {
|
|
2886
|
-
files: ["**/*.vue"],
|
|
2887
|
-
rules: { "style/indent": "off" }
|
|
2888
3012
|
}, ...userConfigs);
|
|
2889
3013
|
};
|
|
2890
3014
|
//#endregion
|
|
2891
|
-
export { zin as default, zin };
|
|
3015
|
+
export { CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, StylisticConfigDefaults, angular, antfu, astro, combine, command, comments, zin as default, zin, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zinkawaii/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.2",
|
|
5
5
|
"description": "Utakata na Shiawase",
|
|
6
6
|
"author": "KazariEX",
|
|
7
7
|
"license": "MIT",
|
|
@@ -17,43 +17,6 @@
|
|
|
17
17
|
"files": [
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
|
-
"dependencies": {
|
|
21
|
-
"@antfu/install-pkg": "^1.1.0",
|
|
22
|
-
"@clack/prompts": "^1.7.0",
|
|
23
|
-
"@e18e/eslint-plugin": "^0.5.1",
|
|
24
|
-
"@eslint-community/eslint-plugin-eslint-comments": "^4.7.2",
|
|
25
|
-
"@eslint/markdown": "^8.0.3",
|
|
26
|
-
"@stylistic/eslint-plugin": "^5.10.0",
|
|
27
|
-
"@typescript-eslint/eslint-plugin": "^8.65.0",
|
|
28
|
-
"@typescript-eslint/parser": "^8.65.0",
|
|
29
|
-
"@vitest/eslint-plugin": "^1.6.23",
|
|
30
|
-
"ansis": "^4.3.1",
|
|
31
|
-
"cac": "^7.0.0",
|
|
32
|
-
"eslint-config-flat-gitignore": "^2.3.0",
|
|
33
|
-
"eslint-flat-config-utils": "^3.2.0",
|
|
34
|
-
"eslint-merge-processors": "^2.0.0",
|
|
35
|
-
"eslint-plugin-antfu": "^3.2.3",
|
|
36
|
-
"eslint-plugin-command": "^3.5.3",
|
|
37
|
-
"eslint-plugin-import-lite": "^0.6.0",
|
|
38
|
-
"eslint-plugin-jsdoc": "^63.2.0",
|
|
39
|
-
"eslint-plugin-jsonc": "^3.3.0",
|
|
40
|
-
"eslint-plugin-n": "^18.2.2",
|
|
41
|
-
"eslint-plugin-no-only-tests": "^3.4.0",
|
|
42
|
-
"eslint-plugin-perfectionist": "^5.10.0",
|
|
43
|
-
"eslint-plugin-pnpm": "^1.6.1",
|
|
44
|
-
"eslint-plugin-regexp": "^3.1.1",
|
|
45
|
-
"eslint-plugin-toml": "^1.4.0",
|
|
46
|
-
"eslint-plugin-unused-imports": "^4.4.1",
|
|
47
|
-
"eslint-plugin-vue": "^10.10.0",
|
|
48
|
-
"eslint-plugin-yml": "^3.6.0",
|
|
49
|
-
"eslint-processor-vue-blocks": "^2.0.0",
|
|
50
|
-
"globals": "^17.7.0",
|
|
51
|
-
"local-pkg": "^1.2.1",
|
|
52
|
-
"parse-gitignore": "^2.0.0",
|
|
53
|
-
"toml-eslint-parser": "^1.0.3",
|
|
54
|
-
"vue-eslint-parser": "^10.4.1",
|
|
55
|
-
"yaml-eslint-parser": "^2.1.0"
|
|
56
|
-
},
|
|
57
20
|
"peerDependencies": {
|
|
58
21
|
"@angular-eslint/eslint-plugin": "^21.1.0",
|
|
59
22
|
"@angular-eslint/eslint-plugin-template": "^21.1.0",
|
|
@@ -131,11 +94,49 @@
|
|
|
131
94
|
"optional": true
|
|
132
95
|
}
|
|
133
96
|
},
|
|
97
|
+
"dependencies": {
|
|
98
|
+
"@antfu/install-pkg": "^2.0.1",
|
|
99
|
+
"@clack/prompts": "^1.7.0",
|
|
100
|
+
"@e18e/eslint-plugin": "^0.6.0",
|
|
101
|
+
"@eslint-community/eslint-plugin-eslint-comments": "^4.7.2",
|
|
102
|
+
"@eslint/markdown": "^8.0.3",
|
|
103
|
+
"@stylistic/eslint-plugin": "^5.10.0",
|
|
104
|
+
"@typescript-eslint/eslint-plugin": "^8.65.0",
|
|
105
|
+
"@typescript-eslint/parser": "^8.65.0",
|
|
106
|
+
"@vitest/eslint-plugin": "^1.6.24",
|
|
107
|
+
"ansis": "^4.3.1",
|
|
108
|
+
"cac": "^7.0.0",
|
|
109
|
+
"eslint-config-flat-gitignore": "^2.3.0",
|
|
110
|
+
"eslint-flat-config-utils": "^3.2.0",
|
|
111
|
+
"eslint-merge-processors": "^2.0.0",
|
|
112
|
+
"eslint-plugin-antfu": "^3.2.3",
|
|
113
|
+
"eslint-plugin-command": "^4.0.0",
|
|
114
|
+
"eslint-plugin-import-lite": "^0.6.0",
|
|
115
|
+
"eslint-plugin-jsdoc": "^63.3.2",
|
|
116
|
+
"eslint-plugin-jsonc": "^3.3.0",
|
|
117
|
+
"eslint-plugin-n": "^18.2.2",
|
|
118
|
+
"eslint-plugin-no-only-tests": "^3.4.0",
|
|
119
|
+
"eslint-plugin-perfectionist": "^5.10.0",
|
|
120
|
+
"eslint-plugin-pnpm": "^1.7.0",
|
|
121
|
+
"eslint-plugin-regexp": "^3.1.1",
|
|
122
|
+
"eslint-plugin-toml": "^1.5.0",
|
|
123
|
+
"eslint-plugin-unused-imports": "^4.4.1",
|
|
124
|
+
"eslint-plugin-vue": "^10.10.0",
|
|
125
|
+
"eslint-plugin-yml": "^3.7.0",
|
|
126
|
+
"eslint-processor-vue-blocks": "^2.0.0",
|
|
127
|
+
"globals": "^17.8.0",
|
|
128
|
+
"local-pkg": "^1.2.1",
|
|
129
|
+
"parse-gitignore": "^2.0.0",
|
|
130
|
+
"toml-eslint-parser": "^1.0.3",
|
|
131
|
+
"vue-eslint-parser": "^10.4.1",
|
|
132
|
+
"yaml-eslint-parser": "^2.1.0"
|
|
133
|
+
},
|
|
134
134
|
"inlinedDependencies": {
|
|
135
135
|
"@antfu/eslint-config": "9.2.0"
|
|
136
136
|
},
|
|
137
137
|
"scripts": {
|
|
138
138
|
"build": "tsdown",
|
|
139
|
-
"dev": "tsdown -w"
|
|
139
|
+
"dev": "tsdown -w",
|
|
140
|
+
"test": "vitest"
|
|
140
141
|
}
|
|
141
142
|
}
|