cobinhood-rx
Version:
CobinhoodRx is a rxjs node wrapper for the CobinhoodRx Api.
39 lines (31 loc) • 976 B
text/typescript
import {JsonConverter, JsonCustomConvert, JsonConvert} from 'json2typescript';
import { OrderOffer } from '../Model/Rest/Market/OrderOffer';
export class OrderOfferConverter implements JsonCustomConvert<OrderOffer[]> {
public serialize(arr: OrderOffer[]): any {
return serializeTransform(arr);
}
public deserialize(arr: string[][]): any {
return deserializeTransform(arr);
}
}
function deserializeTransform(arr: string[][]) {
const jsc: JsonConvert = new JsonConvert();
return arr.map(offer => {
const data: any = {
Price: Number(offer[0]),
Count: Number(offer[1]),
Size: Number(offer[2])
};
return jsc.deserialize(data, OrderOffer);
});
}
function serializeTransform(arr: OrderOffer[]) {
return arr.map(offer => {
const builder: any[] = [];
builder.push(offer.Price.toString());
builder.push(offer.Count.toString());
builder.push(offer.Price.toString());
return builder;
});
}