@polymarket/clob-client-v2 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/index.cjs +2495 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.d.cts +1000 -0
  4. package/dist/index.d.ts +1000 -8
  5. package/dist/index.js +2437 -8
  6. package/dist/index.js.map +1 -1
  7. package/package.json +12 -5
  8. package/dist/client.d.ts +0 -139
  9. package/dist/client.js +0 -973
  10. package/dist/client.js.map +0 -1
  11. package/dist/config.d.ts +0 -14
  12. package/dist/config.js +0 -32
  13. package/dist/config.js.map +0 -1
  14. package/dist/constants.d.ts +0 -6
  15. package/dist/constants.js +0 -10
  16. package/dist/constants.js.map +0 -1
  17. package/dist/endpoints.d.ts +0 -60
  18. package/dist/endpoints.js +0 -75
  19. package/dist/endpoints.js.map +0 -1
  20. package/dist/errors.d.ts +0 -7
  21. package/dist/errors.js +0 -13
  22. package/dist/errors.js.map +0 -1
  23. package/dist/headers/index.d.ts +0 -4
  24. package/dist/headers/index.js +0 -38
  25. package/dist/headers/index.js.map +0 -1
  26. package/dist/http-helpers/index.d.ts +0 -18
  27. package/dist/http-helpers/index.js +0 -124
  28. package/dist/http-helpers/index.js.map +0 -1
  29. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.d.ts +0 -5
  30. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js +0 -37
  31. package/dist/order-builder/helpers/buildMarketOrderCreationArgs.js.map +0 -1
  32. package/dist/order-builder/helpers/buildOrder.d.ts +0 -14
  33. package/dist/order-builder/helpers/buildOrder.js +0 -29
  34. package/dist/order-builder/helpers/buildOrder.js.map +0 -1
  35. package/dist/order-builder/helpers/buildOrderCreationArgs.d.ts +0 -5
  36. package/dist/order-builder/helpers/buildOrderCreationArgs.js +0 -39
  37. package/dist/order-builder/helpers/buildOrderCreationArgs.js.map +0 -1
  38. package/dist/order-builder/helpers/calculateBuyMarketPrice.d.ts +0 -8
  39. package/dist/order-builder/helpers/calculateBuyMarketPrice.js +0 -34
  40. package/dist/order-builder/helpers/calculateBuyMarketPrice.js.map +0 -1
  41. package/dist/order-builder/helpers/calculateSellMarketPrice.d.ts +0 -8
  42. package/dist/order-builder/helpers/calculateSellMarketPrice.js +0 -34
  43. package/dist/order-builder/helpers/calculateSellMarketPrice.js.map +0 -1
  44. package/dist/order-builder/helpers/createMarketOrder.d.ts +0 -5
  45. package/dist/order-builder/helpers/createMarketOrder.js +0 -33
  46. package/dist/order-builder/helpers/createMarketOrder.js.map +0 -1
  47. package/dist/order-builder/helpers/createOrder.d.ts +0 -5
  48. package/dist/order-builder/helpers/createOrder.js +0 -33
  49. package/dist/order-builder/helpers/createOrder.js.map +0 -1
  50. package/dist/order-builder/helpers/getMarketOrderRawAmounts.d.ts +0 -6
  51. package/dist/order-builder/helpers/getMarketOrderRawAmounts.js +0 -37
  52. package/dist/order-builder/helpers/getMarketOrderRawAmounts.js.map +0 -1
  53. package/dist/order-builder/helpers/getOrderRawAmounts.d.ts +0 -6
  54. package/dist/order-builder/helpers/getOrderRawAmounts.js +0 -37
  55. package/dist/order-builder/helpers/getOrderRawAmounts.js.map +0 -1
  56. package/dist/order-builder/helpers/index.d.ts +0 -10
  57. package/dist/order-builder/helpers/index.js +0 -11
  58. package/dist/order-builder/helpers/index.js.map +0 -1
  59. package/dist/order-builder/helpers/roundingConfig.d.ts +0 -2
  60. package/dist/order-builder/helpers/roundingConfig.js +0 -23
  61. package/dist/order-builder/helpers/roundingConfig.js.map +0 -1
  62. package/dist/order-builder/index.d.ts +0 -1
  63. package/dist/order-builder/index.js +0 -2
  64. package/dist/order-builder/index.js.map +0 -1
  65. package/dist/order-builder/orderBuilder.d.ts +0 -28
  66. package/dist/order-builder/orderBuilder.js +0 -52
  67. package/dist/order-builder/orderBuilder.js.map +0 -1
  68. package/dist/order-utils/abi/ExchangeV1.d.ts +0 -1444
  69. package/dist/order-utils/abi/ExchangeV1.js +0 -1853
  70. package/dist/order-utils/abi/ExchangeV1.js.map +0 -1
  71. package/dist/order-utils/abi/ExchangeV2.d.ts +0 -1259
  72. package/dist/order-utils/abi/ExchangeV2.js +0 -1614
  73. package/dist/order-utils/abi/ExchangeV2.js.map +0 -1
  74. package/dist/order-utils/exchangeOrderBuilderV1.d.ts +0 -42
  75. package/dist/order-utils/exchangeOrderBuilderV1.js +0 -148
  76. package/dist/order-utils/exchangeOrderBuilderV1.js.map +0 -1
  77. package/dist/order-utils/exchangeOrderBuilderV2.d.ts +0 -42
  78. package/dist/order-utils/exchangeOrderBuilderV2.js +0 -119
  79. package/dist/order-utils/exchangeOrderBuilderV2.js.map +0 -1
  80. package/dist/order-utils/index.d.ts +0 -2711
  81. package/dist/order-utils/index.js +0 -13
  82. package/dist/order-utils/index.js.map +0 -1
  83. package/dist/order-utils/model/abi.d.ts +0 -21
  84. package/dist/order-utils/model/abi.js +0 -2
  85. package/dist/order-utils/model/abi.js.map +0 -1
  86. package/dist/order-utils/model/ctfExchangeV1TypedData.d.ts +0 -6
  87. package/dist/order-utils/model/ctfExchangeV1TypedData.js +0 -17
  88. package/dist/order-utils/model/ctfExchangeV1TypedData.js.map +0 -1
  89. package/dist/order-utils/model/ctfExchangeV2TypedData.d.ts +0 -6
  90. package/dist/order-utils/model/ctfExchangeV2TypedData.js +0 -16
  91. package/dist/order-utils/model/ctfExchangeV2TypedData.js.map +0 -1
  92. package/dist/order-utils/model/eip712.d.ts +0 -29
  93. package/dist/order-utils/model/eip712.js +0 -7
  94. package/dist/order-utils/model/eip712.js.map +0 -1
  95. package/dist/order-utils/model/order.d.ts +0 -2
  96. package/dist/order-utils/model/order.js +0 -2
  97. package/dist/order-utils/model/order.js.map +0 -1
  98. package/dist/order-utils/model/orderDataV1.d.ts +0 -111
  99. package/dist/order-utils/model/orderDataV1.js +0 -2
  100. package/dist/order-utils/model/orderDataV1.js.map +0 -1
  101. package/dist/order-utils/model/orderDataV2.d.ts +0 -110
  102. package/dist/order-utils/model/orderDataV2.js +0 -2
  103. package/dist/order-utils/model/orderDataV2.js.map +0 -1
  104. package/dist/order-utils/model/side.d.ts +0 -4
  105. package/dist/order-utils/model/side.js +0 -6
  106. package/dist/order-utils/model/side.js.map +0 -1
  107. package/dist/order-utils/model/signatureTypeV1.d.ts +0 -14
  108. package/dist/order-utils/model/signatureTypeV1.js +0 -16
  109. package/dist/order-utils/model/signatureTypeV1.js.map +0 -1
  110. package/dist/order-utils/model/signatureTypeV2.d.ts +0 -18
  111. package/dist/order-utils/model/signatureTypeV2.js +0 -20
  112. package/dist/order-utils/model/signatureTypeV2.js.map +0 -1
  113. package/dist/order-utils/utils.d.ts +0 -1
  114. package/dist/order-utils/utils.js +0 -4
  115. package/dist/order-utils/utils.js.map +0 -1
  116. package/dist/signing/constants.d.ts +0 -14
  117. package/dist/signing/constants.js +0 -16
  118. package/dist/signing/constants.js.map +0 -1
  119. package/dist/signing/eip712.d.ts +0 -9
  120. package/dist/signing/eip712.js +0 -40
  121. package/dist/signing/eip712.js.map +0 -1
  122. package/dist/signing/hmac.d.ts +0 -9
  123. package/dist/signing/hmac.js +0 -27
  124. package/dist/signing/hmac.js.map +0 -1
  125. package/dist/signing/index.d.ts +0 -3
  126. package/dist/signing/index.js +0 -4
  127. package/dist/signing/index.js.map +0 -1
  128. package/dist/signing/signer.d.ts +0 -22
  129. package/dist/signing/signer.js +0 -50
  130. package/dist/signing/signer.js.map +0 -1
  131. package/dist/types/clob.d.ts +0 -398
  132. package/dist/types/clob.js +0 -28
  133. package/dist/types/clob.js.map +0 -1
  134. package/dist/types/index.d.ts +0 -4
  135. package/dist/types/index.js +0 -5
  136. package/dist/types/index.js.map +0 -1
  137. package/dist/types/ordersV1.d.ts +0 -108
  138. package/dist/types/ordersV1.js +0 -24
  139. package/dist/types/ordersV1.js.map +0 -1
  140. package/dist/types/ordersV2.d.ts +0 -99
  141. package/dist/types/ordersV2.js +0 -25
  142. package/dist/types/ordersV2.js.map +0 -1
  143. package/dist/types/unifiedOrder.d.ts +0 -38
  144. package/dist/types/unifiedOrder.js +0 -9
  145. package/dist/types/unifiedOrder.js.map +0 -1
  146. package/dist/utilities.d.ts +0 -13
  147. package/dist/utilities.js +0 -47
  148. package/dist/utilities.js.map +0 -1
