@so1ve/eslint-config 3.16.0 → 3.17.0

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.ts CHANGED
@@ -884,6 +884,41 @@ interface RuleOptions {
884
884
  * @deprecated
885
885
  */
886
886
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>;
887
+ /**
888
+ * Enforce or ban the use of inline type-only markers for named imports.
889
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/consistent-type-specifier-style/README.md
890
+ */
891
+ 'import-lite/consistent-type-specifier-style'?: Linter.RuleEntry<ImportLiteConsistentTypeSpecifierStyle>;
892
+ /**
893
+ * Ensure all imports appear before other statements.
894
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/first/README.md
895
+ */
896
+ 'import-lite/first'?: Linter.RuleEntry<ImportLiteFirst>;
897
+ /**
898
+ * Enforce a newline after import statements.
899
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/newline-after-import/README.md
900
+ */
901
+ 'import-lite/newline-after-import'?: Linter.RuleEntry<ImportLiteNewlineAfterImport>;
902
+ /**
903
+ * Forbid default exports.
904
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-default-export/README.md
905
+ */
906
+ 'import-lite/no-default-export'?: Linter.RuleEntry<[]>;
907
+ /**
908
+ * Forbid repeated import of the same module in multiple places.
909
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-duplicates/README.md
910
+ */
911
+ 'import-lite/no-duplicates'?: Linter.RuleEntry<ImportLiteNoDuplicates>;
912
+ /**
913
+ * Forbid the use of mutable exports with `var` or `let`.
914
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-mutable-exports/README.md
915
+ */
916
+ 'import-lite/no-mutable-exports'?: Linter.RuleEntry<[]>;
917
+ /**
918
+ * Forbid named default exports.
919
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-named-default/README.md
920
+ */
921
+ 'import-lite/no-named-default'?: Linter.RuleEntry<[]>;
887
922
  /**
888
923
  * Enforce or ban the use of inline type-only markers for named imports.
889
924
  * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/consistent-type-specifier-style.md
@@ -7749,6 +7784,20 @@ type IdMatch = [] | [string] | [string, {
7749
7784
  }];
7750
7785
  // ----- implicit-arrow-linebreak -----
7751
7786
  type ImplicitArrowLinebreak = [] | [("beside" | "below")];
7787
+ // ----- import-lite/consistent-type-specifier-style -----
7788
+ type ImportLiteConsistentTypeSpecifierStyle = [] | [("top-level" | "inline" | "prefer-top-level")];
7789
+ // ----- import-lite/first -----
7790
+ type ImportLiteFirst = [] | [("absolute-first" | "disable-absolute-first")];
7791
+ // ----- import-lite/newline-after-import -----
7792
+ type ImportLiteNewlineAfterImport = [] | [{
7793
+ count?: number;
7794
+ exactCount?: boolean;
7795
+ considerComments?: boolean;
7796
+ }];
7797
+ // ----- import-lite/no-duplicates -----
7798
+ type ImportLiteNoDuplicates = [] | [{
7799
+ "prefer-inline"?: boolean;
7800
+ }];
7752
7801
  // ----- import/consistent-type-specifier-style -----
7753
7802
  type ImportConsistentTypeSpecifierStyle = [] | [("prefer-top-level" | "prefer-inline")];
7754
7803
  // ----- import/dynamic-import-chunkname -----
package/dist/index.js CHANGED
@@ -1551,21 +1551,57 @@ async function vue({ overrides, typescript: typescript$1 } = {}) {
1551
1551
  //#region src/configs/yaml.ts
1552
1552
  async function yaml({ overrides } = {}) {
1553
1553
  const [parserYaml, pluginYaml] = await Promise.all([interopDefault(import("yaml-eslint-parser")), interopDefault(import("eslint-plugin-yml"))]);
1554
- return [{
1555
- name: "so1ve/yaml/setup",
1556
- plugins: { yaml: pluginYaml }
1557
- }, {
1558
- name: "so1ve/yaml/rules",
1559
- languageOptions: { parser: parserYaml },
1560
- files: [GLOB_YAML],
1561
- rules: {
1562
- ...renameRules(pluginYaml.configs.prettier.rules, { yml: "yaml" }),
1563
- ...renameRules(pluginYaml.configs.recommended.rules, { yml: "yaml" }),
1564
- "style/spaced-comment": "off",
1565
- "yaml/no-empty-document": "off",
1566
- ...overrides
1554
+ return [
1555
+ {
1556
+ name: "so1ve/yaml/setup",
1557
+ plugins: { yaml: pluginYaml }
1558
+ },
1559
+ {
1560
+ name: "so1ve/yaml/rules",
1561
+ languageOptions: { parser: parserYaml },
1562
+ files: [GLOB_YAML],
1563
+ rules: {
1564
+ ...renameRules(pluginYaml.configs.prettier.rules, { yml: "yaml" }),
1565
+ ...renameRules(pluginYaml.configs.recommended.rules, { yml: "yaml" }),
1566
+ "style/spaced-comment": "off",
1567
+ "yaml/no-empty-document": "off",
1568
+ ...overrides
1569
+ }
1570
+ },
1571
+ {
1572
+ files: ["pnpm-workspace.yaml"],
1573
+ name: "so1ve/yaml/pnpm-workspace",
1574
+ rules: { "yaml/sort-keys": [
1575
+ "error",
1576
+ {
1577
+ order: [
1578
+ "packages",
1579
+ "overrides",
1580
+ "patchedDependencies",
1581
+ "hoistPattern",
1582
+ "allowedDeprecatedVersions",
1583
+ "allowNonAppliedPatches",
1584
+ "configDependencies",
1585
+ "ignoredBuiltDependencies",
1586
+ "ignoredOptionalDependencies",
1587
+ "neverBuiltDependencies",
1588
+ "onlyBuiltDependencies",
1589
+ "onlyBuiltDependenciesFile",
1590
+ "packageExtensions",
1591
+ "peerDependencyRules",
1592
+ "supportedArchitectures",
1593
+ "catalog",
1594
+ "catalogs"
1595
+ ],
1596
+ pathPattern: "^$"
1597
+ },
1598
+ {
1599
+ order: { type: "asc" },
1600
+ pathPattern: ".*"
1601
+ }
1602
+ ] }
1567
1603
  }
1568
- }];
1604
+ ];
1569
1605
  }
1570
1606
 
1571
1607
  //#endregion
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@so1ve/eslint-config",
3
- "version": "3.16.0",
3
+ "version": "3.17.0",
4
4
  "author": "Ray <i@mk1.io> (https://github.com/so1ve/)",
5
5
  "type": "module",
6
6
  "description": "Ray's eslint config.",
@@ -77,8 +77,8 @@
77
77
  "typescript-eslint": "^8.47.0",
78
78
  "vue-eslint-parser": "^10.2.0",
79
79
  "yaml-eslint-parser": "^1.3.0",
80
- "@so1ve/eslint-plugin": "3.16.0",
81
- "@so1ve/eslint-plugin-sort-imports": "3.16.0"
80
+ "@so1ve/eslint-plugin-sort-imports": "3.17.0",
81
+ "@so1ve/eslint-plugin": "3.17.0"
82
82
  },
83
83
  "peerDependencies": {
84
84
  "eslint": "^9.39.1",