Socket
Socket
Sign inDemoInstall

worker-rpc

Package Overview
Dependencies
1
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.1.1 to 0.2.0

CHANGELOG.md

12

lib/RpcProvider.d.ts

@@ -8,8 +8,8 @@ import { Event } from 'microevent.ts';

dispatch(payload: any): void;
rpc<T, U>(id: string, payload?: T, transfer?: any): Promise<U>;
signal<T>(id: string, payload?: T, transfer?: any): this;
registerRpcHandler<T, U>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
registerSignalHandler<T>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
deregisterRpcHandler<T, U>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
deregisterSignalHandler<T>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
rpc<T = void, U = void>(id: string, payload?: T, transfer?: any): Promise<U>;
signal<T = void>(id: string, payload?: T, transfer?: any): this;
registerRpcHandler<T = void, U = void>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
registerSignalHandler<T = void>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
deregisterRpcHandler<T = void, U = void>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
deregisterSignalHandler<T = void>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
private _raiseError;

@@ -16,0 +16,0 @@ private _handleSignal;

@@ -120,12 +120,13 @@ "use strict";

RpcProvider.prototype._handleInternal = function (message) {
var transaction = typeof (message.transactionId) !== 'undefined' ? this._pendingTransactions[message.transactionId] : undefined;
switch (message.id) {
case MSG_RESOLVE_TRANSACTION:
if (!this._pendingTransactions[message.transactionId]) {
if (!transaction || typeof (message.transactionId) === 'undefined') {
return this._raiseError("no pending transaction with id " + message.transactionId);
}
this._pendingTransactions[message.transactionId].resolve(message.payload);
transaction.resolve(message.payload);
this._clearTransaction(this._pendingTransactions[message.transactionId]);
break;
case MSG_REJECT_TRANSACTION:
if (!this._pendingTransactions[message.transactionId]) {
if (!transaction || typeof (message.transactionId) === 'undefined') {
return this._raiseError("no pending transaction with id " + message.transactionId);

@@ -132,0 +133,0 @@ }

import { EventInterface } from 'microevent.ts';
interface RpcProviderInterface {
dispatch(message: any): void;
rpc<T, U>(id: string, payload?: T, transfer?: Array<any>): Promise<U>;
signal<T>(id: string, payload?: T, transfer?: Array<any>): this;
registerRpcHandler<T, U>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
registerSignalHandler<T>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
deregisterRpcHandler<T, U>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
deregisterSignalHandler<T>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
rpc<T = void, U = void>(id: string, payload?: T, transfer?: Array<any>): Promise<U>;
signal<T = void>(id: string, payload?: T, transfer?: Array<any>): this;
registerRpcHandler<T = void, U = void>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
registerSignalHandler<T = void>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
deregisterRpcHandler<T = void, U = void>(id: string, handler: RpcProviderInterface.RpcHandler<T, U>): this;
deregisterSignalHandler<T = void>(id: string, handler: RpcProviderInterface.SignalHandler<T>): this;
error: EventInterface<Error>;
}
declare module RpcProviderInterface {
interface RpcHandler<T, U> {
(payload?: T): Promise<U> | U;
interface RpcHandler<T = void, U = void> {
(payload: T): Promise<U> | U;
}
interface SignalHandler<T> {
(payload?: T): void;
interface SignalHandler<T = void> {
(payload: T): void;
}
}
export default RpcProviderInterface;
{
"name": "worker-rpc",
"version": "0.1.1",
"version": "0.2.0",
"description": "A simple RPC layer for communicating with web workers and over other transports",
"scripts": {
"prepublish": "tsc",
"pretest": "typings install && tsc -p tsconfig.test.json",
"test": "mocha -R spec -u tdd test"
"test": "mocha --require ts-node/register -R spec -u tdd 'test/**/*.ts'"
},

@@ -21,5 +20,7 @@ "author": "Christian Speckner <cnspeckn@googlemail.com> (https://github.com/DirtyHairy/)",

"devDependencies": {
"@types/mocha": "^5.2.6",
"@types/node": "^12.0.2",
"mocha": "~6.1.4",
"typescript": "~3.4.5",
"typings": "~2.1.1"
"ts-node": "^8.1.0",
"typescript": "~3.4.5"
},

@@ -29,4 +30,9 @@ "main": "lib/index.js",

"dependencies": {
"microevent.ts": "~0.1.1"
}
"microevent.ts": "~0.2.1"
},
"files": [
"lib",
"READNE.md",
"CHANGELOG.md"
]
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc