@polymarket/clob-client-v2 0.0.2 → 0.1.0
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.
- package/dist/client.d.ts +15 -29
- package/dist/client.js +723 -862
- package/dist/client.js.map +1 -1
- package/dist/config.js +1 -6
- package/dist/config.js.map +1 -1
- package/dist/constants.js +6 -9
- package/dist/constants.js.map +1 -1
- package/dist/endpoints.d.ts +1 -0
- package/dist/endpoints.js +54 -56
- package/dist/endpoints.js.map +1 -1
- package/dist/errors.js +2 -5
- package/dist/errors.js.map +1 -1
- package/dist/headers/index.d.ts +4 -5
- package/dist/headers/index.js +10 -15
- package/dist/headers/index.js.map +1 -1
- package/dist/http-helpers/index.d.ts +1 -1
- package/dist/http-helpers/index.js +41 -53
- package/dist/http-helpers/index.js.map +1 -1
- package/dist/index.d.ts +7 -5
- package/dist/index.js +7 -8
- package/dist/index.js.map +1 -1
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.d.ts +2 -2
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js +12 -19
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js.map +1 -1
- package/dist/order-builder/helpers/buildOrder.d.ts +5 -6
- package/dist/order-builder/helpers/buildOrder.js +11 -18
- package/dist/order-builder/helpers/buildOrder.js.map +1 -1
- package/dist/order-builder/helpers/buildOrderCreationArgs.d.ts +2 -2
- package/dist/order-builder/helpers/buildOrderCreationArgs.js +13 -19
- package/dist/order-builder/helpers/buildOrderCreationArgs.js.map +1 -1
- package/dist/order-builder/helpers/calculateBuyMarketPrice.d.ts +1 -1
- package/dist/order-builder/helpers/calculateBuyMarketPrice.js +3 -7
- package/dist/order-builder/helpers/calculateBuyMarketPrice.js.map +1 -1
- package/dist/order-builder/helpers/calculateSellMarketPrice.d.ts +1 -1
- package/dist/order-builder/helpers/calculateSellMarketPrice.js +3 -7
- package/dist/order-builder/helpers/calculateSellMarketPrice.js.map +1 -1
- package/dist/order-builder/helpers/createMarketOrder.d.ts +5 -6
- package/dist/order-builder/helpers/createMarketOrder.js +15 -19
- package/dist/order-builder/helpers/createMarketOrder.js.map +1 -1
- package/dist/order-builder/helpers/createOrder.d.ts +5 -6
- package/dist/order-builder/helpers/createOrder.js +15 -19
- package/dist/order-builder/helpers/createOrder.js.map +1 -1
- package/dist/order-builder/helpers/getMarketOrderRawAmounts.d.ts +1 -1
- package/dist/order-builder/helpers/getMarketOrderRawAmounts.js +17 -21
- package/dist/order-builder/helpers/getMarketOrderRawAmounts.js.map +1 -1
- package/dist/order-builder/helpers/getOrderRawAmounts.d.ts +1 -1
- package/dist/order-builder/helpers/getOrderRawAmounts.js +17 -21
- package/dist/order-builder/helpers/getOrderRawAmounts.js.map +1 -1
- package/dist/order-builder/helpers/index.d.ts +10 -10
- package/dist/order-builder/helpers/index.js +10 -23
- package/dist/order-builder/helpers/index.js.map +1 -1
- package/dist/order-builder/helpers/roundingConfig.d.ts +1 -1
- package/dist/order-builder/helpers/roundingConfig.js +1 -4
- package/dist/order-builder/helpers/roundingConfig.js.map +1 -1
- package/dist/order-builder/index.d.ts +1 -1
- package/dist/order-builder/index.js +1 -4
- package/dist/order-builder/index.js.map +1 -1
- package/dist/order-builder/orderBuilder.d.ts +5 -6
- package/dist/order-builder/orderBuilder.js +34 -29
- package/dist/order-builder/orderBuilder.js.map +1 -1
- package/dist/order-utils/abi/ExchangeV1.js +1 -4
- package/dist/order-utils/abi/ExchangeV1.js.map +1 -1
- package/dist/order-utils/abi/ExchangeV2.js +1 -4
- package/dist/order-utils/abi/ExchangeV2.js.map +1 -1
- package/dist/order-utils/exchangeOrderBuilderV1.d.ts +5 -6
- package/dist/order-utils/exchangeOrderBuilderV1.js +77 -78
- package/dist/order-utils/exchangeOrderBuilderV1.js.map +1 -1
- package/dist/order-utils/exchangeOrderBuilderV2.d.ts +6 -7
- package/dist/order-utils/exchangeOrderBuilderV2.js +50 -51
- package/dist/order-utils/exchangeOrderBuilderV2.js.map +1 -1
- package/dist/order-utils/index.js +8 -11
- package/dist/order-utils/index.js.map +1 -1
- package/dist/order-utils/model/abi.js +1 -2
- package/dist/order-utils/model/ctfExchangeV1TypedData.js +3 -6
- package/dist/order-utils/model/ctfExchangeV1TypedData.js.map +1 -1
- package/dist/order-utils/model/ctfExchangeV2TypedData.js +3 -6
- package/dist/order-utils/model/ctfExchangeV2TypedData.js.map +1 -1
- package/dist/order-utils/model/eip712.js +1 -4
- package/dist/order-utils/model/eip712.js.map +1 -1
- package/dist/order-utils/model/order.js +1 -2
- package/dist/order-utils/model/orderDataV1.d.ts +4 -4
- package/dist/order-utils/model/orderDataV1.js +1 -2
- package/dist/order-utils/model/orderDataV2.d.ts +12 -13
- package/dist/order-utils/model/orderDataV2.js +1 -2
- package/dist/order-utils/model/side.d.ts +0 -4
- package/dist/order-utils/model/side.js +4 -12
- package/dist/order-utils/model/side.js.map +1 -1
- package/dist/order-utils/model/signatureTypeV1.js +2 -5
- package/dist/order-utils/model/signatureTypeV1.js.map +1 -1
- package/dist/order-utils/model/signatureTypeV2.js +2 -5
- package/dist/order-utils/model/signatureTypeV2.js.map +1 -1
- package/dist/order-utils/utils.js +1 -4
- package/dist/order-utils/utils.js.map +1 -1
- package/dist/signing/constants.js +7 -10
- package/dist/signing/constants.js.map +1 -1
- package/dist/signing/eip712.d.ts +3 -4
- package/dist/signing/eip712.js +7 -12
- package/dist/signing/eip712.js.map +1 -1
- package/dist/signing/hmac.js +3 -8
- package/dist/signing/hmac.js.map +1 -1
- package/dist/signing/index.d.ts +3 -2
- package/dist/signing/index.js +3 -5
- package/dist/signing/index.js.map +1 -1
- package/dist/signing/signer.d.ts +9 -0
- package/dist/signing/signer.js +30 -0
- package/dist/signing/signer.js.map +1 -0
- package/dist/types/clob.d.ts +19 -6
- package/dist/types/clob.js +10 -13
- package/dist/types/clob.js.map +1 -1
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.js +4 -7
- package/dist/types/index.js.map +1 -1
- package/dist/types/ordersV1.d.ts +3 -2
- package/dist/types/ordersV1.js +22 -2
- package/dist/types/ordersV1.js.map +1 -1
- package/dist/types/ordersV2.d.ts +14 -5
- package/dist/types/ordersV2.js +23 -2
- package/dist/types/ordersV2.js.map +1 -1
- package/dist/types/unifiedOrder.d.ts +4 -4
- package/dist/types/unifiedOrder.js +1 -4
- package/dist/types/unifiedOrder.js.map +1 -1
- package/dist/utilities.d.ts +1 -5
- package/dist/utilities.js +15 -88
- package/dist/utilities.js.map +1 -1
- package/package.json +47 -42
|
@@ -1,43 +1,38 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseDropNotificationParams = exports.parseOrdersScoringParams = exports.del = exports.get = exports.post = exports.request = exports.PUT = exports.DELETE = exports.POST = exports.GET = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
1
|
/* eslint-disable max-depth */
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
import axios from "axios";
|
|
3
|
+
import { isBrowser } from "browser-or-node";
|
|
4
|
+
export const GET = "GET";
|
|
5
|
+
export const POST = "POST";
|
|
6
|
+
export const DELETE = "DELETE";
|
|
7
|
+
export const PUT = "PUT";
|
|
12
8
|
const overloadHeaders = (method, headers = {}) => {
|
|
13
|
-
if (
|
|
9
|
+
if (isBrowser) {
|
|
14
10
|
return;
|
|
15
11
|
}
|
|
16
12
|
headers["User-Agent"] = `@polymarket/clob-client`;
|
|
17
13
|
headers.Accept = "*/*";
|
|
18
14
|
headers.Connection = "keep-alive";
|
|
19
15
|
headers["Content-Type"] = "application/json";
|
|
20
|
-
if (method ===
|
|
16
|
+
if (method === GET) {
|
|
21
17
|
headers["Accept-Encoding"] = "gzip";
|
|
22
18
|
}
|
|
23
19
|
};
|
|
24
|
-
const request = (endpoint, method, headers, data, params) =>
|
|
20
|
+
export const request = async (endpoint, method, headers, data, params) => {
|
|
25
21
|
overloadHeaders(method, headers);
|
|
26
|
-
return
|
|
27
|
-
}
|
|
28
|
-
exports.request = request;
|
|
22
|
+
return await axios({ method, url: endpoint, headers, data, params });
|
|
23
|
+
};
|
|
29
24
|
const sleep = (ms) => new Promise(res => setTimeout(res, ms));
|
|
30
|
-
const post =
|
|
25
|
+
export const post = async (endpoint, options, retryOnError = false) => {
|
|
31
26
|
try {
|
|
32
|
-
const resp =
|
|
27
|
+
const resp = await request(endpoint, POST, options?.headers, options?.data, options?.params);
|
|
33
28
|
return resp.data;
|
|
34
29
|
}
|
|
35
30
|
catch (err) {
|
|
36
31
|
if (retryOnError && isTransientAxiosError(err)) {
|
|
37
32
|
console.log("[CLOB Client-v2] transient error, retrying once after 30 ms");
|
|
38
|
-
|
|
33
|
+
await sleep(30);
|
|
39
34
|
try {
|
|
40
|
-
const resp =
|
|
35
|
+
const resp = await request(endpoint, POST, options?.headers, options?.data, options?.params);
|
|
41
36
|
return resp.data;
|
|
42
37
|
}
|
|
43
38
|
catch (retryErr) {
|
|
@@ -46,49 +41,45 @@ const post = (endpoint_1, options_1, ...args_1) => tslib_1.__awaiter(void 0, [en
|
|
|
46
41
|
}
|
|
47
42
|
return errorHandling(err);
|
|
48
43
|
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
const get = (endpoint, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
44
|
+
};
|
|
45
|
+
export const get = async (endpoint, options) => {
|
|
52
46
|
try {
|
|
53
|
-
const resp =
|
|
47
|
+
const resp = await request(endpoint, GET, options?.headers, options?.data, options?.params);
|
|
54
48
|
return resp.data;
|
|
55
49
|
}
|
|
56
50
|
catch (err) {
|
|
57
51
|
return errorHandling(err);
|
|
58
52
|
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const del = (endpoint, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
53
|
+
};
|
|
54
|
+
export const del = async (endpoint, options) => {
|
|
62
55
|
try {
|
|
63
|
-
const resp =
|
|
56
|
+
const resp = await request(endpoint, DELETE, options?.headers, options?.data, options?.params);
|
|
64
57
|
return resp.data;
|
|
65
58
|
}
|
|
66
59
|
catch (err) {
|
|
67
60
|
return errorHandling(err);
|
|
68
61
|
}
|
|
69
|
-
}
|
|
70
|
-
exports.del = del;
|
|
62
|
+
};
|
|
71
63
|
const errorHandling = (err) => {
|
|
72
|
-
|
|
73
|
-
if (axios_1.default.isAxiosError(err)) {
|
|
64
|
+
if (axios.isAxiosError(err)) {
|
|
74
65
|
if (err.response) {
|
|
75
66
|
console.error("[CLOB Client] request error", JSON.stringify({
|
|
76
|
-
status:
|
|
77
|
-
statusText:
|
|
78
|
-
data:
|
|
79
|
-
config:
|
|
67
|
+
status: err.response?.status,
|
|
68
|
+
statusText: err.response?.statusText,
|
|
69
|
+
data: err.response?.data,
|
|
70
|
+
config: err.response?.config,
|
|
80
71
|
}));
|
|
81
|
-
if (
|
|
82
|
-
if (typeof
|
|
83
|
-
|
|
84
|
-
return { error:
|
|
72
|
+
if (err.response?.data) {
|
|
73
|
+
if (typeof err.response?.data === "string" ||
|
|
74
|
+
err.response?.data instanceof String) {
|
|
75
|
+
return { error: err.response?.data, status: err.response?.status };
|
|
85
76
|
}
|
|
86
77
|
// biome-ignore lint/suspicious/noPrototypeBuiltins: ES2022 Object.hasOwn not available with current target
|
|
87
|
-
if (!Object.prototype.hasOwnProperty.call(
|
|
88
|
-
return { error:
|
|
78
|
+
if (!Object.prototype.hasOwnProperty.call(err.response?.data, "error")) {
|
|
79
|
+
return { error: err.response?.data, status: err.response?.status };
|
|
89
80
|
}
|
|
90
81
|
// in this case the field 'error' is included
|
|
91
|
-
return
|
|
82
|
+
return { ...err.response?.data, status: err.response?.status };
|
|
92
83
|
}
|
|
93
84
|
}
|
|
94
85
|
if (err.message) {
|
|
@@ -102,35 +93,32 @@ const errorHandling = (err) => {
|
|
|
102
93
|
return { error: err };
|
|
103
94
|
};
|
|
104
95
|
const isTransientAxiosError = (err) => {
|
|
105
|
-
|
|
106
|
-
if (!axios_1.default.isAxiosError(err))
|
|
96
|
+
if (!axios.isAxiosError(err))
|
|
107
97
|
return false;
|
|
108
98
|
if (!err.response)
|
|
109
99
|
return true; // network error
|
|
110
|
-
const status =
|
|
100
|
+
const status = err.response.status ?? 0;
|
|
111
101
|
if (status >= 500 && status < 600)
|
|
112
102
|
return true; // 5xx
|
|
113
|
-
const code = (
|
|
103
|
+
const code = (err.code ?? "").toString();
|
|
114
104
|
return ["ECONNABORTED", "ENETUNREACH", "EAI_AGAIN", "ETIMEDOUT"].includes(code);
|
|
115
105
|
};
|
|
116
|
-
const parseOrdersScoringParams = (orderScoringParams) => {
|
|
106
|
+
export const parseOrdersScoringParams = (orderScoringParams) => {
|
|
117
107
|
const params = {};
|
|
118
108
|
if (orderScoringParams !== undefined) {
|
|
119
109
|
if (orderScoringParams.orderIds !== undefined) {
|
|
120
|
-
params.order_ids = orderScoringParams
|
|
110
|
+
params.order_ids = orderScoringParams?.orderIds.join(",");
|
|
121
111
|
}
|
|
122
112
|
}
|
|
123
113
|
return params;
|
|
124
114
|
};
|
|
125
|
-
|
|
126
|
-
const parseDropNotificationParams = (dropNotificationParams) => {
|
|
115
|
+
export const parseDropNotificationParams = (dropNotificationParams) => {
|
|
127
116
|
const params = {};
|
|
128
117
|
if (dropNotificationParams !== undefined) {
|
|
129
118
|
if (dropNotificationParams.ids !== undefined) {
|
|
130
|
-
params.ids = dropNotificationParams
|
|
119
|
+
params.ids = dropNotificationParams?.ids.join(",");
|
|
131
120
|
}
|
|
132
121
|
}
|
|
133
122
|
return params;
|
|
134
123
|
};
|
|
135
|
-
exports.parseDropNotificationParams = parseDropNotificationParams;
|
|
136
124
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/http-helpers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/http-helpers/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
export * from "./client";
|
|
2
|
-
export * from "./config";
|
|
3
|
-
export * from "./headers";
|
|
4
|
-
export * from "./order-builder";
|
|
5
|
-
export * from "./
|
|
1
|
+
export * from "./client.js";
|
|
2
|
+
export * from "./config.js";
|
|
3
|
+
export * from "./headers/index.js";
|
|
4
|
+
export * from "./order-builder/index.js";
|
|
5
|
+
export * from "./order-utils/model/signatureTypeV1.js";
|
|
6
|
+
export * from "./order-utils/model/signatureTypeV2.js";
|
|
7
|
+
export * from "./types/index.js";
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
tslib_1.__exportStar(require("./types"), exports);
|
|
1
|
+
export * from "./client.js";
|
|
2
|
+
export * from "./config.js";
|
|
3
|
+
export * from "./headers/index.js";
|
|
4
|
+
export * from "./order-builder/index.js";
|
|
5
|
+
export * from "./order-utils/model/signatureTypeV1.js";
|
|
6
|
+
export * from "./order-utils/model/signatureTypeV2.js";
|
|
7
|
+
export * from "./types/index.js";
|
|
9
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OrderDataV2, SignatureTypeV2 } from "../../order-utils";
|
|
2
|
-
import type { RoundConfig, UserMarketOrderV2 } from "../../types";
|
|
1
|
+
import type { OrderDataV2, SignatureTypeV2 } from "../../order-utils/index.js";
|
|
2
|
+
import type { RoundConfig, UserMarketOrderV2 } from "../../types/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Translate simple user market order to args used to generate Orders
|
|
5
5
|
*/
|
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const viem_1 = require("viem");
|
|
6
|
-
const config_1 = require("../../config");
|
|
7
|
-
const constants_1 = require("../../constants");
|
|
8
|
-
const _1 = require(".");
|
|
1
|
+
import { parseUnits } from "viem";
|
|
2
|
+
import { COLLATERAL_TOKEN_DECIMALS } from "../../config.js";
|
|
3
|
+
import { bytes32Zero } from "../../constants.js";
|
|
4
|
+
import { getMarketOrderRawAmounts } from "./index.js";
|
|
9
5
|
/**
|
|
10
6
|
* Translate simple user market order to args used to generate Orders
|
|
11
7
|
*/
|
|
12
|
-
const buildMarketOrderCreationArgs = (signer, maker, signatureType, userMarketOrder, roundConfig) =>
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const takerAmount = (0, viem_1.parseUnits)(rawTakerAmt.toString(), config_1.COLLATERAL_TOKEN_DECIMALS).toString();
|
|
8
|
+
export const buildMarketOrderCreationArgs = async (signer, maker, signatureType, userMarketOrder, roundConfig) => {
|
|
9
|
+
const { side, rawMakerAmt, rawTakerAmt } = getMarketOrderRawAmounts(userMarketOrder.side, userMarketOrder.amount, userMarketOrder.price || 1, roundConfig);
|
|
10
|
+
const makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
|
|
11
|
+
const takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
|
|
17
12
|
return {
|
|
18
13
|
maker,
|
|
19
14
|
tokenId: userMarketOrder.tokenID,
|
|
@@ -21,12 +16,10 @@ const buildMarketOrderCreationArgs = (signer, maker, signatureType, userMarketOr
|
|
|
21
16
|
takerAmount,
|
|
22
17
|
side,
|
|
23
18
|
signer,
|
|
24
|
-
expiration: "0",
|
|
25
19
|
signatureType,
|
|
26
|
-
timestamp:
|
|
27
|
-
metadata:
|
|
28
|
-
builder:
|
|
20
|
+
timestamp: Date.now().toString(),
|
|
21
|
+
metadata: userMarketOrder.metadata ?? bytes32Zero,
|
|
22
|
+
builder: userMarketOrder.builderCode ?? bytes32Zero,
|
|
29
23
|
};
|
|
30
|
-
}
|
|
31
|
-
exports.buildMarketOrderCreationArgs = buildMarketOrderCreationArgs;
|
|
24
|
+
};
|
|
32
25
|
//# sourceMappingURL=buildMarketOrderCreationArgs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMarketOrderCreationArgs.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildMarketOrderCreationArgs.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,EAChD,MAAc,EACd,KAAa,EACb,aAA8B,EAC9B,eAAkC,EAClC,WAAwB,EACD,EAAE;IACzB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,wBAAwB,CAClE,eAAe,CAAC,IAAI,EACpB,eAAe,CAAC,MAAM,EACtB,eAAe,CAAC,KAAK,IAAI,CAAC,EAC1B,WAAW,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7F,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE7F,OAAO;QACN,KAAK;QACL,OAAO,EAAE,eAAe,CAAC,OAAO;QAChC,WAAW;QACX,WAAW;QACX,IAAI;QACJ,MAAM;QACN,aAAa;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QAChC,QAAQ,EAAE,eAAe,CAAC,QAAQ,IAAI,WAAW;QACjD,OAAO,EAAE,eAAe,CAAC,WAAW,IAAI,WAAW;KACnD,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type {
|
|
3
|
-
import { type OrderDataV1, type OrderDataV2, type SignedOrderV1, type SignedOrderV2 } from "../../order-utils";
|
|
1
|
+
import { type OrderDataV1, type OrderDataV2, type SignedOrderV1, type SignedOrderV2 } from "../../order-utils/index.js";
|
|
2
|
+
import type { ClobSigner } from "../../signing/signer.js";
|
|
4
3
|
/**
|
|
5
4
|
* Generate and sign a order
|
|
6
5
|
*
|
|
@@ -10,6 +9,6 @@ import { type OrderDataV1, type OrderDataV2, type SignedOrderV1, type SignedOrde
|
|
|
10
9
|
* @param OrderData
|
|
11
10
|
* @returns SignedOrder
|
|
12
11
|
*/
|
|
13
|
-
export declare const buildOrder: (signer:
|
|
14
|
-
export declare const buildOrderV1: (signer:
|
|
15
|
-
export declare const buildOrderV2: (signer:
|
|
12
|
+
export declare const buildOrder: (signer: ClobSigner, exchangeAddress: string, chainId: number, orderData: OrderDataV1 | OrderDataV2, version?: number) => Promise<SignedOrderV1 | SignedOrderV2>;
|
|
13
|
+
export declare const buildOrderV1: (signer: ClobSigner, exchangeAddress: string, chainId: number, orderData: OrderDataV1) => Promise<SignedOrderV1>;
|
|
14
|
+
export declare const buildOrderV2: (signer: ClobSigner, exchangeAddress: string, chainId: number, orderData: OrderDataV2) => Promise<SignedOrderV2>;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildOrderV2 = exports.buildOrderV1 = exports.buildOrder = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const order_utils_1 = require("../../order-utils");
|
|
1
|
+
import { ExchangeOrderBuilderV1, ExchangeOrderBuilderV2, } from "../../order-utils/index.js";
|
|
6
2
|
/**
|
|
7
3
|
* Generate and sign a order
|
|
8
4
|
*
|
|
@@ -12,25 +8,22 @@ const order_utils_1 = require("../../order-utils");
|
|
|
12
8
|
* @param OrderData
|
|
13
9
|
* @returns SignedOrder
|
|
14
10
|
*/
|
|
15
|
-
const buildOrder =
|
|
11
|
+
export const buildOrder = async (signer, exchangeAddress, chainId, orderData, version = 2) => {
|
|
16
12
|
switch (version) {
|
|
17
13
|
case 1:
|
|
18
|
-
return
|
|
14
|
+
return buildOrderV1(signer, exchangeAddress, chainId, orderData);
|
|
19
15
|
case 2:
|
|
20
|
-
return
|
|
16
|
+
return buildOrderV2(signer, exchangeAddress, chainId, orderData);
|
|
21
17
|
default:
|
|
22
18
|
throw new Error(`unsupported order version ${version}`);
|
|
23
19
|
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
const ctfExchangeOrderBuilder = new order_utils_1.ExchangeOrderBuilderV1(exchangeAddress, chainId, signer);
|
|
20
|
+
};
|
|
21
|
+
export const buildOrderV1 = async (signer, exchangeAddress, chainId, orderData) => {
|
|
22
|
+
const ctfExchangeOrderBuilder = new ExchangeOrderBuilderV1(exchangeAddress, chainId, signer);
|
|
28
23
|
return ctfExchangeOrderBuilder.buildSignedOrder(orderData);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
const
|
|
32
|
-
const ctfExchangeOrderBuilder = new order_utils_1.ExchangeOrderBuilderV2(exchangeAddress, chainId, signer);
|
|
24
|
+
};
|
|
25
|
+
export const buildOrderV2 = async (signer, exchangeAddress, chainId, orderData) => {
|
|
26
|
+
const ctfExchangeOrderBuilder = new ExchangeOrderBuilderV2(exchangeAddress, chainId, signer);
|
|
33
27
|
return ctfExchangeOrderBuilder.buildSignedOrder(orderData);
|
|
34
|
-
}
|
|
35
|
-
exports.buildOrderV2 = buildOrderV2;
|
|
28
|
+
};
|
|
36
29
|
//# sourceMappingURL=buildOrder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,sBAAsB,GAKtB,MAAM,4BAA4B,CAAC;AAGpC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC9B,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAoC,EACpC,UAAkB,CAAC,EACsB,EAAE;IAC3C,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,OAAO,YAAY,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,SAAwB,CAAC,CAAC;QACjF,KAAK,CAAC;YACL,OAAO,YAAY,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,SAAwB,CAAC,CAAC;QACjF;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAChC,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAsB,EACG,EAAE;IAC3B,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7F,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAChC,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAsB,EACG,EAAE;IAC3B,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7F,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAC5D,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OrderDataV2, SignatureTypeV2 } from "../../order-utils";
|
|
2
|
-
import type { RoundConfig, UserOrderV2 } from "../../types";
|
|
1
|
+
import type { OrderDataV2, SignatureTypeV2 } from "../../order-utils/index.js";
|
|
2
|
+
import type { RoundConfig, UserOrderV2 } from "../../types/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Translate simple user order to args used to generate Orders
|
|
5
5
|
*/
|
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const viem_1 = require("viem");
|
|
6
|
-
const config_1 = require("../../config");
|
|
7
|
-
const constants_1 = require("../../constants");
|
|
8
|
-
const getOrderRawAmounts_1 = require("./getOrderRawAmounts");
|
|
1
|
+
import { parseUnits } from "viem";
|
|
2
|
+
import { COLLATERAL_TOKEN_DECIMALS } from "../../config.js";
|
|
3
|
+
import { bytes32Zero } from "../../constants.js";
|
|
4
|
+
import { getOrderRawAmounts } from "./getOrderRawAmounts.js";
|
|
9
5
|
/**
|
|
10
6
|
* Translate simple user order to args used to generate Orders
|
|
11
7
|
*/
|
|
12
|
-
const buildOrderCreationArgs = (signer, maker, signatureType, userOrder, roundConfig) =>
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const takerAmount = (0, viem_1.parseUnits)(rawTakerAmt.toString(), config_1.COLLATERAL_TOKEN_DECIMALS).toString();
|
|
8
|
+
export const buildOrderCreationArgs = async (signer, maker, signatureType, userOrder, roundConfig) => {
|
|
9
|
+
const { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(userOrder.side, userOrder.size, userOrder.price, roundConfig);
|
|
10
|
+
const makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
|
|
11
|
+
const takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
|
|
17
12
|
return {
|
|
18
13
|
maker,
|
|
19
14
|
tokenId: userOrder.tokenID,
|
|
@@ -21,12 +16,11 @@ const buildOrderCreationArgs = (signer, maker, signatureType, userOrder, roundCo
|
|
|
21
16
|
takerAmount,
|
|
22
17
|
side,
|
|
23
18
|
signer,
|
|
24
|
-
expiration: userOrder.expiration ? userOrder.expiration.toString() : "0",
|
|
25
19
|
signatureType,
|
|
26
|
-
timestamp:
|
|
27
|
-
metadata:
|
|
28
|
-
builder:
|
|
20
|
+
timestamp: Date.now().toString(),
|
|
21
|
+
metadata: userOrder.metadata ?? bytes32Zero,
|
|
22
|
+
builder: userOrder.builderCode ?? bytes32Zero,
|
|
23
|
+
expiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : "0",
|
|
29
24
|
};
|
|
30
|
-
}
|
|
31
|
-
exports.buildOrderCreationArgs = buildOrderCreationArgs;
|
|
25
|
+
};
|
|
32
26
|
//# sourceMappingURL=buildOrderCreationArgs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildOrderCreationArgs.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildOrderCreationArgs.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,MAAc,EACd,KAAa,EACb,aAA8B,EAC9B,SAAsB,EACtB,WAAwB,EACD,EAAE;IACzB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAC5D,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,KAAK,EACf,WAAW,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7F,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE7F,OAAO;QACN,KAAK;QACL,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,WAAW;QACX,WAAW;QACX,IAAI;QACJ,MAAM;QACN,aAAa;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,WAAW;QAC3C,OAAO,EAAE,SAAS,CAAC,WAAW,IAAI,WAAW;QAC7C,UAAU,EAAE,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG;KACtF,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.calculateBuyMarketPrice = void 0;
|
|
4
|
-
const types_1 = require("../../types");
|
|
1
|
+
import { OrderType } from "../../types/index.js";
|
|
5
2
|
/**
|
|
6
3
|
* calculateBuyMarketPrice calculates the market price to buy a $$ amount
|
|
7
4
|
* @param positions
|
|
8
5
|
* @param amountToMatch worth to buy
|
|
9
6
|
* @returns
|
|
10
7
|
*/
|
|
11
|
-
const calculateBuyMarketPrice = (positions, amountToMatch, orderType) => {
|
|
8
|
+
export const calculateBuyMarketPrice = (positions, amountToMatch, orderType) => {
|
|
12
9
|
if (!positions.length) {
|
|
13
10
|
throw new Error("no match");
|
|
14
11
|
}
|
|
@@ -29,10 +26,9 @@ const calculateBuyMarketPrice = (positions, amountToMatch, orderType) => {
|
|
|
29
26
|
return parseFloat(p.price);
|
|
30
27
|
}
|
|
31
28
|
}
|
|
32
|
-
if (orderType ===
|
|
29
|
+
if (orderType === OrderType.FOK) {
|
|
33
30
|
throw new Error("no match");
|
|
34
31
|
}
|
|
35
32
|
return parseFloat(positions[0].price);
|
|
36
33
|
};
|
|
37
|
-
exports.calculateBuyMarketPrice = calculateBuyMarketPrice;
|
|
38
34
|
//# sourceMappingURL=calculateBuyMarketPrice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculateBuyMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateBuyMarketPrice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"calculateBuyMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateBuyMarketPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACtC,SAAyB,EACzB,aAAqB,EACrB,SAAoB,EACnB,EAAE;IACH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ;;;;;;;;MAQK;IACL,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.calculateSellMarketPrice = void 0;
|
|
4
|
-
const types_1 = require("../../types");
|
|
1
|
+
import { OrderType } from "../../types/index.js";
|
|
5
2
|
/**
|
|
6
3
|
* calculateSellMarketPrice calculates the market price to sell a shares
|
|
7
4
|
* @param positions
|
|
8
5
|
* @param amountToMatch sells to share
|
|
9
6
|
* @returns
|
|
10
7
|
*/
|
|
11
|
-
const calculateSellMarketPrice = (positions, amountToMatch, orderType) => {
|
|
8
|
+
export const calculateSellMarketPrice = (positions, amountToMatch, orderType) => {
|
|
12
9
|
if (!positions.length) {
|
|
13
10
|
throw new Error("no match");
|
|
14
11
|
}
|
|
@@ -29,10 +26,9 @@ const calculateSellMarketPrice = (positions, amountToMatch, orderType) => {
|
|
|
29
26
|
return parseFloat(p.price);
|
|
30
27
|
}
|
|
31
28
|
}
|
|
32
|
-
if (orderType ===
|
|
29
|
+
if (orderType === OrderType.FOK) {
|
|
33
30
|
throw new Error("no match");
|
|
34
31
|
}
|
|
35
32
|
return parseFloat(positions[0].price);
|
|
36
33
|
};
|
|
37
|
-
exports.calculateSellMarketPrice = calculateSellMarketPrice;
|
|
38
34
|
//# sourceMappingURL=calculateSellMarketPrice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculateSellMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateSellMarketPrice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"calculateSellMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateSellMarketPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACvC,SAAyB,EACzB,aAAqB,EACrB,SAAoB,EACnB,EAAE;IACH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ;;;;;;;;MAQK;IACL,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
export declare const createMarketOrder: (eoaSigner: Wallet | JsonRpcSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userMarketOrder: UserMarketOrderV2, options: CreateOrderOptions, version: number) => Promise<SignedOrderV1 | SignedOrderV2>;
|
|
1
|
+
import type { SignedOrderV1, SignedOrderV2 } from "../../order-utils/index.js";
|
|
2
|
+
import { SignatureTypeV2 } from "../../order-utils/index.js";
|
|
3
|
+
import { type ClobSigner } from "../../signing/signer.js";
|
|
4
|
+
import type { Chain, CreateOrderOptions, UserMarketOrderV2 } from "../../types/index.js";
|
|
5
|
+
export declare const createMarketOrder: (eoaSigner: ClobSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userMarketOrder: UserMarketOrderV2, options: CreateOrderOptions, version: number) => Promise<SignedOrderV1 | SignedOrderV2>;
|
|
@@ -1,30 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const roundingConfig_1 = require("./roundingConfig");
|
|
11
|
-
const createMarketOrder = (eoaSigner, chainId, signatureType, funderAddress, userMarketOrder, options, version) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
12
|
-
const eoaSignerAddress = yield eoaSigner.getAddress();
|
|
1
|
+
import { zeroAddress } from "viem";
|
|
2
|
+
import { getContractConfig } from "../../config.js";
|
|
3
|
+
import { SignatureTypeV2 } from "../../order-utils/index.js";
|
|
4
|
+
import { getSignerAddress } from "../../signing/signer.js";
|
|
5
|
+
import { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
|
|
6
|
+
import { buildOrder } from "./buildOrder.js";
|
|
7
|
+
import { ROUNDING_CONFIG } from "./roundingConfig.js";
|
|
8
|
+
export const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddress, userMarketOrder, options, version) => {
|
|
9
|
+
const eoaSignerAddress = await getSignerAddress(eoaSigner);
|
|
13
10
|
// If funder address is not given, use the signer address
|
|
14
11
|
const maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;
|
|
15
|
-
const contractConfig =
|
|
16
|
-
const orderData =
|
|
12
|
+
const contractConfig = getContractConfig(chainId);
|
|
13
|
+
const orderData = await buildMarketOrderCreationArgs(eoaSignerAddress, maker, signatureType, userMarketOrder, ROUNDING_CONFIG[options.tickSize]);
|
|
17
14
|
let exchangeContract;
|
|
18
15
|
switch (version) {
|
|
19
16
|
case 1:
|
|
20
|
-
if (signatureType ===
|
|
17
|
+
if (signatureType === SignatureTypeV2.POLY_1271) {
|
|
21
18
|
throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
|
|
22
19
|
}
|
|
23
20
|
exchangeContract = options.negRisk
|
|
24
21
|
? contractConfig.negRiskExchange
|
|
25
22
|
: contractConfig.exchange;
|
|
26
23
|
// Add taker field for V1 orders (V1 requires it, V2 does not)
|
|
27
|
-
orderData.taker =
|
|
24
|
+
orderData.taker = zeroAddress;
|
|
28
25
|
break;
|
|
29
26
|
case 2:
|
|
30
27
|
exchangeContract = options.negRisk
|
|
@@ -34,7 +31,6 @@ const createMarketOrder = (eoaSigner, chainId, signatureType, funderAddress, use
|
|
|
34
31
|
default:
|
|
35
32
|
throw new Error(`unsupported order version ${version}`);
|
|
36
33
|
}
|
|
37
|
-
return
|
|
38
|
-
}
|
|
39
|
-
exports.createMarketOrder = createMarketOrder;
|
|
34
|
+
return buildOrder(eoaSigner, exchangeContract, chainId, orderData, version);
|
|
35
|
+
};
|
|
40
36
|
//# sourceMappingURL=createMarketOrder.js.map
|