summaryrefslogtreecommitdiff
path: root/cli/js
diff options
context:
space:
mode:
Diffstat (limited to 'cli/js')
-rw-r--r--cli/js/globals_test.ts12
-rw-r--r--cli/js/lib.deno.window.d.ts2
-rw-r--r--cli/js/runtime_main.ts1
3 files changed, 15 insertions, 0 deletions
diff --git a/cli/js/globals_test.ts b/cli/js/globals_test.ts
index d6bc87f5c..70c5e4e37 100644
--- a/cli/js/globals_test.ts
+++ b/cli/js/globals_test.ts
@@ -9,14 +9,26 @@ test(function windowExists(): void {
assert(window != null);
});
+test(function selfExists(): void {
+ assert(self != null);
+});
+
test(function windowWindowExists(): void {
assert(window.window === window);
});
+test(function windowSelfExists(): void {
+ assert(window.self === window);
+});
+
test(function globalThisEqualsWindow(): void {
assert(globalThis === window);
});
+test(function globalThisEqualsSelf(): void {
+ assert(globalThis === self);
+});
+
test(function DenoNamespaceExists(): void {
assert(Deno != null);
});
diff --git a/cli/js/lib.deno.window.d.ts b/cli/js/lib.deno.window.d.ts
index 2c6228919..737971d94 100644
--- a/cli/js/lib.deno.window.d.ts
+++ b/cli/js/lib.deno.window.d.ts
@@ -9,6 +9,7 @@
declare interface Window extends WindowOrWorkerGlobalScope {
window: Window & WindowOrWorkerGlobalScope & typeof globalThis;
+ self: Window & WindowOrWorkerGlobalScope & typeof globalThis;
onload: Function | undefined;
onunload: Function | undefined;
crypto: Crypto;
@@ -16,6 +17,7 @@ declare interface Window extends WindowOrWorkerGlobalScope {
}
declare const window: Window & WindowOrWorkerGlobalScope & typeof globalThis;
+declare const self: Window & WindowOrWorkerGlobalScope & typeof globalThis;
declare const onload: Function | undefined;
declare const onunload: Function | undefined;
declare const crypto: Crypto;
diff --git a/cli/js/runtime_main.ts b/cli/js/runtime_main.ts
index b5517cbcb..96bda3cb0 100644
--- a/cli/js/runtime_main.ts
+++ b/cli/js/runtime_main.ts
@@ -32,6 +32,7 @@ Deno[Deno.symbols.internal] = internalObject;
export const mainRuntimeGlobalProperties = {
window: readOnly(globalThis),
+ self: readOnly(globalThis),
Deno: readOnly(Deno),
crypto: readOnly(csprng),