Skip to content

Commit c1d6627

Browse files
author
Karl Ranna
committed
feat(cli): sort getorders output
1 parent 8b1199f commit c1d6627

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

lib/cli/commands/getorders.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ const addSide = (orderSide: Order.AsObject[]): string[] => {
4141
export const formatOrders = (orders: GetOrdersResponse.AsObject) => {
4242
const formatedOrders: FormatedTradingPairOrders[] = [];
4343
orders.ordersMap.forEach((tradingPair) => {
44-
const buy = tradingPair[1].buyOrdersList;
45-
const sell = tradingPair[1].sellOrdersList;
44+
const buy = sortOrders(tradingPair[1].buyOrdersList, true);
45+
const sell = sortOrders(tradingPair[1].sellOrdersList, false);
4646
const totalRows = buy.length < sell.length
4747
? sell.length : buy.length;
4848
const tradingPairOrders = Array.from(Array(totalRows))
@@ -66,6 +66,17 @@ const createTable = () => {
6666
return table;
6767
};
6868

69+
const sortOrders = (orderSide: Order.AsObject[], isBuy: boolean) => {
70+
return orderSide.sort((a, b) => {
71+
if (a.price === b.price) {
72+
return a.createdAt - b.createdAt;
73+
}
74+
return isBuy
75+
? a.price - b.price
76+
: b.price - a.price;
77+
});
78+
};
79+
6980
const displayOrdersTable = (tradingPair: FormatedTradingPairOrders) => {
7081
const table = createTable();
7182
tradingPair.orders.forEach(order => table.push(order));

0 commit comments

Comments
 (0)