Skip to content

Commit

Permalink
feat(cli): sort getorders output
Browse files Browse the repository at this point in the history
  • Loading branch information
Karl Ranna committed Nov 13, 2018
1 parent 8b1199f commit c1d6627
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions lib/cli/commands/getorders.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ const addSide = (orderSide: Order.AsObject[]): string[] => {
export const formatOrders = (orders: GetOrdersResponse.AsObject) => {
const formatedOrders: FormatedTradingPairOrders[] = [];
orders.ordersMap.forEach((tradingPair) => {
const buy = tradingPair[1].buyOrdersList;
const sell = tradingPair[1].sellOrdersList;
const buy = sortOrders(tradingPair[1].buyOrdersList, true);
const sell = sortOrders(tradingPair[1].sellOrdersList, false);
const totalRows = buy.length < sell.length
? sell.length : buy.length;
const tradingPairOrders = Array.from(Array(totalRows))
Expand All @@ -66,6 +66,17 @@ const createTable = () => {
return table;
};

const sortOrders = (orderSide: Order.AsObject[], isBuy: boolean) => {
return orderSide.sort((a, b) => {
if (a.price === b.price) {
return a.createdAt - b.createdAt;
}
return isBuy
? a.price - b.price
: b.price - a.price;
});
};

const displayOrdersTable = (tradingPair: FormatedTradingPairOrders) => {
const table = createTable();
tradingPair.orders.forEach(order => table.push(order));
Expand Down

0 comments on commit c1d6627

Please sign in to comment.