@eienjs/eslint-config 1.1.1 → 1.2.1

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/cli/index.js CHANGED
@@ -9,7 +9,7 @@ import parse from "parse-gitignore";
9
9
  import { execSync } from "node:child_process";
10
10
 
11
11
  //#region package.json
12
- var version = "1.1.1";
12
+ var version = "1.2.1";
13
13
 
14
14
  //#endregion
15
15
  //#region src/cli/constants.ts
@@ -1,4 +1,4 @@
1
- import { OptionsAdonisJS, OptionsComponentExts, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsVue, StylisticConfig, TypedFlatConfigItem } from "../types-BOQRnHTY.js";
1
+ import { OptionsAdonisJS, OptionsComponentExts, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsVue, StylisticConfig, TypedFlatConfigItem } from "../types-CThb4-OB.js";
2
2
 
3
3
  //#region src/configs/adonisjs.d.ts
4
4
  declare function adonisjs(options?: OptionsAdonisJS): Promise<TypedFlatConfigItem[]>;
@@ -1,3 +1,3 @@
1
- import { StylisticConfigDefaults, adonisjs, astro, command, comments, disables, formatters, ignores, imports, javascript, jsdoc, jsonc, markdown, node, nuxt, perfectionist, pnpm, regexp, sortPackageJson, sortTsconfig, stylistic, test, toml, typescript, unicorn, vue, yaml } from "../configs-C3wibJFB.js";
1
+ import { StylisticConfigDefaults, adonisjs, astro, command, comments, disables, formatters, ignores, imports, javascript, jsdoc, jsonc, markdown, node, nuxt, perfectionist, pnpm, regexp, sortPackageJson, sortTsconfig, stylistic, test, toml, typescript, unicorn, vue, yaml } from "../configs-tpIJYMDE.js";
2
2
 
3
3
  export { StylisticConfigDefaults, adonisjs, astro, command, comments, disables, formatters, ignores, imports, javascript, jsdoc, jsonc, markdown, node, nuxt, perfectionist, pnpm, regexp, sortPackageJson, sortTsconfig, stylistic, test, toml, typescript, unicorn, vue, yaml };
@@ -473,6 +473,7 @@ async function stylistic(options = {}) {
473
473
  prev: "*"
474
474
  }
475
475
  ],
