Add import / export sort rules (#612)

- Adds ESLint package
- Applies import/export rules to all files
- Uses newline delineated grouping, with type-only imports first
This commit is contained in:
filtered
2025-02-26 20:21:33 +11:00
committed by GitHub
parent 9ded97d189
commit 5cdd0581fa
31 changed files with 201 additions and 145 deletions

View File

@@ -4,6 +4,7 @@ import tseslint from "typescript-eslint"
import stylistic from "@stylistic/eslint-plugin"
import jsdoc from "eslint-plugin-jsdoc"
import unusedImports from "eslint-plugin-unused-imports"
import eslintPluginSimpleImportSort from "eslint-plugin-simple-import-sort"
export default tseslint.config(
{ files: ["**/*.{js,mjs,ts,mts}"] },
@@ -207,4 +208,21 @@ export default tseslint.config(
"unused-imports/no-unused-vars": "error",
},
},
// Sort imports
{
plugins: {
"simple-import-sort": eslintPluginSimpleImportSort,
},
rules: {
"simple-import-sort/imports": [
"error",
{
// The default grouping, but with type imports first as a separate group.
groups: [["^.*\\u0000$"], ["^\\u0000"], ["^node:"], ["^@?\\w"], ["^"], ["^\\."]],
},
],
"simple-import-sort/exports": "error",
},
},
)