From 1b9097fc70a255693c711845d461aa56e6b925ee Mon Sep 17 00:00:00 2001 From: Jason Staten Date: Thu, 20 Sep 2018 15:55:51 -0600 Subject: [PATCH] strict typescript checks --- src/JsonRpc.ts | 11 +++++++---- tsconfig.json | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/JsonRpc.ts b/src/JsonRpc.ts index 7f48653..d8791da 100644 --- a/src/JsonRpc.ts +++ b/src/JsonRpc.ts @@ -70,7 +70,7 @@ const ensureArray = (source: any) => class JsonRpc { private methods: Methods; private destination?: JsonRpcDestination; - private source: JsonRpcSource; + private source?: JsonRpcSource; private origin: string; private sequence = 0; private deferreds: DeferredLookup = {}; @@ -79,8 +79,10 @@ class JsonRpc { this.methods = methods; this.destination = destination; this.origin = origin || '*'; - if (source) { - this.mount(source); + this.source = source; + + if (this.source) { + this.mount(this.source); } } @@ -110,7 +112,8 @@ class JsonRpc { } unmount() { - this.source.removeEventListener('message', this.handleMessage); + this.source && + this.source.removeEventListener('message', this.handleMessage); } private handleRequest(request: JsonRpcRequest): Promise { diff --git a/tsconfig.json b/tsconfig.json index 22066c5..c9a7ad9 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,8 +1,8 @@ { "compilerOptions": { "declaration": true, - "noImplicitAny": true, - "strictNullChecks": true, + "strict": true, + "strictFunctionTypes": false, "target": "es5", "module": "esnext", "lib": ["es5", "es2015", "es2016", "dom"]