Compare commits

...

3 Commits

4 changed files with 24 additions and 6 deletions

View File

@ -1,3 +1,5 @@
## [0.0.2-develop.4](https://git.lumeweb.com/LumeWeb/rpc/compare/v0.0.2-develop.3...v0.0.2-develop.4) (2023-07-23)
## [0.0.2-develop.3](https://git.lumeweb.com/LumeWeb/rpc/compare/v0.0.2-develop.2...v0.0.2-develop.3) (2023-07-05)
## [0.0.2-develop.2](https://git.lumeweb.com/LumeWeb/rpc/compare/v0.0.2-develop.1...v0.0.2-develop.2) (2023-07-04)

4
npm-shrinkwrap.json generated
View File

@ -1,12 +1,12 @@
{
"name": "@lumeweb/rpc",
"version": "0.0.2-develop.3",
"version": "0.0.2-develop.4",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@lumeweb/rpc",
"version": "0.0.2-develop.3",
"version": "0.0.2-develop.4",
"dependencies": {
"compact-encoding": "2.12.0",
"protomux-rpc": "1.4.1"

View File

@ -1,7 +1,7 @@
{
"name": "@lumeweb/rpc",
"type": "module",
"version": "0.0.2-develop.3",
"version": "0.0.2-develop.4",
"main": "lib/index.js",
"repository": {
"type": "git",

View File

@ -17,9 +17,25 @@ export default class RPC extends ProtomuxRPC {
...options,
};
super(stream, options);
this._ready = new Promise((resolve) => {
// @ts-ignore
this.on("open", resolve);
this._ready = new Promise((resolve, reject) => {
stream.on("open", onopen);
stream.on("destroy", ondestroy);
function onopen(handshake) {
removeListener();
resolve(handshake);
}
function ondestroy() {
removeListener();
reject(new Error("Client could not connect"));
}
function removeListener() {
stream.off("open", onopen);
stream.off("destroy", ondestroy);
}
});
}