UNPKG

data-transport

Version:
47 lines 6.44 kB
import { __assign, __extends, __rest } from "tslib"; import { Transport } from '../transport'; var MainProcessTransport = /** @class */ (function (_super) { __extends(MainProcessTransport, _super); function MainProcessTransport(_options) { var child = _options.child, _a = _options.listener, listener = _a === void 0 ? function (callback) { var handler = function (data) { callback(data); }; child.on('message', handler); return function () { child.off('message', handler); }; } : _a, _b = _options.sender, sender = _b === void 0 ? function (message) { child.send(message); } : _b, options = __rest(_options, ["child", "listener", "sender"]); return _super.call(this, __assign(__assign({}, options), { listener: listener, sender: sender })) || this; } return MainProcessTransport; }(Transport)); export { MainProcessTransport }; var ChildProcessTransport = /** @class */ (function (_super) { __extends(ChildProcessTransport, _super); function ChildProcessTransport(_options) { if (_options === void 0) { _options = {}; } var _a = _options.listener, listener = _a === void 0 ? function (callback) { var handler = function (data) { callback(data); }; process.on('message', handler); return function () { process.off('message', handler); }; } : _a, _b = _options.sender, sender = _b === void 0 ? function (message) { // @ts-ignore process.send(message); } : _b, options = __rest(_options, ["listener", "sender"]); return _super.call(this, __assign(__assign({}, options), { listener: listener, sender: sender })) || this; } return ChildProcessTransport; }(Transport)); export { ChildProcessTransport }; export var ProcessTransport = { Main: MainProcessTransport, Child: ChildProcessTransport, }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzc1RyYW5zcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc3BvcnRzL3Byb2Nlc3NUcmFuc3BvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQU1BLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFNekM7SUFFVSx3Q0FBWTtJQUNwQiw4QkFBWSxRQUFxQztRQUU3QyxJQUFBLEtBQUssR0FjSCxRQUFRLE1BZEwsRUFDTCxLQWFFLFFBQVEsU0FMVCxFQVJELFFBQVEsbUJBQUcsVUFBQyxRQUFRO1lBQ2xCLElBQU0sT0FBTyxHQUFHLFVBQUMsSUFBcUI7Z0JBQ3BDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqQixDQUFDLENBQUM7WUFDRixLQUFLLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM3QixPQUFPO2dCQUNMLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2hDLENBQUMsQ0FBQztRQUNKLENBQUMsS0FBQSxFQUNELEtBSUUsUUFBUSxPQUZULEVBRkQsTUFBTSxtQkFBRyxVQUFDLE9BQU87WUFDZixLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RCLENBQUMsS0FBQSxFQUNFLE9BQU8sVUFDUixRQUFRLEVBZk4sK0JBZUwsQ0FEVyxDQUNDO1FBQ2IsT0FBQSxNQUFLLGtDQUNBLE9BQU8sS0FDVixRQUFRLFVBQUEsRUFDUixNQUFNLFFBQUEsSUFDTixTQUFDO0lBQ0wsQ0FBQztJQUNILDJCQUFDO0FBQUQsQ0FBQyxBQTFCRCxDQUVVLFNBQVMsR0F3QmxCOztBQU9EO0lBRVUseUNBQVk7SUFDcEIsK0JBQVksUUFBMkM7UUFBM0MseUJBQUEsRUFBQSxhQUEyQztRQUVuRCxJQUFBLEtBY0UsUUFBUSxTQU5ULEVBUkQsUUFBUSxtQkFBRyxVQUFDLFFBQVE7WUFDbEIsSUFBTSxPQUFPLEdBQUcsVUFBQyxJQUFxQjtnQkFDcEMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pCLENBQUMsQ0FBQztZQUNGLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9CLE9BQU87Z0JBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxLQUFBLEVBQ0QsS0FLRSxRQUFRLE9BRlQsRUFIRCxNQUFNLG1CQUFHLFVBQUMsT0FBTztZQUNmLGFBQWE7WUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hCLENBQUMsS0FBQSxFQUNFLE9BQU8sVUFDUixRQUFRLEVBZk4sc0JBZUwsQ0FEVyxDQUNDO1FBQ2IsT0FBQSxNQUFLLGtDQUNBLE9BQU8sS0FDVixRQUFRLFVBQUEsRUFDUixNQUFNLFFBQUEsSUFDTixTQUFDO0lBQ0wsQ0FBQztJQUNILDRCQUFDO0FBQUQsQ0FBQyxBQTFCRCxDQUVVLFNBQVMsR0F3QmxCOztBQUVELE1BQU0sQ0FBQyxJQUFNLGdCQUFnQixHQUFHO0lBQzlCLElBQUksRUFBRSxvQkFBb0I7SUFDMUIsS0FBSyxFQUFFLHFCQUFxQjtDQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDaGlsZFByb2Nlc3MgfSBmcm9tICdjaGlsZF9wcm9jZXNzJztcbmltcG9ydCB0eXBlIHtcbiAgQmFzZUludGVyYWN0aW9uLFxuICBMaXN0ZW5lck9wdGlvbnMsXG4gIFRyYW5zcG9ydE9wdGlvbnMsXG59IGZyb20gJy4uL2ludGVyZmFjZSc7XG5pbXBvcnQgeyBUcmFuc3BvcnQgfSBmcm9tICcuLi90cmFuc3BvcnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1haW5Qcm9jZXNzVHJhbnNwb3J0T3B0aW9ucyBleHRlbmRzIFBhcnRpYWw8VHJhbnNwb3J0T3B0aW9ucz4ge1xuICBjaGlsZDogQ2hpbGRQcm9jZXNzO1xufVxuXG5leHBvcnQgY2xhc3MgTWFpblByb2Nlc3NUcmFuc3BvcnQ8XG4gIFQgZXh0ZW5kcyBCYXNlSW50ZXJhY3Rpb24gPSBhbnlcbj4gZXh0ZW5kcyBUcmFuc3BvcnQ8VD4ge1xuICBjb25zdHJ1Y3Rvcihfb3B0aW9uczogTWFpblByb2Nlc3NUcmFuc3BvcnRPcHRpb25zKSB7XG4gICAgY29uc3Qge1xuICAgICAgY2hpbGQsXG4gICAgICBsaXN0ZW5lciA9IChjYWxsYmFjaykgPT4ge1xuICAgICAgICBjb25zdCBoYW5kbGVyID0gKGRhdGE6IExpc3RlbmVyT3B0aW9ucykgPT4ge1xuICAgICAgICAgIGNhbGxiYWNrKGRhdGEpO1xuICAgICAgICB9O1xuICAgICAgICBjaGlsZC5vbignbWVzc2FnZScsIGhhbmRsZXIpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIGNoaWxkLm9mZignbWVzc2FnZScsIGhhbmRsZXIpO1xuICAgICAgICB9O1xuICAgICAgfSxcbiAgICAgIHNlbmRlciA9IChtZXNzYWdlKSA9PiB7XG4gICAgICAgIGNoaWxkLnNlbmQobWVzc2FnZSk7XG4gICAgICB9LFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH0gPSBfb3B0aW9ucztcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbGlzdGVuZXIsXG4gICAgICBzZW5kZXIsXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGlsZFByb2Nlc3NUcmFuc3BvcnRPcHRpb25zXG4gIGV4dGVuZHMgUGFydGlhbDxUcmFuc3BvcnRPcHRpb25zPiB7XG4gIC8vXG59XG5cbmV4cG9ydCBjbGFzcyBDaGlsZFByb2Nlc3NUcmFuc3BvcnQ8XG4gIFQgZXh0ZW5kcyBCYXNlSW50ZXJhY3Rpb24gPSBhbnlcbj4gZXh0ZW5kcyBUcmFuc3BvcnQ8VD4ge1xuICBjb25zdHJ1Y3Rvcihfb3B0aW9uczogQ2hpbGRQcm9jZXNzVHJhbnNwb3J0T3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3Qge1xuICAgICAgbGlzdGVuZXIgPSAoY2FsbGJhY2spID0+IHtcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChkYXRhOiBMaXN0ZW5lck9wdGlvbnMpID0+IHtcbiAgICAgICAgICBjYWxsYmFjayhkYXRhKTtcbiAgICAgICAgfTtcbiAgICAgICAgcHJvY2Vzcy5vbignbWVzc2FnZScsIGhhbmRsZXIpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIHByb2Nlc3Mub2ZmKCdtZXNzYWdlJywgaGFuZGxlcik7XG4gICAgICAgIH07XG4gICAgICB9LFxuICAgICAgc2VuZGVyID0gKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBwcm9jZXNzLnNlbmQobWVzc2FnZSk7XG4gICAgICB9LFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH0gPSBfb3B0aW9ucztcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbGlzdGVuZXIsXG4gICAgICBzZW5kZXIsXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFByb2Nlc3NUcmFuc3BvcnQgPSB7XG4gIE1haW46IE1haW5Qcm9jZXNzVHJhbnNwb3J0LFxuICBDaGlsZDogQ2hpbGRQcm9jZXNzVHJhbnNwb3J0LFxufTtcbiJdfQ==