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)
88 lines (87 loc) • 7.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
assembleLog4jsConfig: function() {
return assembleLog4jsConfig;
},
createHandlePromise: function() {
return createHandlePromise;
},
delay: function() {
return delay;
}
});
const _timeoutError = /*#__PURE__*/ _interop_require_default(require("../clients/timeoutError"));
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
function createHandlePromise() {
let resolve, reject;
let promise = new Promise((res, rej)=>{
resolve = res;
reject = rej;
});
promise.resolve = (result)=>{
if (promise.completed) {
return;
}
promise.resolved = true;
promise.completed = true;
resolve(result);
};
promise.reject = (err)=>{
if (promise.completed) {
return;
}
promise.rejected = true;
promise.completed = true;
reject(err);
};
promise.timeout = (milliseconds, errorMessage)=>{
if (promise.completed) {
return;
}
let timeout = setTimeout(()=>promise.reject(new _timeoutError.default(errorMessage)), milliseconds);
promise.finally(()=>clearTimeout(timeout)).catch(()=>{});
return promise;
};
promise.catch(()=>{});
return promise;
}
function delay(ms) {
return new Promise((res)=>setTimeout(res, ms));
}
function assembleLog4jsConfig(config = {}) {
let appenders = {
console: {
type: "console"
}
};
let categories = {
default: {
appenders: Object.keys(appenders),
level: config.defaultLevel || "INFO"
}
};
Object.keys(config.levels || {}).forEach((category)=>{
categories[category] = {
appenders: Object.keys(appenders),
level: config.levels[category]
};
});
return {
appenders,
categories
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjxhbm9uPiJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbmltcG9ydCBUaW1lb3V0RXJyb3IgZnJvbSAnLi4vY2xpZW50cy90aW1lb3V0RXJyb3InO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBwcm9taXNlIHRoYXQgY2FuIGJlIHVzZWQgYXMgYSBoYW5kbGUuIEl0IHdpbGwgbm90IHJhaXNlIGVycm9ycyB3aGVuIHJlamVjdGVkIHVudGlsIGl0IGlzIGV4cGxpY2l0bHlcbiAqIGF3YWl0ZWQgb3IgY2F0Y2ggaXMgc2V0LiBUaGUgcHJvbWlzZSBhZGRpdGlvbmFsbHkgaGFzIGZvbGxvd2luZyBtZXRob2RzOlxuICogLSBgcmVzb2x2ZSh2YWx1ZSlgIHJlc29sdmVzIHRoZSBwcm9taXNlIHdpdGggc3BlY2lmaWVkIHZhbHVlXG4gKiAtIGByZWplY3QoZXJyb3IpYCByZWplY3RzIHRoZSBwcm9taXNlIHdpdGggc3BlY2lmaWVkIGVycm9yXG4gKiAtIGB0aW1lb3V0KG1pbGxpc2Vjb25kcywgZXJyb3JNZXNzYWdlKWAgYWRkcyBhIHRpbWVvdXQgdG8gcmVqZWN0IHRoZSBwcm9taXNlIHdpdGggYFRpbWVvdXRFcnJvcmBcbiAqIEByZXR1cm4ge1Byb21pc2V9IE1vZGlmaWVkIGhhbmRsZSBwcm9taXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVIYW5kbGVQcm9taXNlKCkge1xuICBsZXQgcmVzb2x2ZSwgcmVqZWN0O1xuICBsZXQgcHJvbWlzZTogYW55ID0gbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiB7XG4gICAgcmVzb2x2ZSA9IHJlcztcbiAgICByZWplY3QgPSByZWo7XG4gIH0pO1xuICBwcm9taXNlLnJlc29sdmUgPSAocmVzdWx0KSA9PiB7XG4gICAgaWYgKHByb21pc2UuY29tcGxldGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHByb21pc2UucmVzb2x2ZWQgPSB0cnVlO1xuICAgIHByb21pc2UuY29tcGxldGVkID0gdHJ1ZTtcbiAgICByZXNvbHZlKHJlc3VsdCk7XG4gIH07XG4gIHByb21pc2UucmVqZWN0ID0gKGVycikgPT4ge1xuICAgIGlmIChwcm9taXNlLmNvbXBsZXRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBwcm9taXNlLnJlamVjdGVkID0gdHJ1ZTtcbiAgICBwcm9taXNlLmNvbXBsZXRlZCA9IHRydWU7XG4gICAgcmVqZWN0KGVycik7XG4gIH07XG4gIHByb21pc2UudGltZW91dCA9IChtaWxsaXNlY29uZHMsIGVycm9yTWVzc2FnZSkgPT4ge1xuICAgIGlmIChwcm9taXNlLmNvbXBsZXRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gcHJvbWlzZS5yZWplY3QobmV3IFRpbWVvdXRFcnJvcihlcnJvck1lc3NhZ2UpKSwgbWlsbGlzZWNvbmRzKTtcbiAgICBwcm9taXNlLmZpbmFsbHkoKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVvdXQpKS5jYXRjaCgoKSA9PiB7fSk7XG4gICAgcmV0dXJuIHByb21pc2U7XG4gIH07XG4gIHByb21pc2UuY2F0Y2goKCkgPT4ge30pO1xuICByZXR1cm4gcHJvbWlzZTtcbn1cblxuLyoqXG4gKiBXYWl0cyBzcGVjaWZpZWQgZGVsYXlcbiAqIEBwYXJhbSB7TnVtYmVyfSBtcyBNaWxsaXNlY29uZHMgdG8gd2FpdFxuICogQHJldHVybiB7UHJvbWlzZX0gUHJvbWlzZSByZXNvbHZpbmcgd2hlbiB0aGUgZGVsYXkgaGFzIGVuZGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWxheShtcykge1xuICByZXR1cm4gbmV3IFByb21pc2UocmVzID0+IHNldFRpbWVvdXQocmVzLCBtcykpO1xufVxuXG4vKipcbiAqIEFzc2VtYmxlcyBsb2c0anMgY29uZmlnIGZyb20gbG9nZ2luZyBsZXZlbCBtYXBcbiAqIEBwYXJhbSB7T2JqZWN0fSBbY29uZmlnXSBsb2c0anMgY29uZmlnXG4gKiBAcGFyYW0ge1N0cmluZ30gW2NvbmZpZy5kZWZhdWx0TGV2ZWwgPSAnSU5GTyddIERlZmF1bHQgbG9nZ2luZyBsZXZlbFxuICogQHBhcmFtIHtPYmplY3R9IFtjb25maWcubGV2ZWxzXSBMb2dnaW5nIGxldmVsc1xuICogQHJldHVybiB7T2JqZWN0fSBMb2c0anMgY29uZmlnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlbWJsZUxvZzRqc0NvbmZpZyhjb25maWc6IGFueSA9IHt9KSB7XG4gIGxldCBhcHBlbmRlcnMgPSB7Y29uc29sZToge3R5cGU6ICdjb25zb2xlJ319O1xuICBsZXQgY2F0ZWdvcmllcyA9IHtcbiAgICBkZWZhdWx0OiB7XG4gICAgICBhcHBlbmRlcnM6IE9iamVjdC5rZXlzKGFwcGVuZGVycyksXG4gICAgICBsZXZlbDogY29uZmlnLmRlZmF1bHRMZXZlbCB8fCAnSU5GTydcbiAgICB9XG4gIH07XG4gIE9iamVjdC5rZXlzKGNvbmZpZy5sZXZlbHMgfHwge30pLmZvckVhY2goKGNhdGVnb3J5KSA9PiB7XG4gICAgY2F0ZWdvcmllc1tjYXRlZ29yeV0gPSB7XG4gICAgICBhcHBlbmRlcnM6IE9iamVjdC5rZXlzKGFwcGVuZGVycyksXG4gICAgICBsZXZlbDogY29uZmlnLmxldmVsc1tjYXRlZ29yeV1cbiAgICB9O1xuICB9KTtcbiAgcmV0dXJuIHthcHBlbmRlcnMsIGNhdGVnb3JpZXN9O1xufVxuIl0sIm5hbWVzIjpbImFzc2VtYmxlTG9nNGpzQ29uZmlnIiwiY3JlYXRlSGFuZGxlUHJvbWlzZSIsImRlbGF5IiwicmVzb2x2ZSIsInJlamVjdCIsInByb21pc2UiLCJQcm9taXNlIiwicmVzIiwicmVqIiwicmVzdWx0IiwiY29tcGxldGVkIiwicmVzb2x2ZWQiLCJlcnIiLCJyZWplY3RlZCIsInRpbWVvdXQiLCJtaWxsaXNlY29uZHMiLCJlcnJvck1lc3NhZ2UiLCJzZXRUaW1lb3V0IiwiVGltZW91dEVycm9yIiwiZmluYWxseSIsImNsZWFyVGltZW91dCIsImNhdGNoIiwibXMiLCJjb25maWciLCJhcHBlbmRlcnMiLCJjb25zb2xlIiwidHlwZSIsImNhdGVnb3JpZXMiLCJkZWZhdWx0IiwiT2JqZWN0Iiwia2V5cyIsImxldmVsIiwiZGVmYXVsdExldmVsIiwibGV2ZWxzIiwiZm9yRWFjaCIsImNhdGVnb3J5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE4RGdCQSxvQkFBb0I7ZUFBcEJBOztJQWxEQUMsbUJBQW1CO2VBQW5CQTs7SUF1Q0FDLEtBQUs7ZUFBTEE7OztxRUFqRFM7Ozs7OztBQVVsQixTQUFTRDtJQUNkLElBQUlFLFNBQVNDO0lBQ2IsSUFBSUMsVUFBZSxJQUFJQyxRQUFRLENBQUNDLEtBQUtDO1FBQ25DTCxVQUFVSTtRQUNWSCxTQUFTSTtJQUNYO0lBQ0FILFFBQVFGLE9BQU8sR0FBRyxDQUFDTTtRQUNqQixJQUFJSixRQUFRSyxTQUFTLEVBQUU7WUFDckI7UUFDRjtRQUNBTCxRQUFRTSxRQUFRLEdBQUc7UUFDbkJOLFFBQVFLLFNBQVMsR0FBRztRQUNwQlAsUUFBUU07SUFDVjtJQUNBSixRQUFRRCxNQUFNLEdBQUcsQ0FBQ1E7UUFDaEIsSUFBSVAsUUFBUUssU0FBUyxFQUFFO1lBQ3JCO1FBQ0Y7UUFDQUwsUUFBUVEsUUFBUSxHQUFHO1FBQ25CUixRQUFRSyxTQUFTLEdBQUc7UUFDcEJOLE9BQU9RO0lBQ1Q7SUFDQVAsUUFBUVMsT0FBTyxHQUFHLENBQUNDLGNBQWNDO1FBQy9CLElBQUlYLFFBQVFLLFNBQVMsRUFBRTtZQUNyQjtRQUNGO1FBQ0EsSUFBSUksVUFBVUcsV0FBVyxJQUFNWixRQUFRRCxNQUFNLENBQUMsSUFBSWMscUJBQVksQ0FBQ0YsZ0JBQWdCRDtRQUMvRVYsUUFBUWMsT0FBTyxDQUFDLElBQU1DLGFBQWFOLFVBQVVPLEtBQUssQ0FBQyxLQUFPO1FBQzFELE9BQU9oQjtJQUNUO0lBQ0FBLFFBQVFnQixLQUFLLENBQUMsS0FBTztJQUNyQixPQUFPaEI7QUFDVDtBQU9PLFNBQVNILE1BQU1vQixFQUFFO0lBQ3RCLE9BQU8sSUFBSWhCLFFBQVFDLENBQUFBLE1BQU9VLFdBQVdWLEtBQUtlO0FBQzVDO0FBU08sU0FBU3RCLHFCQUFxQnVCLFNBQWMsQ0FBQyxDQUFDO0lBQ25ELElBQUlDLFlBQVk7UUFBQ0MsU0FBUztZQUFDQyxNQUFNO1FBQVM7SUFBQztJQUMzQyxJQUFJQyxhQUFhO1FBQ2ZDLFNBQVM7WUFDUEosV0FBV0ssT0FBT0MsSUFBSSxDQUFDTjtZQUN2Qk8sT0FBT1IsT0FBT1MsWUFBWSxJQUFJO1FBQ2hDO0lBQ0Y7SUFDQUgsT0FBT0MsSUFBSSxDQUFDUCxPQUFPVSxNQUFNLElBQUksQ0FBQyxHQUFHQyxPQUFPLENBQUMsQ0FBQ0M7UUFDeENSLFVBQVUsQ0FBQ1EsU0FBUyxHQUFHO1lBQ3JCWCxXQUFXSyxPQUFPQyxJQUFJLENBQUNOO1lBQ3ZCTyxPQUFPUixPQUFPVSxNQUFNLENBQUNFLFNBQVM7UUFDaEM7SUFDRjtJQUNBLE9BQU87UUFBQ1g7UUFBV0c7SUFBVTtBQUMvQiJ9