UNPKG

shrimpy-node

Version:
40 lines (37 loc) 2.03 kB
import { IDtoConverter } from "../interfaces"; import { IHistoricalCandlestickDto } from "../dtos"; import { IHistoricalCandlestick } from "../models"; import { DateDtoConverter } from "./date-dto-converter"; import { DecimalDtoConverter } from "./decimal-dto-converter"; export class HistoricalCandlestickDtoConverter implements IDtoConverter<IHistoricalCandlestickDto, IHistoricalCandlestick> { private _dateDtoConverter: DateDtoConverter = new DateDtoConverter(); private _decimalDtoConverter: DecimalDtoConverter = new DecimalDtoConverter(); public convertFromDto(dto: IHistoricalCandlestickDto): IHistoricalCandlestick { const result: IHistoricalCandlestick = { open: this._decimalDtoConverter.convertFromDto(dto.open), high: this._decimalDtoConverter.convertFromDto(dto.high), low: this._decimalDtoConverter.convertFromDto(dto.low), close: this._decimalDtoConverter.convertFromDto(dto.close), volume: this._decimalDtoConverter.convertFromDto(dto.volume), quoteVolume: dto.quoteVolume, btcVolume: dto.btcVolume, usdVolume: dto.usdVolume, time: this._dateDtoConverter.convertFromDto(dto.time), }; return result; } public convertToDto(model: IHistoricalCandlestick): IHistoricalCandlestickDto { const result: IHistoricalCandlestickDto = { open: this._decimalDtoConverter.convertToDto(model.open), high: this._decimalDtoConverter.convertToDto(model.high), low: this._decimalDtoConverter.convertToDto(model.low), close: this._decimalDtoConverter.convertToDto(model.close), volume: this._decimalDtoConverter.convertToDto(model.volume), quoteVolume: model.quoteVolume, btcVolume: model.btcVolume, usdVolume: model.usdVolume, time: this._dateDtoConverter.convertToDto(model.time), }; return result; } }