@open-rpc/client-js
Advanced tools
Comparing version 1.5.0 to 1.5.1
@@ -9,2 +9,3 @@ import { Transport } from "./Transport"; | ||
createWindow(uri: string): Promise<Window | null>; | ||
private messageHandler; | ||
connect(): Promise<any>; | ||
@@ -11,0 +12,0 @@ sendData(data: JSONRPCRequestData, timeout?: number | undefined): Promise<any>; |
@@ -64,2 +64,8 @@ "use strict"; | ||
var _this = _super.call(this) || this; | ||
_this.messageHandler = function (ev) { | ||
if (ev.origin === window.origin) { | ||
return; | ||
} | ||
_this.transportRequestManager.resolveResponse(JSON.stringify(ev.data)); | ||
}; | ||
_this.uri = uri; | ||
@@ -83,3 +89,2 @@ _this.postMessageID = "post-message-transport-" + Math.random(); | ||
var _a; | ||
var _this = this; | ||
return __generator(this, function (_b) { | ||
@@ -95,8 +100,3 @@ switch (_b.label) { | ||
_a.frame = _b.sent(); | ||
window.addEventListener("message", function (ev) { | ||
if (ev.origin === window.origin) { | ||
return; | ||
} | ||
_this.transportRequestManager.resolveResponse(JSON.stringify(ev.data)); | ||
}); | ||
window.addEventListener("message", this.messageHandler); | ||
resolve(); | ||
@@ -123,2 +123,3 @@ return [2 /*return*/]; | ||
if (this.frame) { | ||
window.removeEventListener("message", this.messageHandler); | ||
this.frame.close(); | ||
@@ -125,0 +126,0 @@ } |
@@ -0,1 +1,8 @@ | ||
## [1.5.1](https://github.com/open-rpc/client-js/compare/1.5.0...1.5.1) (2020-09-25) | ||
### Bug Fixes | ||
* remove PostMessage EventListener on close ([844af19](https://github.com/open-rpc/client-js/commit/844af195ac1098002630b68a309f03fe1a8e519c)) | ||
# [1.5.0](https://github.com/open-rpc/client-js/compare/1.4.0...1.5.0) (2020-08-03) | ||
@@ -2,0 +9,0 @@ |
{ | ||
"name": "@open-rpc/client-js", | ||
"version": "1.5.0", | ||
"version": "1.5.1", | ||
"description": " A browser-compatible JSON-RPC client with multiple transports.", | ||
@@ -5,0 +5,0 @@ "main": "build/index.js", |
@@ -27,2 +27,3 @@ import { Transport } from "./Transport"; | ||
} | ||
public createWindow(uri: string): Promise<Window | null> { | ||
@@ -37,2 +38,10 @@ return new Promise((resolve, reject) => { | ||
} | ||
private messageHandler = (ev: MessageEvent) => { | ||
if (ev.origin === window.origin) { | ||
return; | ||
} | ||
this.transportRequestManager.resolveResponse(JSON.stringify(ev.data)); | ||
} | ||
public connect(): Promise<any> { | ||
@@ -45,8 +54,3 @@ const urlRegex = /^(http|https):\/\/.*$/; | ||
this.frame = await this.createWindow(this.uri); | ||
window.addEventListener("message", (ev: MessageEvent) => { | ||
if (ev.origin === window.origin) { | ||
return; | ||
} | ||
this.transportRequestManager.resolveResponse(JSON.stringify(ev.data)); | ||
}); | ||
window.addEventListener("message", this.messageHandler); | ||
resolve(); | ||
@@ -66,2 +70,3 @@ }); | ||
if (this.frame) { | ||
window.removeEventListener("message", this.messageHandler); | ||
(this.frame as Window).close(); | ||
@@ -68,0 +73,0 @@ } |
272035
4845