UNPKG

metaapi.cloud-sdk

Version:

SDK for MetaApi, a professional cloud forex API which includes MetaTrader REST API and MetaTrader websocket API. Supports both MetaTrader 5 (MT5) and MetaTrader 4 (MT4). CopyFactory copy trading API included. (https://metaapi.cloud)

25 lines (24 loc) 2.95 kB
'use strict'; export default ((customEmitter)=>{ const Emitter = customEmitter; const emit = Emitter.prototype.emit; const onevent = function(packet) { var args = packet.data || []; if (packet.id != null) { args.push(this.ack(packet.id)); } emit.call(this, '*', packet); return emit.apply(this, args); }; return (socket, next)=>{ let boundOnevent = onevent; const namespaces = process.namespaces || {}; for (const key of Object.keys(namespaces)){ const ns = namespaces[key]; boundOnevent = ns.bind(boundOnevent); } socket.onevent = boundOnevent; return next ? next() : null; }; }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjxhbm9uPiJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCdcblxuZXhwb3J0IGRlZmF1bHQgKGN1c3RvbUVtaXR0ZXIpID0+IHtcbiAgY29uc3QgRW1pdHRlciA9IGN1c3RvbUVtaXR0ZXI7XG4gIGNvbnN0IGVtaXQgPSBFbWl0dGVyLnByb3RvdHlwZS5lbWl0O1xuICBcbiAgY29uc3Qgb25ldmVudCA9IGZ1bmN0aW9uIChwYWNrZXQpIHtcbiAgICB2YXIgYXJncyA9IHBhY2tldC5kYXRhIHx8IFtdO1xuICAgIGlmIChwYWNrZXQuaWQgIT0gbnVsbCkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWVxLW51bGwsIGVxZXFlcVxuICAgICAgYXJncy5wdXNoKHRoaXMuYWNrKHBhY2tldC5pZCkpO1xuICAgIH0gICAgXG4gICAgZW1pdC5jYWxsKHRoaXMsICcqJywgcGFja2V0KTtcbiAgICByZXR1cm4gZW1pdC5hcHBseSh0aGlzLCBhcmdzKTtcbiAgfVxuICBcbiAgcmV0dXJuIChzb2NrZXQsIG5leHQ/KSA9PiB7XG4gICAgbGV0IGJvdW5kT25ldmVudCA9IG9uZXZlbnQ7XG4gICAgY29uc3QgbmFtZXNwYWNlcyA9IChwcm9jZXNzIGFzIGFueSkubmFtZXNwYWNlcyB8fCB7fTtcbiAgXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMobmFtZXNwYWNlcykpIHtcbiAgICAgIGNvbnN0IG5zID0gbmFtZXNwYWNlc1trZXldO1xuICAgICAgYm91bmRPbmV2ZW50ID0gbnMuYmluZChib3VuZE9uZXZlbnQpO1xuICAgIH1cblxuICAgIHNvY2tldC5vbmV2ZW50ID0gYm91bmRPbmV2ZW50O1xuXG4gICAgcmV0dXJuIG5leHQgPyBuZXh0KCkgOiBudWxsO1xuICB9XG59XG4iXSwibmFtZXMiOlsiY3VzdG9tRW1pdHRlciIsIkVtaXR0ZXIiLCJlbWl0IiwicHJvdG90eXBlIiwib25ldmVudCIsInBhY2tldCIsImFyZ3MiLCJkYXRhIiwiaWQiLCJwdXNoIiwiYWNrIiwiY2FsbCIsImFwcGx5Iiwic29ja2V0IiwibmV4dCIsImJvdW5kT25ldmVudCIsIm5hbWVzcGFjZXMiLCJwcm9jZXNzIiwia2V5IiwiT2JqZWN0Iiwia2V5cyIsIm5zIiwiYmluZCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFFQSxlQUFlLENBQUEsQ0FBQ0E7SUFDZCxNQUFNQyxVQUFVRDtJQUNoQixNQUFNRSxPQUFPRCxRQUFRRSxTQUFTLENBQUNELElBQUk7SUFFbkMsTUFBTUUsVUFBVSxTQUFVQyxNQUFNO1FBQzlCLElBQUlDLE9BQU9ELE9BQU9FLElBQUksSUFBSSxFQUFFO1FBQzVCLElBQUlGLE9BQU9HLEVBQUUsSUFBSSxNQUFNO1lBQ3JCRixLQUFLRyxJQUFJLENBQUMsSUFBSSxDQUFDQyxHQUFHLENBQUNMLE9BQU9HLEVBQUU7UUFDOUI7UUFDQU4sS0FBS1MsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLTjtRQUNyQixPQUFPSCxLQUFLVSxLQUFLLENBQUMsSUFBSSxFQUFFTjtJQUMxQjtJQUVBLE9BQU8sQ0FBQ08sUUFBUUM7UUFDZCxJQUFJQyxlQUFlWDtRQUNuQixNQUFNWSxhQUFhLEFBQUNDLFFBQWdCRCxVQUFVLElBQUksQ0FBQztRQUVuRCxLQUFLLE1BQU1FLE9BQU9DLE9BQU9DLElBQUksQ0FBQ0osWUFBYTtZQUN6QyxNQUFNSyxLQUFLTCxVQUFVLENBQUNFLElBQUk7WUFDMUJILGVBQWVNLEdBQUdDLElBQUksQ0FBQ1A7UUFDekI7UUFFQUYsT0FBT1QsT0FBTyxHQUFHVztRQUVqQixPQUFPRCxPQUFPQSxTQUFTO0lBQ3pCO0FBQ0YsQ0FBQSxFQUFDIn0=