@@ -1,29 +0,0 @@
1
- import { ExchangeOrderBuilderV1, ExchangeOrderBuilderV2, } from "../../order-utils/index.js";
2
- /**
3
- * Generate and sign a order
4
- *
5
- * @param signer
6
- * @param exchangeAddress ctf exchange contract address
7
- * @param chainId
8
- * @param OrderData
9
- * @returns SignedOrder
10
- */
11
- export const buildOrder = async (signer, exchangeAddress, chainId, orderData, version = 2) => {
12
- switch (version) {
13
- case 1:
14
- return buildOrderV1(signer, exchangeAddress, chainId, orderData);
15
- case 2:
16
- return buildOrderV2(signer, exchangeAddress, chainId, orderData);
17
- default:
18
- throw new Error(`unsupported order version ${version}`);
19
- }
20
- };
21
- export const buildOrderV1 = async (signer, exchangeAddress, chainId, orderData) => {
22
- const ctfExchangeOrderBuilder = new ExchangeOrderBuilderV1(exchangeAddress, chainId, signer);
23
- return ctfExchangeOrderBuilder.buildSignedOrder(orderData);
24
- };
25
- export const buildOrderV2 = async (signer, exchangeAddress, chainId, orderData) => {
26
- const ctfExchangeOrderBuilder = new ExchangeOrderBuilderV2(exchangeAddress, chainId, signer);
27
- return ctfExchangeOrderBuilder.buildSignedOrder(orderData);
28
- };
29
- //# sourceMappingURL=buildOrder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,sBAAsB,GAKtB,MAAM,4BAA4B,CAAC;AAGpC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC9B,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAoC,EACpC,UAAkB,CAAC,EACsB,EAAE;IAC3C,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,OAAO,YAAY,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,SAAwB,CAAC,CAAC;QACjF,KAAK,CAAC;YACL,OAAO,YAAY,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,SAAwB,CAAC,CAAC;QACjF;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAChC,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAsB,EACG,EAAE;IAC3B,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7F,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAChC,MAAkB,EAClB,eAAuB,EACvB,OAAe,EACf,SAAsB,EACG,EAAE;IAC3B,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7F,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAC5D,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { OrderDataV1, OrderDataV2, SignatureTypeV2 } from "../../order-utils/index.js";
2
- import type { RoundConfig, UserOrderV1, UserOrderV2 } from "../../types/index.js";
3
- export declare function buildOrderCreationArgs(signer: string, maker: string, signatureType: SignatureTypeV2, userOrder: UserOrderV1 | UserOrderV2, roundConfig: RoundConfig, version: 1): Promise<OrderDataV1>;
4
- export declare function buildOrderCreationArgs(signer: string, maker: string, signatureType: SignatureTypeV2, userOrder: UserOrderV1 | UserOrderV2, roundConfig: RoundConfig, version?: 2): Promise<OrderDataV2>;
5
- export declare function buildOrderCreationArgs(signer: string, maker: string, signatureType: SignatureTypeV2, userOrder: UserOrderV1 | UserOrderV2, roundConfig: RoundConfig, version: number): Promise<OrderDataV1 | OrderDataV2>;
@@ -1,39 +0,0 @@
1
- import { parseUnits, zeroAddress } from "viem";
2
- import { COLLATERAL_TOKEN_DECIMALS } from "../../config.js";
3
- import { bytes32Zero } from "../../constants.js";
4
- import { getOrderRawAmounts } from "./getOrderRawAmounts.js";
5
- export async function buildOrderCreationArgs(signer, maker, signatureType, userOrder, roundConfig, version = 2) {
6
- const { side, rawMakerAmt, rawTakerAmt } = getOrderRawAmounts(userOrder.side, userOrder.size, userOrder.price, roundConfig);
7
- const makerAmount = parseUnits(rawMakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
8
- const takerAmount = parseUnits(rawTakerAmt.toString(), COLLATERAL_TOKEN_DECIMALS).toString();
9
- if (version === 1) {
10
- const v1Order = userOrder;
11
- return {
12
- maker,
13
- taker: v1Order.taker ?? zeroAddress,
14
- tokenId: userOrder.tokenID,
15
- makerAmount,
16
- takerAmount,
17
- side,
18
- signer,
19
- signatureType: signatureType,
20
- feeRateBps: v1Order.feeRateBps?.toString() ?? "0",
21
- nonce: v1Order.nonce?.toString() ?? "0",
22
- expiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : "0",
23
- };
24
- }
25
- return {
26
- maker,
27
- tokenId: userOrder.tokenID,
28
- makerAmount,
29
- takerAmount,
30
- side,
31
- signer,
32
- signatureType,
33
- timestamp: Date.now().toString(),
34
- metadata: "metadata" in userOrder ? (userOrder.metadata ?? bytes32Zero) : bytes32Zero,
35
- builder: userOrder.builderCode ?? bytes32Zero,
36
- expiration: userOrder.expiration !== undefined ? userOrder.expiration.toString() : "0",
37
- };
38
- }
39
- //# sourceMappingURL=buildOrderCreationArgs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildOrderCreationArgs.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/buildOrderCreationArgs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AASjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AA0B7D,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,MAAc,EACd,KAAa,EACb,aAA8B,EAC9B,SAAoC,EACpC,WAAwB,EACxB,UAAkB,CAAC;IAEnB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAC5D,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,KAAK,EACf,WAAW,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7F,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE7F,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,SAAwB,CAAC;QACzC,OAAO;YACN,KAAK;YACL,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,WAAW;YACnC,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,WAAW;YACX,WAAW;YACX,IAAI;YACJ,MAAM;YACN,aAAa,EAAE,aAA2C;YAC1D,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,GAAG;YACjD,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,GAAG;YACvC,UAAU,EAAE,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG;SACtF,CAAC;IACH,CAAC;IAED,OAAO;QACN,KAAK;QACL,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,WAAW;QACX,WAAW;QACX,IAAI;QACJ,MAAM;QACN,aAAa;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QAChC,QAAQ,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW;QACrF,OAAO,EAAE,SAAS,CAAC,WAAW,IAAI,WAAW;QAC7C,UAAU,EAAE,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG;KACtF,CAAC;AACH,CAAC"}
@@ -1,8 +0,0 @@
1
- import { type OrderSummary, OrderType } from "../../types/index.js";
2
- /**
3
- * calculateBuyMarketPrice calculates the market price to buy a $$ amount
4
- * @param positions
5
- * @param amountToMatch worth to buy
6
- * @returns
7
- */
8
- export declare const calculateBuyMarketPrice: (positions: OrderSummary[], amountToMatch: number, orderType: OrderType) => number;
@@ -1,34 +0,0 @@
1
- import { OrderType } from "../../types/index.js";
2
- /**
3
- * calculateBuyMarketPrice calculates the market price to buy a $$ amount
4
- * @param positions
5
- * @param amountToMatch worth to buy
6
- * @returns
7
- */
8
- export const calculateBuyMarketPrice = (positions, amountToMatch, orderType) => {
9
- if (!positions.length) {
10
- throw new Error("no match");
11
- }
12
- let sum = 0;
13
- /*
14
- Asks:
15
- [
16
- { price: '0.6', size: '100' },
17
- { price: '0.55', size: '100' },
18
- { price: '0.5', size: '100' }
19
- ]
20
- So, if the amount to match is $150 that will be reached at first position so price will be 0.6
21
- */
22
- for (let i = positions.length - 1; i >= 0; i--) {
23
- const p = positions[i];
24
- sum += parseFloat(p.size) * parseFloat(p.price);
25
- if (sum >= amountToMatch) {
26
- return parseFloat(p.price);
27
- }
28
- }
29
- if (orderType === OrderType.FOK) {
30
- throw new Error("no match");
31
- }
32
- return parseFloat(positions[0].price);
33
- };
34
- //# sourceMappingURL=calculateBuyMarketPrice.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateBuyMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateBuyMarketPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACtC,SAAyB,EACzB,aAAqB,EACrB,SAAoB,EACnB,EAAE;IACH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ;;;;;;;;MAQK;IACL,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import { type OrderSummary, OrderType } from "../../types/index.js";
2
- /**
3
- * calculateSellMarketPrice calculates the market price to sell a shares
4
- * @param positions
5
- * @param amountToMatch sells to share
6
- * @returns
7
- */
8
- export declare const calculateSellMarketPrice: (positions: OrderSummary[], amountToMatch: number, orderType: OrderType) => number;
@@ -1,34 +0,0 @@
1
- import { OrderType } from "../../types/index.js";
2
- /**
3
- * calculateSellMarketPrice calculates the market price to sell a shares
4
- * @param positions
5
- * @param amountToMatch sells to share
6
- * @returns
7
- */
8
- export const calculateSellMarketPrice = (positions, amountToMatch, orderType) => {
9
- if (!positions.length) {
10
- throw new Error("no match");
11
- }
12
- let sum = 0;
13
- /*
14
- Bids:
15
- [
16
- { price: '0.4', size: '100' },
17
- { price: '0.45', size: '100' },
18
- { price: '0.5', size: '100' }
19
- ]
20
- So, if the amount to match is 300 that will be reached at the first position so price will be 0.4
21
- */
22
- for (let i = positions.length - 1; i >= 0; i--) {
23
- const p = positions[i];
24
- sum += parseFloat(p.size);
25
- if (sum >= amountToMatch) {
26
- return parseFloat(p.price);
27
- }
28
- }
29
- if (orderType === OrderType.FOK) {
30
- throw new Error("no match");
31
- }
32
- return parseFloat(positions[0].price);
33
- };
34
- //# sourceMappingURL=calculateSellMarketPrice.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateSellMarketPrice.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/calculateSellMarketPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACvC,SAAyB,EACzB,aAAqB,EACrB,SAAoB,EACnB,EAAE;IACH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ;;;;;;;;MAQK;IACL,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { SignedOrderV1, SignedOrderV2 } from "../../order-utils/index.js";
2
- import { SignatureTypeV2 } from "../../order-utils/index.js";
3
- import { type ClobSigner } from "../../signing/signer.js";
4
- import type { Chain, CreateOrderOptions, UserMarketOrderV1, UserMarketOrderV2 } from "../../types/index.js";
5
- export declare const createMarketOrder: (eoaSigner: ClobSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version: number) => Promise<SignedOrderV1 | SignedOrderV2>;
@@ -1,33 +0,0 @@
1
- import { getContractConfig } from "../../config.js";
2
- import { SignatureTypeV2 } from "../../order-utils/index.js";
3
- import { getSignerAddress } from "../../signing/signer.js";
4
- import { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
5
- import { buildOrder } from "./buildOrder.js";
6
- import { ROUNDING_CONFIG } from "./roundingConfig.js";
7
- export const createMarketOrder = async (eoaSigner, chainId, signatureType, funderAddress, userMarketOrder, options, version) => {
8
- const eoaSignerAddress = await getSignerAddress(eoaSigner);
9
- // If funder address is not given, use the signer address
10
- const maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;
11
- const contractConfig = getContractConfig(chainId);
12
- const orderData = await buildMarketOrderCreationArgs(eoaSignerAddress, maker, signatureType, userMarketOrder, ROUNDING_CONFIG[options.tickSize], version);
13
- let exchangeContract;
14
- switch (version) {
15
- case 1:
16
- if (signatureType === SignatureTypeV2.POLY_1271) {
17
- throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
18
- }
19
- exchangeContract = options.negRisk
20
- ? contractConfig.negRiskExchange
21
- : contractConfig.exchange;
22
- break;
23
- case 2:
24
- exchangeContract = options.negRisk
25
- ? contractConfig.negRiskExchangeV2
26
- : contractConfig.exchangeV2;
27
- break;
28
- default:
29
- throw new Error(`unsupported order version ${version}`);
30
- }
31
- return buildOrder(eoaSigner, exchangeContract, chainId, orderData, version);
32
- };
33
- //# sourceMappingURL=createMarketOrder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createMarketOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createMarketOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAmB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAO5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACrC,SAAqB,EACrB,OAAc,EACd,aAA8B,EAC9B,aAAiC,EACjC,eAAsD,EACtD,OAA2B,EAC3B,OAAe,EAC0B,EAAE;IAC3C,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,MAAM,KAAK,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC;IAC7E,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,MAAM,4BAA4B,CACnD,gBAAgB,EAChB,KAAK,EACL,aAAa,EACb,eAAe,EACf,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EACjC,OAAO,CACP,CAAC;IAEF,IAAI,gBAAwB,CAAC;IAC7B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,IAAI,aAAa,KAAK,eAAe,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC5E,CAAC;YACD,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,eAAe;gBAChC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,MAAM;QACP,KAAK,CAAC;YACL,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,iBAAiB;gBAClC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC;YAC7B,MAAM;QACP;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,UAAU,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { SignedOrderV1, SignedOrderV2 } from "../../order-utils/index.js";
2
- import { SignatureTypeV2 } from "../../order-utils/index.js";
3
- import { type ClobSigner } from "../../signing/signer.js";
4
- import type { Chain, CreateOrderOptions, UserOrderV1, UserOrderV2 } from "../../types/index.js";
5
- export declare const createOrder: (eoaSigner: ClobSigner, chainId: Chain, signatureType: SignatureTypeV2, funderAddress: string | undefined, userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version: number) => Promise<SignedOrderV1 | SignedOrderV2>;
@@ -1,33 +0,0 @@
1
- import { getContractConfig } from "../../config.js";
2
- import { SignatureTypeV2 } from "../../order-utils/index.js";
3
- import { getSignerAddress } from "../../signing/signer.js";
4
- import { buildOrder } from "./buildOrder.js";
5
- import { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
6
- import { ROUNDING_CONFIG } from "./roundingConfig.js";
7
- export const createOrder = async (eoaSigner, chainId, signatureType, funderAddress, userOrder, options, version) => {
8
- const eoaSignerAddress = await getSignerAddress(eoaSigner);
9
- // If funder address is not given, use the signer address
10
- const maker = funderAddress === undefined ? eoaSignerAddress : funderAddress;
11
- const contractConfig = getContractConfig(chainId);
12
- const orderData = await buildOrderCreationArgs(eoaSignerAddress, maker, signatureType, userOrder, ROUNDING_CONFIG[options.tickSize], version);
13
- let exchangeContract;
14
- switch (version) {
15
- case 1:
16
- if (signatureType === SignatureTypeV2.POLY_1271) {
17
- throw new Error(`signature type POLY_1271 is not supported for v1 orders`);
18
- }
19
- exchangeContract = options.negRisk
20
- ? contractConfig.negRiskExchange
21
- : contractConfig.exchange;
22
- break;
23
- case 2:
24
- exchangeContract = options.negRisk
25
- ? contractConfig.negRiskExchangeV2
26
- : contractConfig.exchangeV2;
27
- break;
28
- default:
29
- throw new Error(`unsupported order version ${version}`);
30
- }
31
- return buildOrder(eoaSigner, exchangeContract, chainId, orderData, version);
32
- };
33
- //# sourceMappingURL=createOrder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createOrder.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/createOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAmB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC/B,SAAqB,EACrB,OAAc,EACd,aAA8B,EAC9B,aAAiC,EACjC,SAAoC,EACpC,OAA2B,EAC3B,OAAe,EAC0B,EAAE;IAC3C,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,MAAM,KAAK,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC;IAC7E,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAC7C,gBAAgB,EAChB,KAAK,EACL,aAAa,EACb,SAAS,EACT,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EACjC,OAAO,CACP,CAAC;IACF,IAAI,gBAAwB,CAAC;IAC7B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,CAAC;YACL,IAAI,aAAa,KAAK,eAAe,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC5E,CAAC;YACD,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,eAAe;gBAChC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,MAAM;QACP,KAAK,CAAC;YACL,gBAAgB,GAAG,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC,cAAc,CAAC,iBAAiB;gBAClC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC;YAC7B,MAAM;QACP;YACC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,UAAU,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- import { type RoundConfig, Side } from "../../types/index.js";
2
- export declare const getMarketOrderRawAmounts: (side: Side, amount: number, price: number, roundConfig: RoundConfig) => {
3
- side: Side;
4
- rawMakerAmt: number;
5
- rawTakerAmt: number;
6
- };
@@ -1,37 +0,0 @@
1
- import { Side } from "../../types/index.js";
2
- import { decimalPlaces, roundDown, roundUp } from "../../utilities.js";
3
- export const getMarketOrderRawAmounts = (side, amount, price, roundConfig) => {
4
- // force 2 decimals places
5
- const rawPrice = roundDown(price, roundConfig.price);
6
- if (side === Side.BUY) {
7
- const rawMakerAmt = roundDown(amount, roundConfig.size);
8
- let rawTakerAmt = rawMakerAmt / rawPrice;
9
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
10
- rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
11
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
12
- rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
13
- }
14
- }
15
- return {
16
- side: Side.BUY,
17
- rawMakerAmt,
18
- rawTakerAmt,
19
- };
20
- }
21
- else {
22
- const rawMakerAmt = roundDown(amount, roundConfig.size);
23
- let rawTakerAmt = rawMakerAmt * rawPrice;
24
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
25
- rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
26
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
27
- rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
28
- }
29
- }
30
- return {
31
- side: Side.SELL,
32
- rawMakerAmt,
33
- rawTakerAmt,
34
- };
35
- }
36
- };
37
- //# sourceMappingURL=getMarketOrderRawAmounts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getMarketOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getMarketOrderRawAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACvC,IAAU,EACV,MAAc,EACd,KAAa,EACb,WAAwB,EACmC,EAAE;IAC7D,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAErD,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QACD,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;AACF,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- import { type RoundConfig, Side } from "../../types/index.js";
2
- export declare const getOrderRawAmounts: (side: Side, size: number, price: number, roundConfig: RoundConfig) => {
3
- side: Side;
4
- rawMakerAmt: number;
5
- rawTakerAmt: number;
6
- };
@@ -1,37 +0,0 @@
1
- import { Side } from "../../types/index.js";
2
- import { decimalPlaces, roundDown, roundNormal, roundUp } from "../../utilities.js";
3
- export const getOrderRawAmounts = (side, size, price, roundConfig) => {
4
- const rawPrice = roundNormal(price, roundConfig.price);
5
- if (side === Side.BUY) {
6
- // force 2 decimals places
7
- const rawTakerAmt = roundDown(size, roundConfig.size);
8
- let rawMakerAmt = rawTakerAmt * rawPrice;
9
- if (decimalPlaces(rawMakerAmt) > roundConfig.amount) {
10
- rawMakerAmt = roundUp(rawMakerAmt, roundConfig.amount + 4);
11
- if (decimalPlaces(rawMakerAmt) > roundConfig.amount) {
12
- rawMakerAmt = roundDown(rawMakerAmt, roundConfig.amount);
13
- }
14
- }
15
- return {
16
- side: Side.BUY,
17
- rawMakerAmt,
18
- rawTakerAmt,
19
- };
20
- }
21
- else {
22
- const rawMakerAmt = roundDown(size, roundConfig.size);
23
- let rawTakerAmt = rawMakerAmt * rawPrice;
24
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
25
- rawTakerAmt = roundUp(rawTakerAmt, roundConfig.amount + 4);
26
- if (decimalPlaces(rawTakerAmt) > roundConfig.amount) {
27
- rawTakerAmt = roundDown(rawTakerAmt, roundConfig.amount);
28
- }
29
- }
30
- return {
31
- side: Side.SELL,
32
- rawMakerAmt,
33
- rawTakerAmt,
34
- };
35
- }
36
- };
37
- //# sourceMappingURL=getOrderRawAmounts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getOrderRawAmounts.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/getOrderRawAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEpF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CACjC,IAAU,EACV,IAAY,EACZ,KAAa,EACb,WAAwB,EACmC,EAAE;IAC7D,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEvD,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,0BAA0B;QAC1B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QACzC,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACrD,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrD,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW;YACX,WAAW;SACX,CAAC;IACH,CAAC;AACF,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- export { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
2
- export { buildOrder } from "./buildOrder.js";
3
- export { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
4
- export { calculateBuyMarketPrice } from "./calculateBuyMarketPrice.js";
5
- export { calculateSellMarketPrice } from "./calculateSellMarketPrice.js";
6
- export { createMarketOrder } from "./createMarketOrder.js";
7
- export { createOrder } from "./createOrder.js";
8
- export { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts.js";
9
- export { getOrderRawAmounts } from "./getOrderRawAmounts.js";
10
- export { ROUNDING_CONFIG } from "./roundingConfig.js";
@@ -1,11 +0,0 @@
1
- export { buildMarketOrderCreationArgs } from "./buildMarketOrderCreationArgs.js";
2
- export { buildOrder } from "./buildOrder.js";
3
- export { buildOrderCreationArgs } from "./buildOrderCreationArgs.js";
4
- export { calculateBuyMarketPrice } from "./calculateBuyMarketPrice.js";
5
- export { calculateSellMarketPrice } from "./calculateSellMarketPrice.js";
6
- export { createMarketOrder } from "./createMarketOrder.js";
7
- export { createOrder } from "./createOrder.js";
8
- export { getMarketOrderRawAmounts } from "./getMarketOrderRawAmounts.js";
9
- export { getOrderRawAmounts } from "./getOrderRawAmounts.js";
10
- export { ROUNDING_CONFIG } from "./roundingConfig.js";
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,2 +0,0 @@
1
- import type { RoundConfig, TickSize } from "../../types/index.js";
2
- export declare const ROUNDING_CONFIG: Record<TickSize, RoundConfig>;
@@ -1,23 +0,0 @@
1
- export const ROUNDING_CONFIG = {
2
- "0.1": {
3
- price: 1,
4
- size: 2,
5
- amount: 3,
6
- },
7
- "0.01": {
8
- price: 2,
9
- size: 2,
10
- amount: 4,
11
- },
12
- "0.001": {
13
- price: 3,
14
- size: 2,
15
- amount: 5,
16
- },
17
- "0.0001": {
18
- price: 4,
19
- size: 2,
20
- amount: 6,
21
- },
22
- };
23
- //# sourceMappingURL=roundingConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"roundingConfig.js","sourceRoot":"","sources":["../../../src/order-builder/helpers/roundingConfig.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAkC;IAC7D,KAAK,EAAE;QACN,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,MAAM,EAAE;QACP,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,OAAO,EAAE;QACR,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;IACD,QAAQ,EAAE;QACT,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;KACT;CACD,CAAC"}
@@ -1 +0,0 @@
1
- export * from "./orderBuilder.js";
@@ -1,2 +0,0 @@
1
- export * from "./orderBuilder.js";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/order-builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
@@ -1,28 +0,0 @@
1
- import { SignatureTypeV2, type SignedOrderV1, type SignedOrderV2 } from "../order-utils/index.js";
2
- import type { ClobSigner } from "../signing/signer.js";
3
- import type { Chain, CreateOrderOptions, UserMarketOrderV1, UserMarketOrderV2, UserOrderV1, UserOrderV2 } from "../types/index.js";
4
- export declare class OrderBuilder {
5
- readonly signer: ClobSigner;
6
- readonly chainId: Chain;
7
- readonly signatureType: SignatureTypeV2;
8
- readonly funderAddress?: string;
9
- /**
10
- * Optional function to dynamically resolve the signer.
11
- * If provided, this function will be called to obtain a fresh signer instance
12
- * (e.g., for smart contract wallets or when the signer may change).
13
- * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.
14
- * If not provided, the static `signer` property is used.
15
- */
16
- private getSigner?;
17
- constructor(signer: ClobSigner, chainId: Chain, signatureType?: SignatureTypeV2, funderAddress?: string, getSigner?: () => Promise<ClobSigner> | ClobSigner);
18
- /**
19
- * Generate and sign a order
20
- */
21
- buildOrder(userOrder: UserOrderV1 | UserOrderV2, options: CreateOrderOptions, version: number): Promise<SignedOrderV1 | SignedOrderV2>;
22
- /**
23
- * Generate and sign a market order
24
- */
25
- buildMarketOrder(userMarketOrder: UserMarketOrderV1 | UserMarketOrderV2, options: CreateOrderOptions, version: number): Promise<SignedOrderV1 | SignedOrderV2>;
26
- /** Unified getter: use fresh signer if available */
27
- private resolveSigner;
28
- }
@@ -1,52 +0,0 @@
1
- import { SignatureTypeV2 } from "../order-utils/index.js";
2
- import { createMarketOrder, createOrder } from "./helpers/index.js";
3
- export class OrderBuilder {
4
- signer;
5
- chainId;
6
- // Signature type used sign orders, defaults to EOA type
7
- signatureType;
8
- // Address which holds funds to be used.
9
- // Used for Polymarket proxy wallets and other smart contract wallets
10
- // If not provided, funderAddress is the signer address
11
- funderAddress;
12
- /**
13
- * Optional function to dynamically resolve the signer.
14
- * If provided, this function will be called to obtain a fresh signer instance
15
- * (e.g., for smart contract wallets or when the signer may change).
16
- * Should return a Wallet or JsonRpcSigner, or a Promise resolving to one.
17
- * If not provided, the static `signer` property is used.
18
- */
19
- getSigner;
20
- constructor(signer, chainId, signatureType, funderAddress, getSigner) {
21
- this.signer = signer;
22
- this.chainId = chainId;
23
- this.signatureType = signatureType === undefined ? SignatureTypeV2.EOA : signatureType;
24
- this.funderAddress = funderAddress;
25
- this.getSigner = getSigner;
26
- }
27
- /**
28
- * Generate and sign a order
29
- */
30
- async buildOrder(userOrder, options, version) {
31
- const signer = await this.resolveSigner();
32
- return createOrder(signer, this.chainId, this.signatureType, this.funderAddress, userOrder, options, version);
33
- }
34
- /**
35
- * Generate and sign a market order
36
- */
37
- async buildMarketOrder(userMarketOrder, options, version) {
38
- const signer = await this.resolveSigner();
39
- return createMarketOrder(signer, this.chainId, this.signatureType, this.funderAddress, userMarketOrder, options, version);
40
- }
41
- /** Unified getter: use fresh signer if available */
42
- async resolveSigner() {
43
- if (this.getSigner) {
44
- const s = await this.getSigner();
45
- if (!s)
46
- throw new Error("getSigner() function returned undefined or null");
47
- return s;
48
- }
49
- return this.signer;
50
- }
51
- }
52
- //# sourceMappingURL=orderBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orderBuilder.js","sourceRoot":"","sources":["../../src/order-builder/orderBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA0C,MAAM,yBAAyB,CAAC;AAWlG,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,OAAO,YAAY;IACf,MAAM,CAAa;IAEnB,OAAO,CAAQ;IAExB,wDAAwD;IAC/C,aAAa,CAAkB;IAExC,wCAAwC;IACxC,qEAAqE;IACrE,uDAAuD;IAC9C,aAAa,CAAU;IAEhC;;;;;;OAMG;IACK,SAAS,CAA0C;IAE3D,YACC,MAAkB,EAClB,OAAc,EACd,aAA+B,EAC/B,aAAsB,EACtB,SAAkD;QAElD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC;QACvF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CACtB,SAAoC,EACpC,OAA2B,EAC3B,OAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,WAAW,CACjB,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,SAAS,EACT,OAAO,EACP,OAAO,CACP,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAC5B,eAAsD,EACtD,OAA2B,EAC3B,OAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,iBAAiB,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,eAAe,EACf,OAAO,EACP,OAAO,CACP,CAAC;IACH,CAAC;IAED,oDAAoD;IAC5C,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YAC3E,OAAO,CAAC,CAAC;QACV,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;CACD"}