Skip to content

Commit 1dd7a64

Browse files
committed
style: add eslint-plugin-simple-import-sort
1 parent 0ca6910 commit 1dd7a64

12 files changed

+47
-15
lines changed

eslint.config.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
// @ts-check
22

33
import fs from "node:fs";
4+
45
import eslint from "@eslint/js";
5-
import tseslint from "typescript-eslint";
66
import prettier from "eslint-config-prettier";
7+
import simpleImportSort from "eslint-plugin-simple-import-sort";
8+
import tseslint from "typescript-eslint";
79

810
export default tseslint.config({
911
ignores: (
@@ -18,6 +20,15 @@ export default tseslint.config({
1820
eslint.configs.recommended,
1921
...tseslint.configs.strictTypeChecked,
2022
...tseslint.configs.stylisticTypeChecked,
23+
{
24+
plugins: {
25+
"simple-import-sort": simpleImportSort,
26+
},
27+
rules: {
28+
"simple-import-sort/imports": "error",
29+
"simple-import-sort/exports": "error",
30+
},
31+
},
2132
prettier,
2233
{
2334
languageOptions: {

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
"@typescript-eslint/rule-tester": "^8.1.0",
5353
"eslint": "^9.9.0",
5454
"eslint-config-prettier": "^9.1.0",
55+
"eslint-plugin-simple-import-sort": "^12.1.1",
5556
"prettier": "^3.3.3",
5657
"tsx": "^4.17.0",
5758
"typescript": "^5.5.4",

src/index.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
import { fileURLToPath } from "node:url";
2+
23
import type { TSESLint } from "@typescript-eslint/utils";
34
import SQLite from "better-sqlite3";
4-
import { createValidQueryRule } from "./rules/valid-query.js";
5-
import { createTypedResultRule } from "./rules/typed-result.js";
6-
import { typedInputRule } from "./rules/typed-input.js";
5+
76
import { GetDatabaseOptions, RuleOptions } from "./ruleOptions.js";
7+
import { typedInputRule } from "./rules/typed-input.js";
8+
import { createTypedResultRule } from "./rules/typed-result.js";
9+
import { createValidQueryRule } from "./rules/valid-query.js";
810

911
export interface CreatePluginOptions {
1012
/**

src/inferQueryResult.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import { Database } from "better-sqlite3";
2+
3+
import { inferQueryInput } from "./inferQueryInput.js";
24
import {
35
is_column_nullable,
4-
NullableResult,
5-
Query,
66
JSColumnType,
7+
NullableResult,
78
NullableStatus,
9+
Query,
810
} from "./parser/parser.js";
9-
import { inferQueryInput } from "./inferQueryInput.js";
1011

1112
export enum ColumnType {
1213
Unknown = 1 << 0,

src/rules/typed-input.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import { ESLintUtils, TSESTree, ASTUtils } from "@typescript-eslint/utils";
2-
import { getQueryValue } from "../utils.js";
1+
import { ASTUtils, ESLintUtils, TSESTree } from "@typescript-eslint/utils";
2+
33
import { inferQueryInput, QueryInput } from "../inferQueryInput.js";
4+
import { getQueryValue } from "../utils.js";
45

56
export const typedInputRule = ESLintUtils.RuleCreator.withoutDocs({
67
create(context) {

src/rules/typed-result.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { ESLintUtils, TSESTree, ASTUtils } from "@typescript-eslint/utils";
1+
import { ASTUtils, ESLintUtils, TSESTree } from "@typescript-eslint/utils";
2+
23
import {
34
ColumnInfo,
45
ColumnType,

src/rules/valid-query.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { ESLintUtils, TSESTree } from "@typescript-eslint/utils";
2+
23
import { RuleOptions } from "../ruleOptions.js";
34
import { getQueryValue, stringifyNode } from "../utils.js";
45

tests/inferQueryInput.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { expect, it } from "vitest";
2+
13
import { inferQueryInput } from "../src/inferQueryInput.js";
2-
import { it, expect } from "vitest";
34

45
it("should ignore invalid queries", () => {
56
const result = inferQueryInput("SELECT * FROM");

tests/inferQueryResult.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import { it, expect } from "vitest";
21
import SQLite from "better-sqlite3";
3-
import { inferQueryResult, ColumnType } from "../src/inferQueryResult.js";
2+
import { expect, it } from "vitest";
3+
4+
import { ColumnType, inferQueryResult } from "../src/inferQueryResult.js";
45

56
function testInferQueryResult(source: string, query: string) {
67
const db = new SQLite(":memory:");

tests/rules/typed-result.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
import { createTypedResultRule } from "../../src/rules/typed-result.js";
21
import SQLite from "better-sqlite3";
2+
3+
import { createTypedResultRule } from "../../src/rules/typed-result.js";
34
import { ruleTester } from "./rule-tester.js";
45

56
const db = new SQLite(":memory:");

0 commit comments

Comments
 (0)