mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-05 21:35:49 +00:00
39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
'use strict';
|
|
const RippleAPI = require('../../dist/npm').RippleAPI; // require('ripple-lib')
|
|
|
|
const address = 'rLDYrujdKUfVx28T9vRDAbyJ7G2WVXKo4K';
|
|
const secret = '';
|
|
|
|
const api = new RippleAPI({server: 'wss://s1.ripple.com:443'});
|
|
const instructions = {maxLedgerVersionOffset: 5};
|
|
|
|
function fail(message) {
|
|
console.error(message);
|
|
process.exit(1);
|
|
}
|
|
|
|
function cancelOrder(orderSequence) {
|
|
console.log('Cancelling order: ' + orderSequence.toString());
|
|
return api.prepareOrderCancellation(address, {orderSequence}, instructions)
|
|
.then(prepared => {
|
|
const signing = api.sign(prepared.txJSON, secret);
|
|
return api.submit(signing.signedTransaction);
|
|
});
|
|
}
|
|
|
|
function cancelAllOrders(orderSequences) {
|
|
if (orderSequences.length === 0) {
|
|
return Promise.resolve();
|
|
}
|
|
const orderSequence = orderSequences.pop();
|
|
return cancelOrder(orderSequence).then(() => cancelAllOrders(orderSequences));
|
|
}
|
|
|
|
api.connect().then(() => {
|
|
console.log('Connected...');
|
|
return api.getOrders(address).then(orders => {
|
|
const orderSequences = orders.map(order => order.properties.sequence);
|
|
return cancelAllOrders(orderSequences);
|
|
}).then(() => process.exit(0));
|
|
}).catch(fail);
|