UNPKG

@dydxprotocol/exchange-wrappers

Version:

Collection of exchange wrapper contracts used by the dYdX Protocol

121 lines 7.05 kB
"use strict"; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.OrderMapper = void 0; var ZeroExV2ExchangeWrapper_1 = require("./exchange_wrappers/ZeroExV2ExchangeWrapper"); var ZeroExV2MultiOrderExchangeWrapper_1 = require("./exchange_wrappers/ZeroExV2MultiOrderExchangeWrapper"); var OasisV1SimpleExchangeWrapper_1 = require("./exchange_wrappers/OasisV1SimpleExchangeWrapper"); var OasisV2SimpleExchangeWrapper_1 = require("./exchange_wrappers/OasisV2SimpleExchangeWrapper"); var OasisV3SimpleExchangeWrapper_1 = require("./exchange_wrappers/OasisV3SimpleExchangeWrapper"); var OasisV3MatchingExchangeWrapper_1 = require("./exchange_wrappers/OasisV3MatchingExchangeWrapper"); var TestExchangeWrapper_1 = require("./exchange_wrappers/TestExchangeWrapper"); var OpenDirectlyExchangeWrapper_1 = require("./exchange_wrappers/OpenDirectlyExchangeWrapper"); var SaiDaiExchangeWrapper_1 = require("./exchange_wrappers/SaiDaiExchangeWrapper"); var CurveExchangeWrapper_1 = require("./exchange_wrappers/CurveExchangeWrapper"); var types_1 = require("./types"); var OrderMapper = /** @class */ (function () { function OrderMapper(networkId) { this.testExchangeWrapper = new TestExchangeWrapper_1.TestExchangeWrapper(networkId); this.zeroExV2ExchangeWrapper = new ZeroExV2ExchangeWrapper_1.ZeroExV2ExchangeWrapper(networkId); this.zeroExV2MultiOrderExchangeWrapper = new ZeroExV2MultiOrderExchangeWrapper_1.ZeroExV2MultiOrderExchangeWrapper(networkId); this.oasisV1SimpleExchangeWrapper = new OasisV1SimpleExchangeWrapper_1.OasisV1SimpleExchangeWrapper(networkId); this.oasisV2SimpleExchangeWrapper = new OasisV2SimpleExchangeWrapper_1.OasisV2SimpleExchangeWrapper(networkId); this.oasisV3SimpleExchangeWrapper = new OasisV3SimpleExchangeWrapper_1.OasisV3SimpleExchangeWrapper(networkId); this.oasisV3MatchingExchangeWrapper = new OasisV3MatchingExchangeWrapper_1.OasisV3MatchingExchangeWrapper(networkId); this.openDirectlyExchangeWrapper = new OpenDirectlyExchangeWrapper_1.OpenDirectlyExchangeWrapper(networkId); this.saiDaiExchangeWrapper = new SaiDaiExchangeWrapper_1.SaiDaiExchangeWrapper(networkId); this.curveExchangeWrapper = new CurveExchangeWrapper_1.CurveExchangeWrapper(networkId); } OrderMapper.prototype.setNetworkId = function (networkId) { this.testExchangeWrapper.setNetworkId(networkId); this.zeroExV2ExchangeWrapper.setNetworkId(networkId); this.zeroExV2MultiOrderExchangeWrapper.setNetworkId(networkId); this.oasisV1SimpleExchangeWrapper.setNetworkId(networkId); this.oasisV2SimpleExchangeWrapper.setNetworkId(networkId); this.oasisV3SimpleExchangeWrapper.setNetworkId(networkId); this.oasisV3MatchingExchangeWrapper.setNetworkId(networkId); this.openDirectlyExchangeWrapper.setNetworkId(networkId); this.saiDaiExchangeWrapper.setNetworkId(networkId); this.curveExchangeWrapper.setNetworkId(networkId); }; OrderMapper.prototype.mapOrder = function (order) { var type = order.type, orderData = __rest(order, ["type"]); switch (type) { case types_1.OrderType.Test: return { bytes: this.testExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.testExchangeWrapper.getAddress(), }; case types_1.OrderType.ZeroExV2: return { bytes: this.zeroExV2ExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.zeroExV2ExchangeWrapper.getAddress(), }; case types_1.OrderType.ZeroExV2MultiOrder: return { bytes: this.zeroExV2MultiOrderExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.zeroExV2MultiOrderExchangeWrapper.getAddress(), }; case types_1.OrderType.OasisV1: return { bytes: this.oasisV1SimpleExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.oasisV1SimpleExchangeWrapper.getAddress(), }; case types_1.OrderType.OasisV2: return { bytes: this.oasisV2SimpleExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.oasisV2SimpleExchangeWrapper.getAddress(), }; case types_1.OrderType.OasisV3: return { bytes: this.oasisV3SimpleExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.oasisV3SimpleExchangeWrapper.getAddress(), }; case types_1.OrderType.OasisV3Market: return { bytes: this.oasisV3MatchingExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.oasisV3MatchingExchangeWrapper.getAddress(), }; case types_1.OrderType.OpenDirectly: return { bytes: this.openDirectlyExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.openDirectlyExchangeWrapper.getAddress(), }; case types_1.OrderType.SaiDai: return { bytes: this.saiDaiExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.saiDaiExchangeWrapper.getAddress(), }; case types_1.OrderType.Curve: return { bytes: this.curveExchangeWrapper.orderToBytes(orderData), exchangeWrapperAddress: order.exchangeWrapperAddress || this.curveExchangeWrapper.getAddress(), }; default: throw new Error("Invalid order type " + type); } }; return OrderMapper; }()); exports.OrderMapper = OrderMapper; //# sourceMappingURL=OrderMapper.js.map