summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cli/js/compiler_host.ts8
-rw-r--r--cli/js/compiler_util.ts6
-rw-r--r--cli/tests/038_checkjs.tsconfig.json1
-rw-r--r--cli/tests/fix_js_import_js.ts3
-rw-r--r--cli/tests/fix_js_import_js.ts.out1
-rw-r--r--cli/tests/integration_tests.rs5
-rw-r--r--cli/tests/subdir/mod6.js1
7 files changed, 20 insertions, 5 deletions
diff --git a/cli/js/compiler_host.ts b/cli/js/compiler_host.ts
index d44bc7a03..78ed4889a 100644
--- a/cli/js/compiler_host.ts
+++ b/cli/js/compiler_host.ts
@@ -47,18 +47,18 @@ export const defaultBundlerOptions: ts.CompilerOptions = {
/** Default options used by the compiler Host when compiling. */
export const defaultCompileOptions: ts.CompilerOptions = {
- allowJs: true,
+ allowJs: false,
allowNonTsExtensions: true,
- strict: true,
checkJs: false,
esModuleInterop: true,
+ jsx: ts.JsxEmit.React,
module: ts.ModuleKind.ESNext,
outDir: OUT_DIR,
resolveJsonModule: true,
sourceMap: true,
+ strict: true,
stripComments: true,
- target: ts.ScriptTarget.ESNext,
- jsx: ts.JsxEmit.React
+ target: ts.ScriptTarget.ESNext
};
/** Options that need to be used when doing a runtime (non bundled) compilation */
diff --git a/cli/js/compiler_util.ts b/cli/js/compiler_util.ts
index a28e2d109..6da38ab3b 100644
--- a/cli/js/compiler_util.ts
+++ b/cli/js/compiler_util.ts
@@ -304,7 +304,11 @@ export const ignoredDiagnostics = [
// support JSON imports. Allegedly this was fixed in
// Microsoft/TypeScript#26825 but that doesn't seem to be working here,
// so we will ignore complaints about this compiler setting.
- 5070
+ 5070,
+ // TS7016: Could not find a declaration file for module '...'. '...'
+ // implicitly has an 'any' type. This is due to `allowJs` being off by
+ // default but importing of a JavaScript module.
+ 7016
];
/** When doing a host configuration, processing the response and logging out
diff --git a/cli/tests/038_checkjs.tsconfig.json b/cli/tests/038_checkjs.tsconfig.json
index 08ac60b6c..46d96db9e 100644
--- a/cli/tests/038_checkjs.tsconfig.json
+++ b/cli/tests/038_checkjs.tsconfig.json
@@ -1,5 +1,6 @@
{
"compilerOptions": {
+ "allowJs": true,
"checkJs": true
}
}
diff --git a/cli/tests/fix_js_import_js.ts b/cli/tests/fix_js_import_js.ts
new file mode 100644
index 000000000..c9f341748
--- /dev/null
+++ b/cli/tests/fix_js_import_js.ts
@@ -0,0 +1,3 @@
+import { isMod4 } from "./subdir/mod6.js";
+
+console.log(isMod4);
diff --git a/cli/tests/fix_js_import_js.ts.out b/cli/tests/fix_js_import_js.ts.out
new file mode 100644
index 000000000..27ba77dda
--- /dev/null
+++ b/cli/tests/fix_js_import_js.ts.out
@@ -0,0 +1 @@
+true
diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs
index 1767be7c2..ccc571331 100644
--- a/cli/tests/integration_tests.rs
+++ b/cli/tests/integration_tests.rs
@@ -1160,6 +1160,11 @@ itest!(cafile_info {
http_server: true,
});
+itest!(fix_js_import_js {
+ args: "run --reload fix_js_import_js.ts",
+ output: "fix_js_import_js.ts.out",
+});
+
itest!(fix_js_imports {
args: "run --reload fix_js_imports.ts",
output: "fix_js_imports.ts.out",
diff --git a/cli/tests/subdir/mod6.js b/cli/tests/subdir/mod6.js
new file mode 100644
index 000000000..5e17c9ee0
--- /dev/null
+++ b/cli/tests/subdir/mod6.js
@@ -0,0 +1 @@
+export { isMod4 } from "./mod4.js";