UNPKG

@machinemode/cryptopia

Version:

Node wrapper for Cryptopia's CLient API

209 lines 7.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var Balance_1 = require("./Balance"); var DepositAddress_1 = require("./DepositAddress"); var OpenOrder_1 = require("./OpenOrder"); var TradeHistory_1 = require("./TradeHistory"); var Transaction_1 = require("./Transaction"); var TradeOrder_1 = require("./TradeOrder"); var AccountService = (function () { function AccountService(httpsClient) { this.httpsClient = httpsClient; var baseUri = "https://" + this.httpsClient.host; } AccountService.prototype.getBalance = function (currency) { var path = "/api/GetBalance"; var params = {}; if (currency) { params['CurrencyId'] = currency.id; } return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { var balances_1 = []; response.data.forEach(function (balance) { balances_1.push(new Balance_1.default(balance)); }); return balances_1; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.getDepositAddress = function (currency) { var path = "/api/GetDepositAddress"; var params = { CurrencyId: currency.id }; return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return new DepositAddress_1.default(response.data); } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.getOpenOrders = function (market, count) { var path = "/api/GetOpenOrders"; var params = { Market: market.tradePairId }; if (count) { params['Count'] = count; } return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { var openOrders_1 = []; response.data.forEach(function (openOrder) { openOrders_1.push(new OpenOrder_1.default(openOrder)); }); return openOrders_1; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.getTradeHistory = function (market, count) { var path = "/api/GetTradeHistory"; var params = { Market: market.tradePairId }; if (count) { params['Count'] = count; } return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { var tradeHistories_1 = []; response.data.forEach(function (tradeHistory) { tradeHistories_1.push(new TradeHistory_1.default(tradeHistory)); }); return tradeHistories_1; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.getTransactions = function (type, count) { var path = "/api/GetTransactions"; var params = { Type: type }; if (count) { params['Count'] = count; } return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { var transactions_1 = []; response.data.forEach(function (transaction) { transactions_1.push(new Transaction_1.default(transaction)); }); return transactions_1; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.submitTrade = function (market, type, rate, amount) { var path = "/api/SubmitTrade"; var params = { Market: market.tradePairId, Type: type, Rate: rate, Amount: amount }; return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return new TradeOrder_1.default(response.data); } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.cancelTrade = function (type, id) { var path = "/api/CancelTrade"; var params = { Type: type }; if (type === 'Trade') { params['OrderId'] = id; } else if (type === 'TradePair') { params['TradePairId'] = id; } return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return response.data; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.submitTip = function (currency, activeUsers, amount) { var path = "/api/SubmitTip"; var params = { CurrencyId: currency.id, ActiveUsers: activeUsers, Amount: amount }; return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return response.data; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.submitWithdraw = function (currency, address, paymentId, amount) { var path = "/api/SubmitWithdraw"; var params = { CurrencyId: currency.id, Address: address, PaymentId: paymentId, Amount: amount }; return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return response.data; } else { throw new Error(response.error + " " + response.message); } }); }; AccountService.prototype.submitTransfer = function (currency, username, amount) { var path = "/api/SubmitTransfer"; var params = { CurrencyId: currency.id, Username: username, Amount: amount }; return this.httpsClient.post(path, params) .then(function (response) { if (response.success) { return response.data; } else { throw new Error(response.error + " " + response.message); } }); }; return AccountService; }()); exports.default = AccountService; //# sourceMappingURL=AccountService.js.map