@polymarket/clob-client-v2 0.0.3 → 0.2.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 +5 -10
- 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 -7
- package/dist/index.js +7 -10
- 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.d.ts +186 -43
- package/dist/order-utils/abi/ExchangeV2.js +234 -53
- 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 +82 -77
- package/dist/order-utils/exchangeOrderBuilderV1.js.map +1 -1
- package/dist/order-utils/exchangeOrderBuilderV2.d.ts +6 -7
- package/dist/order-utils/exchangeOrderBuilderV2.js +55 -50
- package/dist/order-utils/exchangeOrderBuilderV2.js.map +1 -1
- package/dist/order-utils/index.d.ts +2703 -0
- package/dist/order-utils/index.js +11 -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.js +2 -5
- 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 +13 -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 +22 -0
- package/dist/signing/signer.js +50 -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 -72
- package/dist/utilities.js.map +1 -1
- package/package.json +24 -18
|
@@ -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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMarketOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createMarketOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAmB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACrC,SAAqB,EACrB,OAAc,EACd,aAA8B,EAC9B,aAAiC,EACjC,eAAkC,EAClC,OAA2B,EAC3B,OAAe,EAC0B,EAAE;IAC3C,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,MAAM,KAAK,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC;IAC7E,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,MAAM,4BAA4B,CACnD,gBAAgB,EAChB,KAAK,EACL,aAAa,EACb,eAAe,EACf,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CACjC,CAAC;IAEF,IAAI,gBAAwB,CAAC;IAC7B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,IAAI,aAAa,KAAK,eAAe,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC5E,CAAC;YACD,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,eAAe;gBAChC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,8DAA8D;YAC7D,SAAyB,CAAC,KAAK,GAAG,WAAW,CAAC;YAC/C,MAAM;QACP,KAAK,CAAC;YACL,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,iBAAiB;gBAClC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC;YAC7B,MAAM;QACP;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,UAAU,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
export declare const createOrder: (eoaSigner: Wallet | JsonRpcSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userOrder: UserOrderV2, 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, UserOrderV2 } from "../../types/index.js";
|
|
5
|
+
export declare const createOrder: (eoaSigner: ClobSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userOrder: UserOrderV2, 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 createOrder = (eoaSigner, chainId, signatureType, funderAddress, userOrder, 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 { buildOrder } from "./buildOrder.js";
|
|
6
|
+
import { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
|
|
7
|
+
import { ROUNDING_CONFIG } from "./roundingConfig.js";
|
|
8
|
+
export const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, userOrder, 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 buildOrderCreationArgs(eoaSignerAddress, maker, signatureType, userOrder, 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 createOrder = (eoaSigner, chainId, signatureType, funderAddress, userOrder
|
|
|
34
31
|
default:
|
|
35
32
|
throw new Error(`unsupported order version ${version}`);
|
|
36
33
|
}
|
|
37
|
-
return
|
|
38
|
-
}
|
|
39
|
-
exports.createOrder = createOrder;
|
|
34
|
+
return buildOrder(eoaSigner, exchangeContract, chainId, orderData, version);
|
|
35
|
+
};
|
|
40
36
|
//# sourceMappingURL=createOrder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createOrder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAmB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC/B,SAAqB,EACrB,OAAc,EACd,aAA8B,EAC9B,aAAiC,EACjC,SAAsB,EACtB,OAA2B,EAC3B,OAAe,EAC0B,EAAE;IAC3C,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,MAAM,KAAK,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC;IAC7E,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAC7C,gBAAgB,EAChB,KAAK,EACL,aAAa,EACb,SAAS,EACT,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CACjC,CAAC;IACF,IAAI,gBAAwB,CAAC;IAC7B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,IAAI,aAAa,KAAK,eAAe,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC5E,CAAC;YACD,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,eAAe;gBAChC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,8DAA8D;YAC7D,SAAyB,CAAC,KAAK,GAAG,WAAW,CAAC;YAC/C,MAAM;QACP,KAAK,CAAC;YACL,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,iBAAiB;gBAClC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC;YAC7B,MAAM;QACP;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type RoundConfig, Side } from "../../types";
|
|
1
|
+
import { type RoundConfig, Side } from "../../types/index.js";
|
|
2
2
|
export declare const getMarketOrderRawAmounts: (side: Side, amount: number, price: number, roundConfig: RoundConfig) => {
|
|
3
3
|
side: Side;
|
|
4
4
|
rawMakerAmt: number;
|
|
@@ -1,41 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const types_1 = require("../../types");
|
|
5
|
-
const utilities_1 = require("../../utilities");
|
|
6
|
-
const getMarketOrderRawAmounts = (side, amount, price, roundConfig) => {
|
|
1
|
+
import { Side } from "../../types/index.js";
|
|
2
|
+
import { decimalPlaces, roundDown, roundUp } from "../../utilities.js";
|
|
3
|
+
export const getMarketOrderRawAmounts = (side, amount, price, roundConfig) => {
|
|
7
4
|
// force 2 decimals places
|
|
8
|
-
const rawPrice =
|
|
9
|
-
if (side ===
|
|
10
|
-
const rawMakerAmt =
|
|
5
|
+
const rawPrice = roundDown(price, roundConfig.price);
|
|
6
|
+
if (side === Side.BUY) {
|
|
7
|
+
const rawMakerAmt = roundDown(amount, roundConfig.size);
|
|
11
8
|
let rawTakerAmt = rawMakerAmt / rawPrice;
|
|
12
|
-
if (
|
|
13
|
-
rawTakerAmt =
|
|
14
|
-
if (
|
|
15
|
-
rawTakerAmt =
|
|
9
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
10
|
+
rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
|
|
11
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
12
|
+
rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
15
|
return {
|
|
19
|
-
side:
|
|
16
|
+
side: Side.BUY,
|
|
20
17
|
rawMakerAmt,
|
|
21
18
|
rawTakerAmt,
|
|
22
19
|
};
|
|
23
20
|
}
|
|
24
21
|
else {
|
|
25
|
-
const rawMakerAmt =
|
|
22
|
+
const rawMakerAmt = roundDown(amount, roundConfig.size);
|
|
26
23
|
let rawTakerAmt = rawMakerAmt * rawPrice;
|
|
27
|
-
if (
|
|
28
|
-
rawTakerAmt =
|
|
29
|
-
if (
|
|
30
|
-
rawTakerAmt =
|
|
24
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
25
|
+
rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
|
|
26
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
27
|
+
rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
|
|
31
28
|
}
|
|
32
29
|
}
|
|
33
30
|
return {
|
|
34
|
-
side:
|
|
31
|
+
side: Side.SELL,
|
|
35
32
|
rawMakerAmt,
|
|
36
33
|
rawTakerAmt,
|
|
37
34
|
};
|
|
38
35
|
}
|
|
39
36
|
};
|
|
40
|
-
exports.getMarketOrderRawAmounts = getMarketOrderRawAmounts;
|
|
41
37
|
//# sourceMappingURL=getMarketOrderRawAmounts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMarketOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getMarketOrderRawAmounts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getMarketOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getMarketOrderRawAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACvC,IAAU,EACV,MAAc,EACd,KAAa,EACb,WAAwB,EACmC,EAAE;IAC7D,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAErD,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QACD,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;AACF,CAAC,CAAC"}
|
|
@@ -1,41 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
const getOrderRawAmounts = (side, size, price, roundConfig) => {
|
|
7
|
-
const rawPrice = (0, utilities_1.roundNormal)(price, roundConfig.price);
|
|
8
|
-
if (side === types_1.Side.BUY) {
|
|
1
|
+
import { Side } from "../../types/index.js";
|
|
2
|
+
import { decimalPlaces, roundDown, roundNormal, roundUp } from "../../utilities.js";
|
|
3
|
+
export const getOrderRawAmounts = (side, size, price, roundConfig) => {
|
|
4
|
+
const rawPrice = roundNormal(price, roundConfig.price);
|
|
5
|
+
if (side === Side.BUY) {
|
|
9
6
|
// force 2 decimals places
|
|
10
|
-
const rawTakerAmt =
|
|
7
|
+
const rawTakerAmt = roundDown(size, roundConfig.size);
|
|
11
8
|
let rawMakerAmt = rawTakerAmt * rawPrice;
|
|
12
|
-
if (
|
|
13
|
-
rawMakerAmt =
|
|
14
|
-
if (
|
|
15
|
-
rawMakerAmt =
|
|
9
|
+
if (decimalPlaces(rawMakerAmt) > roundConfig.amount) {
|
|
10
|
+
rawMakerAmt = roundUp(rawMakerAmt, roundConfig.amount + 4);
|
|
11
|
+
if (decimalPlaces(rawMakerAmt) > roundConfig.amount) {
|
|
12
|
+
rawMakerAmt = roundDown(rawMakerAmt, roundConfig.amount);
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
15
|
return {
|
|
19
|
-
side:
|
|
16
|
+
side: Side.BUY,
|
|
20
17
|
rawMakerAmt,
|
|
21
18
|
rawTakerAmt,
|
|
22
19
|
};
|
|
23
20
|
}
|
|
24
21
|
else {
|
|
25
|
-
const rawMakerAmt =
|
|
22
|
+
const rawMakerAmt = roundDown(size, roundConfig.size);
|
|
26
23
|
let rawTakerAmt = rawMakerAmt * rawPrice;
|
|
27
|
-
if (
|
|
28
|
-
rawTakerAmt =
|
|
29
|
-
if (
|
|
30
|
-
rawTakerAmt =
|
|
24
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
25
|
+
rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
|
|
26
|
+
if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
|
|
27
|
+
rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
|
|
31
28
|
}
|
|
32
29
|
}
|
|
33
30
|
return {
|
|
34
|
-
side:
|
|
31
|
+
side: Side.SELL,
|
|
35
32
|
rawMakerAmt,
|
|
36
33
|
rawTakerAmt,
|
|
37
34
|
};
|
|
38
35
|
}
|
|
39
36
|
};
|
|
40
|
-
exports.getOrderRawAmounts = getOrderRawAmounts;
|
|
41
37
|
//# sourceMappingURL=getOrderRawAmounts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getOrderRawAmounts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getOrderRawAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEpF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CACjC,IAAU,EACV,IAAY,EACZ,KAAa,EACb,WAAwB,EACmC,EAAE;IAC7D,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEvD,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,0BAA0B;QAC1B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;AACF,CAAC,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs";
|
|
2
|
-
export { buildOrder } from "./buildOrder";
|
|
3
|
-
export { buildOrderCreationArgs } from "./buildOrderCreationArgs";
|
|
4
|
-
export { calculateBuyMarketPrice } from "./calculateBuyMarketPrice";
|
|
5
|
-
export { calculateSellMarketPrice } from "./calculateSellMarketPrice";
|
|
6
|
-
export { createMarketOrder } from "./createMarketOrder";
|
|
7
|
-
export { createOrder } from "./createOrder";
|
|
8
|
-
export { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts";
|
|
9
|
-
export { getOrderRawAmounts } from "./getOrderRawAmounts";
|
|
10
|
-
export { ROUNDING_CONFIG } from "./roundingConfig";
|
|
1
|
+
export { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
|
|
2
|
+
export { buildOrder } from "./buildOrder.js";
|
|
3
|
+
export { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
|
|
4
|
+
export { calculateBuyMarketPrice } from "./calculateBuyMarketPrice.js";
|
|
5
|
+
export { calculateSellMarketPrice } from "./calculateSellMarketPrice.js";
|
|
6
|
+
export { createMarketOrder } from "./createMarketOrder.js";
|
|
7
|
+
export { createOrder } from "./createOrder.js";
|
|
8
|
+
export { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts.js";
|
|
9
|
+
export { getOrderRawAmounts } from "./getOrderRawAmounts.js";
|
|
10
|
+
export { ROUNDING_CONFIG } from "./roundingConfig.js";
|
|
@@ -1,24 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Object.defineProperty(exports, "calculateBuyMarketPrice", { enumerable: true, get: function () { return calculateBuyMarketPrice_1.calculateBuyMarketPrice; } });
|
|
12
|
-
var calculateSellMarketPrice_1 = require("./calculateSellMarketPrice");
|
|
13
|
-
Object.defineProperty(exports, "calculateSellMarketPrice", { enumerable: true, get: function () { return calculateSellMarketPrice_1.calculateSellMarketPrice; } });
|
|
14
|
-
var createMarketOrder_1 = require("./createMarketOrder");
|
|
15
|
-
Object.defineProperty(exports, "createMarketOrder", { enumerable: true, get: function () { return createMarketOrder_1.createMarketOrder; } });
|
|
16
|
-
var createOrder_1 = require("./createOrder");
|
|
17
|
-
Object.defineProperty(exports, "createOrder", { enumerable: true, get: function () { return createOrder_1.createOrder; } });
|
|
18
|
-
var getMarketOrderRawAmounts_1 = require("./getMarketOrderRawAmounts");
|
|
19
|
-
Object.defineProperty(exports, "getMarketOrderRawAmounts", { enumerable: true, get: function () { return getMarketOrderRawAmounts_1.getMarketOrderRawAmounts; } });
|
|
20
|
-
var getOrderRawAmounts_1 = require("./getOrderRawAmounts");
|
|
21
|
-
Object.defineProperty(exports, "getOrderRawAmounts", { enumerable: true, get: function () { return getOrderRawAmounts_1.getOrderRawAmounts; } });
|
|
22
|
-
var roundingConfig_1 = require("./roundingConfig");
|
|
23
|
-
Object.defineProperty(exports, "ROUNDING_CONFIG", { enumerable: true, get: function () { return roundingConfig_1.ROUNDING_CONFIG; } });
|
|
1
|
+
export { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
|
|
2
|
+
export { buildOrder } from "./buildOrder.js";
|
|
3
|
+
export { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
|
|
4
|
+
export { calculateBuyMarketPrice } from "./calculateBuyMarketPrice.js";
|
|
5
|
+
export { calculateSellMarketPrice } from "./calculateSellMarketPrice.js";
|
|
6
|
+
export { createMarketOrder } from "./createMarketOrder.js";
|
|
7
|
+
export { createOrder } from "./createOrder.js";
|
|
8
|
+
export { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts.js";
|
|
9
|
+
export { getOrderRawAmounts } from "./getOrderRawAmounts.js";
|
|
10
|
+
export { ROUNDING_CONFIG } from "./roundingConfig.js";
|
|
24
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { RoundConfig, TickSize } from "../../types";
|
|
1
|
+
import type { RoundConfig, TickSize } from "../../types/index.js";
|
|
2
2
|
export declare const ROUNDING_CONFIG: Record<TickSize, RoundConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roundingConfig.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/roundingConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"roundingConfig.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/roundingConfig.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAkC;IAC7D,KAAK,EAAE;QACN,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,MAAM,EAAE;QACP,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,OAAO,EAAE;QACR,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,QAAQ,EAAE;QACT,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "./orderBuilder";
|
|
1
|
+
export * from "./orderBuilder.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/order-builder/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/order-builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type {
|
|
3
|
-
import {
|
|
4
|
-
import type { Chain, CreateOrderOptions, UserMarketOrderV1, UserMarketOrderV2, UserOrderV1, UserOrderV2 } from "../types";
|
|
1
|
+
import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from "../order-utils/index.js";
|
|
2
|
+
import type { ClobSigner } from "../signing/signer.js";
|
|
3
|
+
import type { Chain, CreateOrderOptions, UserMarketOrderV1, UserMarketOrderV2, UserOrderV1, UserOrderV2 } from "../types/index.js";
|
|
5
4
|
export declare class OrderBuilder {
|
|
6
|
-
readonly signer:
|
|
5
|
+
readonly signer: ClobSigner;
|
|
7
6
|
readonly chainId: Chain;
|
|
8
7
|
readonly signatureType: SignatureTypeV2;
|
|
9
8
|
readonly funderAddress?: string;
|
|
@@ -15,7 +14,7 @@ export declare class OrderBuilder {
|
|
|
15
14
|
* If not provided, the static `signer` property is used.
|
|
16
15
|
*/
|
|
17
16
|
private getSigner?;
|
|
18
|
-
constructor(signer:
|
|
17
|
+
constructor(signer: ClobSigner, chainId: Chain, signatureType?: SignatureTypeV2, funderAddress?: string, getSigner?: () => Promise<ClobSigner> | ClobSigner);
|
|
19
18
|
/**
|
|
20
19
|
* Generate and sign a order
|
|
21
20
|
*/
|
|
@@ -1,47 +1,52 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { SignatureTypeV2 } from "../order-utils/index.js";
|
|
2
|
+
import { createMarketOrder, createOrder } from "./helpers/index.js";
|
|
3
|
+
export class OrderBuilder {
|
|
4
|
+
signer;
|
|
5
|
+
chainId;
|
|
6
|
+
// Signature type used sign orders, defaults to EOA type
|
|
7
|
+
signatureType;
|
|
8
|
+
// Address which holds funds to be used.
|
|
9
|
+
// Used for Polymarket proxy wallets and other smart contract wallets
|
|
10
|
+
// If not provided, funderAddress is the signer address
|
|
11
|
+
funderAddress;
|
|
12
|
+
/**
|
|
13
|
+
* Optional function to dynamically resolve the signer.
|
|
14
|
+
* If provided, this function will be called to obtain a fresh signer instance
|
|
15
|
+
* (e.g., for smart contract wallets or when the signer may change).
|
|
16
|
+
* Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.
|
|
17
|
+
* If not provided, the static `signer` property is used.
|
|
18
|
+
*/
|
|
19
|
+
getSigner;
|
|
8
20
|
constructor(signer, chainId, signatureType, funderAddress, getSigner) {
|
|
9
21
|
this.signer = signer;
|
|
10
22
|
this.chainId = chainId;
|
|
11
|
-
this.signatureType = signatureType === undefined ?
|
|
23
|
+
this.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;
|
|
12
24
|
this.funderAddress = funderAddress;
|
|
13
25
|
this.getSigner = getSigner;
|
|
14
26
|
}
|
|
15
27
|
/**
|
|
16
28
|
* Generate and sign a order
|
|
17
29
|
*/
|
|
18
|
-
buildOrder(userOrder, options, version) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
return (0, helpers_1.createOrder)(signer, this.chainId, this.signatureType, this.funderAddress, userOrder, options, version);
|
|
22
|
-
});
|
|
30
|
+
async buildOrder(userOrder, options, version) {
|
|
31
|
+
const signer = await this.resolveSigner();
|
|
32
|
+
return createOrder(signer, this.chainId, this.signatureType, this.funderAddress, userOrder, options, version);
|
|
23
33
|
}
|
|
24
34
|
/**
|
|
25
35
|
* Generate and sign a market order
|
|
26
36
|
*/
|
|
27
|
-
buildMarketOrder(userMarketOrder, options, version) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return (0, helpers_1.createMarketOrder)(signer, this.chainId, this.signatureType, this.funderAddress, userMarketOrder, options, version);
|
|
31
|
-
});
|
|
37
|
+
async buildMarketOrder(userMarketOrder, options, version) {
|
|
38
|
+
const signer = await this.resolveSigner();
|
|
39
|
+
return createMarketOrder(signer, this.chainId, this.signatureType, this.funderAddress, userMarketOrder, options, version);
|
|
32
40
|
}
|
|
33
41
|
/** Unified getter: use fresh signer if available */
|
|
34
|
-
resolveSigner() {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
return this.signer;
|
|
43
|
-
});
|
|
42
|
+
async resolveSigner() {
|
|
43
|
+
if (this.getSigner) {
|
|
44
|
+
const s = await this.getSigner();
|
|
45
|
+
if (!s)
|
|
46
|
+
throw new Error("getSigner() function returned undefined or null");
|
|
47
|
+
return s;
|
|
48
|
+
}
|
|
49
|
+
return this.signer;
|
|
44
50
|
}
|
|
45
51
|
}
|
|
46
|
-
exports.OrderBuilder = OrderBuilder;
|
|
47
52
|
//# sourceMappingURL=orderBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderBuilder.js","sourceRoot":"","sources":["../../src/order-builder/orderBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orderBuilder.js","sourceRoot":"","sources":["../../src/order-builder/orderBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA0C,MAAM,yBAAyB,CAAC;AAWlG,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,OAAO,YAAY;IACf,MAAM,CAAa;IAEnB,OAAO,CAAQ;IAExB,wDAAwD;IAC/C,aAAa,CAAkB;IAExC,wCAAwC;IACxC,qEAAqE;IACrE,uDAAuD;IAC9C,aAAa,CAAU;IAEhC;;;;;;OAMG;IACK,SAAS,CAA0C;IAE3D,YACC,MAAkB,EAClB,OAAc,EACd,aAA+B,EAC/B,aAAsB,EACtB,SAAkD;QAElD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC;QACvF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CACtB,SAAoC,EACpC,OAA2B,EAC3B,OAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,WAAW,CACjB,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,SAAS,EACT,OAAO,EACP,OAAO,CACP,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAC5B,eAAsD,EACtD,OAA2B,EAC3B,OAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,iBAAiB,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,eAAe,EACf,OAAO,EACP,OAAO,CACP,CAAC;IACH,CAAC;IAED,oDAAoD;IAC5C,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YAC3E,OAAO,CAAC,CAAC;QACV,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;CACD"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.exchangeV1Abi = void 0;
|
|
4
1
|
const exchangeV1Abi = [
|
|
5
2
|
{
|
|
6
3
|
inputs: [
|
|
@@ -1852,5 +1849,5 @@ const exchangeV1Abi = [
|
|
|
1852
1849
|
type: "function",
|
|
1853
1850
|
},
|
|
1854
1851
|
];
|
|
1855
|
-
|
|
1852
|
+
export { exchangeV1Abi };
|
|
1856
1853
|
//# sourceMappingURL=ExchangeV1.js.map
|