@nadohq/engine-client 0.14.0 → 0.17.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.
Files changed (190) hide show
  1. package/dist/EngineBaseClient-DOOXIhnZ.d.ts +75 -0
  2. package/dist/EngineBaseClient-DOOXIhnZ.d.ts.map +1 -0
  3. package/dist/EngineBaseClient-L1ue7jBx.d.cts +75 -0
  4. package/dist/EngineBaseClient-L1ue7jBx.d.cts.map +1 -0
  5. package/dist/EngineBaseClient-Uc1D8ftx.cjs +150 -0
  6. package/dist/EngineBaseClient-Uc1D8ftx.cjs.map +1 -0
  7. package/dist/EngineBaseClient.cjs +3 -167
  8. package/dist/EngineBaseClient.d.cts +2 -75
  9. package/dist/EngineBaseClient.d.ts +2 -75
  10. package/dist/EngineBaseClient.js +112 -131
  11. package/dist/EngineBaseClient.js.map +1 -1
  12. package/dist/EngineClient.cjs +13 -38
  13. package/dist/EngineClient.cjs.map +1 -1
  14. package/dist/EngineClient.d.cts +8 -18
  15. package/dist/EngineClient.d.cts.map +1 -0
  16. package/dist/EngineClient.d.ts +8 -18
  17. package/dist/EngineClient.d.ts.map +1 -0
  18. package/dist/EngineClient.js +9 -11
  19. package/dist/EngineClient.js.map +1 -1
  20. package/dist/EngineExecuteBuilder-VLrEndhv.d.cts +105 -0
  21. package/dist/EngineExecuteBuilder-VLrEndhv.d.cts.map +1 -0
  22. package/dist/EngineExecuteBuilder-t8EQ5Rmp.d.ts +105 -0
  23. package/dist/EngineExecuteBuilder-t8EQ5Rmp.d.ts.map +1 -0
  24. package/dist/EngineExecuteBuilder.cjs +232 -277
  25. package/dist/EngineExecuteBuilder.cjs.map +1 -1
  26. package/dist/EngineExecuteBuilder.d.cts +2 -108
  27. package/dist/EngineExecuteBuilder.d.ts +2 -108
  28. package/dist/EngineExecuteBuilder.js +230 -256
  29. package/dist/EngineExecuteBuilder.js.map +1 -1
  30. package/dist/EngineExecuteClient-0EBoXRd7.d.ts +24 -0
  31. package/dist/EngineExecuteClient-0EBoXRd7.d.ts.map +1 -0
  32. package/dist/EngineExecuteClient-BGlNK5Le.d.cts +24 -0
  33. package/dist/EngineExecuteClient-BGlNK5Le.d.cts.map +1 -0
  34. package/dist/EngineExecuteClient.cjs +57 -110
  35. package/dist/EngineExecuteClient.cjs.map +1 -1
  36. package/dist/EngineExecuteClient.d.cts +2 -28
  37. package/dist/EngineExecuteClient.d.ts +2 -28
  38. package/dist/EngineExecuteClient.js +54 -83
  39. package/dist/EngineExecuteClient.js.map +1 -1
  40. package/dist/EngineQueryClient-C_7p1oRx.d.cts +147 -0
  41. package/dist/EngineQueryClient-C_7p1oRx.d.cts.map +1 -0
  42. package/dist/EngineQueryClient-DQwCRaYl.d.ts +147 -0
  43. package/dist/EngineQueryClient-DQwCRaYl.d.ts.map +1 -0
  44. package/dist/EngineQueryClient.cjs +354 -447
  45. package/dist/EngineQueryClient.cjs.map +1 -1
  46. package/dist/EngineQueryClient.d.cts +2 -149
  47. package/dist/EngineQueryClient.d.ts +2 -149
  48. package/dist/EngineQueryClient.js +351 -440
  49. package/dist/EngineQueryClient.js.map +1 -1
  50. package/dist/EngineServerFailureError-CDabRrF4.d.ts +11 -0
  51. package/dist/EngineServerFailureError-CDabRrF4.d.ts.map +1 -0
  52. package/dist/EngineServerFailureError-DpPY0--L.d.cts +11 -0
  53. package/dist/EngineServerFailureError-DpPY0--L.d.cts.map +1 -0
  54. package/dist/EngineWebClient-CEwqgd4t.d.ts +35 -0
  55. package/dist/EngineWebClient-CEwqgd4t.d.ts.map +1 -0
  56. package/dist/EngineWebClient-DajZqKAQ.d.cts +35 -0
  57. package/dist/EngineWebClient-DajZqKAQ.d.cts.map +1 -0
  58. package/dist/EngineWebClient.cjs +49 -86
  59. package/dist/EngineWebClient.cjs.map +1 -1
  60. package/dist/EngineWebClient.d.cts +2 -39
  61. package/dist/EngineWebClient.d.ts +2 -39
  62. package/dist/EngineWebClient.js +47 -60
  63. package/dist/EngineWebClient.js.map +1 -1
  64. package/dist/clientExecuteTypes-BlJOgCL_.d.cts +91 -0
  65. package/dist/clientExecuteTypes-BlJOgCL_.d.cts.map +1 -0
  66. package/dist/clientExecuteTypes-CJ08_c4q.d.ts +91 -0
  67. package/dist/clientExecuteTypes-CJ08_c4q.d.ts.map +1 -0
  68. package/dist/clientQueryTypes-DlTtS_mX.d.cts +221 -0
  69. package/dist/clientQueryTypes-DlTtS_mX.d.cts.map +1 -0
  70. package/dist/clientQueryTypes-DuRgEeBT.d.ts +221 -0
  71. package/dist/clientQueryTypes-DuRgEeBT.d.ts.map +1 -0
  72. package/dist/endpoints.cjs +19 -45
  73. package/dist/endpoints.cjs.map +1 -1
  74. package/dist/endpoints.d.cts +4 -2
  75. package/dist/endpoints.d.cts.map +1 -0
  76. package/dist/endpoints.d.ts +4 -2
  77. package/dist/endpoints.d.ts.map +1 -0
  78. package/dist/endpoints.js +16 -18
  79. package/dist/endpoints.js.map +1 -1
  80. package/dist/index-CmCelmEL.d.cts +1 -0
  81. package/dist/index-D0E78WnU.d.ts +1 -0
  82. package/dist/index.cjs +26 -31
  83. package/dist/index.d.cts +12 -20
  84. package/dist/index.d.ts +12 -20
  85. package/dist/index.js +8 -6
  86. package/dist/queryDataMappers-BguxA579.d.ts +21 -0
  87. package/dist/queryDataMappers-BguxA579.d.ts.map +1 -0
  88. package/dist/queryDataMappers-DO9yWdLo.d.cts +21 -0
  89. package/dist/queryDataMappers-DO9yWdLo.d.cts.map +1 -0
  90. package/dist/serverExecuteTypes-CgbHjnWM.d.ts +92 -0
  91. package/dist/serverExecuteTypes-CgbHjnWM.d.ts.map +1 -0
  92. package/dist/serverExecuteTypes-DejTR8Is.d.cts +92 -0
  93. package/dist/serverExecuteTypes-DejTR8Is.d.cts.map +1 -0
  94. package/dist/serverQueryModelTypes-85xnbU-a.d.cts +98 -0
  95. package/dist/serverQueryModelTypes-85xnbU-a.d.cts.map +1 -0
  96. package/dist/serverQueryModelTypes-CENoy5Hm.d.ts +98 -0
  97. package/dist/serverQueryModelTypes-CENoy5Hm.d.ts.map +1 -0
  98. package/dist/serverQueryTypes-B3vC8vxT.d.ts +301 -0
  99. package/dist/serverQueryTypes-B3vC8vxT.d.ts.map +1 -0
  100. package/dist/serverQueryTypes-Dva9R2tV.d.cts +301 -0
  101. package/dist/serverQueryTypes-Dva9R2tV.d.cts.map +1 -0
  102. package/dist/serverSubscriptionEventTypes-BMUrTkTg.d.cts +135 -0
  103. package/dist/serverSubscriptionEventTypes-BMUrTkTg.d.cts.map +1 -0
  104. package/dist/serverSubscriptionEventTypes-UCYAjmt7.d.ts +135 -0
  105. package/dist/serverSubscriptionEventTypes-UCYAjmt7.d.ts.map +1 -0
  106. package/dist/serverSubscriptionTypes-BSuYa6z_.d.cts +82 -0
  107. package/dist/serverSubscriptionTypes-BSuYa6z_.d.cts.map +1 -0
  108. package/dist/serverSubscriptionTypes-DoMWeKgY.d.ts +82 -0
  109. package/dist/serverSubscriptionTypes-DoMWeKgY.d.ts.map +1 -0
  110. package/dist/types/EngineServerFailureError.cjs +9 -33
  111. package/dist/types/EngineServerFailureError.cjs.map +1 -1
  112. package/dist/types/EngineServerFailureError.d.cts +2 -11
  113. package/dist/types/EngineServerFailureError.d.ts +2 -11
  114. package/dist/types/EngineServerFailureError.js +8 -8
  115. package/dist/types/EngineServerFailureError.js.map +1 -1
  116. package/dist/types/clientExecuteTypes.cjs +0 -19
  117. package/dist/types/clientExecuteTypes.d.cts +2 -91
  118. package/dist/types/clientExecuteTypes.d.ts +2 -91
  119. package/dist/types/clientExecuteTypes.js +1 -1
  120. package/dist/types/clientQueryTypes.cjs +0 -19
  121. package/dist/types/clientQueryTypes.d.cts +2 -219
  122. package/dist/types/clientQueryTypes.d.ts +2 -219
  123. package/dist/types/clientQueryTypes.js +1 -1
  124. package/dist/types/index.cjs +5 -39
  125. package/dist/types/index.d.cts +9 -10
  126. package/dist/types/index.d.ts +9 -10
  127. package/dist/types/index.js +3 -10
  128. package/dist/types/serverExecuteTypes.cjs +0 -19
  129. package/dist/types/serverExecuteTypes.d.cts +2 -93
  130. package/dist/types/serverExecuteTypes.d.ts +2 -93
  131. package/dist/types/serverExecuteTypes.js +1 -1
  132. package/dist/types/serverQueryModelTypes.cjs +0 -19
  133. package/dist/types/serverQueryModelTypes.d.cts +2 -96
  134. package/dist/types/serverQueryModelTypes.d.ts +2 -96
  135. package/dist/types/serverQueryModelTypes.js +1 -1
  136. package/dist/types/serverQueryTypes.cjs +12 -36
  137. package/dist/types/serverQueryTypes.cjs.map +1 -1
  138. package/dist/types/serverQueryTypes.d.cts +2 -309
  139. package/dist/types/serverQueryTypes.d.ts +2 -309
  140. package/dist/types/serverQueryTypes.js +11 -11
  141. package/dist/types/serverQueryTypes.js.map +1 -1
  142. package/dist/types/serverSubscriptionEventTypes.cjs +0 -19
  143. package/dist/types/serverSubscriptionEventTypes.d.cts +2 -135
  144. package/dist/types/serverSubscriptionEventTypes.d.ts +2 -135
  145. package/dist/types/serverSubscriptionEventTypes.js +1 -1
  146. package/dist/types/serverSubscriptionTypes.cjs +0 -19
  147. package/dist/types/serverSubscriptionTypes.d.cts +2 -80
  148. package/dist/types/serverSubscriptionTypes.d.ts +2 -80
  149. package/dist/types/serverSubscriptionTypes.js +1 -1
  150. package/dist/utils/index.cjs +14 -25
  151. package/dist/utils/index.d.cts +2 -6
  152. package/dist/utils/index.d.ts +2 -6
  153. package/dist/utils/index.js +2 -3
  154. package/dist/utils/productEngineTypeMappers.cjs +16 -44
  155. package/dist/utils/productEngineTypeMappers.cjs.map +1 -1
  156. package/dist/utils/productEngineTypeMappers.d.cts +5 -3
  157. package/dist/utils/productEngineTypeMappers.d.cts.map +1 -0
  158. package/dist/utils/productEngineTypeMappers.d.ts +5 -3
  159. package/dist/utils/productEngineTypeMappers.d.ts.map +1 -0
  160. package/dist/utils/productEngineTypeMappers.js +12 -17
  161. package/dist/utils/productEngineTypeMappers.js.map +1 -1
  162. package/dist/utils/queryDataMappers.cjs +204 -292
  163. package/dist/utils/queryDataMappers.cjs.map +1 -1
  164. package/dist/utils/queryDataMappers.d.cts +2 -20
  165. package/dist/utils/queryDataMappers.d.ts +2 -20
  166. package/dist/utils/queryDataMappers.js +190 -264
  167. package/dist/utils/queryDataMappers.js.map +1 -1
  168. package/package.json +9 -9
  169. package/src/EngineQueryClient.ts +4 -0
  170. package/src/types/clientQueryTypes.ts +3 -0
  171. package/src/types/serverQueryTypes.ts +3 -0
  172. package/dist/EngineBaseClient.cjs.map +0 -1
  173. package/dist/index.cjs.map +0 -1
  174. package/dist/index.js.map +0 -1
  175. package/dist/types/clientExecuteTypes.cjs.map +0 -1
  176. package/dist/types/clientExecuteTypes.js.map +0 -1
  177. package/dist/types/clientQueryTypes.cjs.map +0 -1
  178. package/dist/types/clientQueryTypes.js.map +0 -1
  179. package/dist/types/index.cjs.map +0 -1
  180. package/dist/types/index.js.map +0 -1
  181. package/dist/types/serverExecuteTypes.cjs.map +0 -1
  182. package/dist/types/serverExecuteTypes.js.map +0 -1
  183. package/dist/types/serverQueryModelTypes.cjs.map +0 -1
  184. package/dist/types/serverQueryModelTypes.js.map +0 -1
  185. package/dist/types/serverSubscriptionEventTypes.cjs.map +0 -1
  186. package/dist/types/serverSubscriptionEventTypes.js.map +0 -1
  187. package/dist/types/serverSubscriptionTypes.cjs.map +0 -1
  188. package/dist/types/serverSubscriptionTypes.js.map +0 -1
  189. package/dist/utils/index.cjs.map +0 -1
  190. package/dist/utils/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/EngineExecuteBuilder.ts"],"sourcesContent":["import {\n EIP712OrderParams,\n getNadoEIP712Values,\n getOrderNonce,\n SignableRequestType,\n SignableRequestTypeToParams,\n toIntegerString,\n} from '@nadohq/shared';\nimport { EngineBaseClient } from './EngineBaseClient';\nimport {\n EngineExecuteRequestParamsByType,\n EngineServerExecutePlaceOrderPayload,\n EngineServerExecuteRequestByType,\n SignatureParams,\n WithBaseEngineExecuteParams,\n WithSignature,\n} from './types';\n\n/**\n * Builds execute payloads as expected by the server.\n * @param nonce A nonce is computed when one is not provided.\n * @param signature A signature is computed when one is not provided.\n */\nexport class EngineExecuteBuilder {\n readonly engineClient: EngineBaseClient;\n\n constructor(engineClient: EngineBaseClient) {\n this.engineClient = engineClient;\n }\n\n /**\n * Builds server payload for the `liquidate_subaccount` execute action.\n * @param clientParams Client LiquidateSubaccount params.\n * @returns `liquidate_subaccount` payload\n */\n async buildLiquidateSubaccountPayload(\n clientParams: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ): Promise<EngineServerExecuteRequestByType['liquidate_subaccount']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('liquidate_subaccount', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'liquidate_subaccount',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n };\n }\n\n /**\n * Builds server payload for the `withdraw_collateral` execute action.\n * @param clientParams Client WithdrawCollateral params.\n * @returns `liquidate_subaccount` payload\n */\n async buildWithdrawCollateralPayload(\n clientParams: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ): Promise<EngineServerExecuteRequestByType['withdraw_collateral']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const signature = await this.getSignatureIfNeeded(\n 'withdraw_collateral',\n paramsWithNonce,\n );\n\n const tx = getNadoEIP712Values('withdraw_collateral', paramsWithNonce);\n return {\n signature,\n tx,\n spot_leverage: clientParams.spotLeverage ?? null,\n };\n }\n\n /**\n * Builds server payload for the `place_order` execute action.\n *\n * @param clientParams Client PlaceOrder params.\n * @returns `place_order` payload\n */\n async buildPlaceOrderPayload(\n clientParams: EngineExecuteRequestParamsByType['place_order'],\n ): Promise<EngineServerExecutePlaceOrderPayload> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const orderWithNonce = { ...clientParams.order, nonce };\n\n const signature = await this.getSignatureIfNeeded('place_order', {\n // Gets expected type (signature params from `clientParams` and order params from `orderWithNonce`)\n ...clientParams,\n ...orderWithNonce,\n });\n\n return this.buildPlaceOrderPayloadSync({\n ...clientParams,\n order: orderWithNonce,\n signature,\n });\n }\n\n /**\n * Synchronously builds server payload for the `place_order` execute action.\n *\n * @param clientParams Client PlaceOrder params.\n * @returns `place_order` payload\n */\n buildPlaceOrderPayloadSync(\n clientParams: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ): EngineServerExecutePlaceOrderPayload {\n const orderEIP712Values = getNadoEIP712Values(\n 'place_order',\n clientParams.order,\n );\n\n return {\n payload: {\n id: clientParams.id ?? null,\n product_id: clientParams.productId,\n order: orderEIP712Values,\n signature: clientParams.signature,\n spot_leverage: clientParams.spotLeverage ?? null,\n borrow_margin: clientParams.borrowMargin ?? null,\n },\n orderParams: clientParams.order,\n };\n }\n\n /**\n * Builds server payload for the `place_orders` execute action.\n * @param clientParams Client PlaceOrders params.\n * @returns `place_orders` payload\n */\n async buildPlaceOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['place_orders'],\n ): Promise<EngineServerExecuteRequestByType['place_orders']> {\n return {\n orders: await Promise.all(\n clientParams.orders.map(async (orderParams) => {\n const payload = await this.buildPlaceOrderPayload(orderParams);\n return payload.payload;\n }),\n ),\n stop_on_failure: clientParams.stopOnFailure ?? null,\n };\n }\n\n /**\n * Builds server payload for the `cancel_orders` execute action. As such, requires a signature to be given\n *\n * @param clientParams Client CancelOrders params.\n * @returns `cancel_orders` payload\n */\n async buildCancelOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['cancel_orders'],\n ): Promise<EngineServerExecuteRequestByType['cancel_orders']> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n const signature = await this.getSignatureIfNeeded(\n 'cancel_orders',\n paramsWithNonce,\n );\n\n return this.buildCancelOrdersPayloadSync({\n ...paramsWithNonce,\n signature,\n });\n }\n\n /**\n * Synchronously builds server payload for the `cancel_orders` execute action.\n *\n * @param clientParams Client CancelOrders params.\n * @returns `cancel_orders` payload\n */\n buildCancelOrdersPayloadSync(\n clientParams: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ): EngineServerExecuteRequestByType['cancel_orders'] {\n const tx = getNadoEIP712Values('cancel_orders', clientParams);\n\n return {\n tx,\n signature: clientParams.signature,\n required_unfilled_amount: clientParams.requiredUnfilledAmount\n ? toIntegerString(clientParams.requiredUnfilledAmount)\n : undefined,\n };\n }\n\n /**\n * Builds server payload for the `cancel_product_orders` execute action.\n * @param clientParams Client CancelProductOrders params.\n * @returns `cancel_product_orders` payload\n */\n async buildCancelProductOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['cancel_product_orders'],\n ): Promise<EngineServerExecuteRequestByType['cancel_product_orders']> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('cancel_product_orders', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'cancel_product_orders',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `link_signer` execute action.\n *\n * @param clientParams Client LinkSigner params.\n * @returns `link_signer` payload\n */\n async buildLinkSignerPayload(\n clientParams: EngineExecuteRequestParamsByType['link_signer'],\n ): Promise<EngineServerExecuteRequestByType['link_signer']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('link_signer', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'link_signer',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `transfer_quote` execute action.\n *\n * @param clientParams Client TransferQuote params.\n * @returns `transfer_quote` payload\n */\n async buildTransferQuotePayload(\n clientParams: EngineExecuteRequestParamsByType['transfer_quote'],\n ): Promise<EngineServerExecuteRequestByType['transfer_quote']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('transfer_quote', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'transfer_quote',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `mint_nlp` execute action.\n * @param clientParams Client MintNlp params.\n * @returns `mint_nlp` payload\n */\n async buildMintNlpPayload(\n clientParams: EngineExecuteRequestParamsByType['mint_nlp'],\n ): Promise<EngineServerExecuteRequestByType['mint_nlp']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('mint_nlp', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'mint_nlp',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n spot_leverage: clientParams.spotLeverage ?? null,\n };\n }\n\n /**\n * Builds server payload for the `burn_nlp` execute action.\n * @param clientParams Client BurnNlp params.\n * @returns `burn_nlp` payload\n */\n async buildBurnNlpPayload(\n clientParams: EngineExecuteRequestParamsByType['burn_nlp'],\n ): Promise<EngineServerExecuteRequestByType['burn_nlp']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('burn_nlp', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'burn_nlp',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n };\n }\n\n protected async getSignatureIfNeeded<T extends SignableRequestType>(\n requestType: T,\n paramsWithNonce: SignatureParams & SignableRequestTypeToParams[T],\n ) {\n if ('signature' in paramsWithNonce) {\n return paramsWithNonce.signature;\n }\n\n return await this.engineClient.sign(\n requestType,\n paramsWithNonce.verifyingAddr,\n paramsWithNonce.chainId,\n paramsWithNonce,\n );\n }\n\n protected async getTxNonceIfNeeded(\n params: WithBaseEngineExecuteParams<{ subaccountOwner: string }>,\n ) {\n if (params.nonce) {\n return params.nonce;\n }\n return await this.engineClient.getTxNonce(params.subaccountOwner);\n }\n\n protected getOrderNonceIfNeeded(\n params: WithBaseEngineExecuteParams<unknown>,\n ) {\n if (params.nonce) {\n return params.nonce;\n }\n return getOrderNonce();\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"file":"EngineExecuteBuilder.cjs","names":[],"sources":["../src/EngineExecuteBuilder.ts"],"sourcesContent":["import {\n EIP712OrderParams,\n getNadoEIP712Values,\n getOrderNonce,\n SignableRequestType,\n SignableRequestTypeToParams,\n toIntegerString,\n} from '@nadohq/shared';\nimport { EngineBaseClient } from './EngineBaseClient';\nimport {\n EngineExecuteRequestParamsByType,\n EngineServerExecutePlaceOrderPayload,\n EngineServerExecuteRequestByType,\n SignatureParams,\n WithBaseEngineExecuteParams,\n WithSignature,\n} from './types';\n\n/**\n * Builds execute payloads as expected by the server.\n * @param nonce A nonce is computed when one is not provided.\n * @param signature A signature is computed when one is not provided.\n */\nexport class EngineExecuteBuilder {\n readonly engineClient: EngineBaseClient;\n\n constructor(engineClient: EngineBaseClient) {\n this.engineClient = engineClient;\n }\n\n /**\n * Builds server payload for the `liquidate_subaccount` execute action.\n * @param clientParams Client LiquidateSubaccount params.\n * @returns `liquidate_subaccount` payload\n */\n async buildLiquidateSubaccountPayload(\n clientParams: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ): Promise<EngineServerExecuteRequestByType['liquidate_subaccount']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('liquidate_subaccount', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'liquidate_subaccount',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n };\n }\n\n /**\n * Builds server payload for the `withdraw_collateral` execute action.\n * @param clientParams Client WithdrawCollateral params.\n * @returns `liquidate_subaccount` payload\n */\n async buildWithdrawCollateralPayload(\n clientParams: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ): Promise<EngineServerExecuteRequestByType['withdraw_collateral']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const signature = await this.getSignatureIfNeeded(\n 'withdraw_collateral',\n paramsWithNonce,\n );\n\n const tx = getNadoEIP712Values('withdraw_collateral', paramsWithNonce);\n return {\n signature,\n tx,\n spot_leverage: clientParams.spotLeverage ?? null,\n };\n }\n\n /**\n * Builds server payload for the `place_order` execute action.\n *\n * @param clientParams Client PlaceOrder params.\n * @returns `place_order` payload\n */\n async buildPlaceOrderPayload(\n clientParams: EngineExecuteRequestParamsByType['place_order'],\n ): Promise<EngineServerExecutePlaceOrderPayload> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const orderWithNonce = { ...clientParams.order, nonce };\n\n const signature = await this.getSignatureIfNeeded('place_order', {\n // Gets expected type (signature params from `clientParams` and order params from `orderWithNonce`)\n ...clientParams,\n ...orderWithNonce,\n });\n\n return this.buildPlaceOrderPayloadSync({\n ...clientParams,\n order: orderWithNonce,\n signature,\n });\n }\n\n /**\n * Synchronously builds server payload for the `place_order` execute action.\n *\n * @param clientParams Client PlaceOrder params.\n * @returns `place_order` payload\n */\n buildPlaceOrderPayloadSync(\n clientParams: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ): EngineServerExecutePlaceOrderPayload {\n const orderEIP712Values = getNadoEIP712Values(\n 'place_order',\n clientParams.order,\n );\n\n return {\n payload: {\n id: clientParams.id ?? null,\n product_id: clientParams.productId,\n order: orderEIP712Values,\n signature: clientParams.signature,\n spot_leverage: clientParams.spotLeverage ?? null,\n borrow_margin: clientParams.borrowMargin ?? null,\n },\n orderParams: clientParams.order,\n };\n }\n\n /**\n * Builds server payload for the `place_orders` execute action.\n * @param clientParams Client PlaceOrders params.\n * @returns `place_orders` payload\n */\n async buildPlaceOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['place_orders'],\n ): Promise<EngineServerExecuteRequestByType['place_orders']> {\n return {\n orders: await Promise.all(\n clientParams.orders.map(async (orderParams) => {\n const payload = await this.buildPlaceOrderPayload(orderParams);\n return payload.payload;\n }),\n ),\n stop_on_failure: clientParams.stopOnFailure ?? null,\n };\n }\n\n /**\n * Builds server payload for the `cancel_orders` execute action. As such, requires a signature to be given\n *\n * @param clientParams Client CancelOrders params.\n * @returns `cancel_orders` payload\n */\n async buildCancelOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['cancel_orders'],\n ): Promise<EngineServerExecuteRequestByType['cancel_orders']> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n const signature = await this.getSignatureIfNeeded(\n 'cancel_orders',\n paramsWithNonce,\n );\n\n return this.buildCancelOrdersPayloadSync({\n ...paramsWithNonce,\n signature,\n });\n }\n\n /**\n * Synchronously builds server payload for the `cancel_orders` execute action.\n *\n * @param clientParams Client CancelOrders params.\n * @returns `cancel_orders` payload\n */\n buildCancelOrdersPayloadSync(\n clientParams: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ): EngineServerExecuteRequestByType['cancel_orders'] {\n const tx = getNadoEIP712Values('cancel_orders', clientParams);\n\n return {\n tx,\n signature: clientParams.signature,\n required_unfilled_amount: clientParams.requiredUnfilledAmount\n ? toIntegerString(clientParams.requiredUnfilledAmount)\n : undefined,\n };\n }\n\n /**\n * Builds server payload for the `cancel_product_orders` execute action.\n * @param clientParams Client CancelProductOrders params.\n * @returns `cancel_product_orders` payload\n */\n async buildCancelProductOrdersPayload(\n clientParams: EngineExecuteRequestParamsByType['cancel_product_orders'],\n ): Promise<EngineServerExecuteRequestByType['cancel_product_orders']> {\n const nonce = this.getOrderNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('cancel_product_orders', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'cancel_product_orders',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `link_signer` execute action.\n *\n * @param clientParams Client LinkSigner params.\n * @returns `link_signer` payload\n */\n async buildLinkSignerPayload(\n clientParams: EngineExecuteRequestParamsByType['link_signer'],\n ): Promise<EngineServerExecuteRequestByType['link_signer']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('link_signer', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'link_signer',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `transfer_quote` execute action.\n *\n * @param clientParams Client TransferQuote params.\n * @returns `transfer_quote` payload\n */\n async buildTransferQuotePayload(\n clientParams: EngineExecuteRequestParamsByType['transfer_quote'],\n ): Promise<EngineServerExecuteRequestByType['transfer_quote']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('transfer_quote', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'transfer_quote',\n paramsWithNonce,\n );\n\n return {\n tx,\n signature,\n };\n }\n\n /**\n * Builds server payload for the `mint_nlp` execute action.\n * @param clientParams Client MintNlp params.\n * @returns `mint_nlp` payload\n */\n async buildMintNlpPayload(\n clientParams: EngineExecuteRequestParamsByType['mint_nlp'],\n ): Promise<EngineServerExecuteRequestByType['mint_nlp']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('mint_nlp', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'mint_nlp',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n spot_leverage: clientParams.spotLeverage ?? null,\n };\n }\n\n /**\n * Builds server payload for the `burn_nlp` execute action.\n * @param clientParams Client BurnNlp params.\n * @returns `burn_nlp` payload\n */\n async buildBurnNlpPayload(\n clientParams: EngineExecuteRequestParamsByType['burn_nlp'],\n ): Promise<EngineServerExecuteRequestByType['burn_nlp']> {\n const nonce = await this.getTxNonceIfNeeded(clientParams);\n const paramsWithNonce = { ...clientParams, nonce };\n\n const tx = getNadoEIP712Values('burn_nlp', paramsWithNonce);\n const signature = await this.getSignatureIfNeeded(\n 'burn_nlp',\n paramsWithNonce,\n );\n\n return {\n signature,\n tx,\n };\n }\n\n protected async getSignatureIfNeeded<T extends SignableRequestType>(\n requestType: T,\n paramsWithNonce: SignatureParams & SignableRequestTypeToParams[T],\n ) {\n if ('signature' in paramsWithNonce) {\n return paramsWithNonce.signature;\n }\n\n return await this.engineClient.sign(\n requestType,\n paramsWithNonce.verifyingAddr,\n paramsWithNonce.chainId,\n paramsWithNonce,\n );\n }\n\n protected async getTxNonceIfNeeded(\n params: WithBaseEngineExecuteParams<{ subaccountOwner: string }>,\n ) {\n if (params.nonce) {\n return params.nonce;\n }\n return await this.engineClient.getTxNonce(params.subaccountOwner);\n }\n\n protected getOrderNonceIfNeeded(\n params: WithBaseEngineExecuteParams<unknown>,\n ) {\n if (params.nonce) {\n return params.nonce;\n }\n return getOrderNonce();\n }\n}\n"],"mappings":"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"}
@@ -1,108 +1,2 @@
1
- import { EIP712OrderParams, SignableRequestType, SignableRequestTypeToParams } from '@nadohq/shared';
2
- import { EngineBaseClient } from './EngineBaseClient.cjs';
3
- import { EngineExecuteRequestParamsByType, WithSignature, SignatureParams, WithBaseEngineExecuteParams } from './types/clientExecuteTypes.cjs';
4
- import { EngineServerExecuteRequestByType, EngineServerExecutePlaceOrderPayload } from './types/serverExecuteTypes.cjs';
5
- import 'axios';
6
- import './types/clientQueryTypes.cjs';
7
- import 'bignumber.js';
8
- import './types/serverQueryTypes.cjs';
9
- import './types/serverQueryModelTypes.cjs';
10
-
11
- /**
12
- * Builds execute payloads as expected by the server.
13
- * @param nonce A nonce is computed when one is not provided.
14
- * @param signature A signature is computed when one is not provided.
15
- */
16
- declare class EngineExecuteBuilder {
17
- readonly engineClient: EngineBaseClient;
18
- constructor(engineClient: EngineBaseClient);
19
- /**
20
- * Builds server payload for the `liquidate_subaccount` execute action.
21
- * @param clientParams Client LiquidateSubaccount params.
22
- * @returns `liquidate_subaccount` payload
23
- */
24
- buildLiquidateSubaccountPayload(clientParams: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<EngineServerExecuteRequestByType['liquidate_subaccount']>;
25
- /**
26
- * Builds server payload for the `withdraw_collateral` execute action.
27
- * @param clientParams Client WithdrawCollateral params.
28
- * @returns `liquidate_subaccount` payload
29
- */
30
- buildWithdrawCollateralPayload(clientParams: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<EngineServerExecuteRequestByType['withdraw_collateral']>;
31
- /**
32
- * Builds server payload for the `place_order` execute action.
33
- *
34
- * @param clientParams Client PlaceOrder params.
35
- * @returns `place_order` payload
36
- */
37
- buildPlaceOrderPayload(clientParams: EngineExecuteRequestParamsByType['place_order']): Promise<EngineServerExecutePlaceOrderPayload>;
38
- /**
39
- * Synchronously builds server payload for the `place_order` execute action.
40
- *
41
- * @param clientParams Client PlaceOrder params.
42
- * @returns `place_order` payload
43
- */
44
- buildPlaceOrderPayloadSync(clientParams: WithSignature<EngineExecuteRequestParamsByType['place_order'] & {
45
- order: EIP712OrderParams;
46
- }>): EngineServerExecutePlaceOrderPayload;
47
- /**
48
- * Builds server payload for the `place_orders` execute action.
49
- * @param clientParams Client PlaceOrders params.
50
- * @returns `place_orders` payload
51
- */
52
- buildPlaceOrdersPayload(clientParams: EngineExecuteRequestParamsByType['place_orders']): Promise<EngineServerExecuteRequestByType['place_orders']>;
53
- /**
54
- * Builds server payload for the `cancel_orders` execute action. As such, requires a signature to be given
55
- *
56
- * @param clientParams Client CancelOrders params.
57
- * @returns `cancel_orders` payload
58
- */
59
- buildCancelOrdersPayload(clientParams: EngineExecuteRequestParamsByType['cancel_orders']): Promise<EngineServerExecuteRequestByType['cancel_orders']>;
60
- /**
61
- * Synchronously builds server payload for the `cancel_orders` execute action.
62
- *
63
- * @param clientParams Client CancelOrders params.
64
- * @returns `cancel_orders` payload
65
- */
66
- buildCancelOrdersPayloadSync(clientParams: WithSignature<EngineExecuteRequestParamsByType['cancel_orders'] & {
67
- nonce: string;
68
- }>): EngineServerExecuteRequestByType['cancel_orders'];
69
- /**
70
- * Builds server payload for the `cancel_product_orders` execute action.
71
- * @param clientParams Client CancelProductOrders params.
72
- * @returns `cancel_product_orders` payload
73
- */
74
- buildCancelProductOrdersPayload(clientParams: EngineExecuteRequestParamsByType['cancel_product_orders']): Promise<EngineServerExecuteRequestByType['cancel_product_orders']>;
75
- /**
76
- * Builds server payload for the `link_signer` execute action.
77
- *
78
- * @param clientParams Client LinkSigner params.
79
- * @returns `link_signer` payload
80
- */
81
- buildLinkSignerPayload(clientParams: EngineExecuteRequestParamsByType['link_signer']): Promise<EngineServerExecuteRequestByType['link_signer']>;
82
- /**
83
- * Builds server payload for the `transfer_quote` execute action.
84
- *
85
- * @param clientParams Client TransferQuote params.
86
- * @returns `transfer_quote` payload
87
- */
88
- buildTransferQuotePayload(clientParams: EngineExecuteRequestParamsByType['transfer_quote']): Promise<EngineServerExecuteRequestByType['transfer_quote']>;
89
- /**
90
- * Builds server payload for the `mint_nlp` execute action.
91
- * @param clientParams Client MintNlp params.
92
- * @returns `mint_nlp` payload
93
- */
94
- buildMintNlpPayload(clientParams: EngineExecuteRequestParamsByType['mint_nlp']): Promise<EngineServerExecuteRequestByType['mint_nlp']>;
95
- /**
96
- * Builds server payload for the `burn_nlp` execute action.
97
- * @param clientParams Client BurnNlp params.
98
- * @returns `burn_nlp` payload
99
- */
100
- buildBurnNlpPayload(clientParams: EngineExecuteRequestParamsByType['burn_nlp']): Promise<EngineServerExecuteRequestByType['burn_nlp']>;
101
- protected getSignatureIfNeeded<T extends SignableRequestType>(requestType: T, paramsWithNonce: SignatureParams & SignableRequestTypeToParams[T]): Promise<string>;
102
- protected getTxNonceIfNeeded(params: WithBaseEngineExecuteParams<{
103
- subaccountOwner: string;
104
- }>): Promise<string>;
105
- protected getOrderNonceIfNeeded(params: WithBaseEngineExecuteParams<unknown>): string;
106
- }
107
-
108
- export { EngineExecuteBuilder };
1
+ import { t as EngineExecuteBuilder } from "./EngineExecuteBuilder-VLrEndhv.cjs";
2
+ export { EngineExecuteBuilder };
@@ -1,108 +1,2 @@
1
- import { EIP712OrderParams, SignableRequestType, SignableRequestTypeToParams } from '@nadohq/shared';
2
- import { EngineBaseClient } from './EngineBaseClient.js';
3
- import { EngineExecuteRequestParamsByType, WithSignature, SignatureParams, WithBaseEngineExecuteParams } from './types/clientExecuteTypes.js';
4
- import { EngineServerExecuteRequestByType, EngineServerExecutePlaceOrderPayload } from './types/serverExecuteTypes.js';
5
- import 'axios';
6
- import './types/clientQueryTypes.js';
7
- import 'bignumber.js';
8
- import './types/serverQueryTypes.js';
9
- import './types/serverQueryModelTypes.js';
10
-
11
- /**
12
- * Builds execute payloads as expected by the server.
13
- * @param nonce A nonce is computed when one is not provided.
14
- * @param signature A signature is computed when one is not provided.
15
- */
16
- declare class EngineExecuteBuilder {
17
- readonly engineClient: EngineBaseClient;
18
- constructor(engineClient: EngineBaseClient);
19
- /**
20
- * Builds server payload for the `liquidate_subaccount` execute action.
21
- * @param clientParams Client LiquidateSubaccount params.
22
- * @returns `liquidate_subaccount` payload
23
- */
24
- buildLiquidateSubaccountPayload(clientParams: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<EngineServerExecuteRequestByType['liquidate_subaccount']>;
25
- /**
26
- * Builds server payload for the `withdraw_collateral` execute action.
27
- * @param clientParams Client WithdrawCollateral params.
28
- * @returns `liquidate_subaccount` payload
29
- */
30
- buildWithdrawCollateralPayload(clientParams: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<EngineServerExecuteRequestByType['withdraw_collateral']>;
31
- /**
32
- * Builds server payload for the `place_order` execute action.
33
- *
34
- * @param clientParams Client PlaceOrder params.
35
- * @returns `place_order` payload
36
- */
37
- buildPlaceOrderPayload(clientParams: EngineExecuteRequestParamsByType['place_order']): Promise<EngineServerExecutePlaceOrderPayload>;
38
- /**
39
- * Synchronously builds server payload for the `place_order` execute action.
40
- *
41
- * @param clientParams Client PlaceOrder params.
42
- * @returns `place_order` payload
43
- */
44
- buildPlaceOrderPayloadSync(clientParams: WithSignature<EngineExecuteRequestParamsByType['place_order'] & {
45
- order: EIP712OrderParams;
46
- }>): EngineServerExecutePlaceOrderPayload;
47
- /**
48
- * Builds server payload for the `place_orders` execute action.
49
- * @param clientParams Client PlaceOrders params.
50
- * @returns `place_orders` payload
51
- */
52
- buildPlaceOrdersPayload(clientParams: EngineExecuteRequestParamsByType['place_orders']): Promise<EngineServerExecuteRequestByType['place_orders']>;
53
- /**
54
- * Builds server payload for the `cancel_orders` execute action. As such, requires a signature to be given
55
- *
56
- * @param clientParams Client CancelOrders params.
57
- * @returns `cancel_orders` payload
58
- */
59
- buildCancelOrdersPayload(clientParams: EngineExecuteRequestParamsByType['cancel_orders']): Promise<EngineServerExecuteRequestByType['cancel_orders']>;
60
- /**
61
- * Synchronously builds server payload for the `cancel_orders` execute action.
62
- *
63
- * @param clientParams Client CancelOrders params.
64
- * @returns `cancel_orders` payload
65
- */
66
- buildCancelOrdersPayloadSync(clientParams: WithSignature<EngineExecuteRequestParamsByType['cancel_orders'] & {
67
- nonce: string;
68
- }>): EngineServerExecuteRequestByType['cancel_orders'];
69
- /**
70
- * Builds server payload for the `cancel_product_orders` execute action.
71
- * @param clientParams Client CancelProductOrders params.
72
- * @returns `cancel_product_orders` payload
73
- */
74
- buildCancelProductOrdersPayload(clientParams: EngineExecuteRequestParamsByType['cancel_product_orders']): Promise<EngineServerExecuteRequestByType['cancel_product_orders']>;
75
- /**
76
- * Builds server payload for the `link_signer` execute action.
77
- *
78
- * @param clientParams Client LinkSigner params.
79
- * @returns `link_signer` payload
80
- */
81
- buildLinkSignerPayload(clientParams: EngineExecuteRequestParamsByType['link_signer']): Promise<EngineServerExecuteRequestByType['link_signer']>;
82
- /**
83
- * Builds server payload for the `transfer_quote` execute action.
84
- *
85
- * @param clientParams Client TransferQuote params.
86
- * @returns `transfer_quote` payload
87
- */
88
- buildTransferQuotePayload(clientParams: EngineExecuteRequestParamsByType['transfer_quote']): Promise<EngineServerExecuteRequestByType['transfer_quote']>;
89
- /**
90
- * Builds server payload for the `mint_nlp` execute action.
91
- * @param clientParams Client MintNlp params.
92
- * @returns `mint_nlp` payload
93
- */
94
- buildMintNlpPayload(clientParams: EngineExecuteRequestParamsByType['mint_nlp']): Promise<EngineServerExecuteRequestByType['mint_nlp']>;
95
- /**
96
- * Builds server payload for the `burn_nlp` execute action.
97
- * @param clientParams Client BurnNlp params.
98
- * @returns `burn_nlp` payload
99
- */
100
- buildBurnNlpPayload(clientParams: EngineExecuteRequestParamsByType['burn_nlp']): Promise<EngineServerExecuteRequestByType['burn_nlp']>;
101
- protected getSignatureIfNeeded<T extends SignableRequestType>(requestType: T, paramsWithNonce: SignatureParams & SignableRequestTypeToParams[T]): Promise<string>;
102
- protected getTxNonceIfNeeded(params: WithBaseEngineExecuteParams<{
103
- subaccountOwner: string;
104
- }>): Promise<string>;
105
- protected getOrderNonceIfNeeded(params: WithBaseEngineExecuteParams<unknown>): string;
106
- }
107
-
108
- export { EngineExecuteBuilder };
1
+ import { t as EngineExecuteBuilder } from "./EngineExecuteBuilder-t8EQ5Rmp.js";
2
+ export { EngineExecuteBuilder };