476
+ "@stylistic/lines-between-class-members": ["error", "always"],
476
477
  "@stylistic/generator-star-spacing": ["error", {
477
478
  after: true,
478
479
  before: false
@@ -1751,7 +1752,17 @@ async function typescript(options = {}) {
1751
1752
  "@typescript-eslint/restrict-plus-operands": "error",
1752
1753
  "@typescript-eslint/restrict-template-expressions": "error",
1753
1754
  "@typescript-eslint/return-await": ["error", "in-try-catch"],
1754
- "@typescript-eslint/switch-exhaustiveness-check": ["error", { considerDefaultExhaustiveForUnions: true }]
1755
+ "@typescript-eslint/switch-exhaustiveness-check": ["error", { considerDefaultExhaustiveForUnions: true }],
1756
+ "@typescript-eslint/no-empty-object-type": "off",
1757
+ "@typescript-eslint/no-unused-vars": ["error", {
1758
+ "args": "all",
1759
+ "argsIgnorePattern": "^_",
1760
+ "caughtErrors": "all",
1761
+ "caughtErrorsIgnorePattern": "^_",
1762
+ "destructuredArrayIgnorePattern": "^_",
1763
+ "varsIgnorePattern": "^_",
1764
+ "ignoreRestSiblings": true
1765
+ }]
1755
1766
  };
1756
1767
  const [pluginTs, parserTs] = await Promise.all([interopDefault(import("@typescript-eslint/eslint-plugin")), interopDefault(import("@typescript-eslint/parser"))]);
1757
1768
  function makeParser(typeAware, files$1, ignores$1) {
@@ -1808,7 +1819,7 @@ async function typescript(options = {}) {
1808
1819
  "@typescript-eslint/method-signature-style": ["error", "property"],
1809
1820
  "@typescript-eslint/no-dupe-class-members": "error",
1810
1821
  "@typescript-eslint/no-dynamic-delete": "off",
1811
- "@typescript-eslint/no-empty-object-type": ["error", { allowInterfaces: "always" }],
1822
+ "@typescript-eslint/no-empty-object-type": "off",
1812
1823
  "@typescript-eslint/no-explicit-any": "off",
1813
1824
  "@typescript-eslint/no-extraneous-class": "off",
1814
1825
  "@typescript-eslint/no-import-type-side-effects": "error",
@@ -1821,7 +1832,15 @@ async function typescript(options = {}) {
1821
1832
  allowTaggedTemplates: true,
1822
1833
  allowTernary: true
1823
1834
  }],
1824
- "@typescript-eslint/no-unused-vars": "off",
1835
+ "@typescript-eslint/no-unused-vars": ["error", {
1836
+ "args": "all",
1837
+ "argsIgnorePattern": "^_",
1838
+ "caughtErrors": "all",
1839
+ "caughtErrorsIgnorePattern": "^_",
1840
+ "destructuredArrayIgnorePattern": "^_",
1841
+ "varsIgnorePattern": "^_",
1842
+ "ignoreRestSiblings": true
1843
+ }],
1825
1844
  "@typescript-eslint/no-use-before-define": ["error", {
1826
1845
  classes: false,
1827
1846
  functions: false,
@@ -1889,7 +1908,7 @@ function unicorn(options = {}) {
1889
1908
  //#endregion
1890
1909
  //#region src/configs/vue.ts
1891
1910
  async function vue(options = {}) {
1892
- const { files = [GLOB_VUE], overrides = {}, stylistic: stylistic$1 = true, typescript: typescript$1 } = options;
1911
+ const { files = [GLOB_VUE], overrides = {}, stylistic: stylistic$1 = true, typescript: typescript$1, componentNameInTemplateCasingOnlyRegistered = false, componentNameInTemplateCasingIgnores = [], componentNameInTemplateCasingGlobals = [] } = options;
1893
1912
  const sfcBlocks = options.sfcBlocks === true ? {} : options.sfcBlocks ?? {};
1894
1913
  const { indent = 2 } = typeof stylistic$1 === "boolean" ? {} : stylistic$1;
1895
1914
  const [pluginVue, parserVue, processorVueBlocks] = await Promise.all([
@@ -1961,7 +1980,11 @@ async function vue(options = {}) {
1961
1980
  "vue/component-name-in-template-casing": [
1962
1981
  "error",
1963
1982
  "PascalCase",
1964
- { registeredComponentsOnly: true }
1983
+ {
1984
+ registeredComponentsOnly: componentNameInTemplateCasingOnlyRegistered,
1985
+ ignores: componentNameInTemplateCasingIgnores,
1986
+ globals: componentNameInTemplateCasingGlobals
1987
+ }
1965
1988
  ],
1966
1989
  "vue/component-options-name-casing": ["error", "PascalCase"],
1967
1990
  "vue/custom-event-name-casing": ["error", "camelCase"],
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Awaitable, ConfigNames, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsVue, RuleOptions, Rules, StylisticConfig, TypedFlatConfigItem } from "./types-BOQRnHTY.js";
1
+ import { Awaitable, ConfigNames, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsVue, RuleOptions, Rules, StylisticConfig, TypedFlatConfigItem } from "./types-CThb4-OB.js";
2
2
  import { FlatConfigComposer } from "eslint-flat-config-utils";
3
3
  import { Linter } from "eslint";
4
4
 
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, 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_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, adonisjs, astro, combine, command, comments, disables, ensurePackages, formatters, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, markdown, node, nuxt, parserPlain, perfectionist, pnpm, regexp, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, vue, yaml } from "./configs-C3wibJFB.js";
1
+ import { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, 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_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, adonisjs, astro, combine, command, comments, disables, ensurePackages, formatters, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, markdown, node, nuxt, parserPlain, perfectionist, pnpm, regexp, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, vue, yaml } from "./configs-tpIJYMDE.js";
2
2
  import { FlatConfigComposer } from "eslint-flat-config-utils";
3
3
  import { isPackageExists } from "local-pkg";
4
4
 
@@ -2413,7 +2413,7 @@ interface RuleOptions {
2413
2413
  * Enforce heading levels increment by one
2414
2414
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
2415
2415
  */
2416
- 'markdown/heading-increment'?: Linter.RuleEntry<[]>;
2416
+ 'markdown/heading-increment'?: Linter.RuleEntry<MarkdownHeadingIncrement>;
2417
2417
  /**
2418
2418
  * Disallow bare URLs
2419
2419
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md
@@ -2458,7 +2458,7 @@ interface RuleOptions {
2458
2458
  * Disallow headings without a space after the hash characters
2459
2459
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-atx-heading-space.md
2460
2460
  */
2461
- 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<[]>;
2461
+ 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<MarkdownNoMissingAtxHeadingSpace>;
2462
2462
  /**
2463
2463
  * Disallow missing label references
2464
2464
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
@@ -2479,6 +2479,11 @@ interface RuleOptions {
2479
2479
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
2480
2480
  */
2481
2481
  'markdown/no-reversed-media-syntax'?: Linter.RuleEntry<[]>;
2482
+ /**
2483
+ * Disallow spaces around emphasis markers
2484
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-space-in-emphasis.md
2485
+ */
2486
+ 'markdown/no-space-in-emphasis'?: Linter.RuleEntry<MarkdownNoSpaceInEmphasis>;
2482
2487
  /**
2483
2488
  * Disallow unused definitions
2484
2489
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-unused-definitions.md
@@ -10586,6 +10591,10 @@ type LogicalAssignmentOperators = (([] | ["always"] | ["always", {
10586
10591
  type MarkdownFencedCodeLanguage = [] | [{
10587
10592
  required?: string[];
10588
10593
  }];
10594
+ // ----- markdown/heading-increment -----
10595
+ type MarkdownHeadingIncrement = [] | [{
10596
+ frontmatterTitle?: string;
10597
+ }];
10589
10598
  // ----- markdown/no-duplicate-definitions -----
10590
10599
  type MarkdownNoDuplicateDefinitions = [] | [{
10591
10600
  allowDefinitions?: string[];
@@ -10604,6 +10613,11 @@ type MarkdownNoEmptyDefinitions = [] | [{
10604
10613
  // ----- markdown/no-html -----
10605
10614
  type MarkdownNoHtml = [] | [{
10606
10615
  allowed?: string[];
10616
+ allowedIgnoreCase?: boolean;
10617
+ }];
10618
+ // ----- markdown/no-missing-atx-heading-space -----
10619
+ type MarkdownNoMissingAtxHeadingSpace = [] | [{
10620
+ checkClosedHeadings?: boolean;
10607
10621
  }];
10608
10622
  // ----- markdown/no-missing-link-fragments -----
10609
10623
  type MarkdownNoMissingLinkFragments = [] | [{
@@ -10614,6 +10628,10 @@ type MarkdownNoMissingLinkFragments = [] | [{
10614
10628
  type MarkdownNoMultipleH1 = [] | [{
10615
10629
  frontmatterTitle?: string;
10616
10630
  }];
10631
+ // ----- markdown/no-space-in-emphasis -----
10632
+ type MarkdownNoSpaceInEmphasis = [] | [{
10633
+ checkStrikethrough?: boolean;
10634
+ }];
10617
10635
  // ----- markdown/no-unused-definitions -----
10618
10636
  type MarkdownNoUnusedDefinitions = [] | [{
10619
10637
  allowDefinitions?: string[];
@@ -15626,6 +15644,24 @@ interface OptionsVue extends OptionsOverrides {
15626
15644
  * @default true
15627
15645
  */
15628
15646
  sfcBlocks?: boolean | Options;
15647
+ /**
15648
+ * Only check registered components in template casing.
15649
+ *
15650
+ * @default false
15651
+ */
15652
+ componentNameInTemplateCasingOnlyRegistered?: boolean;
15653
+ /**
15654
+ * Ignored components in template casing.
15655
+ *
15656
+ * @default []
15657
+ */
15658
+ componentNameInTemplateCasingIgnores?: string[];
15659
+ /**
15660
+ * Global components in template casing.
15661
+ *
15662
+ * @default []
15663
+ */
15664
+ componentNameInTemplateCasingGlobals?: string[];
15629
15665
  }
15630
15666
  type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides) | (OptionsTypeScriptParserOptions & OptionsOverrides);
15631
15667
  interface OptionsFormatters {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@eienjs/eslint-config",
3
3
  "type": "module",
4
- "version": "1.1.1",
4
+ "version": "1.2.1",
5
5
  "description": "EienJS ESLint Config",
6
6
  "author": "Fernando Isidro <luffynando@gmail.com> (https://github.com/luffynando/)",
7
7
  "license": "MIT",
@@ -69,10 +69,10 @@
69
69
  "@antfu/install-pkg": "^1.1.0",
70
70
  "@clack/prompts": "^0.11.0",
71
71
  "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
72
- "@eslint/markdown": "^7.1.0",
72
+ "@eslint/markdown": "^7.2.0",
73
73
  "@stylistic/eslint-plugin": "^5.2.3",
74
- "@typescript-eslint/eslint-plugin": "^8.39.1",
75
- "@typescript-eslint/parser": "^8.39.1",
74
+ "@typescript-eslint/eslint-plugin": "^8.41.0",
75
+ "@typescript-eslint/parser": "^8.41.0",
76
76
  "@vitest/eslint-plugin": "^1.3.4",
77
77
  "ansis": "^4.1.0",
78
78
  "cac": "^6.7.14",
@@ -82,22 +82,22 @@
82
82
  "eslint-plugin-antfu": "^3.1.1",
83
83
  "eslint-plugin-command": "^3.3.1",
84
84
  "eslint-plugin-import-lite": "^0.3.0",
85
- "eslint-plugin-jsdoc": "^52.0.4",
85
+ "eslint-plugin-jsdoc": "^54.1.1",
86
86
  "eslint-plugin-jsonc": "^2.20.1",
87
87
  "eslint-plugin-n": "^17.21.3",
88
88
  "eslint-plugin-no-only-tests": "^3.3.0",
89
89
  "eslint-plugin-perfectionist": "^4.15.0",
90
- "eslint-plugin-pnpm": "^1.1.0",
90
+ "eslint-plugin-pnpm": "^1.1.1",
91
91
  "eslint-plugin-regexp": "^2.10.0",
92
92
  "eslint-plugin-toml": "^0.12.0",
93
93
  "eslint-plugin-unicorn": "^60.0.0",
94
- "eslint-plugin-unused-imports": "^4.1.4",
94
+ "eslint-plugin-unused-imports": "^4.2.0",
95
95
  "eslint-plugin-vue": "^10.4.0",
96
96
  "eslint-plugin-yml": "^1.18.0",
97
97
  "eslint-processor-vue-blocks": "^2.0.0",
98
98
  "globals": "^16.3.0",
99
99
  "jsonc-eslint-parser": "^2.4.0",
100
- "local-pkg": "^1.1.1",
100
+ "local-pkg": "^1.1.2",
101
101
  "parse-gitignore": "^2.0.0",
102
102
  "pathe": "^2.0.3",
103
103
  "toml-eslint-parser": "^0.10.0",
@@ -111,7 +111,7 @@
111
111
  "@eslint/config-inspector": "^1.2.0",
112
112
  "@nuxt/eslint-plugin": "^1.8.0",
113
113
  "@prettier/plugin-xml": "^3.4.2",
114
- "@types/node": "^22.17.1",
114
+ "@types/node": "^22.18.0",
115
115
  "astro-eslint-parser": "^1.2.2",
116
116
  "auto-changelog": "^2.5.0",
117
117
  "eslint": "^9.32.0",
@@ -121,8 +121,8 @@
121
121
  "husky": "^9.1.7",
122
122
  "np": "^10.2.0",
123
123
  "prettier-plugin-astro": "^0.14.1",
124
- "tsdown": "^0.14.1",
125
- "tsx": "^4.20.4",
124
+ "tsdown": "^0.14.2",
125
+ "tsx": "^4.20.5",
126
126
  "typescript": "^5.9.2"
127
127
  },
128
128
  "resolutions": {