summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--runtime.ts4
-rw-r--r--testdata/import_typescript.ts3
-rw-r--r--testdata/import_typescript.ts.out1
4 files changed, 9 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 9bcc37f3c..a5c1978b9 100644
--- a/Makefile
+++ b/Makefile
@@ -39,7 +39,7 @@ deno: msg.pb.go $(GO_FILES)
go build -o deno ./cmd
assets.go: dist/main.js
- cp node_modules/typescript/lib/lib.*d.ts dist/
+ cp node_modules/typescript/lib/*d.ts dist/
cp deno.d.ts dist/
go-bindata -pkg deno -o assets.go dist/
diff --git a/runtime.ts b/runtime.ts
index 0ef893ab3..1b6e7cfcd 100644
--- a/runtime.ts
+++ b/runtime.ts
@@ -130,6 +130,8 @@ export function makeDefine(fileName: string): AmdDefine {
return localRequire;
} else if (dep === "exports") {
return localExports;
+ } else if (dep === "typescript") {
+ return ts;
} else if (dep === "deno") {
return deno;
} else {
@@ -310,6 +312,8 @@ class TypeScriptHost implements ts.LanguageServiceHost {
let resolvedFileName;
if (name === "deno") {
resolvedFileName = resolveModuleName("deno.d.ts", "/$asset$/");
+ } else if (name === "typescript") {
+ resolvedFileName = resolveModuleName("typescript.d.ts", "/$asset$/");
} else {
resolvedFileName = resolveModuleName(name, containingFile);
}
diff --git a/testdata/import_typescript.ts b/testdata/import_typescript.ts
new file mode 100644
index 000000000..0f161ceb0
--- /dev/null
+++ b/testdata/import_typescript.ts
@@ -0,0 +1,3 @@
+import * as ts from "typescript";
+
+console.log("typescript version", ts.version);
diff --git a/testdata/import_typescript.ts.out b/testdata/import_typescript.ts.out
new file mode 100644
index 000000000..0a142219b
--- /dev/null
+++ b/testdata/import_typescript.ts.out
@@ -0,0 +1 @@
+typescript version 2.8.3