diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 00000000..b58b603f
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,5 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
diff --git a/.idea/eslint-plugin-n.iml b/.idea/eslint-plugin-n.iml
new file mode 100644
index 00000000..24643cc3
--- /dev/null
+++ b/.idea/eslint-plugin-n.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 00000000..03d9549e
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 00000000..672ddd08
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/util/is-typescript.js b/lib/util/is-typescript.js
index a61a1377..479397cc 100644
--- a/lib/util/is-typescript.js
+++ b/lib/util/is-typescript.js
@@ -2,7 +2,7 @@
const path = require("path")
-const typescriptExtensions = [".ts", ".cts", ".mts"]
+const typescriptExtensions = [".ts", ".tsx", ".cts", ".mts"]
/**
* Determine if the context source file is typescript.
diff --git a/lib/util/map-typescript-extension.js b/lib/util/map-typescript-extension.js
index ecd3d9f2..fe428004 100644
--- a/lib/util/map-typescript-extension.js
+++ b/lib/util/map-typescript-extension.js
@@ -8,12 +8,14 @@ const mapping = {
".ts": ".js",
".cts": ".cjs",
".mts": ".mjs",
+ ".tsx": ".jsx",
}
const reverseMapping = {
".js": ".ts",
".cjs": ".cts",
".mjs": ".mts",
+ ".jsx": ".tsx",
}
/**
diff --git a/tests/fixtures/file-extension-in-import/e.tsx b/tests/fixtures/file-extension-in-import/e.tsx
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/fixtures/no-missing/e.tsx b/tests/fixtures/no-missing/e.tsx
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/lib/rules/file-extension-in-import.js b/tests/lib/rules/file-extension-in-import.js
index 651097f6..30ccb160 100644
--- a/tests/lib/rules/file-extension-in-import.js
+++ b/tests/lib/rules/file-extension-in-import.js
@@ -96,6 +96,11 @@ new RuleTester({
code: "import './c.mjs'",
options: ["always"],
},
+ {
+ filename: fixture("test.tsx"),
+ code: "import './d.jsx'",
+ options: ["always"],
+ },
{
filename: fixture("test.js"),
code: "import './a'",
diff --git a/tests/lib/rules/no-missing-import.js b/tests/lib/rules/no-missing-import.js
index 82f221f9..4a054061 100644
--- a/tests/lib/rules/no-missing-import.js
+++ b/tests/lib/rules/no-missing-import.js
@@ -98,6 +98,10 @@ ruleTester.run("no-missing-import", rule, {
filename: fixture("test.js"),
code: "import mocha from 'mocha!foo?a=b&c=d';",
},
+ {
+ filename: fixture("test.tsx"),
+ code: "import a from './e.jsx';",
+ },
// Ignores it if the filename is unknown.
"import abc from 'no-exist-package-0';",