Skip to content

Commit 6750fc3

Browse files
fix: improve typescript support (#67)
1 parent d6cbdc1 commit 6750fc3

File tree

4 files changed

+22
-2
lines changed

4 files changed

+22
-2
lines changed

configs/typescript.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,8 @@ async function getTypescriptJSDocRecommendedConfig() {
274274
};
275275
}
276276

277+
const allExtensions = [...typescriptExtensions, ...javascriptExtensions];
278+
277279
/**
278280
* @returns {Promise<Record<string, string>>} config
279281
*/
@@ -317,6 +319,18 @@ async function getTypescriptRecommendedConfig() {
317319
plugins: {
318320
...baseConfig.plugins,
319321
},
322+
settings: {
323+
"import/extensions": allExtensions,
324+
"import/external-module-folders": ["node_modules", "node_modules/@types"],
325+
"import/parsers": {
326+
"@typescript-eslint/parser": typescriptExtensions,
327+
},
328+
"import/resolver": {
329+
node: {
330+
extensions: allExtensions,
331+
},
332+
},
333+
},
320334
rules: {
321335
...eslintRecommendedConfig.rules,
322336
...recommendedConfig.rules,
@@ -721,6 +735,9 @@ async function getTypescriptRecommendedConfig() {
721735
// No need
722736
// "use-unknown-in-catch-callback-variable": "error",
723737

738+
// TypeScript compilation already ensures that named imports exist in the referenced module
739+
"import/named": "off",
740+
724741
// TypeScript handles this for us
725742
"import/no-unresolved": "off",
726743
},

configs/utils/extensions.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
const javascriptExtensions = [".js", ".cjs", ".mjs", ".jsx"];
2-
const typescriptExtensions = [".ts", ".cts", ".mts", ".tsx"];
1+
const javascriptExtensions = [".js", ".jsx", ".cjs", ".mjs"];
2+
const typescriptExtensions = [".ts", ".tsx", ".cts", ".mts"];
33
const allExtensions = [...javascriptExtensions, ...typescriptExtensions];
44

55
export { allExtensions, javascriptExtensions, typescriptExtensions };

validation/dirty-package/file.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import otherMod from "././other-module.cjs";
2+
import myNumber from "./my-dirty-modules";
23
import { a, b } from "./my-module.js";
34

45
const commonJSModule = require("./module-js-common.js");
@@ -22,3 +23,4 @@ sum(foo, bar);
2223
sum(a, b);
2324
sum(otherMod.a, otherMod.b);
2425
sum(commonJSModule.a, commonJSModule.b);
26+
sum(myNumber, myNumber);
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export default 1;

0 commit comments

Comments
 (0)