@openocean.finance/openocean-sdk 0.1.72 → 0.1.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/lib/api/index.js +136 -0
  2. package/lib/api/vo/RequestVo.js +401 -0
  3. package/lib/asset/abi/ERC20_abi.js +119 -0
  4. package/lib/asset/abi/aggregator.js +391 -0
  5. package/lib/config/Chains.js +508 -0
  6. package/lib/config/Wallets.js +81 -0
  7. package/lib/config/index.js +11 -0
  8. package/lib/index.js +20 -2
  9. package/lib/swapSdk/Approve.js +227 -0
  10. package/lib/swapSdk/ConnectWallet.js +311 -0
  11. package/lib/swapSdk/NotoMobile.js +141 -0
  12. package/lib/swapSdk/RequestVo.js +94 -0
  13. package/lib/swapSdk/Swap.js +739 -0
  14. package/lib/swapSdk/getAllowance.js +97 -0
  15. package/lib/swapSdk/getBalance.js +220 -0
  16. package/lib/swapSdk/index.js +277 -0
  17. package/lib/swapSdk/limitOrder.js +234 -0
  18. package/lib/swapSdk/qrcode.d.ts +6 -0
  19. package/lib/swapSdk/qrcode.js +969 -0
  20. package/lib/utils/ajx.js +150 -0
  21. package/lib/utils/index.js +91 -0
  22. package/lib/utils/limit-order-sdk/connector/private-key-provider.connector.d.ts +10 -0
  23. package/lib/utils/limit-order-sdk/connector/private-key-provider.connector.js +36 -0
  24. package/lib/utils/limit-order-sdk/connector/provider.connector.d.ts +1 -0
  25. package/lib/utils/limit-order-sdk/connector/provider.connector.js +2 -0
  26. package/lib/utils/limit-order-sdk/connector/web3-provider.connector.d.ts +9 -0
  27. package/lib/utils/limit-order-sdk/connector/web3-provider.connector.js +38 -0
  28. package/lib/utils/limit-order-sdk/erc20.facade.d.ts +7 -0
  29. package/lib/utils/limit-order-sdk/erc20.facade.js +19 -0
  30. package/lib/utils/limit-order-sdk/index.d.ts +1 -0
  31. package/lib/utils/limit-order-sdk/index.js +14 -0
  32. package/lib/utils/limit-order-sdk/limit-order-predicate.builder.d.ts +12 -0
  33. package/lib/utils/limit-order-sdk/limit-order-predicate.builder.js +60 -0
  34. package/lib/utils/limit-order-sdk/limit-order-protocol.const.d.ts +18 -0
  35. package/lib/utils/limit-order-sdk/limit-order-protocol.const.js +45 -0
  36. package/lib/utils/limit-order-sdk/limit-order-protocol.facade.d.ts +26 -0
  37. package/lib/utils/limit-order-sdk/limit-order-protocol.facade.js +180 -0
  38. package/lib/utils/limit-order-sdk/limit-order.builder.d.ts +101 -0
  39. package/lib/utils/limit-order-sdk/limit-order.builder.js +120 -0
  40. package/lib/utils/limit-order-sdk/model/abi.model.d.ts +1 -0
  41. package/lib/utils/limit-order-sdk/model/abi.model.js +2 -0
  42. package/lib/utils/limit-order-sdk/model/eip712.model.d.ts +1 -0
  43. package/lib/utils/limit-order-sdk/model/eip712.model.js +2 -0
  44. package/lib/utils/limit-order-sdk/model/limit-order-protocol.model.d.ts +3 -0
  45. package/lib/utils/limit-order-sdk/model/limit-order-protocol.model.js +38 -0
  46. package/lib/utils/limit-order-sdk/utils/get-rpc-code.d.ts +2 -0
  47. package/lib/utils/limit-order-sdk/utils/get-rpc-code.js +28 -0
  48. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.const.d.ts +89 -0
  49. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.const.js +140 -0
  50. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.helpers.d.ts +10 -0
  51. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.helpers.js +254 -0
  52. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.model.d.ts +1 -0
  53. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.model.js +2 -0
  54. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.utils.d.ts +2 -0
  55. package/lib/utils/limit-order-sdk/utils/limit-order-rfq.utils.js +82 -0
  56. package/lib/utils/web3.js +9 -0
  57. package/package.json +2 -2
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LimitOrderProtocolFacade = void 0;
4
+ var limit_order_protocol_const_1 = require("./limit-order-protocol.const");
5
+ var limit_order_protocol_model_1 = require("./model/limit-order-protocol.model");
6
+ var bignumber_1 = require("@ethersproject/bignumber");
7
+ var get_rpc_code_1 = require("./utils/get-rpc-code");
8
+ var LimitOrderProtocolFacade = /** @class */ (function () {
9
+ function LimitOrderProtocolFacade(contractAddress, providerConnector) {
10
+ this.contractAddress = contractAddress;
11
+ this.providerConnector = providerConnector;
12
+ }
13
+ LimitOrderProtocolFacade.prototype.fillLimitOrder = function (order, signature, makerAmount, takerAmount, thresholdAmount) {
14
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.fillOrder, [
15
+ order,
16
+ signature,
17
+ makerAmount,
18
+ takerAmount,
19
+ thresholdAmount,
20
+ ]);
21
+ };
22
+ LimitOrderProtocolFacade.prototype.fillOrderToWithPermit = function (params) {
23
+ var order = params.order, signature = params.signature, makerAmount = params.makerAmount, takerAmount = params.takerAmount, thresholdAmount = params.thresholdAmount, targetAddress = params.targetAddress, permit = params.permit;
24
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.fillOrderToWithPermit, [
25
+ order,
26
+ signature,
27
+ makerAmount,
28
+ takerAmount,
29
+ thresholdAmount,
30
+ targetAddress,
31
+ permit,
32
+ ]);
33
+ };
34
+ LimitOrderProtocolFacade.prototype.fillRFQOrder = function (order, signature, makerAmount, takerAmount) {
35
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.fillOrderRFQ, [order, signature, makerAmount, takerAmount]);
36
+ };
37
+ LimitOrderProtocolFacade.prototype.cancelLimitOrder = function (order) {
38
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.cancelOrder, [
39
+ order,
40
+ ]);
41
+ };
42
+ LimitOrderProtocolFacade.prototype.cancelRFQOrder = function (orderInfo) {
43
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.cancelOrderRFQ, [orderInfo]);
44
+ };
45
+ LimitOrderProtocolFacade.prototype.nonce = function (makerAddress) {
46
+ var callData = this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.nonce, [makerAddress]);
47
+ return this.providerConnector
48
+ .ethCall(this.contractAddress, callData)
49
+ .then(function (nonce) { return bignumber_1.BigNumber.from(nonce).toNumber(); });
50
+ };
51
+ LimitOrderProtocolFacade.prototype.advanceNonce = function (count) {
52
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.advanceNonce, [count]);
53
+ };
54
+ LimitOrderProtocolFacade.prototype.increaseNonce = function () {
55
+ return this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.increaseNonce);
56
+ };
57
+ LimitOrderProtocolFacade.prototype.checkPredicate = function (order) {
58
+ var callData = this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.checkPredicate, [order]);
59
+ return this.providerConnector
60
+ .ethCall(this.contractAddress, callData)
61
+ .catch(function (error) {
62
+ console.error(error);
63
+ return false;
64
+ })
65
+ .then(function (result) {
66
+ try {
67
+ return bignumber_1.BigNumber.from(result).toNumber() === 1;
68
+ }
69
+ catch (e) {
70
+ console.error(e);
71
+ return false;
72
+ }
73
+ });
74
+ };
75
+ LimitOrderProtocolFacade.prototype.remaining = function (orderHash) {
76
+ var _this = this;
77
+ var callData = this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.remaining, [orderHash]);
78
+ return this.providerConnector
79
+ .ethCall(this.contractAddress, callData)
80
+ .then(function (result) {
81
+ var response = _this.parseRemainingResponse(result);
82
+ if (response !== null) {
83
+ return response;
84
+ }
85
+ // Parse error
86
+ var parsed = _this.parseContractResponse(result);
87
+ return Promise.reject(parsed);
88
+ });
89
+ };
90
+ LimitOrderProtocolFacade.prototype.simulateCalls = function (tokens, data) {
91
+ var _this = this;
92
+ var callData = this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.simulateCalls, [tokens, data]);
93
+ return this.providerConnector
94
+ .ethCall(this.contractAddress, callData)
95
+ .then(function (result) {
96
+ var parsed = _this.parseSimulateTransferResponse(result);
97
+ if (parsed !== null)
98
+ return parsed;
99
+ return Promise.reject(result);
100
+ })
101
+ .catch(function (error) {
102
+ var parsed = _this.parseSimulateTransferError(error);
103
+ if (parsed !== null)
104
+ return parsed;
105
+ return Promise.reject(error);
106
+ });
107
+ };
108
+ LimitOrderProtocolFacade.prototype.domainSeparator = function () {
109
+ var callData = this.getContractCallData(limit_order_protocol_model_1.LimitOrderProtocolMethods.DOMAIN_SEPARATOR);
110
+ return this.providerConnector.ethCall(this.contractAddress, callData);
111
+ };
112
+ LimitOrderProtocolFacade.prototype.getContractCallData = function (methodName, methodParams) {
113
+ if (methodParams === void 0) { methodParams = []; }
114
+ return this.providerConnector.contractEncodeABI(limit_order_protocol_const_1.LIMIT_ORDER_PROTOCOL_ABI, this.contractAddress, methodName, methodParams);
115
+ };
116
+ LimitOrderProtocolFacade.prototype.parseRemainingResponse = function (response) {
117
+ if (response.length === 66) {
118
+ return bignumber_1.BigNumber.from(response);
119
+ }
120
+ return null;
121
+ };
122
+ LimitOrderProtocolFacade.prototype.parseSimulateTransferResponse = function (response) {
123
+ var parsed = this.parseContractResponse(response);
124
+ if (parsed.startsWith(limit_order_protocol_const_1.CALL_RESULTS_PREFIX)) {
125
+ var data = parsed.replace(limit_order_protocol_const_1.CALL_RESULTS_PREFIX, '');
126
+ return !data.includes('0');
127
+ }
128
+ return null;
129
+ };
130
+ LimitOrderProtocolFacade.prototype.parseSimulateTransferError = function (error) {
131
+ var message = this.stringifyError(error);
132
+ var isCorrectCode = this.isMsgContainsCorrectCode(message);
133
+ if (isCorrectCode !== null) {
134
+ return isCorrectCode;
135
+ }
136
+ try {
137
+ var code = get_rpc_code_1.getRPCCode(message);
138
+ return code ? this.isMsgContainsCorrectCode(code) : null;
139
+ }
140
+ catch (e) {
141
+ return null;
142
+ }
143
+ };
144
+ LimitOrderProtocolFacade.prototype.parseContractResponse = function (response) {
145
+ // Aurora network wraps revert message into Revert()
146
+ var matched = response.match(/Revert\(([^)]+)\)/);
147
+ var message = matched && matched[1] ? matched[1] : response;
148
+ return this.providerConnector.decodeABIParameter('string', limit_order_protocol_const_1.ZX + message.slice(10));
149
+ };
150
+ LimitOrderProtocolFacade.prototype.isMsgContainsCorrectCode = function (message) {
151
+ var regex = new RegExp('(' + limit_order_protocol_const_1.CALL_RESULTS_PREFIX + '\\d+)');
152
+ var matched = message.match(regex);
153
+ if (matched) {
154
+ return !matched[0].includes('0');
155
+ }
156
+ else {
157
+ try {
158
+ var matchParsed = this.parseContractResponse(message).match(regex);
159
+ if (matchParsed) {
160
+ return !matchParsed[0].includes('0');
161
+ }
162
+ }
163
+ catch (e) {
164
+ console.error(e);
165
+ }
166
+ }
167
+ return null;
168
+ };
169
+ LimitOrderProtocolFacade.prototype.stringifyError = function (error) {
170
+ if (typeof error === 'string') {
171
+ return error;
172
+ }
173
+ if (error instanceof Error) {
174
+ return error.toString();
175
+ }
176
+ return JSON.stringify(error);
177
+ };
178
+ return LimitOrderProtocolFacade;
179
+ }());
180
+ exports.LimitOrderProtocolFacade = LimitOrderProtocolFacade;
@@ -0,0 +1,101 @@
1
+ export var __esModule: boolean;
2
+ export function generateOrderSalt(): string;
3
+ export function generateRFQOrderInfo(id: any, expiresInTimestamp: any, wrapEth: any): string;
4
+ export class LimitOrderBuilder {
5
+ constructor(contractAddress: any, chainId: any, providerConnector: any, generateSalt?: typeof generateOrderSalt);
6
+ contractAddress: any;
7
+ chainId: any;
8
+ providerConnector: any;
9
+ generateSalt: typeof generateOrderSalt;
10
+ buildOrderSignature(walletAddress: any, typedData: any): any;
11
+ buildLimitOrderHash(orderTypedData: any): string;
12
+ buildLimitOrderTypedData(order: any, domainName?: string): {
13
+ primaryType: string;
14
+ types: {
15
+ EIP712Domain: {
16
+ name: string;
17
+ type: string;
18
+ }[];
19
+ Order: {
20
+ name: string;
21
+ type: string;
22
+ }[];
23
+ };
24
+ domain: {
25
+ name: string;
26
+ version: string;
27
+ chainId: any;
28
+ verifyingContract: any;
29
+ };
30
+ message: any;
31
+ };
32
+ buildRFQOrderTypedData(order: any, domainName?: string): {
33
+ primaryType: string;
34
+ types: {
35
+ EIP712Domain: {
36
+ name: string;
37
+ type: string;
38
+ }[];
39
+ OrderRFQ: {
40
+ name: string;
41
+ type: string;
42
+ }[];
43
+ };
44
+ domain: {
45
+ name: string;
46
+ version: string;
47
+ chainId: any;
48
+ verifyingContract: any;
49
+ };
50
+ message: any;
51
+ };
52
+ buildRFQOrder({ id, wrapEth, expiresInTimestamp, makerAssetAddress, takerAssetAddress, makerAddress, takerAddress, makerAmount, takerAmount, }: {
53
+ id: any;
54
+ wrapEth?: boolean | undefined;
55
+ expiresInTimestamp: any;
56
+ makerAssetAddress: any;
57
+ takerAssetAddress: any;
58
+ makerAddress: any;
59
+ takerAddress?: string | undefined;
60
+ makerAmount: any;
61
+ takerAmount: any;
62
+ }): {
63
+ info: string;
64
+ makerAsset: any;
65
+ takerAsset: any;
66
+ maker: any;
67
+ allowedSender: string;
68
+ makingAmount: any;
69
+ takingAmount: any;
70
+ };
71
+ buildLimitOrder({ makerAssetAddress, takerAssetAddress, makerAddress, receiver, takerAddress, makerAmount, takerAmount, predicate, permit, interaction, }: {
72
+ makerAssetAddress: any;
73
+ takerAssetAddress: any;
74
+ makerAddress: any;
75
+ receiver?: string | undefined;
76
+ takerAddress?: string | undefined;
77
+ makerAmount: any;
78
+ takerAmount: any;
79
+ predicate?: string | undefined;
80
+ permit?: string | undefined;
81
+ interaction?: string | undefined;
82
+ }): {
83
+ salt: string;
84
+ makerAsset: any;
85
+ takerAsset: any;
86
+ maker: any;
87
+ receiver: string;
88
+ allowedSender: string;
89
+ makingAmount: any;
90
+ takingAmount: any;
91
+ makerAssetData: string;
92
+ takerAssetData: string;
93
+ getMakerAmount: any;
94
+ getTakerAmount: any;
95
+ predicate: string;
96
+ permit: string;
97
+ interaction: string;
98
+ };
99
+ getContractCallData(methodName: any, methodParams?: any[]): any;
100
+ getAmountData(methodName: any, makerAmount: any, takerAmount: any, swapTakerAmount?: string): any;
101
+ }
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LimitOrderBuilder = exports.generateRFQOrderInfo = exports.generateOrderSalt = void 0;
4
+ var limit_order_protocol_const_1 = require("./limit-order-protocol.const");
5
+ var limit_order_protocol_model_1 = require("./model/limit-order-protocol.model");
6
+ var eth_sig_util_1 = require("eth-sig-util");
7
+ function generateOrderSalt() {
8
+ return Math.round(Math.random() * Date.now()) + '';
9
+ }
10
+ exports.generateOrderSalt = generateOrderSalt;
11
+ function generateRFQOrderInfo(id, expiresInTimestamp, wrapEth) {
12
+ var info = (BigInt(expiresInTimestamp) << BigInt(64)) | BigInt(id);
13
+ if (wrapEth) {
14
+ return (info | (BigInt(1) << BigInt(255))).toString(10);
15
+ }
16
+ return info.toString(10);
17
+ }
18
+ exports.generateRFQOrderInfo = generateRFQOrderInfo;
19
+ var LimitOrderBuilder = /** @class */ (function () {
20
+ function LimitOrderBuilder(contractAddress, chainId, providerConnector, generateSalt) {
21
+ if (generateSalt === void 0) { generateSalt = generateOrderSalt; }
22
+ this.contractAddress = contractAddress;
23
+ this.chainId = chainId;
24
+ this.providerConnector = providerConnector;
25
+ this.generateSalt = generateSalt;
26
+ }
27
+ LimitOrderBuilder.prototype.buildOrderSignature = function (walletAddress, typedData) {
28
+ var dataHash = eth_sig_util_1.TypedDataUtils.hashStruct(typedData.primaryType, typedData.message, typedData.types, true).toString('hex');
29
+ return this.providerConnector.signTypedData(walletAddress, typedData, dataHash);
30
+ };
31
+ LimitOrderBuilder.prototype.buildLimitOrderHash = function (orderTypedData) {
32
+ var message = orderTypedData;
33
+ return limit_order_protocol_const_1.ZX + eth_sig_util_1.TypedDataUtils.sign(message).toString('hex');
34
+ };
35
+ LimitOrderBuilder.prototype.buildLimitOrderTypedData = function (order, domainName) {
36
+ if (domainName === void 0) { domainName = limit_order_protocol_const_1.PROTOCOL_NAME; }
37
+ return {
38
+ primaryType: 'Order',
39
+ types: {
40
+ EIP712Domain: limit_order_protocol_const_1.EIP712_DOMAIN,
41
+ Order: limit_order_protocol_const_1.ORDER_STRUCTURE,
42
+ },
43
+ domain: {
44
+ name: domainName,
45
+ version: limit_order_protocol_const_1.PROTOCOL_VERSION,
46
+ chainId: this.chainId,
47
+ verifyingContract: this.contractAddress,
48
+ },
49
+ message: order,
50
+ };
51
+ };
52
+ LimitOrderBuilder.prototype.buildRFQOrderTypedData = function (order, domainName) {
53
+ if (domainName === void 0) { domainName = limit_order_protocol_const_1.PROTOCOL_NAME; }
54
+ return {
55
+ primaryType: 'OrderRFQ',
56
+ types: {
57
+ EIP712Domain: limit_order_protocol_const_1.EIP712_DOMAIN,
58
+ OrderRFQ: limit_order_protocol_const_1.RFQ_ORDER_STRUCTURE,
59
+ },
60
+ domain: {
61
+ name: domainName,
62
+ version: limit_order_protocol_const_1.PROTOCOL_VERSION,
63
+ chainId: this.chainId,
64
+ verifyingContract: this.contractAddress,
65
+ },
66
+ message: order,
67
+ };
68
+ };
69
+ /* eslint-disable max-lines-per-function */
70
+ LimitOrderBuilder.prototype.buildRFQOrder = function (_a) {
71
+ var id = _a.id, _b = _a.wrapEth, wrapEth = _b === void 0 ? false : _b, expiresInTimestamp = _a.expiresInTimestamp, makerAssetAddress = _a.makerAssetAddress, takerAssetAddress = _a.takerAssetAddress, makerAddress = _a.makerAddress, _c = _a.takerAddress, takerAddress = _c === void 0 ? limit_order_protocol_const_1.ZERO_ADDRESS : _c, makerAmount = _a.makerAmount, takerAmount = _a.takerAmount;
72
+ return {
73
+ info: generateRFQOrderInfo(id, expiresInTimestamp, wrapEth),
74
+ makerAsset: makerAssetAddress,
75
+ takerAsset: takerAssetAddress,
76
+ maker: makerAddress,
77
+ allowedSender: takerAddress,
78
+ makingAmount: makerAmount,
79
+ takingAmount: takerAmount,
80
+ };
81
+ };
82
+ /* eslint-enable max-lines-per-function */
83
+ /* eslint-disable max-lines-per-function */
84
+ LimitOrderBuilder.prototype.buildLimitOrder = function (_a) {
85
+ var makerAssetAddress = _a.makerAssetAddress, takerAssetAddress = _a.takerAssetAddress, makerAddress = _a.makerAddress, _b = _a.receiver, receiver = _b === void 0 ? limit_order_protocol_const_1.ZERO_ADDRESS : _b, _c = _a.takerAddress, takerAddress = _c === void 0 ? limit_order_protocol_const_1.ZERO_ADDRESS : _c, makerAmount = _a.makerAmount, takerAmount = _a.takerAmount, _d = _a.predicate, predicate = _d === void 0 ? limit_order_protocol_const_1.ZX : _d, _e = _a.permit, permit = _e === void 0 ? limit_order_protocol_const_1.ZX : _e, _f = _a.interaction, interaction = _f === void 0 ? limit_order_protocol_const_1.ZX : _f;
86
+ return {
87
+ salt: this.generateSalt(),
88
+ makerAsset: makerAssetAddress,
89
+ takerAsset: takerAssetAddress,
90
+ maker: makerAddress,
91
+ receiver: receiver,
92
+ allowedSender: takerAddress,
93
+ makingAmount: makerAmount,
94
+ takingAmount: takerAmount,
95
+ makerAssetData: limit_order_protocol_const_1.ZX,
96
+ takerAssetData: limit_order_protocol_const_1.ZX,
97
+ getMakerAmount: this.getAmountData(limit_order_protocol_model_1.LimitOrderProtocolMethods.getMakerAmount, makerAmount, takerAmount),
98
+ getTakerAmount: this.getAmountData(limit_order_protocol_model_1.LimitOrderProtocolMethods.getTakerAmount, makerAmount, takerAmount),
99
+ predicate: predicate,
100
+ permit: permit,
101
+ interaction: interaction,
102
+ };
103
+ };
104
+ /* eslint-enable max-lines-per-function */
105
+ LimitOrderBuilder.prototype.getContractCallData = function (methodName, methodParams) {
106
+ if (methodParams === void 0) { methodParams = []; }
107
+ return this.providerConnector.contractEncodeABI(limit_order_protocol_const_1.LIMIT_ORDER_PROTOCOL_ABI, this.contractAddress, methodName, methodParams);
108
+ };
109
+ // Get nonce from contract (nonce method) and put it to predicate on order creating
110
+ LimitOrderBuilder.prototype.getAmountData = function (methodName, makerAmount, takerAmount, swapTakerAmount) {
111
+ if (swapTakerAmount === void 0) { swapTakerAmount = '0'; }
112
+ return this.getContractCallData(methodName, [
113
+ makerAmount,
114
+ takerAmount,
115
+ swapTakerAmount,
116
+ ]).substr(0, 2 + 68 * 2);
117
+ };
118
+ return LimitOrderBuilder;
119
+ }());
120
+ exports.LimitOrderBuilder = LimitOrderBuilder;
@@ -0,0 +1 @@
1
+ export var __esModule: boolean;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export var __esModule: boolean;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ export var __esModule: boolean;
2
+ export var ChainId: {};
3
+ export var LimitOrderProtocolMethods: {};
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LimitOrderProtocolMethods = exports.ChainId = void 0;
4
+ var ChainId;
5
+ (function (ChainId) {
6
+ ChainId[ChainId["etherumMainnet"] = 1] = "etherumMainnet";
7
+ ChainId[ChainId["binanceMainnet"] = 56] = "binanceMainnet";
8
+ ChainId[ChainId["polygonMainnet"] = 137] = "polygonMainnet";
9
+ ChainId[ChainId["optimismMainnet"] = 10] = "optimismMainnet";
10
+ ChainId[ChainId["arbitrumMainnet"] = 42161] = "arbitrumMainnet";
11
+ })(ChainId = exports.ChainId || (exports.ChainId = {}));
12
+ var LimitOrderProtocolMethods;
13
+ (function (LimitOrderProtocolMethods) {
14
+ LimitOrderProtocolMethods["getMakerAmount"] = "getMakerAmount";
15
+ LimitOrderProtocolMethods["getTakerAmount"] = "getTakerAmount";
16
+ LimitOrderProtocolMethods["arbitraryStaticCall"] = "arbitraryStaticCall";
17
+ LimitOrderProtocolMethods["fillOrder"] = "fillOrder";
18
+ LimitOrderProtocolMethods["fillOrderToWithPermit"] = "fillOrderToWithPermit";
19
+ LimitOrderProtocolMethods["fillOrderRFQ"] = "fillOrderRFQ";
20
+ LimitOrderProtocolMethods["cancelOrder"] = "cancelOrder";
21
+ LimitOrderProtocolMethods["cancelOrderRFQ"] = "cancelOrderRFQ";
22
+ LimitOrderProtocolMethods["nonce"] = "nonce";
23
+ LimitOrderProtocolMethods["advanceNonce"] = "advanceNonce";
24
+ LimitOrderProtocolMethods["increaseNonce"] = "increaseNonce";
25
+ LimitOrderProtocolMethods["and"] = "and";
26
+ LimitOrderProtocolMethods["or"] = "or";
27
+ LimitOrderProtocolMethods["eq"] = "eq";
28
+ LimitOrderProtocolMethods["lt"] = "lt";
29
+ LimitOrderProtocolMethods["gt"] = "gt";
30
+ LimitOrderProtocolMethods["timestampBelow"] = "timestampBelow";
31
+ LimitOrderProtocolMethods["nonceEquals"] = "nonceEquals";
32
+ LimitOrderProtocolMethods["remaining"] = "remaining";
33
+ LimitOrderProtocolMethods["transferFrom"] = "transferFrom";
34
+ LimitOrderProtocolMethods["checkPredicate"] = "checkPredicate";
35
+ LimitOrderProtocolMethods["remainingsRaw"] = "remainingsRaw";
36
+ LimitOrderProtocolMethods["simulateCalls"] = "simulateCalls";
37
+ LimitOrderProtocolMethods["DOMAIN_SEPARATOR"] = "DOMAIN_SEPARATOR";
38
+ })(LimitOrderProtocolMethods = exports.LimitOrderProtocolMethods || (exports.LimitOrderProtocolMethods = {}));
@@ -0,0 +1,2 @@
1
+ export var __esModule: boolean;
2
+ export function getRPCCode(response: any): any;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRPCCode = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var web3_1 = tslib_1.__importDefault(require("web3"));
6
+ function getRPCCode(response) {
7
+ var objectRegexp = /{(\n*|.*)*}/gi; // take all between { }
8
+ var match = response.match(objectRegexp);
9
+ var matched = match ? match[0] : null;
10
+ var rpcError = matched ? parseErrorObject(matched) : null;
11
+ var data = rpcError ? rpcError.data : null;
12
+ return data ? extractCodeFromData(data) : null;
13
+ }
14
+ exports.getRPCCode = getRPCCode;
15
+ function extractCodeFromData(data) {
16
+ var hexRegexp = /0[xX][0-9a-fA-F]+/;
17
+ var matched = data.match(hexRegexp);
18
+ var hex = matched === null || matched === void 0 ? void 0 : matched[0];
19
+ return hex ? web3_1.default.utils.hexToAscii(hex) : null;
20
+ }
21
+ function parseErrorObject(errorObjectString) {
22
+ try {
23
+ return JSON.parse(errorObjectString);
24
+ }
25
+ catch (e) {
26
+ return null;
27
+ }
28
+ }
@@ -0,0 +1,89 @@
1
+ export var __esModule: boolean;
2
+ export var operationSchema: {
3
+ type: string;
4
+ name: string;
5
+ choices: {
6
+ title: string;
7
+ value: string;
8
+ }[];
9
+ message: string;
10
+ }[];
11
+ export var createOrderSchema: ({
12
+ type: string;
13
+ name: string;
14
+ message: string;
15
+ choices: {
16
+ title: string;
17
+ value: limit_order_protocol_model_1.ChainId;
18
+ }[];
19
+ } | {
20
+ type: string;
21
+ name: string;
22
+ message: string;
23
+ choices?: undefined;
24
+ } | {
25
+ type: string;
26
+ name: string;
27
+ message: string;
28
+ initial: number;
29
+ })[];
30
+ export var fillOrderSchema: ({
31
+ type: string;
32
+ name: string;
33
+ message: string;
34
+ choices: {
35
+ title: string;
36
+ value: limit_order_protocol_model_1.ChainId;
37
+ }[];
38
+ } | {
39
+ type: string;
40
+ name: string;
41
+ message: string;
42
+ choices?: undefined;
43
+ } | {
44
+ type: string;
45
+ name: string;
46
+ message: string;
47
+ initial: number;
48
+ })[];
49
+ export var cancelOrderSchema: ({
50
+ type: string;
51
+ name: string;
52
+ message: string;
53
+ choices: {
54
+ title: string;
55
+ value: limit_order_protocol_model_1.ChainId;
56
+ }[];
57
+ } | {
58
+ type: string;
59
+ name: string;
60
+ message: string;
61
+ choices?: undefined;
62
+ } | {
63
+ type: string;
64
+ name: string;
65
+ message: string;
66
+ initial: number;
67
+ })[];
68
+ export var rpcUrls: {
69
+ 1: string;
70
+ 56: string;
71
+ 137: string;
72
+ 10: string;
73
+ 42161: string;
74
+ };
75
+ export var contractAddresses: {
76
+ 1: string;
77
+ 56: string;
78
+ 137: string;
79
+ 10: string;
80
+ 42161: string;
81
+ };
82
+ export var explorersUrls: {
83
+ 1: string;
84
+ 56: string;
85
+ 137: string;
86
+ 10: string;
87
+ 42161: string;
88
+ };
89
+ import limit_order_protocol_model_1 = require("../model/limit-order-protocol.model");