@polymarket/clob-client-v2 1.2.0-canary.1 → 1.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/README.md +40 -5
- package/dist/client.cjs +70 -40
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +16 -1
- package/dist/client.d.ts +16 -1
- package/dist/client.js +70 -40
- package/dist/client.js.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.cjs +3 -2
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.cjs.map +1 -1
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js +3 -2
- package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js.map +1 -1
- package/dist/order-builder/helpers/buildOrderCreationArgs.cjs +3 -2
- package/dist/order-builder/helpers/buildOrderCreationArgs.cjs.map +1 -1
- package/dist/order-builder/helpers/buildOrderCreationArgs.js +3 -2
- package/dist/order-builder/helpers/buildOrderCreationArgs.js.map +1 -1
- package/dist/order-builder/helpers/createMarketOrder.cjs +6 -4
- package/dist/order-builder/helpers/createMarketOrder.cjs.map +1 -1
- package/dist/order-builder/helpers/createMarketOrder.js +6 -4
- package/dist/order-builder/helpers/createMarketOrder.js.map +1 -1
- package/dist/order-builder/helpers/createOrder.cjs +6 -4
- package/dist/order-builder/helpers/createOrder.cjs.map +1 -1
- package/dist/order-builder/helpers/createOrder.js +6 -4
- package/dist/order-builder/helpers/createOrder.js.map +1 -1
- package/dist/order-builder/helpers/orderAsset.cjs +18 -0
- package/dist/order-builder/helpers/orderAsset.cjs.map +1 -0
- package/dist/order-builder/helpers/orderAsset.js +16 -0
- package/dist/order-builder/helpers/orderAsset.js.map +1 -0
- package/dist/order-builder/orderBuilder.cjs +2 -2
- package/dist/order-builder/orderBuilder.cjs.map +1 -1
- package/dist/order-builder/orderBuilder.d.cts +2 -2
- package/dist/order-builder/orderBuilder.d.ts +2 -2
- package/dist/order-builder/orderBuilder.js +2 -2
- package/dist/order-builder/orderBuilder.js.map +1 -1
- package/dist/types/clob.cjs.map +1 -1
- package/dist/types/clob.d.cts +0 -1
- package/dist/types/clob.d.ts +0 -1
- package/dist/types/clob.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/ordersV1.cjs.map +1 -1
- package/dist/types/ordersV1.d.cts +2 -0
- package/dist/types/ordersV1.d.ts +2 -0
- package/dist/types/ordersV1.js.map +1 -1
- package/dist/types/ordersV2.cjs.map +1 -1
- package/dist/types/ordersV2.d.cts +17 -13
- package/dist/types/ordersV2.d.ts +17 -13
- package/dist/types/ordersV2.js.map +1 -1
- package/package.json +1 -1
- package/dist/protocol.cjs +0 -22
- package/dist/protocol.cjs.map +0 -1
- package/dist/protocol.js +0 -21
- package/dist/protocol.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Side } from "./order-utils/model/side.js";
|
|
2
2
|
import { ApiKeyCreds, ApiKeyRaw, ApiKeysResponse, AssetType, BalanceAllowanceParams, BalanceAllowanceResponse, BanStatus, BookParams, BuilderApiKey, BuilderApiKeyResponse, BuilderConfig, BuilderFeeRates, BuilderTrade, BuilderTradeParams, BuilderTradesResponse, Chain, ClobErrorResponseBody, ClobRewards, ClobToken, CreateOrderOptions, DropNotificationParams, Earning, FeeDetails, FeeInfo, FeeInfos, FeeRates, L1PolyHeader, L2HeaderArgs, L2PolyHeader, MakerOrder, MarketDetails, MarketPrice, MarketReward, MarketTradeEvent, NegRisk, Notification, OpenOrder, OpenOrderParams, OpenOrdersResponse, OrderBookSummary, OrderMarketCancelParams, OrderPayload, OrderResponse, OrderScoring, OrderScoringParams, OrderSummary, OrderType, OrderVersion, OrdersScoring, OrdersScoringParams, PaginationPayload, PreMigrationOrder, PreMigrationOrdersResponse, PriceHistoryFilterParams, PriceHistoryInterval, ReadonlyApiKeyResponse, RewardsConfig, RewardsPercentages, RoundConfig, SimpleHeaders, TickSize, TickSizes, Token, TokenConditionMap, TotalUserEarning, Trade, TradeParams, TradesPaginatedResponse, UserEarning, UserRewardsEarning } from "./types/clob.js";
|
|
3
3
|
import { NewOrderV1, PostOrdersV1Args, UserMarketOrderV1, UserOrderV1, orderToJsonV1 } from "./types/ordersV1.js";
|
|
4
|
-
import { NewOrderV2, PostOrdersV2Args, UserMarketOrderV2, UserOrderV2, orderToJsonV2 } from "./types/ordersV2.js";
|
|
4
|
+
import { NewOrderV2, OrderAsset, PostOrdersV2Args, UserMarketOrderV2, UserOrderV2, orderToJsonV2 } from "./types/ordersV2.js";
|
|
5
5
|
import { ExchangeV3OrderAmounts } from "./types/ordersV3.js";
|
|
6
6
|
import { PostOrdersArgs, SignedOrder, VersionedPostOrdersArgs, VersionedSignedOrder, VersionedUserMarketOrder, VersionedUserOrder, isV2Order } from "./types/unifiedOrder.js";
|
|
7
7
|
import "./types/index.js";
|
|
@@ -14,4 +14,4 @@ import { ClobClient, ClobClientOptions } from "./client.js";
|
|
|
14
14
|
import { COLLATERAL_TOKEN_DECIMALS, CONDITIONAL_TOKEN_DECIMALS, ContractConfig, getContractConfig } from "./config.js";
|
|
15
15
|
import { ApiError, L1_AUTH_UNAVAILABLE_ERROR, L2_AUTH_NOT_AVAILABLE } from "./errors.js";
|
|
16
16
|
import { createL1Headers, createL2Headers } from "./headers/index.js";
|
|
17
|
-
export { ApiError, ApiKeyCreds, ApiKeyRaw, ApiKeysResponse, AssetType, BalanceAllowanceParams, BalanceAllowanceResponse, BanStatus, BookParams, BuilderApiKey, BuilderApiKeyResponse, BuilderConfig, BuilderFeeRates, BuilderTrade, BuilderTradeParams, BuilderTradesResponse, COLLATERAL_TOKEN_DECIMALS, CONDITIONAL_TOKEN_DECIMALS, Chain, ClobClient, ClobClientOptions, ClobErrorResponseBody, ClobRewards, ClobToken, ContractConfig, CreateOrderOptions, DropNotificationParams, Earning, ExchangeV3OrderAmounts, FeeDetails, FeeInfo, FeeInfos, FeeRates, L1PolyHeader, L1_AUTH_UNAVAILABLE_ERROR, L2HeaderArgs, L2PolyHeader, L2_AUTH_NOT_AVAILABLE, MakerOrder, MarketDetails, MarketPrice, MarketReward, MarketTradeEvent, NegRisk, NewOrderV1, NewOrderV2, Notification, OpenOrder, OpenOrderParams, OpenOrdersResponse, OrderBookSummary, OrderBuilder, OrderMarketCancelParams, OrderPayload, OrderResponse, OrderScoring, OrderScoringParams, OrderSummary, OrderType, OrderVersion, OrdersScoring, OrdersScoringParams, PaginationPayload, PostOrdersArgs, PostOrdersV1Args, PostOrdersV2Args, PreMigrationOrder, PreMigrationOrdersResponse, PriceHistoryFilterParams, PriceHistoryInterval, ReadonlyApiKeyResponse, RewardsConfig, RewardsPercentages, RoundConfig, Side, SignatureTypeV1, SignatureTypeV2, SignedOrder, SimpleHeaders, TickSize, TickSizes, Token, TokenConditionMap, TotalUserEarning, Trade, TradeParams, TradesPaginatedResponse, UserEarning, UserMarketOrderV1, UserMarketOrderV2, UserOrderV1, UserOrderV2, UserRewardsEarning, VersionedPostOrdersArgs, VersionedSignedOrder, VersionedUserMarketOrder, VersionedUserOrder, adjustBuyAmountForFees, createL1Headers, createL2Headers, getContractConfig, isV2Order, orderToJsonV1, orderToJsonV2 };
|
|
17
|
+
export { ApiError, ApiKeyCreds, ApiKeyRaw, ApiKeysResponse, AssetType, BalanceAllowanceParams, BalanceAllowanceResponse, BanStatus, BookParams, BuilderApiKey, BuilderApiKeyResponse, BuilderConfig, BuilderFeeRates, BuilderTrade, BuilderTradeParams, BuilderTradesResponse, COLLATERAL_TOKEN_DECIMALS, CONDITIONAL_TOKEN_DECIMALS, Chain, ClobClient, ClobClientOptions, ClobErrorResponseBody, ClobRewards, ClobToken, ContractConfig, CreateOrderOptions, DropNotificationParams, Earning, ExchangeV3OrderAmounts, FeeDetails, FeeInfo, FeeInfos, FeeRates, L1PolyHeader, L1_AUTH_UNAVAILABLE_ERROR, L2HeaderArgs, L2PolyHeader, L2_AUTH_NOT_AVAILABLE, MakerOrder, MarketDetails, MarketPrice, MarketReward, MarketTradeEvent, NegRisk, NewOrderV1, NewOrderV2, Notification, OpenOrder, OpenOrderParams, OpenOrdersResponse, OrderAsset, OrderBookSummary, OrderBuilder, OrderMarketCancelParams, OrderPayload, OrderResponse, OrderScoring, OrderScoringParams, OrderSummary, OrderType, OrderVersion, OrdersScoring, OrdersScoringParams, PaginationPayload, PostOrdersArgs, PostOrdersV1Args, PostOrdersV2Args, PreMigrationOrder, PreMigrationOrdersResponse, PriceHistoryFilterParams, PriceHistoryInterval, ReadonlyApiKeyResponse, RewardsConfig, RewardsPercentages, RoundConfig, Side, SignatureTypeV1, SignatureTypeV2, SignedOrder, SimpleHeaders, TickSize, TickSizes, Token, TokenConditionMap, TotalUserEarning, Trade, TradeParams, TradesPaginatedResponse, UserEarning, UserMarketOrderV1, UserMarketOrderV2, UserOrderV1, UserOrderV2, UserRewardsEarning, VersionedPostOrdersArgs, VersionedSignedOrder, VersionedUserMarketOrder, VersionedUserOrder, adjustBuyAmountForFees, createL1Headers, createL2Headers, getContractConfig, isV2Order, orderToJsonV1, orderToJsonV2 };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
2
|
const require_constants = require('../../constants.cjs');
|
|
3
3
|
const require_config = require('../../config.cjs');
|
|
4
|
+
const require_orderAsset = require('./orderAsset.cjs');
|
|
4
5
|
const require_getMarketOrderRawAmounts = require('./getMarketOrderRawAmounts.cjs');
|
|
5
6
|
let viem = require("viem");
|
|
6
7
|
|
|
@@ -14,7 +15,7 @@ async function buildMarketOrderCreationArgs(signer, maker, signatureType, userMa
|
|
|
14
15
|
return {
|
|
15
16
|
maker,
|
|
16
17
|
taker: v1Order.taker ?? viem.zeroAddress,
|
|
17
|
-
tokenId: userMarketOrder
|
|
18
|
+
tokenId: require_orderAsset.resolveOrderAssetID(userMarketOrder),
|
|
18
19
|
makerAmount,
|
|
19
20
|
takerAmount,
|
|
20
21
|
side,
|
|
@@ -26,7 +27,7 @@ async function buildMarketOrderCreationArgs(signer, maker, signatureType, userMa
|
|
|
26
27
|
}
|
|
27
28
|
return {
|
|
28
29
|
maker,
|
|
29
|
-
tokenId: userMarketOrder
|
|
30
|
+
tokenId: require_orderAsset.resolveOrderAssetID(userMarketOrder),
|
|
30
31
|
makerAmount,
|
|
31
32
|
takerAmount,
|
|
32
33
|
side,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMarketOrderCreationArgs.cjs","names":["getMarketOrderRawAmounts","COLLATERAL_TOKEN_DECIMALS","zeroAddress","bytes32Zero"],"sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserMarketOrderV1, UserMarketOrderV2 } from \"../../types/index.js\";\n\nimport { getMarketOrderRawAmounts } from \"./index.js\";\n\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getMarketOrderRawAmounts(\n\t\tuserMarketOrder.side,\n\t\tuserMarketOrder.amount,\n\t\tuserMarketOrder.price || 1,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userMarketOrder as UserMarketOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: userMarketOrder
|
|
1
|
+
{"version":3,"file":"buildMarketOrderCreationArgs.cjs","names":["getMarketOrderRawAmounts","COLLATERAL_TOKEN_DECIMALS","zeroAddress","resolveOrderAssetID","bytes32Zero"],"sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserMarketOrderV1, UserMarketOrderV2 } from \"../../types/index.js\";\n\nimport { getMarketOrderRawAmounts } from \"./index.js\";\nimport { resolveOrderAssetID } from \"./orderAsset.js\";\n\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getMarketOrderRawAmounts(\n\t\tuserMarketOrder.side,\n\t\tuserMarketOrder.amount,\n\t\tuserMarketOrder.price || 1,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userMarketOrder as UserMarketOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: resolveOrderAssetID(userMarketOrder),\n\t\t\tmakerAmount,\n\t\t\ttakerAmount,\n\t\t\tside,\n\t\t\tsigner,\n\t\t\tsignatureType: signatureType as unknown as SignatureTypeV1,\n\t\t\tfeeRateBps: v1Order.feeRateBps?.toString() ?? \"0\",\n\t\t\tnonce: v1Order.nonce?.toString() ?? \"0\",\n\t\t};\n\t}\n\n\treturn {\n\t\tmaker,\n\t\ttokenId: resolveOrderAssetID(userMarketOrder),\n\t\tmakerAmount,\n\t\ttakerAmount,\n\t\tside,\n\t\tsigner,\n\t\tsignatureType,\n\t\ttimestamp: Date.now().toString(),\n\t\tmetadata:\n\t\t\t\"metadata\" in userMarketOrder ? (userMarketOrder.metadata ?? bytes32Zero) : bytes32Zero,\n\t\tbuilder: userMarketOrder.builderCode ?? bytes32Zero,\n\t};\n}\n"],"mappings":";;;;;;;;AA+CA,eAAsB,6BACrB,QACA,OACA,eACA,iBACA,aACA,UAAkB,GACmB;CACrC,MAAM,EAAE,MAAM,aAAa,gBAAgBA,0DAC1C,gBAAgB,MAChB,gBAAgB,QAChB,gBAAgB,SAAS,GACzB,YACA;CAED,MAAM,mCAAyB,YAAY,UAAU,EAAEC,yCAA0B,CAAC,UAAU;CAC5F,MAAM,mCAAyB,YAAY,UAAU,EAAEA,yCAA0B,CAAC,UAAU;AAE5F,KAAI,YAAY,GAAG;EAClB,MAAM,UAAU;AAChB,SAAO;GACN;GACA,OAAO,QAAQ,SAASC;GACxB,SAASC,uCAAoB,gBAAgB;GAC7C;GACA;GACA;GACA;GACe;GACf,YAAY,QAAQ,YAAY,UAAU,IAAI;GAC9C,OAAO,QAAQ,OAAO,UAAU,IAAI;GACpC;;AAGF,QAAO;EACN;EACA,SAASA,uCAAoB,gBAAgB;EAC7C;EACA;EACA;EACA;EACA;EACA,WAAW,KAAK,KAAK,CAAC,UAAU;EAChC,UACC,cAAc,kBAAmB,gBAAgB,YAAYC,gCAAeA;EAC7E,SAAS,gBAAgB,eAAeA;EACxC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { bytes32Zero } from "../../constants.js";
|
|
2
2
|
import { COLLATERAL_TOKEN_DECIMALS } from "../../config.js";
|
|
3
|
+
import { resolveOrderAssetID } from "./orderAsset.js";
|
|
3
4
|
import { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts.js";
|
|
4
5
|
import { parseUnits, zeroAddress } from "viem";
|
|
5
6
|
|
|
@@ -13,7 +14,7 @@ async function buildMarketOrderCreationArgs(signer, maker, signatureType, userMa
|
|
|
13
14
|
return {
|
|
14
15
|
maker,
|
|
15
16
|
taker: v1Order.taker ?? zeroAddress,
|
|
16
|
-
tokenId: userMarketOrder
|
|
17
|
+
tokenId: resolveOrderAssetID(userMarketOrder),
|
|
17
18
|
makerAmount,
|
|
18
19
|
takerAmount,
|
|
19
20
|
side,
|
|
@@ -25,7 +26,7 @@ async function buildMarketOrderCreationArgs(signer, maker, signatureType, userMa
|
|
|
25
26
|
}
|
|
26
27
|
return {
|
|
27
28
|
maker,
|
|
28
|
-
tokenId: userMarketOrder
|
|
29
|
+
tokenId: resolveOrderAssetID(userMarketOrder),
|
|
29
30
|
makerAmount,
|
|
30
31
|
takerAmount,
|
|
31
32
|
side,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMarketOrderCreationArgs.js","names":[],"sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserMarketOrderV1, UserMarketOrderV2 } from \"../../types/index.js\";\n\nimport { getMarketOrderRawAmounts } from \"./index.js\";\n\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getMarketOrderRawAmounts(\n\t\tuserMarketOrder.side,\n\t\tuserMarketOrder.amount,\n\t\tuserMarketOrder.price || 1,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userMarketOrder as UserMarketOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: userMarketOrder
|
|
1
|
+
{"version":3,"file":"buildMarketOrderCreationArgs.js","names":[],"sources":["../../../src/order-builder/helpers/buildMarketOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserMarketOrderV1, UserMarketOrderV2 } from \"../../types/index.js\";\n\nimport { getMarketOrderRawAmounts } from \"./index.js\";\nimport { resolveOrderAssetID } from \"./orderAsset.js\";\n\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildMarketOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getMarketOrderRawAmounts(\n\t\tuserMarketOrder.side,\n\t\tuserMarketOrder.amount,\n\t\tuserMarketOrder.price || 1,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userMarketOrder as UserMarketOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: resolveOrderAssetID(userMarketOrder),\n\t\t\tmakerAmount,\n\t\t\ttakerAmount,\n\t\t\tside,\n\t\t\tsigner,\n\t\t\tsignatureType: signatureType as unknown as SignatureTypeV1,\n\t\t\tfeeRateBps: v1Order.feeRateBps?.toString() ?? \"0\",\n\t\t\tnonce: v1Order.nonce?.toString() ?? \"0\",\n\t\t};\n\t}\n\n\treturn {\n\t\tmaker,\n\t\ttokenId: resolveOrderAssetID(userMarketOrder),\n\t\tmakerAmount,\n\t\ttakerAmount,\n\t\tside,\n\t\tsigner,\n\t\tsignatureType,\n\t\ttimestamp: Date.now().toString(),\n\t\tmetadata:\n\t\t\t\"metadata\" in userMarketOrder ? (userMarketOrder.metadata ?? bytes32Zero) : bytes32Zero,\n\t\tbuilder: userMarketOrder.builderCode ?? bytes32Zero,\n\t};\n}\n"],"mappings":";;;;;;;AA+CA,eAAsB,6BACrB,QACA,OACA,eACA,iBACA,aACA,UAAkB,GACmB;CACrC,MAAM,EAAE,MAAM,aAAa,gBAAgB,yBAC1C,gBAAgB,MAChB,gBAAgB,QAChB,gBAAgB,SAAS,GACzB,YACA;CAED,MAAM,cAAc,WAAW,YAAY,UAAU,EAAE,0BAA0B,CAAC,UAAU;CAC5F,MAAM,cAAc,WAAW,YAAY,UAAU,EAAE,0BAA0B,CAAC,UAAU;AAE5F,KAAI,YAAY,GAAG;EAClB,MAAM,UAAU;AAChB,SAAO;GACN;GACA,OAAO,QAAQ,SAAS;GACxB,SAAS,oBAAoB,gBAAgB;GAC7C;GACA;GACA;GACA;GACe;GACf,YAAY,QAAQ,YAAY,UAAU,IAAI;GAC9C,OAAO,QAAQ,OAAO,UAAU,IAAI;GACpC;;AAGF,QAAO;EACN;EACA,SAAS,oBAAoB,gBAAgB;EAC7C;EACA;EACA;EACA;EACA;EACA,WAAW,KAAK,KAAK,CAAC,UAAU;EAChC,UACC,cAAc,kBAAmB,gBAAgB,YAAY,cAAe;EAC7E,SAAS,gBAAgB,eAAe;EACxC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
2
|
const require_constants = require('../../constants.cjs');
|
|
3
3
|
const require_config = require('../../config.cjs');
|
|
4
|
+
const require_orderAsset = require('./orderAsset.cjs');
|
|
4
5
|
const require_getOrderRawAmounts = require('./getOrderRawAmounts.cjs');
|
|
5
6
|
let viem = require("viem");
|
|
6
7
|
|
|
@@ -14,7 +15,7 @@ async function buildOrderCreationArgs(signer, maker, signatureType, userOrder, r
|
|
|
14
15
|
return {
|
|
15
16
|
maker,
|
|
16
17
|
taker: v1Order.taker ?? viem.zeroAddress,
|
|
17
|
-
tokenId: userOrder
|
|
18
|
+
tokenId: require_orderAsset.resolveOrderAssetID(userOrder),
|
|
18
19
|
makerAmount,
|
|
19
20
|
takerAmount,
|
|
20
21
|
side,
|
|
@@ -27,7 +28,7 @@ async function buildOrderCreationArgs(signer, maker, signatureType, userOrder, r
|
|
|
27
28
|
}
|
|
28
29
|
return {
|
|
29
30
|
maker,
|
|
30
|
-
tokenId: userOrder
|
|
31
|
+
tokenId: require_orderAsset.resolveOrderAssetID(userOrder),
|
|
31
32
|
makerAmount,
|
|
32
33
|
takerAmount,
|
|
33
34
|
side,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildOrderCreationArgs.cjs","names":["getOrderRawAmounts","COLLATERAL_TOKEN_DECIMALS","zeroAddress","bytes32Zero"],"sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\n\nimport { getOrderRawAmounts } from \"./getOrderRawAmounts.js\";\n\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(\n\t\tuserOrder.side,\n\t\tuserOrder.size,\n\t\tuserOrder.price,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userOrder as UserOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: userOrder
|
|
1
|
+
{"version":3,"file":"buildOrderCreationArgs.cjs","names":["getOrderRawAmounts","COLLATERAL_TOKEN_DECIMALS","zeroAddress","resolveOrderAssetID","bytes32Zero"],"sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\n\nimport { getOrderRawAmounts } from \"./getOrderRawAmounts.js\";\nimport { resolveOrderAssetID } from \"./orderAsset.js\";\n\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(\n\t\tuserOrder.side,\n\t\tuserOrder.size,\n\t\tuserOrder.price,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userOrder as UserOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: resolveOrderAssetID(userOrder),\n\t\t\tmakerAmount,\n\t\t\ttakerAmount,\n\t\t\tside,\n\t\t\tsigner,\n\t\t\tsignatureType: signatureType as unknown as SignatureTypeV1,\n\t\t\tfeeRateBps: v1Order.feeRateBps?.toString() ?? \"0\",\n\t\t\tnonce: v1Order.nonce?.toString() ?? \"0\",\n\t\t\texpiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : \"0\",\n\t\t};\n\t}\n\n\treturn {\n\t\tmaker,\n\t\ttokenId: resolveOrderAssetID(userOrder),\n\t\tmakerAmount,\n\t\ttakerAmount,\n\t\tside,\n\t\tsigner,\n\t\tsignatureType,\n\t\ttimestamp: Date.now().toString(),\n\t\tmetadata: \"metadata\" in userOrder ? (userOrder.metadata ?? bytes32Zero) : bytes32Zero,\n\t\tbuilder: userOrder.builderCode ?? bytes32Zero,\n\t\texpiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : \"0\",\n\t};\n}\n"],"mappings":";;;;;;;;AA+CA,eAAsB,uBACrB,QACA,OACA,eACA,WACA,aACA,UAAkB,GACmB;CACrC,MAAM,EAAE,MAAM,aAAa,gBAAgBA,8CAC1C,UAAU,MACV,UAAU,MACV,UAAU,OACV,YACA;CAED,MAAM,mCAAyB,YAAY,UAAU,EAAEC,yCAA0B,CAAC,UAAU;CAC5F,MAAM,mCAAyB,YAAY,UAAU,EAAEA,yCAA0B,CAAC,UAAU;AAE5F,KAAI,YAAY,GAAG;EAClB,MAAM,UAAU;AAChB,SAAO;GACN;GACA,OAAO,QAAQ,SAASC;GACxB,SAASC,uCAAoB,UAAU;GACvC;GACA;GACA;GACA;GACe;GACf,YAAY,QAAQ,YAAY,UAAU,IAAI;GAC9C,OAAO,QAAQ,OAAO,UAAU,IAAI;GACpC,YAAY,UAAU,eAAe,SAAY,UAAU,WAAW,UAAU,GAAG;GACnF;;AAGF,QAAO;EACN;EACA,SAASA,uCAAoB,UAAU;EACvC;EACA;EACA;EACA;EACA;EACA,WAAW,KAAK,KAAK,CAAC,UAAU;EAChC,UAAU,cAAc,YAAa,UAAU,YAAYC,gCAAeA;EAC1E,SAAS,UAAU,eAAeA;EAClC,YAAY,UAAU,eAAe,SAAY,UAAU,WAAW,UAAU,GAAG;EACnF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { bytes32Zero } from "../../constants.js";
|
|
2
2
|
import { COLLATERAL_TOKEN_DECIMALS } from "../../config.js";
|
|
3
|
+
import { resolveOrderAssetID } from "./orderAsset.js";
|
|
3
4
|
import { getOrderRawAmounts } from "./getOrderRawAmounts.js";
|
|
4
5
|
import { parseUnits, zeroAddress } from "viem";
|
|
5
6
|
|
|
@@ -13,7 +14,7 @@ async function buildOrderCreationArgs(signer, maker, signatureType, userOrder, r
|
|
|
13
14
|
return {
|
|
14
15
|
maker,
|
|
15
16
|
taker: v1Order.taker ?? zeroAddress,
|
|
16
|
-
tokenId: userOrder
|
|
17
|
+
tokenId: resolveOrderAssetID(userOrder),
|
|
17
18
|
makerAmount,
|
|
18
19
|
takerAmount,
|
|
19
20
|
side,
|
|
@@ -26,7 +27,7 @@ async function buildOrderCreationArgs(signer, maker, signatureType, userOrder, r
|
|
|
26
27
|
}
|
|
27
28
|
return {
|
|
28
29
|
maker,
|
|
29
|
-
tokenId: userOrder
|
|
30
|
+
tokenId: resolveOrderAssetID(userOrder),
|
|
30
31
|
makerAmount,
|
|
31
32
|
takerAmount,
|
|
32
33
|
side,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildOrderCreationArgs.js","names":[],"sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\n\nimport { getOrderRawAmounts } from \"./getOrderRawAmounts.js\";\n\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(\n\t\tuserOrder.side,\n\t\tuserOrder.size,\n\t\tuserOrder.price,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userOrder as UserOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: userOrder
|
|
1
|
+
{"version":3,"file":"buildOrderCreationArgs.js","names":[],"sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"sourcesContent":["import { parseUnits, zeroAddress } from \"viem\";\n\nimport { COLLATERAL_TOKEN_DECIMALS } from \"../../config.js\";\nimport { bytes32Zero } from \"../../constants.js\";\nimport type {\n\tOrderDataV1,\n\tOrderDataV2,\n\tSignatureTypeV1,\n\tSignatureTypeV2,\n} from \"../../order-utils/index.js\";\nimport type { RoundConfig, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\n\nimport { getOrderRawAmounts } from \"./getOrderRawAmounts.js\";\nimport { resolveOrderAssetID } from \"./orderAsset.js\";\n\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 1,\n): Promise<OrderDataV1>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion?: 2,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: 3,\n): Promise<OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number,\n): Promise<OrderDataV1 | OrderDataV2>;\nexport async function buildOrderCreationArgs(\n\tsigner: string,\n\tmaker: string,\n\tsignatureType: SignatureTypeV2,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\troundConfig: RoundConfig,\n\tversion: number = 2,\n): Promise<OrderDataV1 | OrderDataV2> {\n\tconst { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(\n\t\tuserOrder.side,\n\t\tuserOrder.size,\n\t\tuserOrder.price,\n\t\troundConfig,\n\t);\n\n\tconst makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\tconst takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();\n\n\tif (version === 1) {\n\t\tconst v1Order = userOrder as UserOrderV1;\n\t\treturn {\n\t\t\tmaker,\n\t\t\ttaker: v1Order.taker ?? zeroAddress,\n\t\t\ttokenId: resolveOrderAssetID(userOrder),\n\t\t\tmakerAmount,\n\t\t\ttakerAmount,\n\t\t\tside,\n\t\t\tsigner,\n\t\t\tsignatureType: signatureType as unknown as SignatureTypeV1,\n\t\t\tfeeRateBps: v1Order.feeRateBps?.toString() ?? \"0\",\n\t\t\tnonce: v1Order.nonce?.toString() ?? \"0\",\n\t\t\texpiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : \"0\",\n\t\t};\n\t}\n\n\treturn {\n\t\tmaker,\n\t\ttokenId: resolveOrderAssetID(userOrder),\n\t\tmakerAmount,\n\t\ttakerAmount,\n\t\tside,\n\t\tsigner,\n\t\tsignatureType,\n\t\ttimestamp: Date.now().toString(),\n\t\tmetadata: \"metadata\" in userOrder ? (userOrder.metadata ?? bytes32Zero) : bytes32Zero,\n\t\tbuilder: userOrder.builderCode ?? bytes32Zero,\n\t\texpiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : \"0\",\n\t};\n}\n"],"mappings":";;;;;;;AA+CA,eAAsB,uBACrB,QACA,OACA,eACA,WACA,aACA,UAAkB,GACmB;CACrC,MAAM,EAAE,MAAM,aAAa,gBAAgB,mBAC1C,UAAU,MACV,UAAU,MACV,UAAU,OACV,YACA;CAED,MAAM,cAAc,WAAW,YAAY,UAAU,EAAE,0BAA0B,CAAC,UAAU;CAC5F,MAAM,cAAc,WAAW,YAAY,UAAU,EAAE,0BAA0B,CAAC,UAAU;AAE5F,KAAI,YAAY,GAAG;EAClB,MAAM,UAAU;AAChB,SAAO;GACN;GACA,OAAO,QAAQ,SAAS;GACxB,SAAS,oBAAoB,UAAU;GACvC;GACA;GACA;GACA;GACe;GACf,YAAY,QAAQ,YAAY,UAAU,IAAI;GAC9C,OAAO,QAAQ,OAAO,UAAU,IAAI;GACpC,YAAY,UAAU,eAAe,SAAY,UAAU,WAAW,UAAU,GAAG;GACnF;;AAGF,QAAO;EACN;EACA,SAAS,oBAAoB,UAAU;EACvC;EACA;EACA;EACA;EACA;EACA,WAAW,KAAK,KAAK,CAAC,UAAU;EAChC,UAAU,cAAc,YAAa,UAAU,YAAY,cAAe;EAC1E,SAAS,UAAU,eAAe;EAClC,YAAY,UAAU,eAAe,SAAY,UAAU,WAAW,UAAU,GAAG;EACnF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const require_signer = require('../../signing/signer.cjs');
|
|
2
2
|
const require_config = require('../../config.cjs');
|
|
3
|
+
const require_orderAsset = require('./orderAsset.cjs');
|
|
3
4
|
const require_buildMarketOrderCreationArgs = require('./buildMarketOrderCreationArgs.cjs');
|
|
4
5
|
const require_signatureTypeV2 = require('../../order-utils/model/signatureTypeV2.cjs');
|
|
5
6
|
const require_buildOrder = require('./buildOrder.cjs');
|
|
@@ -11,9 +12,10 @@ const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddres
|
|
|
11
12
|
const maker = funderAddress === void 0 ? eoaSignerAddress : funderAddress;
|
|
12
13
|
const signerForOrder = signatureType === require_signatureTypeV2.SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;
|
|
13
14
|
const contractConfig = require_config.getContractConfig(chainId);
|
|
14
|
-
const
|
|
15
|
+
const orderVersion = require_orderAsset.resolveOrderRouting(userMarketOrder, version).exchangeVersion ?? version;
|
|
16
|
+
const orderData = await require_buildMarketOrderCreationArgs.buildMarketOrderCreationArgs(signerForOrder, maker, signatureType, userMarketOrder, require_roundingConfig.ROUNDING_CONFIG[options.tickSize], orderVersion);
|
|
15
17
|
let exchangeContract;
|
|
16
|
-
switch (
|
|
18
|
+
switch (orderVersion) {
|
|
17
19
|
case 1:
|
|
18
20
|
if (signatureType === require_signatureTypeV2.SignatureTypeV2.POLY_1271) throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
|
|
19
21
|
exchangeContract = options.negRisk ? contractConfig.negRiskExchange : contractConfig.exchange;
|
|
@@ -24,9 +26,9 @@ const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddres
|
|
|
24
26
|
case 3:
|
|
25
27
|
exchangeContract = contractConfig.exchangeV3;
|
|
26
28
|
break;
|
|
27
|
-
default: throw new Error(`unsupported order version ${
|
|
29
|
+
default: throw new Error(`unsupported order version ${orderVersion}`);
|
|
28
30
|
}
|
|
29
|
-
return require_buildOrder.buildOrder(eoaSigner, exchangeContract, chainId, orderData,
|
|
31
|
+
return require_buildOrder.buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);
|
|
30
32
|
};
|
|
31
33
|
|
|
32
34
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMarketOrder.cjs","names":["getSignerAddress","SignatureTypeV2","getContractConfig","buildMarketOrderCreationArgs","ROUNDING_CONFIG","exchangeContract: string","buildOrder"],"sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n} from \"../../types/index.js\";\nimport { buildMarketOrderCreationArgs } from \"./buildMarketOrderCreationArgs.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createMarketOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\n\tconst orderData = await buildMarketOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserMarketOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\
|
|
1
|
+
{"version":3,"file":"createMarketOrder.cjs","names":["getSignerAddress","SignatureTypeV2","getContractConfig","resolveOrderRouting","buildMarketOrderCreationArgs","ROUNDING_CONFIG","exchangeContract: string","buildOrder"],"sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n} from \"../../types/index.js\";\nimport { buildMarketOrderCreationArgs } from \"./buildMarketOrderCreationArgs.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { resolveOrderRouting } from \"./orderAsset.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createMarketOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\tconst orderVersion = resolveOrderRouting(userMarketOrder, version).exchangeVersion ?? version;\n\n\tconst orderData = await buildMarketOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserMarketOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\torderVersion,\n\t);\n\n\tlet exchangeContract: string;\n\tswitch (orderVersion) {\n\t\tcase 1:\n\t\t\tif (signatureType === SignatureTypeV2.POLY_1271) {\n\t\t\t\tthrow new Error(`signature type POLY_1271 is not supported for v1 orders`);\n\t\t\t}\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchange\n\t\t\t\t: contractConfig.exchange;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchangeV2\n\t\t\t\t: contractConfig.exchangeV2;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\texchangeContract = contractConfig.exchangeV3;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow new Error(`unsupported order version ${orderVersion}`);\n\t}\n\n\treturn buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);\n};\n"],"mappings":";;;;;;;;;AAeA,MAAa,oBAAoB,OAChC,WACA,SACA,eACA,eACA,iBACA,SACA,YAC4C;CAC5C,MAAM,mBAAmB,MAAMA,gCAAiB,UAAU;CAG1D,MAAM,QAAQ,kBAAkB,SAAY,mBAAmB;CAG/D,MAAM,iBAAiB,kBAAkBC,wCAAgB,YAAY,QAAQ;CAC7E,MAAM,iBAAiBC,iCAAkB,QAAQ;CACjD,MAAM,eAAeC,uCAAoB,iBAAiB,QAAQ,CAAC,mBAAmB;CAEtF,MAAM,YAAY,MAAMC,kEACvB,gBACA,OACA,eACA,iBACAC,uCAAgB,QAAQ,WACxB,aACA;CAED,IAAIC;AACJ,SAAQ,cAAR;EACC,KAAK;AACJ,OAAI,kBAAkBL,wCAAgB,UACrC,OAAM,IAAI,MAAM,0DAA0D;AAE3E,sBAAmB,QAAQ,UACxB,eAAe,kBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,QAAQ,UACxB,eAAe,oBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,eAAe;AAClC;EACD,QACC,OAAM,IAAI,MAAM,6BAA6B,eAAe;;AAG9D,QAAOM,8BAAW,WAAW,kBAAkB,SAAS,WAAW,aAAa"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getSignerAddress } from "../../signing/signer.js";
|
|
2
2
|
import { getContractConfig } from "../../config.js";
|
|
3
|
+
import { resolveOrderRouting } from "./orderAsset.js";
|
|
3
4
|
import { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
|
|
4
5
|
import { SignatureTypeV2 } from "../../order-utils/model/signatureTypeV2.js";
|
|
5
6
|
import { buildOrder } from "./buildOrder.js";
|
|
@@ -11,9 +12,10 @@ const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddres
|
|
|
11
12
|
const maker = funderAddress === void 0 ? eoaSignerAddress : funderAddress;
|
|
12
13
|
const signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;
|
|
13
14
|
const contractConfig = getContractConfig(chainId);
|
|
14
|
-
const
|
|
15
|
+
const orderVersion = resolveOrderRouting(userMarketOrder, version).exchangeVersion ?? version;
|
|
16
|
+
const orderData = await buildMarketOrderCreationArgs(signerForOrder, maker, signatureType, userMarketOrder, ROUNDING_CONFIG[options.tickSize], orderVersion);
|
|
15
17
|
let exchangeContract;
|
|
16
|
-
switch (
|
|
18
|
+
switch (orderVersion) {
|
|
17
19
|
case 1:
|
|
18
20
|
if (signatureType === SignatureTypeV2.POLY_1271) throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
|
|
19
21
|
exchangeContract = options.negRisk ? contractConfig.negRiskExchange : contractConfig.exchange;
|
|
@@ -24,9 +26,9 @@ const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddres
|
|
|
24
26
|
case 3:
|
|
25
27
|
exchangeContract = contractConfig.exchangeV3;
|
|
26
28
|
break;
|
|
27
|
-
default: throw new Error(`unsupported order version ${
|
|
29
|
+
default: throw new Error(`unsupported order version ${orderVersion}`);
|
|
28
30
|
}
|
|
29
|
-
return buildOrder(eoaSigner, exchangeContract, chainId, orderData,
|
|
31
|
+
return buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);
|
|
30
32
|
};
|
|
31
33
|
|
|
32
34
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMarketOrder.js","names":["exchangeContract: string"],"sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n} from \"../../types/index.js\";\nimport { buildMarketOrderCreationArgs } from \"./buildMarketOrderCreationArgs.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createMarketOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\n\tconst orderData = await buildMarketOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserMarketOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\
|
|
1
|
+
{"version":3,"file":"createMarketOrder.js","names":["exchangeContract: string"],"sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n} from \"../../types/index.js\";\nimport { buildMarketOrderCreationArgs } from \"./buildMarketOrderCreationArgs.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { resolveOrderRouting } from \"./orderAsset.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createMarketOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\tconst orderVersion = resolveOrderRouting(userMarketOrder, version).exchangeVersion ?? version;\n\n\tconst orderData = await buildMarketOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserMarketOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\torderVersion,\n\t);\n\n\tlet exchangeContract: string;\n\tswitch (orderVersion) {\n\t\tcase 1:\n\t\t\tif (signatureType === SignatureTypeV2.POLY_1271) {\n\t\t\t\tthrow new Error(`signature type POLY_1271 is not supported for v1 orders`);\n\t\t\t}\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchange\n\t\t\t\t: contractConfig.exchange;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchangeV2\n\t\t\t\t: contractConfig.exchangeV2;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\texchangeContract = contractConfig.exchangeV3;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow new Error(`unsupported order version ${orderVersion}`);\n\t}\n\n\treturn buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);\n};\n"],"mappings":";;;;;;;;;AAeA,MAAa,oBAAoB,OAChC,WACA,SACA,eACA,eACA,iBACA,SACA,YAC4C;CAC5C,MAAM,mBAAmB,MAAM,iBAAiB,UAAU;CAG1D,MAAM,QAAQ,kBAAkB,SAAY,mBAAmB;CAG/D,MAAM,iBAAiB,kBAAkB,gBAAgB,YAAY,QAAQ;CAC7E,MAAM,iBAAiB,kBAAkB,QAAQ;CACjD,MAAM,eAAe,oBAAoB,iBAAiB,QAAQ,CAAC,mBAAmB;CAEtF,MAAM,YAAY,MAAM,6BACvB,gBACA,OACA,eACA,iBACA,gBAAgB,QAAQ,WACxB,aACA;CAED,IAAIA;AACJ,SAAQ,cAAR;EACC,KAAK;AACJ,OAAI,kBAAkB,gBAAgB,UACrC,OAAM,IAAI,MAAM,0DAA0D;AAE3E,sBAAmB,QAAQ,UACxB,eAAe,kBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,QAAQ,UACxB,eAAe,oBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,eAAe;AAClC;EACD,QACC,OAAM,IAAI,MAAM,6BAA6B,eAAe;;AAG9D,QAAO,WAAW,WAAW,kBAAkB,SAAS,WAAW,aAAa"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const require_signer = require('../../signing/signer.cjs');
|
|
2
2
|
const require_config = require('../../config.cjs');
|
|
3
|
+
const require_orderAsset = require('./orderAsset.cjs');
|
|
3
4
|
const require_signatureTypeV2 = require('../../order-utils/model/signatureTypeV2.cjs');
|
|
4
5
|
const require_buildOrder = require('./buildOrder.cjs');
|
|
5
6
|
const require_buildOrderCreationArgs = require('./buildOrderCreationArgs.cjs');
|
|
@@ -11,9 +12,10 @@ const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, use
|
|
|
11
12
|
const maker = funderAddress === void 0 ? eoaSignerAddress : funderAddress;
|
|
12
13
|
const signerForOrder = signatureType === require_signatureTypeV2.SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;
|
|
13
14
|
const contractConfig = require_config.getContractConfig(chainId);
|
|
14
|
-
const
|
|
15
|
+
const orderVersion = require_orderAsset.resolveOrderRouting(userOrder, version).exchangeVersion ?? version;
|
|
16
|
+
const orderData = await require_buildOrderCreationArgs.buildOrderCreationArgs(signerForOrder, maker, signatureType, userOrder, require_roundingConfig.ROUNDING_CONFIG[options.tickSize], orderVersion);
|
|
15
17
|
let exchangeContract;
|
|
16
|
-
switch (
|
|
18
|
+
switch (orderVersion) {
|
|
17
19
|
case 1:
|
|
18
20
|
if (signatureType === require_signatureTypeV2.SignatureTypeV2.POLY_1271) throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
|
|
19
21
|
exchangeContract = options.negRisk ? contractConfig.negRiskExchange : contractConfig.exchange;
|
|
@@ -24,9 +26,9 @@ const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, use
|
|
|
24
26
|
case 3:
|
|
25
27
|
exchangeContract = contractConfig.exchangeV3;
|
|
26
28
|
break;
|
|
27
|
-
default: throw new Error(`unsupported order version ${
|
|
29
|
+
default: throw new Error(`unsupported order version ${orderVersion}`);
|
|
28
30
|
}
|
|
29
|
-
return require_buildOrder.buildOrder(eoaSigner, exchangeContract, chainId, orderData,
|
|
31
|
+
return require_buildOrder.buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);
|
|
30
32
|
};
|
|
31
33
|
|
|
32
34
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOrder.cjs","names":["getSignerAddress","SignatureTypeV2","getContractConfig","buildOrderCreationArgs","ROUNDING_CONFIG","exchangeContract: string","buildOrder"],"sources":["../../../src/order-builder/helpers/createOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type { Chain, CreateOrderOptions, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { buildOrderCreationArgs } from \"./buildOrderCreationArgs.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\n\tconst orderData = await buildOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\
|
|
1
|
+
{"version":3,"file":"createOrder.cjs","names":["getSignerAddress","SignatureTypeV2","getContractConfig","resolveOrderRouting","buildOrderCreationArgs","ROUNDING_CONFIG","exchangeContract: string","buildOrder"],"sources":["../../../src/order-builder/helpers/createOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type { Chain, CreateOrderOptions, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { buildOrderCreationArgs } from \"./buildOrderCreationArgs.js\";\nimport { resolveOrderRouting } from \"./orderAsset.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\tconst orderVersion = resolveOrderRouting(userOrder, version).exchangeVersion ?? version;\n\n\tconst orderData = await buildOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\torderVersion,\n\t);\n\tlet exchangeContract: string;\n\tswitch (orderVersion) {\n\t\tcase 1:\n\t\t\tif (signatureType === SignatureTypeV2.POLY_1271) {\n\t\t\t\tthrow new Error(`signature type POLY_1271 is not supported for v1 orders`);\n\t\t\t}\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchange\n\t\t\t\t: contractConfig.exchange;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchangeV2\n\t\t\t\t: contractConfig.exchangeV2;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\texchangeContract = contractConfig.exchangeV3;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow new Error(`unsupported order version ${orderVersion}`);\n\t}\n\treturn buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);\n};\n"],"mappings":";;;;;;;;;AAUA,MAAa,cAAc,OAC1B,WACA,SACA,eACA,eACA,WACA,SACA,YAC4C;CAC5C,MAAM,mBAAmB,MAAMA,gCAAiB,UAAU;CAG1D,MAAM,QAAQ,kBAAkB,SAAY,mBAAmB;CAG/D,MAAM,iBAAiB,kBAAkBC,wCAAgB,YAAY,QAAQ;CAC7E,MAAM,iBAAiBC,iCAAkB,QAAQ;CACjD,MAAM,eAAeC,uCAAoB,WAAW,QAAQ,CAAC,mBAAmB;CAEhF,MAAM,YAAY,MAAMC,sDACvB,gBACA,OACA,eACA,WACAC,uCAAgB,QAAQ,WACxB,aACA;CACD,IAAIC;AACJ,SAAQ,cAAR;EACC,KAAK;AACJ,OAAI,kBAAkBL,wCAAgB,UACrC,OAAM,IAAI,MAAM,0DAA0D;AAE3E,sBAAmB,QAAQ,UACxB,eAAe,kBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,QAAQ,UACxB,eAAe,oBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,eAAe;AAClC;EACD,QACC,OAAM,IAAI,MAAM,6BAA6B,eAAe;;AAE9D,QAAOM,8BAAW,WAAW,kBAAkB,SAAS,WAAW,aAAa"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getSignerAddress } from "../../signing/signer.js";
|
|
2
2
|
import { getContractConfig } from "../../config.js";
|
|
3
|
+
import { resolveOrderRouting } from "./orderAsset.js";
|
|
3
4
|
import { SignatureTypeV2 } from "../../order-utils/model/signatureTypeV2.js";
|
|
4
5
|
import { buildOrder } from "./buildOrder.js";
|
|
5
6
|
import { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
|
|
@@ -11,9 +12,10 @@ const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, use
|
|
|
11
12
|
const maker = funderAddress === void 0 ? eoaSignerAddress : funderAddress;
|
|
12
13
|
const signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;
|
|
13
14
|
const contractConfig = getContractConfig(chainId);
|
|
14
|
-
const
|
|
15
|
+
const orderVersion = resolveOrderRouting(userOrder, version).exchangeVersion ?? version;
|
|
16
|
+
const orderData = await buildOrderCreationArgs(signerForOrder, maker, signatureType, userOrder, ROUNDING_CONFIG[options.tickSize], orderVersion);
|
|
15
17
|
let exchangeContract;
|
|
16
|
-
switch (
|
|
18
|
+
switch (orderVersion) {
|
|
17
19
|
case 1:
|
|
18
20
|
if (signatureType === SignatureTypeV2.POLY_1271) throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
|
|
19
21
|
exchangeContract = options.negRisk ? contractConfig.negRiskExchange : contractConfig.exchange;
|
|
@@ -24,9 +26,9 @@ const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, use
|
|
|
24
26
|
case 3:
|
|
25
27
|
exchangeContract = contractConfig.exchangeV3;
|
|
26
28
|
break;
|
|
27
|
-
default: throw new Error(`unsupported order version ${
|
|
29
|
+
default: throw new Error(`unsupported order version ${orderVersion}`);
|
|
28
30
|
}
|
|
29
|
-
return buildOrder(eoaSigner, exchangeContract, chainId, orderData,
|
|
31
|
+
return buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);
|
|
30
32
|
};
|
|
31
33
|
|
|
32
34
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOrder.js","names":["exchangeContract: string"],"sources":["../../../src/order-builder/helpers/createOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type { Chain, CreateOrderOptions, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { buildOrderCreationArgs } from \"./buildOrderCreationArgs.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\n\tconst orderData = await buildOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\
|
|
1
|
+
{"version":3,"file":"createOrder.js","names":["exchangeContract: string"],"sources":["../../../src/order-builder/helpers/createOrder.ts"],"sourcesContent":["import { getContractConfig } from \"../../config.js\";\nimport type { SignedOrderV1, SignedOrderV2 } from \"../../order-utils/index.js\";\nimport { SignatureTypeV2 } from \"../../order-utils/index.js\";\nimport { type ClobSigner, getSignerAddress } from \"../../signing/signer.js\";\nimport type { Chain, CreateOrderOptions, UserOrderV1, UserOrderV2 } from \"../../types/index.js\";\nimport { buildOrder } from \"./buildOrder.js\";\nimport { buildOrderCreationArgs } from \"./buildOrderCreationArgs.js\";\nimport { resolveOrderRouting } from \"./orderAsset.js\";\nimport { ROUNDING_CONFIG } from \"./roundingConfig.js\";\n\nexport const createOrder = async (\n\teoaSigner: ClobSigner,\n\tchainId: Chain,\n\tsignatureType: SignatureTypeV2,\n\tfunderAddress: string | undefined,\n\tuserOrder: UserOrderV1 | UserOrderV2,\n\toptions: CreateOrderOptions,\n\tversion: number,\n): Promise<SignedOrderV1 | SignedOrderV2> => {\n\tconst eoaSignerAddress = await getSignerAddress(eoaSigner);\n\n\t// If funder address is not given, use the signer address\n\tconst maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;\n\n\t// For POLY_1271, both maker and signer in the order are the wallet address\n\tconst signerForOrder = signatureType === SignatureTypeV2.POLY_1271 ? maker : eoaSignerAddress;\n\tconst contractConfig = getContractConfig(chainId);\n\tconst orderVersion = resolveOrderRouting(userOrder, version).exchangeVersion ?? version;\n\n\tconst orderData = await buildOrderCreationArgs(\n\t\tsignerForOrder,\n\t\tmaker,\n\t\tsignatureType,\n\t\tuserOrder,\n\t\tROUNDING_CONFIG[options.tickSize],\n\t\torderVersion,\n\t);\n\tlet exchangeContract: string;\n\tswitch (orderVersion) {\n\t\tcase 1:\n\t\t\tif (signatureType === SignatureTypeV2.POLY_1271) {\n\t\t\t\tthrow new Error(`signature type POLY_1271 is not supported for v1 orders`);\n\t\t\t}\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchange\n\t\t\t\t: contractConfig.exchange;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\texchangeContract = options.negRisk\n\t\t\t\t? contractConfig.negRiskExchangeV2\n\t\t\t\t: contractConfig.exchangeV2;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\texchangeContract = contractConfig.exchangeV3;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow new Error(`unsupported order version ${orderVersion}`);\n\t}\n\treturn buildOrder(eoaSigner, exchangeContract, chainId, orderData, orderVersion);\n};\n"],"mappings":";;;;;;;;;AAUA,MAAa,cAAc,OAC1B,WACA,SACA,eACA,eACA,WACA,SACA,YAC4C;CAC5C,MAAM,mBAAmB,MAAM,iBAAiB,UAAU;CAG1D,MAAM,QAAQ,kBAAkB,SAAY,mBAAmB;CAG/D,MAAM,iBAAiB,kBAAkB,gBAAgB,YAAY,QAAQ;CAC7E,MAAM,iBAAiB,kBAAkB,QAAQ;CACjD,MAAM,eAAe,oBAAoB,WAAW,QAAQ,CAAC,mBAAmB;CAEhF,MAAM,YAAY,MAAM,uBACvB,gBACA,OACA,eACA,WACA,gBAAgB,QAAQ,WACxB,aACA;CACD,IAAIA;AACJ,SAAQ,cAAR;EACC,KAAK;AACJ,OAAI,kBAAkB,gBAAgB,UACrC,OAAM,IAAI,MAAM,0DAA0D;AAE3E,sBAAmB,QAAQ,UACxB,eAAe,kBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,QAAQ,UACxB,eAAe,oBACf,eAAe;AAClB;EACD,KAAK;AACJ,sBAAmB,eAAe;AAClC;EACD,QACC,OAAM,IAAI,MAAM,6BAA6B,eAAe;;AAE9D,QAAO,WAAW,WAAW,kBAAkB,SAAS,WAAW,aAAa"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
|
|
2
|
+
//#region src/order-builder/helpers/orderAsset.ts
|
|
3
|
+
function resolveOrderAssetID(asset) {
|
|
4
|
+
const assetID = asset.positionID === void 0 ? asset.tokenID : asset.positionID;
|
|
5
|
+
if (asset.tokenID !== void 0 === (asset.positionID !== void 0) || typeof assetID !== "string" || assetID.trim().length === 0) throw new Error("Exactly one of tokenID or positionID must be provided as a non-empty string");
|
|
6
|
+
return assetID;
|
|
7
|
+
}
|
|
8
|
+
function resolveOrderRouting(asset, requestedVersion) {
|
|
9
|
+
return {
|
|
10
|
+
assetID: resolveOrderAssetID(asset),
|
|
11
|
+
exchangeVersion: asset.positionID === void 0 ? requestedVersion : 3
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
exports.resolveOrderAssetID = resolveOrderAssetID;
|
|
17
|
+
exports.resolveOrderRouting = resolveOrderRouting;
|
|
18
|
+
//# sourceMappingURL=orderAsset.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderAsset.cjs","names":[],"sources":["../../../src/order-builder/helpers/orderAsset.ts"],"sourcesContent":["import type { OrderAsset } from \"../../types/index.js\";\n\nexport type OrderRouting = {\n\tassetID: string;\n\texchangeVersion: number | undefined;\n};\n\nexport function resolveOrderAssetID(asset: OrderAsset): string {\n\tconst assetID = asset.positionID === undefined ? asset.tokenID : asset.positionID;\n\tif (\n\t\t(asset.tokenID !== undefined) === (asset.positionID !== undefined) ||\n\t\ttypeof assetID !== \"string\" ||\n\t\tassetID.trim().length === 0\n\t) {\n\t\tthrow new Error(\n\t\t\t\"Exactly one of tokenID or positionID must be provided as a non-empty string\",\n\t\t);\n\t}\n\treturn assetID;\n}\n\nexport function resolveOrderRouting(asset: OrderAsset, requestedVersion?: number): OrderRouting {\n\treturn {\n\t\tassetID: resolveOrderAssetID(asset),\n\t\texchangeVersion: asset.positionID === undefined ? requestedVersion : 3,\n\t};\n}\n"],"mappings":";;AAOA,SAAgB,oBAAoB,OAA2B;CAC9D,MAAM,UAAU,MAAM,eAAe,SAAY,MAAM,UAAU,MAAM;AACvE,KACE,MAAM,YAAY,YAAgB,MAAM,eAAe,WACxD,OAAO,YAAY,YACnB,QAAQ,MAAM,CAAC,WAAW,EAE1B,OAAM,IAAI,MACT,8EACA;AAEF,QAAO;;AAGR,SAAgB,oBAAoB,OAAmB,kBAAyC;AAC/F,QAAO;EACN,SAAS,oBAAoB,MAAM;EACnC,iBAAiB,MAAM,eAAe,SAAY,mBAAmB;EACrE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
//#region src/order-builder/helpers/orderAsset.ts
|
|
2
|
+
function resolveOrderAssetID(asset) {
|
|
3
|
+
const assetID = asset.positionID === void 0 ? asset.tokenID : asset.positionID;
|
|
4
|
+
if (asset.tokenID !== void 0 === (asset.positionID !== void 0) || typeof assetID !== "string" || assetID.trim().length === 0) throw new Error("Exactly one of tokenID or positionID must be provided as a non-empty string");
|
|
5
|
+
return assetID;
|
|
6
|
+
}
|
|
7
|
+
function resolveOrderRouting(asset, requestedVersion) {
|
|
8
|
+
return {
|
|
9
|
+
assetID: resolveOrderAssetID(asset),
|
|
10
|
+
exchangeVersion: asset.positionID === void 0 ? requestedVersion : 3
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { resolveOrderAssetID, resolveOrderRouting };
|
|
16
|
+
//# sourceMappingURL=orderAsset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderAsset.js","names":[],"sources":["../../../src/order-builder/helpers/orderAsset.ts"],"sourcesContent":["import type { OrderAsset } from \"../../types/index.js\";\n\nexport type OrderRouting = {\n\tassetID: string;\n\texchangeVersion: number | undefined;\n};\n\nexport function resolveOrderAssetID(asset: OrderAsset): string {\n\tconst assetID = asset.positionID === undefined ? asset.tokenID : asset.positionID;\n\tif (\n\t\t(asset.tokenID !== undefined) === (asset.positionID !== undefined) ||\n\t\ttypeof assetID !== \"string\" ||\n\t\tassetID.trim().length === 0\n\t) {\n\t\tthrow new Error(\n\t\t\t\"Exactly one of tokenID or positionID must be provided as a non-empty string\",\n\t\t);\n\t}\n\treturn assetID;\n}\n\nexport function resolveOrderRouting(asset: OrderAsset, requestedVersion?: number): OrderRouting {\n\treturn {\n\t\tassetID: resolveOrderAssetID(asset),\n\t\texchangeVersion: asset.positionID === undefined ? requestedVersion : 3,\n\t};\n}\n"],"mappings":";AAOA,SAAgB,oBAAoB,OAA2B;CAC9D,MAAM,UAAU,MAAM,eAAe,SAAY,MAAM,UAAU,MAAM;AACvE,KACE,MAAM,YAAY,YAAgB,MAAM,eAAe,WACxD,OAAO,YAAY,YACnB,QAAQ,MAAM,CAAC,WAAW,EAE1B,OAAM,IAAI,MACT,8EACA;AAEF,QAAO;;AAGR,SAAgB,oBAAoB,OAAmB,kBAAyC;AAC/F,QAAO;EACN,SAAS,oBAAoB,MAAM;EACnC,iBAAiB,MAAM,eAAe,SAAY,mBAAmB;EACrE"}
|
|
@@ -27,13 +27,13 @@ var OrderBuilder = class {
|
|
|
27
27
|
/**
|
|
28
28
|
* Generate and sign a order
|
|
29
29
|
*/
|
|
30
|
-
async buildOrder(userOrder, options, version) {
|
|
30
|
+
async buildOrder(userOrder, options, version = 2) {
|
|
31
31
|
return require_createOrder.createOrder(await this.resolveSigner(), this.chainId, this.signatureType, this.funderAddress, userOrder, options, version);
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
34
|
* Generate and sign a market order
|
|
35
35
|
*/
|
|
36
|
-
async buildMarketOrder(userMarketOrder, options, version) {
|
|
36
|
+
async buildMarketOrder(userMarketOrder, options, version = 2) {
|
|
37
37
|
return require_createMarketOrder.createMarketOrder(await this.resolveSigner(), this.chainId, this.signatureType, this.funderAddress, userMarketOrder, options, version);
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderBuilder.cjs","names":["SignatureTypeV2","createOrder","createMarketOrder","createExchangeV3OrderFromAmounts"],"sources":["../../src/order-builder/orderBuilder.ts"],"sourcesContent":["import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from \"../order-utils/index.js\";\nimport type { ClobSigner } from \"../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tExchangeV3OrderAmounts,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n\tUserOrderV1,\n\tUserOrderV2,\n} from \"../types/index.js\";\n\nimport { createExchangeV3OrderFromAmounts } from \"./helpers/createExchangeV3OrderFromAmounts.js\";\nimport { createMarketOrder, createOrder } from \"./helpers/index.js\";\n\nexport class OrderBuilder {\n\treadonly signer: ClobSigner;\n\n\treadonly chainId: Chain;\n\n\t// Signature type used sign orders, defaults to EOA type\n\treadonly signatureType: SignatureTypeV2;\n\n\t// Address which holds funds to be used.\n\t// Used for Polymarket proxy wallets and other smart contract wallets\n\t// If not provided, funderAddress is the signer address\n\treadonly funderAddress?: string;\n\n\t/**\n\t * Optional function to dynamically resolve the signer.\n\t * If provided, this function will be called to obtain a fresh signer instance\n\t * (e.g., for smart contract wallets or when the signer may change).\n\t * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.\n\t * If not provided, the static `signer` property is used.\n\t */\n\tprivate getSigner?: () => Promise<ClobSigner> | ClobSigner;\n\n\tconstructor(\n\t\tsigner: ClobSigner,\n\t\tchainId: Chain,\n\t\tsignatureType?: SignatureTypeV2,\n\t\tfunderAddress?: string,\n\t\tgetSigner?: () => Promise<ClobSigner> | ClobSigner,\n\t) {\n\t\tthis.signer = signer;\n\t\tthis.chainId = chainId;\n\t\tthis.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;\n\t\tthis.funderAddress = funderAddress;\n\t\tthis.getSigner = getSigner;\n\t}\n\n\t/**\n\t * Generate and sign a order\n\t */\n\tpublic async buildOrder(\n\t\tuserOrder: UserOrderV1 | UserOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign a market order\n\t */\n\tpublic async buildMarketOrder(\n\t\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createMarketOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserMarketOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign an ExchangeV3 order using exact base-unit amounts.\n\t */\n\tpublic async buildExchangeV3OrderFromAmounts(\n\t\tuserOrder: ExchangeV3OrderAmounts,\n\t): Promise<SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createExchangeV3OrderFromAmounts(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t);\n\t}\n\n\t/** Unified getter: use fresh signer if available */\n\tprivate async resolveSigner(): Promise<ClobSigner> {\n\t\tif (this.getSigner) {\n\t\t\tconst s = await this.getSigner();\n\t\t\tif (!s) throw new Error(\"getSigner() function returned undefined or null\");\n\t\t\treturn s;\n\t\t}\n\t\treturn this.signer;\n\t}\n}\n"],"mappings":";;;;;;AAeA,IAAa,eAAb,MAA0B;CACzB,AAAS;CAET,AAAS;CAGT,AAAS;CAKT,AAAS;;;;;;;;CAST,AAAQ;CAER,YACC,QACA,SACA,eACA,eACA,WACC;AACD,OAAK,SAAS;AACd,OAAK,UAAU;AACf,OAAK,gBAAgB,kBAAkB,SAAYA,wCAAgB,MAAM;AACzE,OAAK,gBAAgB;AACrB,OAAK,YAAY;;;;;CAMlB,MAAa,WACZ,WACA,SACA,
|
|
1
|
+
{"version":3,"file":"orderBuilder.cjs","names":["SignatureTypeV2","createOrder","createMarketOrder","createExchangeV3OrderFromAmounts"],"sources":["../../src/order-builder/orderBuilder.ts"],"sourcesContent":["import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from \"../order-utils/index.js\";\nimport type { ClobSigner } from \"../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tExchangeV3OrderAmounts,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n\tUserOrderV1,\n\tUserOrderV2,\n} from \"../types/index.js\";\n\nimport { createExchangeV3OrderFromAmounts } from \"./helpers/createExchangeV3OrderFromAmounts.js\";\nimport { createMarketOrder, createOrder } from \"./helpers/index.js\";\n\nexport class OrderBuilder {\n\treadonly signer: ClobSigner;\n\n\treadonly chainId: Chain;\n\n\t// Signature type used sign orders, defaults to EOA type\n\treadonly signatureType: SignatureTypeV2;\n\n\t// Address which holds funds to be used.\n\t// Used for Polymarket proxy wallets and other smart contract wallets\n\t// If not provided, funderAddress is the signer address\n\treadonly funderAddress?: string;\n\n\t/**\n\t * Optional function to dynamically resolve the signer.\n\t * If provided, this function will be called to obtain a fresh signer instance\n\t * (e.g., for smart contract wallets or when the signer may change).\n\t * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.\n\t * If not provided, the static `signer` property is used.\n\t */\n\tprivate getSigner?: () => Promise<ClobSigner> | ClobSigner;\n\n\tconstructor(\n\t\tsigner: ClobSigner,\n\t\tchainId: Chain,\n\t\tsignatureType?: SignatureTypeV2,\n\t\tfunderAddress?: string,\n\t\tgetSigner?: () => Promise<ClobSigner> | ClobSigner,\n\t) {\n\t\tthis.signer = signer;\n\t\tthis.chainId = chainId;\n\t\tthis.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;\n\t\tthis.funderAddress = funderAddress;\n\t\tthis.getSigner = getSigner;\n\t}\n\n\t/**\n\t * Generate and sign a order\n\t */\n\tpublic async buildOrder(\n\t\tuserOrder: UserOrderV1 | UserOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number = 2,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign a market order\n\t */\n\tpublic async buildMarketOrder(\n\t\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number = 2,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createMarketOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserMarketOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign an ExchangeV3 order using exact base-unit amounts.\n\t */\n\tpublic async buildExchangeV3OrderFromAmounts(\n\t\tuserOrder: ExchangeV3OrderAmounts,\n\t): Promise<SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createExchangeV3OrderFromAmounts(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t);\n\t}\n\n\t/** Unified getter: use fresh signer if available */\n\tprivate async resolveSigner(): Promise<ClobSigner> {\n\t\tif (this.getSigner) {\n\t\t\tconst s = await this.getSigner();\n\t\t\tif (!s) throw new Error(\"getSigner() function returned undefined or null\");\n\t\t\treturn s;\n\t\t}\n\t\treturn this.signer;\n\t}\n}\n"],"mappings":";;;;;;AAeA,IAAa,eAAb,MAA0B;CACzB,AAAS;CAET,AAAS;CAGT,AAAS;CAKT,AAAS;;;;;;;;CAST,AAAQ;CAER,YACC,QACA,SACA,eACA,eACA,WACC;AACD,OAAK,SAAS;AACd,OAAK,UAAU;AACf,OAAK,gBAAgB,kBAAkB,SAAYA,wCAAgB,MAAM;AACzE,OAAK,gBAAgB;AACrB,OAAK,YAAY;;;;;CAMlB,MAAa,WACZ,WACA,SACA,UAAkB,GACuB;AAEzC,SAAOC,gCADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,WACA,SACA,QACA;;;;;CAMF,MAAa,iBACZ,iBACA,SACA,UAAkB,GACuB;AAEzC,SAAOC,4CADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,iBACA,SACA,QACA;;;;;CAMF,MAAa,gCACZ,WACyB;AAEzB,SAAOC,0EADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,UACA;;;CAIF,MAAc,gBAAqC;AAClD,MAAI,KAAK,WAAW;GACnB,MAAM,IAAI,MAAM,KAAK,WAAW;AAChC,OAAI,CAAC,EAAG,OAAM,IAAI,MAAM,kDAAkD;AAC1E,UAAO;;AAER,SAAO,KAAK"}
|
|
@@ -25,11 +25,11 @@ declare class OrderBuilder {
|
|
|
25
25
|
/**
|
|
26
26
|
* Generate and sign a order
|
|
27
27
|
*/
|
|
28
|
-
buildOrder(userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version
|
|
28
|
+
buildOrder(userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version?: number): Promise<SignedOrderV1 | SignedOrderV2>;
|
|
29
29
|
/**
|
|
30
30
|
* Generate and sign a market order
|
|
31
31
|
*/
|
|
32
|
-
buildMarketOrder(userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version
|
|
32
|
+
buildMarketOrder(userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version?: number): Promise<SignedOrderV1 | SignedOrderV2>;
|
|
33
33
|
/**
|
|
34
34
|
* Generate and sign an ExchangeV3 order using exact base-unit amounts.
|
|
35
35
|
*/
|
|
@@ -27,11 +27,11 @@ declare class OrderBuilder {
|
|
|
27
27
|
/**
|
|
28
28
|
* Generate and sign a order
|
|
29
29
|
*/
|
|
30
|
-
buildOrder(userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version
|
|
30
|
+
buildOrder(userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version?: number): Promise<SignedOrderV1 | SignedOrderV2>;
|
|
31
31
|
/**
|
|
32
32
|
* Generate and sign a market order
|
|
33
33
|
*/
|
|
34
|
-
buildMarketOrder(userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version
|
|
34
|
+
buildMarketOrder(userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version?: number): Promise<SignedOrderV1 | SignedOrderV2>;
|
|
35
35
|
/**
|
|
36
36
|
* Generate and sign an ExchangeV3 order using exact base-unit amounts.
|
|
37
37
|
*/
|
|
@@ -27,13 +27,13 @@ var OrderBuilder = class {
|
|
|
27
27
|
/**
|
|
28
28
|
* Generate and sign a order
|
|
29
29
|
*/
|
|
30
|
-
async buildOrder(userOrder, options, version) {
|
|
30
|
+
async buildOrder(userOrder, options, version = 2) {
|
|
31
31
|
return createOrder(await this.resolveSigner(), this.chainId, this.signatureType, this.funderAddress, userOrder, options, version);
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
34
|
* Generate and sign a market order
|
|
35
35
|
*/
|
|
36
|
-
async buildMarketOrder(userMarketOrder, options, version) {
|
|
36
|
+
async buildMarketOrder(userMarketOrder, options, version = 2) {
|
|
37
37
|
return createMarketOrder(await this.resolveSigner(), this.chainId, this.signatureType, this.funderAddress, userMarketOrder, options, version);
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderBuilder.js","names":[],"sources":["../../src/order-builder/orderBuilder.ts"],"sourcesContent":["import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from \"../order-utils/index.js\";\nimport type { ClobSigner } from \"../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tExchangeV3OrderAmounts,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n\tUserOrderV1,\n\tUserOrderV2,\n} from \"../types/index.js\";\n\nimport { createExchangeV3OrderFromAmounts } from \"./helpers/createExchangeV3OrderFromAmounts.js\";\nimport { createMarketOrder, createOrder } from \"./helpers/index.js\";\n\nexport class OrderBuilder {\n\treadonly signer: ClobSigner;\n\n\treadonly chainId: Chain;\n\n\t// Signature type used sign orders, defaults to EOA type\n\treadonly signatureType: SignatureTypeV2;\n\n\t// Address which holds funds to be used.\n\t// Used for Polymarket proxy wallets and other smart contract wallets\n\t// If not provided, funderAddress is the signer address\n\treadonly funderAddress?: string;\n\n\t/**\n\t * Optional function to dynamically resolve the signer.\n\t * If provided, this function will be called to obtain a fresh signer instance\n\t * (e.g., for smart contract wallets or when the signer may change).\n\t * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.\n\t * If not provided, the static `signer` property is used.\n\t */\n\tprivate getSigner?: () => Promise<ClobSigner> | ClobSigner;\n\n\tconstructor(\n\t\tsigner: ClobSigner,\n\t\tchainId: Chain,\n\t\tsignatureType?: SignatureTypeV2,\n\t\tfunderAddress?: string,\n\t\tgetSigner?: () => Promise<ClobSigner> | ClobSigner,\n\t) {\n\t\tthis.signer = signer;\n\t\tthis.chainId = chainId;\n\t\tthis.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;\n\t\tthis.funderAddress = funderAddress;\n\t\tthis.getSigner = getSigner;\n\t}\n\n\t/**\n\t * Generate and sign a order\n\t */\n\tpublic async buildOrder(\n\t\tuserOrder: UserOrderV1 | UserOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign a market order\n\t */\n\tpublic async buildMarketOrder(\n\t\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createMarketOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserMarketOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign an ExchangeV3 order using exact base-unit amounts.\n\t */\n\tpublic async buildExchangeV3OrderFromAmounts(\n\t\tuserOrder: ExchangeV3OrderAmounts,\n\t): Promise<SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createExchangeV3OrderFromAmounts(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t);\n\t}\n\n\t/** Unified getter: use fresh signer if available */\n\tprivate async resolveSigner(): Promise<ClobSigner> {\n\t\tif (this.getSigner) {\n\t\t\tconst s = await this.getSigner();\n\t\t\tif (!s) throw new Error(\"getSigner() function returned undefined or null\");\n\t\t\treturn s;\n\t\t}\n\t\treturn this.signer;\n\t}\n}\n"],"mappings":";;;;;;AAeA,IAAa,eAAb,MAA0B;CACzB,AAAS;CAET,AAAS;CAGT,AAAS;CAKT,AAAS;;;;;;;;CAST,AAAQ;CAER,YACC,QACA,SACA,eACA,eACA,WACC;AACD,OAAK,SAAS;AACd,OAAK,UAAU;AACf,OAAK,gBAAgB,kBAAkB,SAAY,gBAAgB,MAAM;AACzE,OAAK,gBAAgB;AACrB,OAAK,YAAY;;;;;CAMlB,MAAa,WACZ,WACA,SACA,
|
|
1
|
+
{"version":3,"file":"orderBuilder.js","names":[],"sources":["../../src/order-builder/orderBuilder.ts"],"sourcesContent":["import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from \"../order-utils/index.js\";\nimport type { ClobSigner } from \"../signing/signer.js\";\nimport type {\n\tChain,\n\tCreateOrderOptions,\n\tExchangeV3OrderAmounts,\n\tUserMarketOrderV1,\n\tUserMarketOrderV2,\n\tUserOrderV1,\n\tUserOrderV2,\n} from \"../types/index.js\";\n\nimport { createExchangeV3OrderFromAmounts } from \"./helpers/createExchangeV3OrderFromAmounts.js\";\nimport { createMarketOrder, createOrder } from \"./helpers/index.js\";\n\nexport class OrderBuilder {\n\treadonly signer: ClobSigner;\n\n\treadonly chainId: Chain;\n\n\t// Signature type used sign orders, defaults to EOA type\n\treadonly signatureType: SignatureTypeV2;\n\n\t// Address which holds funds to be used.\n\t// Used for Polymarket proxy wallets and other smart contract wallets\n\t// If not provided, funderAddress is the signer address\n\treadonly funderAddress?: string;\n\n\t/**\n\t * Optional function to dynamically resolve the signer.\n\t * If provided, this function will be called to obtain a fresh signer instance\n\t * (e.g., for smart contract wallets or when the signer may change).\n\t * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.\n\t * If not provided, the static `signer` property is used.\n\t */\n\tprivate getSigner?: () => Promise<ClobSigner> | ClobSigner;\n\n\tconstructor(\n\t\tsigner: ClobSigner,\n\t\tchainId: Chain,\n\t\tsignatureType?: SignatureTypeV2,\n\t\tfunderAddress?: string,\n\t\tgetSigner?: () => Promise<ClobSigner> | ClobSigner,\n\t) {\n\t\tthis.signer = signer;\n\t\tthis.chainId = chainId;\n\t\tthis.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;\n\t\tthis.funderAddress = funderAddress;\n\t\tthis.getSigner = getSigner;\n\t}\n\n\t/**\n\t * Generate and sign a order\n\t */\n\tpublic async buildOrder(\n\t\tuserOrder: UserOrderV1 | UserOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number = 2,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign a market order\n\t */\n\tpublic async buildMarketOrder(\n\t\tuserMarketOrder: UserMarketOrderV1 | UserMarketOrderV2,\n\t\toptions: CreateOrderOptions,\n\t\tversion: number = 2,\n\t): Promise<SignedOrderV1 | SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createMarketOrder(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserMarketOrder,\n\t\t\toptions,\n\t\t\tversion,\n\t\t);\n\t}\n\n\t/**\n\t * Generate and sign an ExchangeV3 order using exact base-unit amounts.\n\t */\n\tpublic async buildExchangeV3OrderFromAmounts(\n\t\tuserOrder: ExchangeV3OrderAmounts,\n\t): Promise<SignedOrderV2> {\n\t\tconst signer = await this.resolveSigner();\n\t\treturn createExchangeV3OrderFromAmounts(\n\t\t\tsigner,\n\t\t\tthis.chainId,\n\t\t\tthis.signatureType,\n\t\t\tthis.funderAddress,\n\t\t\tuserOrder,\n\t\t);\n\t}\n\n\t/** Unified getter: use fresh signer if available */\n\tprivate async resolveSigner(): Promise<ClobSigner> {\n\t\tif (this.getSigner) {\n\t\t\tconst s = await this.getSigner();\n\t\t\tif (!s) throw new Error(\"getSigner() function returned undefined or null\");\n\t\t\treturn s;\n\t\t}\n\t\treturn this.signer;\n\t}\n}\n"],"mappings":";;;;;;AAeA,IAAa,eAAb,MAA0B;CACzB,AAAS;CAET,AAAS;CAGT,AAAS;CAKT,AAAS;;;;;;;;CAST,AAAQ;CAER,YACC,QACA,SACA,eACA,eACA,WACC;AACD,OAAK,SAAS;AACd,OAAK,UAAU;AACf,OAAK,gBAAgB,kBAAkB,SAAY,gBAAgB,MAAM;AACzE,OAAK,gBAAgB;AACrB,OAAK,YAAY;;;;;CAMlB,MAAa,WACZ,WACA,SACA,UAAkB,GACuB;AAEzC,SAAO,YADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,WACA,SACA,QACA;;;;;CAMF,MAAa,iBACZ,iBACA,SACA,UAAkB,GACuB;AAEzC,SAAO,kBADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,iBACA,SACA,QACA;;;;;CAMF,MAAa,gCACZ,WACyB;AAEzB,SAAO,iCADQ,MAAM,KAAK,eAAe,EAGxC,KAAK,SACL,KAAK,eACL,KAAK,eACL,UACA;;;CAIF,MAAc,gBAAqC;AAClD,MAAI,KAAK,WAAW;GACnB,MAAM,IAAI,MAAM,KAAK,WAAW;AAChC,OAAI,CAAC,EAAG,OAAM,IAAI,MAAM,kDAAkD;AAC1E,UAAO;;AAER,SAAO,KAAK"}
|