@nadohq/client 0.33.0 → 0.35.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 (224) hide show
  1. package/README.md +8 -5
  2. package/dist/BaseRewardsAPI-DHZt4Obo.d.cts +17 -0
  3. package/dist/BaseRewardsAPI-DHZt4Obo.d.cts.map +1 -0
  4. package/dist/BaseRewardsAPI-K3MVXh2R.d.ts +17 -0
  5. package/dist/BaseRewardsAPI-K3MVXh2R.d.ts.map +1 -0
  6. package/dist/{BaseSpotAPI-DCR0Ukso.d.cts → BaseSpotAPI-CTa--WXe.d.cts} +3 -3
  7. package/dist/{BaseSpotAPI-DCR0Ukso.d.cts.map → BaseSpotAPI-CTa--WXe.d.cts.map} +1 -1
  8. package/dist/{BaseSpotAPI-Dn7FqHTu.d.ts → BaseSpotAPI-CyGq3M8G.d.ts} +3 -3
  9. package/dist/{BaseSpotAPI-Dn7FqHTu.d.ts.map → BaseSpotAPI-CyGq3M8G.d.ts.map} +1 -1
  10. package/dist/{MarketExecuteAPI-DKgGu_7b.d.ts → MarketExecuteAPI-CYN3iQp-.d.ts} +2 -2
  11. package/dist/{MarketExecuteAPI-DKgGu_7b.d.ts.map → MarketExecuteAPI-CYN3iQp-.d.ts.map} +1 -1
  12. package/dist/{MarketExecuteAPI-QPuMa3CL.d.cts → MarketExecuteAPI-qiAe3jh_.d.cts} +2 -2
  13. package/dist/{MarketExecuteAPI-QPuMa3CL.d.cts.map → MarketExecuteAPI-qiAe3jh_.d.cts.map} +1 -1
  14. package/dist/{MarketQueryAPI-DDzBbxEu.d.cts → MarketQueryAPI-BcfSSPpI.d.cts} +2 -2
  15. package/dist/{MarketQueryAPI-DDzBbxEu.d.cts.map → MarketQueryAPI-BcfSSPpI.d.cts.map} +1 -1
  16. package/dist/{MarketQueryAPI-CWfcwc-Z.d.ts → MarketQueryAPI-D4jlc7XA.d.ts} +2 -2
  17. package/dist/{MarketQueryAPI-CWfcwc-Z.d.ts.map → MarketQueryAPI-D4jlc7XA.d.ts.map} +1 -1
  18. package/dist/{PerpExecuteAPI-bgOnDMQR.d.cts → PerpExecuteAPI-X8z_Qdew.d.cts} +2 -2
  19. package/dist/PerpExecuteAPI-X8z_Qdew.d.cts.map +1 -0
  20. package/dist/{PerpExecuteAPI-DcAur1dM.d.ts → PerpExecuteAPI-mwp3kbFh.d.ts} +2 -2
  21. package/dist/PerpExecuteAPI-mwp3kbFh.d.ts.map +1 -0
  22. package/dist/{PerpQueryAPI-hGNe5bbX.d.cts → PerpQueryAPI-BEGfs6t1.d.cts} +2 -2
  23. package/dist/{PerpQueryAPI-hGNe5bbX.d.cts.map → PerpQueryAPI-BEGfs6t1.d.cts.map} +1 -1
  24. package/dist/{PerpQueryAPI-BXvHXkQA.d.ts → PerpQueryAPI-DWh31jSN.d.ts} +2 -2
  25. package/dist/{PerpQueryAPI-BXvHXkQA.d.ts.map → PerpQueryAPI-DWh31jSN.d.ts.map} +1 -1
  26. package/dist/RewardsExecuteAPI-CBRW9_5y.d.ts +25 -0
  27. package/dist/RewardsExecuteAPI-CBRW9_5y.d.ts.map +1 -0
  28. package/dist/RewardsExecuteAPI-D9_BcurO.d.cts +25 -0
  29. package/dist/RewardsExecuteAPI-D9_BcurO.d.cts.map +1 -0
  30. package/dist/RewardsQueryAPI-BFZcv2Yx.d.cts +33 -0
  31. package/dist/RewardsQueryAPI-BFZcv2Yx.d.cts.map +1 -0
  32. package/dist/RewardsQueryAPI-CsanOO14.d.ts +33 -0
  33. package/dist/RewardsQueryAPI-CsanOO14.d.ts.map +1 -0
  34. package/dist/{SpotExecuteAPI-8dJfQcjP.d.ts → SpotExecuteAPI-0owA_GY7.d.ts} +3 -3
  35. package/dist/{SpotExecuteAPI-8dJfQcjP.d.ts.map → SpotExecuteAPI-0owA_GY7.d.ts.map} +1 -1
  36. package/dist/{SpotExecuteAPI-C1E_L4Ov.d.cts → SpotExecuteAPI-Nht5qkkS.d.cts} +3 -3
  37. package/dist/{SpotExecuteAPI-C1E_L4Ov.d.cts.map → SpotExecuteAPI-Nht5qkkS.d.cts.map} +1 -1
  38. package/dist/{SpotQueryAPI-By-EKjdC.d.ts → SpotQueryAPI-BhGDIXhJ.d.ts} +3 -3
  39. package/dist/{SpotQueryAPI-By-EKjdC.d.ts.map → SpotQueryAPI-BhGDIXhJ.d.ts.map} +1 -1
  40. package/dist/{SpotQueryAPI-C-646O43.d.cts → SpotQueryAPI-C2e-37Rm.d.cts} +3 -3
  41. package/dist/{SpotQueryAPI-C-646O43.d.cts.map → SpotQueryAPI-C2e-37Rm.d.cts.map} +1 -1
  42. package/dist/{SubaccountExecuteAPI-IV4EuQiO.d.ts → SubaccountExecuteAPI-DNK46aPe.d.ts} +3 -3
  43. package/dist/{SubaccountExecuteAPI-IV4EuQiO.d.ts.map → SubaccountExecuteAPI-DNK46aPe.d.ts.map} +1 -1
  44. package/dist/{SubaccountExecuteAPI-BXUYFvqZ.d.cts → SubaccountExecuteAPI-GI1arKKC.d.cts} +3 -3
  45. package/dist/{SubaccountExecuteAPI-BXUYFvqZ.d.cts.map → SubaccountExecuteAPI-GI1arKKC.d.cts.map} +1 -1
  46. package/dist/{SubaccountQueryAPI-De_FQ-Qa.d.ts → SubaccountQueryAPI-CyWEORoJ.d.ts} +2 -2
  47. package/dist/{SubaccountQueryAPI-De_FQ-Qa.d.ts.map → SubaccountQueryAPI-CyWEORoJ.d.ts.map} +1 -1
  48. package/dist/{SubaccountQueryAPI-DuPZIksw.d.cts → SubaccountQueryAPI-DrcZ3_zN.d.cts} +2 -2
  49. package/dist/{SubaccountQueryAPI-DuPZIksw.d.cts.map → SubaccountQueryAPI-DrcZ3_zN.d.cts.map} +1 -1
  50. package/dist/{WebSocketExecuteAPI-BbCjkskC.d.ts → WebSocketExecuteAPI-CqIeMsUC.d.ts} +2 -2
  51. package/dist/{WebSocketExecuteAPI-BbCjkskC.d.ts.map → WebSocketExecuteAPI-CqIeMsUC.d.ts.map} +1 -1
  52. package/dist/{WebSocketExecuteAPI-DZ_Xauk2.d.cts → WebSocketExecuteAPI-Xna5N32F.d.cts} +2 -2
  53. package/dist/{WebSocketExecuteAPI-DZ_Xauk2.d.cts.map → WebSocketExecuteAPI-Xna5N32F.d.cts.map} +1 -1
  54. package/dist/{WebSocketQueryAPI-D1i9ToSh.d.cts → WebSocketQueryAPI-CNmb61qG.d.cts} +2 -2
  55. package/dist/{WebSocketQueryAPI-D1i9ToSh.d.cts.map → WebSocketQueryAPI-CNmb61qG.d.cts.map} +1 -1
  56. package/dist/{WebSocketQueryAPI-hOXDojO7.d.ts → WebSocketQueryAPI-DcnsC5EM.d.ts} +2 -2
  57. package/dist/{WebSocketQueryAPI-hOXDojO7.d.ts.map → WebSocketQueryAPI-DcnsC5EM.d.ts.map} +1 -1
  58. package/dist/{WebSocketSubscriptionAPI-B9YYloIc.d.ts → WebSocketSubscriptionAPI-DFYlMuBv.d.ts} +2 -2
  59. package/dist/{WebSocketSubscriptionAPI-B9YYloIc.d.ts.map → WebSocketSubscriptionAPI-DFYlMuBv.d.ts.map} +1 -1
  60. package/dist/{WebSocketSubscriptionAPI-DgIMxfz5.d.cts → WebSocketSubscriptionAPI-DS0tO4MO.d.cts} +2 -2
  61. package/dist/{WebSocketSubscriptionAPI-DgIMxfz5.d.cts.map → WebSocketSubscriptionAPI-DS0tO4MO.d.cts.map} +1 -1
  62. package/dist/apis/base.d.cts +1 -1
  63. package/dist/apis/base.d.ts +1 -1
  64. package/dist/apis/market/MarketExecuteAPI.d.cts +1 -1
  65. package/dist/apis/market/MarketExecuteAPI.d.ts +1 -1
  66. package/dist/apis/market/MarketQueryAPI.d.cts +1 -1
  67. package/dist/apis/market/MarketQueryAPI.d.ts +1 -1
  68. package/dist/apis/market/index.d.cts +1 -1
  69. package/dist/apis/market/index.d.ts +1 -1
  70. package/dist/apis/perp/PerpExecuteAPI.d.cts +1 -1
  71. package/dist/apis/perp/PerpExecuteAPI.d.ts +1 -1
  72. package/dist/apis/perp/PerpQueryAPI.d.cts +1 -1
  73. package/dist/apis/perp/PerpQueryAPI.d.ts +1 -1
  74. package/dist/apis/perp/index.d.cts +1 -1
  75. package/dist/apis/perp/index.d.ts +1 -1
  76. package/dist/apis/rewards/BaseRewardsAPI.cjs +22 -0
  77. package/dist/apis/rewards/BaseRewardsAPI.cjs.map +1 -0
  78. package/dist/apis/rewards/BaseRewardsAPI.d.cts +2 -0
  79. package/dist/apis/rewards/BaseRewardsAPI.d.ts +2 -0
  80. package/dist/apis/rewards/BaseRewardsAPI.js +21 -0
  81. package/dist/apis/rewards/BaseRewardsAPI.js.map +1 -0
  82. package/dist/apis/rewards/RewardsExecuteAPI.cjs +49 -0
  83. package/dist/apis/rewards/RewardsExecuteAPI.cjs.map +1 -0
  84. package/dist/apis/rewards/RewardsExecuteAPI.d.cts +2 -0
  85. package/dist/apis/rewards/RewardsExecuteAPI.d.ts +2 -0
  86. package/dist/apis/rewards/RewardsExecuteAPI.js +48 -0
  87. package/dist/apis/rewards/RewardsExecuteAPI.js.map +1 -0
  88. package/dist/apis/rewards/RewardsQueryAPI.cjs +33 -0
  89. package/dist/apis/rewards/RewardsQueryAPI.cjs.map +1 -0
  90. package/dist/apis/rewards/RewardsQueryAPI.d.cts +2 -0
  91. package/dist/apis/rewards/RewardsQueryAPI.d.ts +2 -0
  92. package/dist/apis/rewards/RewardsQueryAPI.js +32 -0
  93. package/dist/apis/rewards/RewardsQueryAPI.js.map +1 -0
  94. package/dist/apis/rewards/index.cjs +14 -0
  95. package/dist/apis/rewards/index.cjs.map +1 -0
  96. package/dist/apis/rewards/index.d.cts +3 -0
  97. package/dist/apis/rewards/index.d.ts +3 -0
  98. package/dist/apis/rewards/index.js +13 -0
  99. package/dist/apis/rewards/index.js.map +1 -0
  100. package/dist/apis/rewards/types.cjs +0 -0
  101. package/dist/apis/rewards/types.d.cts +2 -0
  102. package/dist/apis/rewards/types.d.ts +2 -0
  103. package/dist/apis/rewards/types.js +1 -0
  104. package/dist/apis/spot/BaseSpotAPI.d.cts +1 -1
  105. package/dist/apis/spot/BaseSpotAPI.d.ts +1 -1
  106. package/dist/apis/spot/SpotExecuteAPI.cjs +1 -0
  107. package/dist/apis/spot/SpotExecuteAPI.cjs.map +1 -1
  108. package/dist/apis/spot/SpotExecuteAPI.d.cts +1 -1
  109. package/dist/apis/spot/SpotExecuteAPI.d.ts +1 -1
  110. package/dist/apis/spot/SpotExecuteAPI.js +1 -0
  111. package/dist/apis/spot/SpotExecuteAPI.js.map +1 -1
  112. package/dist/apis/spot/SpotQueryAPI.d.cts +1 -1
  113. package/dist/apis/spot/SpotQueryAPI.d.ts +1 -1
  114. package/dist/apis/spot/index.d.cts +2 -2
  115. package/dist/apis/spot/index.d.ts +2 -2
  116. package/dist/apis/spot/types.d.cts +1 -1
  117. package/dist/apis/spot/types.d.ts +1 -1
  118. package/dist/apis/subaccount/SubaccountExecuteAPI.d.cts +1 -1
  119. package/dist/apis/subaccount/SubaccountExecuteAPI.d.ts +1 -1
  120. package/dist/apis/subaccount/SubaccountQueryAPI.d.cts +1 -1
  121. package/dist/apis/subaccount/SubaccountQueryAPI.d.ts +1 -1
  122. package/dist/apis/subaccount/index.d.cts +2 -2
  123. package/dist/apis/subaccount/index.d.ts +2 -2
  124. package/dist/apis/subaccount/types.d.cts +1 -1
  125. package/dist/apis/subaccount/types.d.ts +1 -1
  126. package/dist/apis/ws/WebSocketExecuteAPI.d.cts +1 -1
  127. package/dist/apis/ws/WebSocketExecuteAPI.d.ts +1 -1
  128. package/dist/apis/ws/WebSocketQueryAPI.d.cts +1 -1
  129. package/dist/apis/ws/WebSocketQueryAPI.d.ts +1 -1
  130. package/dist/apis/ws/WebSocketSubscriptionAPI.d.cts +1 -1
  131. package/dist/apis/ws/WebSocketSubscriptionAPI.d.ts +1 -1
  132. package/dist/apis/ws/index.d.cts +1 -1
  133. package/dist/apis/ws/index.d.ts +1 -1
  134. package/dist/{base-GN5mZk1G.d.cts → base-B5KgBVY-.d.cts} +2 -2
  135. package/dist/{base-GN5mZk1G.d.cts.map → base-B5KgBVY-.d.cts.map} +1 -1
  136. package/dist/{base-D11I3QiM.d.ts → base-CBv_F_59.d.ts} +2 -2
  137. package/dist/{base-D11I3QiM.d.ts.map → base-CBv_F_59.d.ts.map} +1 -1
  138. package/dist/client.cjs +4 -1
  139. package/dist/client.cjs.map +1 -1
  140. package/dist/client.d.cts +8 -6
  141. package/dist/client.d.cts.map +1 -1
  142. package/dist/client.d.ts +8 -6
  143. package/dist/client.d.ts.map +1 -1
  144. package/dist/client.js +4 -1
  145. package/dist/client.js.map +1 -1
  146. package/dist/{context-D1xmE2Rd.d.ts → context-CwXLME4I.d.cts} +16 -4
  147. package/dist/context-CwXLME4I.d.cts.map +1 -0
  148. package/dist/{context-CHBPiOx6.d.cts → context-Do0Aff5O.d.ts} +16 -4
  149. package/dist/context-Do0Aff5O.d.ts.map +1 -0
  150. package/dist/context.cjs +14 -8
  151. package/dist/context.cjs.map +1 -1
  152. package/dist/context.d.cts +1 -1
  153. package/dist/context.d.ts +1 -1
  154. package/dist/context.js +14 -8
  155. package/dist/context.js.map +1 -1
  156. package/dist/createNadoClient.cjs +7 -1
  157. package/dist/createNadoClient.cjs.map +1 -1
  158. package/dist/createNadoClient.d.cts +8 -2
  159. package/dist/createNadoClient.d.cts.map +1 -1
  160. package/dist/createNadoClient.d.ts +8 -2
  161. package/dist/createNadoClient.d.ts.map +1 -1
  162. package/dist/createNadoClient.js +7 -1
  163. package/dist/createNadoClient.js.map +1 -1
  164. package/dist/{index-CEwXS1Ek.d.ts → index-9zlswY-z.d.ts} +6 -6
  165. package/dist/{index-CEwXS1Ek.d.ts.map → index-9zlswY-z.d.ts.map} +1 -1
  166. package/dist/{index-DqQ5-VOh.d.cts → index-BhBnzyp5.d.cts} +3 -3
  167. package/dist/index-BhBnzyp5.d.cts.map +1 -0
  168. package/dist/{index-B1Dxe-TH.d.ts → index-BlphgBQ_.d.ts} +4 -4
  169. package/dist/{index-B1Dxe-TH.d.ts.map → index-BlphgBQ_.d.ts.map} +1 -1
  170. package/dist/{index-DPNd9PR1.d.ts → index-C0Z4SRqh.d.ts} +3 -3
  171. package/dist/index-C0Z4SRqh.d.ts.map +1 -0
  172. package/dist/index-CII3sBHl.d.ts +13 -0
  173. package/dist/index-CII3sBHl.d.ts.map +1 -0
  174. package/dist/{index-Bx-PsDsb.d.cts → index-CPbV1asH.d.cts} +3 -3
  175. package/dist/index-CPbV1asH.d.cts.map +1 -0
  176. package/dist/{index-Dj9Ub1PG.d.cts → index-CapkNob_.d.cts} +4 -4
  177. package/dist/{index-Dj9Ub1PG.d.cts.map → index-CapkNob_.d.cts.map} +1 -1
  178. package/dist/{index-B3HYm75y.d.cts → index-CgExXhBQ.d.cts} +6 -6
  179. package/dist/{index-B3HYm75y.d.cts.map → index-CgExXhBQ.d.cts.map} +1 -1
  180. package/dist/{index-D2pKqx7b.d.cts → index-CrZGbtpl.d.cts} +3 -3
  181. package/dist/index-CrZGbtpl.d.cts.map +1 -0
  182. package/dist/{index-IIzvROYs.d.ts → index-DmoR6iDR.d.ts} +3 -3
  183. package/dist/index-DmoR6iDR.d.ts.map +1 -0
  184. package/dist/index-IVpfl5AG.d.cts +13 -0
  185. package/dist/index-IVpfl5AG.d.cts.map +1 -0
  186. package/dist/{index-DIlwbefm.d.ts → index-MFkQd1G3.d.ts} +3 -3
  187. package/dist/index-MFkQd1G3.d.ts.map +1 -0
  188. package/dist/index.cjs +2 -0
  189. package/dist/index.d.cts +10 -8
  190. package/dist/index.d.ts +10 -8
  191. package/dist/index.js +2 -1
  192. package/dist/{types-B6oFoDTo.d.ts → types-BDVasYAf.d.ts} +1 -1
  193. package/dist/{types-B6oFoDTo.d.ts.map → types-BDVasYAf.d.ts.map} +1 -1
  194. package/dist/types-BFMFRstW.d.cts +18 -0
  195. package/dist/types-BFMFRstW.d.cts.map +1 -0
  196. package/dist/{types-BWRdhQd_.d.cts → types-C0Wevcia.d.cts} +1 -1
  197. package/dist/{types-BWRdhQd_.d.cts.map → types-C0Wevcia.d.cts.map} +1 -1
  198. package/dist/{types-pRheTrJ1.d.cts → types-C3rE8vyS.d.cts} +1 -1
  199. package/dist/{types-pRheTrJ1.d.cts.map → types-C3rE8vyS.d.cts.map} +1 -1
  200. package/dist/types-CFgxXCy2.d.ts +18 -0
  201. package/dist/types-CFgxXCy2.d.ts.map +1 -0
  202. package/dist/{types-DnBjJCnd.d.ts → types-OZlzeknc.d.ts} +1 -1
  203. package/dist/{types-DnBjJCnd.d.ts.map → types-OZlzeknc.d.ts.map} +1 -1
  204. package/package.json +7 -7
  205. package/src/apis/rewards/BaseRewardsAPI.ts +20 -0
  206. package/src/apis/rewards/RewardsExecuteAPI.ts +77 -0
  207. package/src/apis/rewards/RewardsQueryAPI.ts +35 -0
  208. package/src/apis/rewards/index.ts +11 -0
  209. package/src/apis/rewards/types.ts +15 -0
  210. package/src/apis/spot/SpotExecuteAPI.ts +4 -0
  211. package/src/client.ts +4 -0
  212. package/src/context.ts +28 -5
  213. package/src/createNadoClient.ts +7 -1
  214. package/src/index.ts +1 -0
  215. package/dist/PerpExecuteAPI-DcAur1dM.d.ts.map +0 -1
  216. package/dist/PerpExecuteAPI-bgOnDMQR.d.cts.map +0 -1
  217. package/dist/context-CHBPiOx6.d.cts.map +0 -1
  218. package/dist/context-D1xmE2Rd.d.ts.map +0 -1
  219. package/dist/index-Bx-PsDsb.d.cts.map +0 -1
  220. package/dist/index-D2pKqx7b.d.cts.map +0 -1
  221. package/dist/index-DIlwbefm.d.ts.map +0 -1
  222. package/dist/index-DPNd9PR1.d.ts.map +0 -1
  223. package/dist/index-DqQ5-VOh.d.cts.map +0 -1
  224. package/dist/index-IIzvROYs.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SpotExecuteAPI.js","names":[],"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n toBigInt,\n WalletNotProvidedError,\n} from '@nadohq/shared';\nimport { BaseSpotAPI } from './BaseSpotAPI';\nimport {\n ApproveAllowanceParams,\n BurnNlpParams,\n MintMockERC20Params,\n MintNlpParams,\n TransferQuoteParams,\n WithdrawCollateralParams,\n WithdrawCollateralV2Params,\n} from './types';\n\nexport class SpotExecuteAPI extends BaseSpotAPI {\n async deposit(params: DepositCollateralParams) {\n return depositCollateral({\n endpoint: this.context.contracts.endpoint,\n subaccountName: params.subaccountName,\n productId: params.productId,\n amount: params.amount,\n referralCode: params.referralCode,\n });\n }\n\n async withdraw(params: WithdrawCollateralParams) {\n return this.context.engineClient.withdrawCollateral({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Withdraws collateral to a custom recipient address via the `withdraw_collateral_v2` execute.\n *\n * When `sendTo` is the zero address, funds are sent to the subaccount owner. When `sendTo` is a\n * non-zero address, the transaction must be signed by the subaccount owner (linked signers are\n * not permitted).\n *\n * @param params\n */\n async withdrawV2(params: WithdrawCollateralV2Params) {\n return this.context.engineClient.withdrawCollateralV2({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async approveAllowance(params: ApproveAllowanceParams) {\n const tokenContract = await this.getTokenContractForProduct(params);\n if (!isWriteableContract(tokenContract)) {\n throw new Error(\n 'Token contract does not permit writes. Is a wallet client provided?',\n );\n }\n\n return approveDepositAllowance({\n amount: params.amount,\n endpoint: this.context.contracts.endpoint,\n tokenContract,\n });\n }\n\n /**\n * Transfers quote between subaccounts under the same wallet.\n *\n * @param params\n */\n async transferQuote(params: TransferQuoteParams) {\n return this.context.engineClient.transferQuote({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n });\n }\n\n async mintNlp(params: MintNlpParams) {\n return this.context.engineClient.mintNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async burnNlp(params: BurnNlpParams) {\n return this.context.engineClient.burnNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async _mintMockERC20(params: MintMockERC20Params) {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n\n return this.context.walletClient.writeContract({\n abi: MOCK_ERC20_ABI,\n address: config.token,\n functionName: 'mint',\n args: [this.getWalletClientAddress(), toBigInt(params.amount)],\n });\n }\n}\n"],"mappings":";;;AAoBA,IAAa,iBAAb,cAAoC,YAAY;CAC9C,MAAM,QAAQ,QAAiC;EAC7C,OAAO,kBAAkB;GACvB,UAAU,KAAK,QAAQ,UAAU;GACjC,gBAAgB,OAAO;GACvB,WAAW,OAAO;GAClB,QAAQ,OAAO;GACf,cAAc,OAAO;EACvB,CAAC;CACH;CAEA,MAAM,SAAS,QAAkC;EAC/C,OAAO,KAAK,QAAQ,aAAa,mBAAmB;GAClD,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;;;;;;;;;;CAWA,MAAM,WAAW,QAAoC;EACnD,OAAO,KAAK,QAAQ,aAAa,qBAAqB;GACpD,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,iBAAiB,QAAgC;EACrD,MAAM,gBAAgB,MAAM,KAAK,2BAA2B,MAAM;EAClE,IAAI,CAAC,oBAAoB,aAAa,GACpC,MAAM,IAAI,MACR,qEACF;EAGF,OAAO,wBAAwB;GAC7B,QAAQ,OAAO;GACf,UAAU,KAAK,QAAQ,UAAU;GACjC;EACF,CAAC;CACH;;;;;;CAOA,MAAM,cAAc,QAA6B;EAC/C,OAAO,KAAK,QAAQ,aAAa,cAAc;GAC7C,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;GAC/D,SAAS,KAAK,+BAA+B,MAAM;EACrD,CAAC;CACH;CAEA,MAAM,QAAQ,QAAuB;EACnC,OAAO,KAAK,QAAQ,aAAa,QAAQ;GACvC,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,QAAQ,QAAuB;EACnC,OAAO,KAAK,QAAQ,aAAa,QAAQ;GACvC,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,eAAe,QAA6B;EAChD,IAAI,CAAC,KAAK,QAAQ,cAChB,MAAM,IAAI,uBAAuB;EAGnC,MAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU,CACpE,OAAO,SACT,CAAC;EAED,OAAO,KAAK,QAAQ,aAAa,cAAc;GAC7C,KAAK;GACL,SAAS,OAAO;GAChB,cAAc;GACd,MAAM,CAAC,KAAK,uBAAuB,GAAG,SAAS,OAAO,MAAM,CAAC;EAC/D,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"SpotExecuteAPI.js","names":[],"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n toBigInt,\n WalletNotProvidedError,\n} from '@nadohq/shared';\nimport { BaseSpotAPI } from './BaseSpotAPI';\nimport {\n ApproveAllowanceParams,\n BurnNlpParams,\n MintMockERC20Params,\n MintNlpParams,\n TransferQuoteParams,\n WithdrawCollateralParams,\n WithdrawCollateralV2Params,\n} from './types';\n\nexport class SpotExecuteAPI extends BaseSpotAPI {\n async deposit(params: DepositCollateralParams) {\n if (!isWriteableContract(this.context.contracts.endpoint)) {\n throw new WalletNotProvidedError();\n }\n \n return depositCollateral({\n endpoint: this.context.contracts.endpoint,\n subaccountName: params.subaccountName,\n productId: params.productId,\n amount: params.amount,\n referralCode: params.referralCode,\n });\n }\n\n async withdraw(params: WithdrawCollateralParams) {\n return this.context.engineClient.withdrawCollateral({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Withdraws collateral to a custom recipient address via the `withdraw_collateral_v2` execute.\n *\n * When `sendTo` is the zero address, funds are sent to the subaccount owner. When `sendTo` is a\n * non-zero address, the transaction must be signed by the subaccount owner (linked signers are\n * not permitted).\n *\n * @param params\n */\n async withdrawV2(params: WithdrawCollateralV2Params) {\n return this.context.engineClient.withdrawCollateralV2({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async approveAllowance(params: ApproveAllowanceParams) {\n const tokenContract = await this.getTokenContractForProduct(params);\n if (!isWriteableContract(tokenContract)) {\n throw new Error(\n 'Token contract does not permit writes. Is a wallet client provided?',\n );\n }\n\n return approveDepositAllowance({\n amount: params.amount,\n endpoint: this.context.contracts.endpoint,\n tokenContract,\n });\n }\n\n /**\n * Transfers quote between subaccounts under the same wallet.\n *\n * @param params\n */\n async transferQuote(params: TransferQuoteParams) {\n return this.context.engineClient.transferQuote({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n });\n }\n\n async mintNlp(params: MintNlpParams) {\n return this.context.engineClient.mintNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async burnNlp(params: BurnNlpParams) {\n return this.context.engineClient.burnNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async _mintMockERC20(params: MintMockERC20Params) {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n\n return this.context.walletClient.writeContract({\n abi: MOCK_ERC20_ABI,\n address: config.token,\n functionName: 'mint',\n args: [this.getWalletClientAddress(), toBigInt(params.amount)],\n });\n }\n}\n"],"mappings":";;;AAoBA,IAAa,iBAAb,cAAoC,YAAY;CAC9C,MAAM,QAAQ,QAAiC;EAC7C,IAAI,CAAC,oBAAoB,KAAK,QAAQ,UAAU,QAAQ,GACtD,MAAM,IAAI,uBAAuB;EAGnC,OAAO,kBAAkB;GACvB,UAAU,KAAK,QAAQ,UAAU;GACjC,gBAAgB,OAAO;GACvB,WAAW,OAAO;GAClB,QAAQ,OAAO;GACf,cAAc,OAAO;EACvB,CAAC;CACH;CAEA,MAAM,SAAS,QAAkC;EAC/C,OAAO,KAAK,QAAQ,aAAa,mBAAmB;GAClD,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;;;;;;;;;;CAWA,MAAM,WAAW,QAAoC;EACnD,OAAO,KAAK,QAAQ,aAAa,qBAAqB;GACpD,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,iBAAiB,QAAgC;EACrD,MAAM,gBAAgB,MAAM,KAAK,2BAA2B,MAAM;EAClE,IAAI,CAAC,oBAAoB,aAAa,GACpC,MAAM,IAAI,MACR,qEACF;EAGF,OAAO,wBAAwB;GAC7B,QAAQ,OAAO;GACf,UAAU,KAAK,QAAQ,UAAU;GACjC;EACF,CAAC;CACH;;;;;;CAOA,MAAM,cAAc,QAA6B;EAC/C,OAAO,KAAK,QAAQ,aAAa,cAAc;GAC7C,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;GAC/D,SAAS,KAAK,+BAA+B,MAAM;EACrD,CAAC;CACH;CAEA,MAAM,QAAQ,QAAuB;EACnC,OAAO,KAAK,QAAQ,aAAa,QAAQ;GACvC,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,QAAQ,QAAuB;EACnC,OAAO,KAAK,QAAQ,aAAa,QAAQ;GACvC,GAAG;GACH,iBAAiB,KAAK,2BAA2B,MAAM;GACvD,SAAS,KAAK,+BAA+B,MAAM;GACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;EACjE,CAAC;CACH;CAEA,MAAM,eAAe,QAA6B;EAChD,IAAI,CAAC,KAAK,QAAQ,cAChB,MAAM,IAAI,uBAAuB;EAGnC,MAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU,CACpE,OAAO,SACT,CAAC;EAED,OAAO,KAAK,QAAQ,aAAa,cAAc;GAC7C,KAAK;GACL,SAAS,OAAO;GAChB,cAAc;GACd,MAAM,CAAC,KAAK,uBAAuB,GAAG,SAAS,OAAO,MAAM,CAAC;EAC/D,CAAC;CACH;AACF"}
@@ -1,2 +1,2 @@
1
- import { t as SpotQueryAPI } from "../../SpotQueryAPI-C-646O43.cjs";
1
+ import { t as SpotQueryAPI } from "../../SpotQueryAPI-C2e-37Rm.cjs";
2
2
  export { SpotQueryAPI };
@@ -1,2 +1,2 @@
1
- import { t as SpotQueryAPI } from "../../SpotQueryAPI-By-EKjdC.js";
1
+ import { t as SpotQueryAPI } from "../../SpotQueryAPI-BhGDIXhJ.js";
2
2
  export { SpotQueryAPI };
@@ -1,3 +1,3 @@
1
- import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-pRheTrJ1.cjs";
2
- import { t as SpotAPI } from "../../index-DqQ5-VOh.cjs";
1
+ import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-C3rE8vyS.cjs";
2
+ import { t as SpotAPI } from "../../index-BhBnzyp5.cjs";
3
3
  export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, SpotAPI, TransferQuoteParams, WithdrawCollateralParams, WithdrawCollateralV2Params };
@@ -1,3 +1,3 @@
1
- import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-DnBjJCnd.js";
2
- import { t as SpotAPI } from "../../index-DPNd9PR1.js";
1
+ import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-OZlzeknc.js";
2
+ import { t as SpotAPI } from "../../index-C0Z4SRqh.js";
3
3
  export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, SpotAPI, TransferQuoteParams, WithdrawCollateralParams, WithdrawCollateralV2Params };
@@ -1,2 +1,2 @@
1
- import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-pRheTrJ1.cjs";
1
+ import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-C3rE8vyS.cjs";
2
2
  export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams, WithdrawCollateralV2Params };
@@ -1,2 +1,2 @@
1
- import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-DnBjJCnd.js";
1
+ import { a as MintMockERC20Params, c as TransferQuoteParams, i as GetTokenWalletBalanceParams, l as WithdrawCollateralParams, n as BurnNlpParams, o as MintNlpParams, r as GetTokenAllowanceParams, s as ProductIdOrTokenAddress, t as ApproveAllowanceParams, u as WithdrawCollateralV2Params } from "../../types-OZlzeknc.js";
2
2
  export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams, WithdrawCollateralV2Params };
@@ -1,2 +1,2 @@
1
- import { t as SubaccountExecuteAPI } from "../../SubaccountExecuteAPI-BXUYFvqZ.cjs";
1
+ import { t as SubaccountExecuteAPI } from "../../SubaccountExecuteAPI-GI1arKKC.cjs";
2
2
  export { SubaccountExecuteAPI };
@@ -1,2 +1,2 @@
1
- import { t as SubaccountExecuteAPI } from "../../SubaccountExecuteAPI-IV4EuQiO.js";
1
+ import { t as SubaccountExecuteAPI } from "../../SubaccountExecuteAPI-DNK46aPe.js";
2
2
  export { SubaccountExecuteAPI };
@@ -1,2 +1,2 @@
1
- import { t as SubaccountQueryAPI } from "../../SubaccountQueryAPI-DuPZIksw.cjs";
1
+ import { t as SubaccountQueryAPI } from "../../SubaccountQueryAPI-DrcZ3_zN.cjs";
2
2
  export { SubaccountQueryAPI };
@@ -1,2 +1,2 @@
1
- import { t as SubaccountQueryAPI } from "../../SubaccountQueryAPI-De_FQ-Qa.js";
1
+ import { t as SubaccountQueryAPI } from "../../SubaccountQueryAPI-CyWEORoJ.js";
2
2
  export { SubaccountQueryAPI };
@@ -1,3 +1,3 @@
1
- import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-BWRdhQd_.cjs";
2
- import { t as SubaccountAPI } from "../../index-Dj9Ub1PG.cjs";
1
+ import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-C0Wevcia.cjs";
2
+ import { t as SubaccountAPI } from "../../index-CapkNob_.cjs";
3
3
  export { CreateStandardLinkedSignerResult, LinkSignerParams, LiquidateSubaccountParams, SubaccountAPI };
@@ -1,3 +1,3 @@
1
- import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-B6oFoDTo.js";
2
- import { t as SubaccountAPI } from "../../index-B1Dxe-TH.js";
1
+ import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-BDVasYAf.js";
2
+ import { t as SubaccountAPI } from "../../index-BlphgBQ_.js";
3
3
  export { CreateStandardLinkedSignerResult, LinkSignerParams, LiquidateSubaccountParams, SubaccountAPI };
@@ -1,2 +1,2 @@
1
- import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-BWRdhQd_.cjs";
1
+ import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-C0Wevcia.cjs";
2
2
  export { CreateStandardLinkedSignerResult, LinkSignerParams, LiquidateSubaccountParams };
@@ -1,2 +1,2 @@
1
- import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-B6oFoDTo.js";
1
+ import { n as LinkSignerParams, r as LiquidateSubaccountParams, t as CreateStandardLinkedSignerResult } from "../../types-BDVasYAf.js";
2
2
  export { CreateStandardLinkedSignerResult, LinkSignerParams, LiquidateSubaccountParams };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketExecuteAPI } from "../../WebSocketExecuteAPI-DZ_Xauk2.cjs";
1
+ import { t as WebSocketExecuteAPI } from "../../WebSocketExecuteAPI-Xna5N32F.cjs";
2
2
  export { WebSocketExecuteAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketExecuteAPI } from "../../WebSocketExecuteAPI-BbCjkskC.js";
1
+ import { t as WebSocketExecuteAPI } from "../../WebSocketExecuteAPI-CqIeMsUC.js";
2
2
  export { WebSocketExecuteAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketQueryAPI } from "../../WebSocketQueryAPI-D1i9ToSh.cjs";
1
+ import { t as WebSocketQueryAPI } from "../../WebSocketQueryAPI-CNmb61qG.cjs";
2
2
  export { WebSocketQueryAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketQueryAPI } from "../../WebSocketQueryAPI-hOXDojO7.js";
1
+ import { t as WebSocketQueryAPI } from "../../WebSocketQueryAPI-DcnsC5EM.js";
2
2
  export { WebSocketQueryAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketSubscriptionAPI } from "../../WebSocketSubscriptionAPI-DgIMxfz5.cjs";
1
+ import { t as WebSocketSubscriptionAPI } from "../../WebSocketSubscriptionAPI-DS0tO4MO.cjs";
2
2
  export { WebSocketSubscriptionAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebSocketSubscriptionAPI } from "../../WebSocketSubscriptionAPI-B9YYloIc.js";
1
+ import { t as WebSocketSubscriptionAPI } from "../../WebSocketSubscriptionAPI-DFYlMuBv.js";
2
2
  export { WebSocketSubscriptionAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebsocketAPI } from "../../index-B3HYm75y.cjs";
1
+ import { t as WebsocketAPI } from "../../index-CgExXhBQ.cjs";
2
2
  export { WebsocketAPI };
@@ -1,2 +1,2 @@
1
- import { t as WebsocketAPI } from "../../index-CEwXS1Ek.js";
1
+ import { t as WebsocketAPI } from "../../index-9zlswY-z.js";
2
2
  export { WebsocketAPI };
@@ -1,4 +1,4 @@
1
- import { r as NadoClientContext } from "./context-CHBPiOx6.cjs";
1
+ import { r as NadoClientContext } from "./context-CwXLME4I.cjs";
2
2
  import { WithContracts } from "@nadohq/shared";
3
3
 
4
4
  //#region src/apis/base.d.ts
@@ -17,4 +17,4 @@ declare class BaseNadoAPI {
17
17
  }
18
18
  //#endregion
19
19
  export { BaseNadoAPI as t };
20
- //# sourceMappingURL=base-GN5mZk1G.d.cts.map
20
+ //# sourceMappingURL=base-B5KgBVY-.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-GN5mZk1G.d.cts","names":[],"sources":["../src/apis/src/apis/base.ts"],"mappings":";;;;cAIa,WAAA;EAAA,SACF,OAAA,EAAS,iBAAA;cAEN,OAAA,EAAS,iBAAA;EAAA,UAIX,sBAAA,CAAA;EAAA,UAOA,8BAAA,CAA+B,MAAA;IACvC,OAAA;EAAA;EAAA,UAWQ,kBAAA,CAAA;EAAA,UAIA,0BAAA,CAA2B,MAAA;IACnC,eAAA;EAAA;EAAA,UAKQ,mBAAA,GAAA,CAAuB,MAAA,EAAQ,CAAA,GAAI,aAAA,CAAc,CAAA;AAAA"}
1
+ {"version":3,"file":"base-B5KgBVY-.d.cts","names":[],"sources":["../src/apis/src/apis/base.ts"],"mappings":";;;;cAIa,WAAA;EAAA,SACF,OAAA,EAAS,iBAAA;cAEN,OAAA,EAAS,iBAAA;EAAA,UAIX,sBAAA,CAAA;EAAA,UAOA,8BAAA,CAA+B,MAAA;IACvC,OAAA;EAAA;EAAA,UAWQ,kBAAA,CAAA;EAAA,UAIA,0BAAA,CAA2B,MAAA;IACnC,eAAA;EAAA;EAAA,UAKQ,mBAAA,GAAA,CAAuB,MAAA,EAAQ,CAAA,GAAI,aAAA,CAAc,CAAA;AAAA"}
@@ -1,4 +1,4 @@
1
- import { r as NadoClientContext } from "./context-D1xmE2Rd.js";
1
+ import { r as NadoClientContext } from "./context-Do0Aff5O.js";
2
2
  import { WithContracts } from "@nadohq/shared";
3
3
 
4
4
  //#region src/apis/base.d.ts
@@ -17,4 +17,4 @@ declare class BaseNadoAPI {
17
17
  }
18
18
  //#endregion
19
19
  export { BaseNadoAPI as t };
20
- //# sourceMappingURL=base-D11I3QiM.d.ts.map
20
+ //# sourceMappingURL=base-CBv_F_59.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-D11I3QiM.d.ts","names":[],"sources":["../src/apis/src/apis/base.ts"],"mappings":";;;;cAIa,WAAA;EAAA,SACF,OAAA,EAAS,iBAAA;cAEN,OAAA,EAAS,iBAAA;EAAA,UAIX,sBAAA,CAAA;EAAA,UAOA,8BAAA,CAA+B,MAAA;IACvC,OAAA;EAAA;EAAA,UAWQ,kBAAA,CAAA;EAAA,UAIA,0BAAA,CAA2B,MAAA;IACnC,eAAA;EAAA;EAAA,UAKQ,mBAAA,GAAA,CAAuB,MAAA,EAAQ,CAAA,GAAI,aAAA,CAAc,CAAA;AAAA"}
1
+ {"version":3,"file":"base-CBv_F_59.d.ts","names":[],"sources":["../src/apis/src/apis/base.ts"],"mappings":";;;;cAIa,WAAA;EAAA,SACF,OAAA,EAAS,iBAAA;cAEN,OAAA,EAAS,iBAAA;EAAA,UAIX,sBAAA,CAAA;EAAA,UAOA,8BAAA,CAA+B,MAAA;IACvC,OAAA;EAAA;EAAA,UAWQ,kBAAA,CAAA;EAAA,UAIA,0BAAA,CAA2B,MAAA;IACnC,eAAA;EAAA;EAAA,UAKQ,mBAAA,GAAA,CAAuB,MAAA,EAAQ,CAAA,GAAI,aAAA,CAAc,CAAA;AAAA"}
package/dist/client.cjs CHANGED
@@ -1,6 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_apis_market_index = require("./apis/market/index.cjs");
3
3
  const require_apis_perp_index = require("./apis/perp/index.cjs");
4
+ const require_apis_rewards_index = require("./apis/rewards/index.cjs");
4
5
  const require_apis_spot_index = require("./apis/spot/index.cjs");
5
6
  const require_apis_subaccount_index = require("./apis/subaccount/index.cjs");
6
7
  const require_apis_ws_index = require("./apis/ws/index.cjs");
@@ -35,7 +36,8 @@ var NadoClient = class {
35
36
  engineEndpoint: this.context.engineClient.opts.url,
36
37
  indexerEndpoint: this.context.indexerClient.opts.url,
37
38
  triggerEndpoint: this.context.triggerClient.opts.url,
38
- mobileEndpoint: this.context.mobileClient.opts.url
39
+ mobileEndpoint: this.context.mobileClient.opts.url,
40
+ clientType: this.context.clientType
39
41
  }, {
40
42
  walletClient,
41
43
  linkedSignerWalletClient: this.context.linkedSignerWalletClient,
@@ -49,6 +51,7 @@ var NadoClient = class {
49
51
  this.subaccount = new require_apis_subaccount_index.SubaccountAPI(context);
50
52
  this.spot = new require_apis_spot_index.SpotAPI(context);
51
53
  this.perp = new require_apis_perp_index.PerpAPI(context);
54
+ this.rewards = new require_apis_rewards_index.RewardsAPI(context);
52
55
  this.ws = new require_apis_ws_index.WebsocketAPI(context);
53
56
  }
54
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.cjs","names":["createClientContext","MarketAPI","SubaccountAPI","SpotAPI","PerpAPI","WebsocketAPI"],"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.indexerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.mobileClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n mobileEndpoint: this.context.mobileClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;;AAYA,IAAa,aAAb,MAAwB;CAQtB,YAAY,SAA4B;EACtC,KAAK,iBAAiB,OAAO;CAC/B;;;;;CAMA,gBAAgB,0BAA0D;EAExE,KAAK,QAAQ,2BACX,4BAA4B,KAAA;EAC9B,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;EAClE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;CACpE;;;;;CAMA,gBAAgB,cAAiD;EAC/D,MAAM,aAAaA,gBAAAA,oBACjB;GACE,mBAAmB,KAAK,QAAQ;GAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,gBAAgB,KAAK,QAAQ,aAAa,KAAK;EACjD,GACA;GACE;GAEA,0BAA0B,KAAK,QAAQ;GACvC,cAAc,KAAK,QAAQ;EAC7B,CACF;EACA,KAAK,iBAAiB,UAAU;CAClC;CAEA,iBAAyB,SAA4B;EACnD,KAAK,UAAU;EACf,KAAK,SAAS,IAAIC,0BAAAA,UAAU,OAAO;EACnC,KAAK,aAAa,IAAIC,8BAAAA,cAAc,OAAO;EAC3C,KAAK,OAAO,IAAIC,wBAAAA,QAAQ,OAAO;EAC/B,KAAK,OAAO,IAAIC,wBAAAA,QAAQ,OAAO;EAC/B,KAAK,KAAK,IAAIC,sBAAAA,aAAa,OAAO;CACpC;AACF"}
1
+ {"version":3,"file":"client.cjs","names":["createClientContext","MarketAPI","SubaccountAPI","SpotAPI","PerpAPI","RewardsAPI","WebsocketAPI"],"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { RewardsAPI } from './apis/rewards';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n rewards!: RewardsAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.indexerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.mobileClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n mobileEndpoint: this.context.mobileClient.opts.url,\n clientType: this.context.clientType,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.rewards = new RewardsAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAaA,IAAa,aAAb,MAAwB;CAStB,YAAY,SAA4B;EACtC,KAAK,iBAAiB,OAAO;CAC/B;;;;;CAMA,gBAAgB,0BAA0D;EAExE,KAAK,QAAQ,2BACX,4BAA4B,KAAA;EAC9B,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;EAClE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;CACpE;;;;;CAMA,gBAAgB,cAAiD;EAC/D,MAAM,aAAaA,gBAAAA,oBACjB;GACE,mBAAmB,KAAK,QAAQ;GAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,YAAY,KAAK,QAAQ;EAC3B,GACA;GACE;GAEA,0BAA0B,KAAK,QAAQ;GACvC,cAAc,KAAK,QAAQ;EAC7B,CACF;EACA,KAAK,iBAAiB,UAAU;CAClC;CAEA,iBAAyB,SAA4B;EACnD,KAAK,UAAU;EACf,KAAK,SAAS,IAAIC,0BAAAA,UAAU,OAAO;EACnC,KAAK,aAAa,IAAIC,8BAAAA,cAAc,OAAO;EAC3C,KAAK,OAAO,IAAIC,wBAAAA,QAAQ,OAAO;EAC/B,KAAK,OAAO,IAAIC,wBAAAA,QAAQ,OAAO;EAC/B,KAAK,UAAU,IAAIC,2BAAAA,WAAW,OAAO;EACrC,KAAK,KAAK,IAAIC,sBAAAA,aAAa,OAAO;CACpC;AACF"}
package/dist/client.d.cts CHANGED
@@ -1,9 +1,10 @@
1
- import { r as NadoClientContext } from "./context-CHBPiOx6.cjs";
2
- import { t as MarketAPI } from "./index-D2pKqx7b.cjs";
3
- import { t as PerpAPI } from "./index-Bx-PsDsb.cjs";
4
- import { t as SpotAPI } from "./index-DqQ5-VOh.cjs";
5
- import { t as SubaccountAPI } from "./index-Dj9Ub1PG.cjs";
6
- import { t as WebsocketAPI } from "./index-B3HYm75y.cjs";
1
+ import { r as NadoClientContext } from "./context-CwXLME4I.cjs";
2
+ import { t as MarketAPI } from "./index-CrZGbtpl.cjs";
3
+ import { t as PerpAPI } from "./index-CPbV1asH.cjs";
4
+ import { t as RewardsAPI } from "./index-IVpfl5AG.cjs";
5
+ import { t as SpotAPI } from "./index-BhBnzyp5.cjs";
6
+ import { t as SubaccountAPI } from "./index-CapkNob_.cjs";
7
+ import { t as WebsocketAPI } from "./index-CgExXhBQ.cjs";
7
8
  import { WalletClientWithAccount } from "@nadohq/shared";
8
9
 
9
10
  //#region src/client.d.ts
@@ -17,6 +18,7 @@ declare class NadoClient {
17
18
  subaccount: SubaccountAPI;
18
19
  spot: SpotAPI;
19
20
  perp: PerpAPI;
21
+ rewards: RewardsAPI;
20
22
  ws: WebsocketAPI;
21
23
  constructor(context: NadoClientContext);
22
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.cts","names":[],"sources":["../src/src/client.ts"],"mappings":";;;;;;;;;;;AAYA;;cAAa,UAAA;EACX,OAAA,EAAU,iBAAA;EACV,MAAA,EAAS,SAAA;EACT,UAAA,EAAa,aAAA;EACb,IAAA,EAAO,OAAA;EACP,IAAA,EAAO,OAAA;EACP,EAAA,EAAK,YAAA;cAEO,OAAA,EAAS,iBAAA;EAQqB;;;;EAA1C,eAAA,CAAgB,wBAAA,EAA0B,uBAAA;EAfhC;;;;EA6BV,eAAA,CAAgB,YAAA,EAAc,iBAAA;EAAA,QAmBtB,gBAAA;AAAA"}
1
+ {"version":3,"file":"client.d.cts","names":[],"sources":["../src/src/client.ts"],"mappings":";;;;;;;;;;;;AAaA;;cAAa,UAAA;EACX,OAAA,EAAU,iBAAA;EACV,MAAA,EAAS,SAAA;EACT,UAAA,EAAa,aAAA;EACb,IAAA,EAAO,OAAA;EACP,IAAA,EAAO,OAAA;EACP,OAAA,EAAU,UAAA;EACV,EAAA,EAAK,YAAA;cAEO,OAAA,EAAS,iBAAA;EAQqB;;;;EAA1C,eAAA,CAAgB,wBAAA,EAA0B,uBAAA;EAhBhC;;;;EA8BV,eAAA,CAAgB,YAAA,EAAc,iBAAA;EAAA,QAoBtB,gBAAA;AAAA"}
package/dist/client.d.ts CHANGED
@@ -1,9 +1,10 @@
1
- import { r as NadoClientContext } from "./context-D1xmE2Rd.js";
2
- import { t as MarketAPI } from "./index-IIzvROYs.js";
3
- import { t as PerpAPI } from "./index-DIlwbefm.js";
4
- import { t as SpotAPI } from "./index-DPNd9PR1.js";
5
- import { t as SubaccountAPI } from "./index-B1Dxe-TH.js";
6
- import { t as WebsocketAPI } from "./index-CEwXS1Ek.js";
1
+ import { r as NadoClientContext } from "./context-Do0Aff5O.js";
2
+ import { t as MarketAPI } from "./index-DmoR6iDR.js";
3
+ import { t as PerpAPI } from "./index-MFkQd1G3.js";
4
+ import { t as RewardsAPI } from "./index-CII3sBHl.js";
5
+ import { t as SpotAPI } from "./index-C0Z4SRqh.js";
6
+ import { t as SubaccountAPI } from "./index-BlphgBQ_.js";
7
+ import { t as WebsocketAPI } from "./index-9zlswY-z.js";
7
8
  import { WalletClientWithAccount } from "@nadohq/shared";
8
9
 
9
10
  //#region src/client.d.ts
@@ -17,6 +18,7 @@ declare class NadoClient {
17
18
  subaccount: SubaccountAPI;
18
19
  spot: SpotAPI;
19
20
  perp: PerpAPI;
21
+ rewards: RewardsAPI;
20
22
  ws: WebsocketAPI;
21
23
  constructor(context: NadoClientContext);
22
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","names":[],"sources":["../src/src/client.ts"],"mappings":";;;;;;;;;;;AAYA;;cAAa,UAAA;EACX,OAAA,EAAU,iBAAA;EACV,MAAA,EAAS,SAAA;EACT,UAAA,EAAa,aAAA;EACb,IAAA,EAAO,OAAA;EACP,IAAA,EAAO,OAAA;EACP,EAAA,EAAK,YAAA;cAEO,OAAA,EAAS,iBAAA;EAQqB;;;;EAA1C,eAAA,CAAgB,wBAAA,EAA0B,uBAAA;EAfhC;;;;EA6BV,eAAA,CAAgB,YAAA,EAAc,iBAAA;EAAA,QAmBtB,gBAAA;AAAA"}
1
+ {"version":3,"file":"client.d.ts","names":[],"sources":["../src/src/client.ts"],"mappings":";;;;;;;;;;;;AAaA;;cAAa,UAAA;EACX,OAAA,EAAU,iBAAA;EACV,MAAA,EAAS,SAAA;EACT,UAAA,EAAa,aAAA;EACb,IAAA,EAAO,OAAA;EACP,IAAA,EAAO,OAAA;EACP,OAAA,EAAU,UAAA;EACV,EAAA,EAAK,YAAA;cAEO,OAAA,EAAS,iBAAA;EAQqB;;;;EAA1C,eAAA,CAAgB,wBAAA,EAA0B,uBAAA;EAhBhC;;;;EA8BV,eAAA,CAAgB,YAAA,EAAc,iBAAA;EAAA,QAoBtB,gBAAA;AAAA"}
package/dist/client.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { MarketAPI } from "./apis/market/index.js";
2
2
  import { PerpAPI } from "./apis/perp/index.js";
3
+ import { RewardsAPI } from "./apis/rewards/index.js";
3
4
  import { SpotAPI } from "./apis/spot/index.js";
4
5
  import { SubaccountAPI } from "./apis/subaccount/index.js";
5
6
  import { WebsocketAPI } from "./apis/ws/index.js";
@@ -34,7 +35,8 @@ var NadoClient = class {
34
35
  engineEndpoint: this.context.engineClient.opts.url,
35
36
  indexerEndpoint: this.context.indexerClient.opts.url,
36
37
  triggerEndpoint: this.context.triggerClient.opts.url,
37
- mobileEndpoint: this.context.mobileClient.opts.url
38
+ mobileEndpoint: this.context.mobileClient.opts.url,
39
+ clientType: this.context.clientType
38
40
  }, {
39
41
  walletClient,
40
42
  linkedSignerWalletClient: this.context.linkedSignerWalletClient,
@@ -48,6 +50,7 @@ var NadoClient = class {
48
50
  this.subaccount = new SubaccountAPI(context);
49
51
  this.spot = new SpotAPI(context);
50
52
  this.perp = new PerpAPI(context);
53
+ this.rewards = new RewardsAPI(context);
51
54
  this.ws = new WebsocketAPI(context);
52
55
  }
53
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","names":[],"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.indexerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.mobileClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n mobileEndpoint: this.context.mobileClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;AAYA,IAAa,aAAb,MAAwB;CAQtB,YAAY,SAA4B;EACtC,KAAK,iBAAiB,OAAO;CAC/B;;;;;CAMA,gBAAgB,0BAA0D;EAExE,KAAK,QAAQ,2BACX,4BAA4B,KAAA;EAC9B,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;EAClE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;CACpE;;;;;CAMA,gBAAgB,cAAiD;EAC/D,MAAM,aAAa,oBACjB;GACE,mBAAmB,KAAK,QAAQ;GAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,gBAAgB,KAAK,QAAQ,aAAa,KAAK;EACjD,GACA;GACE;GAEA,0BAA0B,KAAK,QAAQ;GACvC,cAAc,KAAK,QAAQ;EAC7B,CACF;EACA,KAAK,iBAAiB,UAAU;CAClC;CAEA,iBAAyB,SAA4B;EACnD,KAAK,UAAU;EACf,KAAK,SAAS,IAAI,UAAU,OAAO;EACnC,KAAK,aAAa,IAAI,cAAc,OAAO;EAC3C,KAAK,OAAO,IAAI,QAAQ,OAAO;EAC/B,KAAK,OAAO,IAAI,QAAQ,OAAO;EAC/B,KAAK,KAAK,IAAI,aAAa,OAAO;CACpC;AACF"}
1
+ {"version":3,"file":"client.js","names":[],"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { RewardsAPI } from './apis/rewards';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n rewards!: RewardsAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.indexerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.mobileClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n mobileEndpoint: this.context.mobileClient.opts.url,\n clientType: this.context.clientType,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.rewards = new RewardsAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;;AAaA,IAAa,aAAb,MAAwB;CAStB,YAAY,SAA4B;EACtC,KAAK,iBAAiB,OAAO;CAC/B;;;;;CAMA,gBAAgB,0BAA0D;EAExE,KAAK,QAAQ,2BACX,4BAA4B,KAAA;EAC9B,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;EAClE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,cAAc,gBAAgB,wBAAwB;EACnE,KAAK,QAAQ,aAAa,gBAAgB,wBAAwB;CACpE;;;;;CAMA,gBAAgB,cAAiD;EAC/D,MAAM,aAAa,oBACjB;GACE,mBAAmB,KAAK,QAAQ;GAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;GACjD,gBAAgB,KAAK,QAAQ,aAAa,KAAK;GAC/C,YAAY,KAAK,QAAQ;EAC3B,GACA;GACE;GAEA,0BAA0B,KAAK,QAAQ;GACvC,cAAc,KAAK,QAAQ;EAC7B,CACF;EACA,KAAK,iBAAiB,UAAU;CAClC;CAEA,iBAAyB,SAA4B;EACnD,KAAK,UAAU;EACf,KAAK,SAAS,IAAI,UAAU,OAAO;EACnC,KAAK,aAAa,IAAI,cAAc,OAAO;EAC3C,KAAK,OAAO,IAAI,QAAQ,OAAO;EAC/B,KAAK,OAAO,IAAI,QAAQ,OAAO;EAC/B,KAAK,UAAU,IAAI,WAAW,OAAO;EACrC,KAAK,KAAK,IAAI,aAAa,OAAO;CACpC;AACF"}
@@ -1,9 +1,9 @@
1
1
  import { ChainEnv, NadoContracts, NadoDeploymentAddresses, WalletClientWithAccount } from "@nadohq/shared";
2
- import { PublicClient } from "viem";
3
2
  import { EngineClient } from "@nadohq/engine-client";
4
3
  import { IndexerClient } from "@nadohq/indexer-client";
5
4
  import { MobileClient } from "@nadohq/mobile-client";
6
5
  import { TriggerClient } from "@nadohq/trigger-client";
6
+ import { PublicClient } from "viem";
7
7
 
8
8
  //#region src/context.d.ts
9
9
  /**
@@ -19,9 +19,10 @@ interface NadoClientContext {
19
19
  indexerClient: IndexerClient;
20
20
  triggerClient: TriggerClient;
21
21
  mobileClient: MobileClient;
22
+ clientType?: string;
22
23
  }
23
24
  /**
24
- * Args for creating a context
25
+ * Args for creating a context with custom endpoints
25
26
  */
26
27
  interface NadoClientContextOpts {
27
28
  contractAddresses: NadoDeploymentAddresses;
@@ -29,12 +30,23 @@ interface NadoClientContextOpts {
29
30
  indexerEndpoint: string;
30
31
  triggerEndpoint: string;
31
32
  mobileEndpoint: string;
33
+ clientType?: string;
34
+ }
35
+ /**
36
+ * Args for creating a context with the default endpoints of a chain env
37
+ */
38
+ interface NadoClientContextChainEnvOpts {
39
+ chainEnv: ChainEnv;
40
+ clientType?: string;
32
41
  }
33
42
  /**
34
43
  * Args for signing configuration for creating a context
35
44
  */
36
45
  type CreateNadoClientContextAccountOpts = Pick<NadoClientContext, 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'>;
37
- type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;
46
+ /**
47
+ * Args for creating a context, either fully custom endpoints or a chain env with default endpoints.
48
+ */
49
+ type CreateNadoClientContextOpts = NadoClientContextOpts | NadoClientContextChainEnvOpts;
38
50
  /**
39
51
  * Utility function to create client context from options
40
52
  *
@@ -44,4 +56,4 @@ type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;
44
56
  declare function createClientContext(opts: CreateNadoClientContextOpts, accountOpts: CreateNadoClientContextAccountOpts): NadoClientContext;
45
57
  //#endregion
46
58
  export { createClientContext as i, CreateNadoClientContextOpts as n, NadoClientContext as r, CreateNadoClientContextAccountOpts as t };
47
- //# sourceMappingURL=context-D1xmE2Rd.d.ts.map
59
+ //# sourceMappingURL=context-CwXLME4I.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-CwXLME4I.d.cts","names":[],"sources":["../src/src/context.ts"],"mappings":";;;;;;;;;;AAwBA;UAAiB,iBAAA;EACf,YAAA,EAAc,YAAA;EACd,YAAA,GAAe,uBAAA;EAEf,wBAAA,GAA2B,uBAAA;EAC3B,SAAA,EAAW,aAAA;EACX,iBAAA,EAAmB,uBAAA;EACnB,YAAA,EAAc,YAAA;EACd,aAAA,EAAe,aAAA;EACf,aAAA,EAAe,aAAA;EACf,YAAA,EAAc,YAAA;EAEd,UAAA;AAAA;;;;UAMQ,qBAAA;EACR,iBAAA,EAAmB,uBAAuB;EAC1C,cAAA;EACA,eAAA;EACA,eAAA;EACA,cAAA;EACA,UAAA;AAAA;;;;UAMQ,6BAAA;EACR,QAAA,EAAU,QAAQ;EAClB,UAAA;AAAA;;;;KAMU,kCAAA,GAAqC,IAAI,CACnD,iBAAA;AA1BD;;;AAAA,KAiCW,2BAAA,GACR,qBAAA,GACA,6BAA6B;;;;;;;iBAQjB,mBAAA,CACd,IAAA,EAAM,2BAAA,EACN,WAAA,EAAa,kCAAA,GACZ,iBAAA"}
@@ -1,9 +1,9 @@
1
1
  import { ChainEnv, NadoContracts, NadoDeploymentAddresses, WalletClientWithAccount } from "@nadohq/shared";
2
+ import { PublicClient } from "viem";
2
3
  import { EngineClient } from "@nadohq/engine-client";
3
4
  import { IndexerClient } from "@nadohq/indexer-client";
4
5
  import { MobileClient } from "@nadohq/mobile-client";
5
6
  import { TriggerClient } from "@nadohq/trigger-client";
6
- import { PublicClient } from "viem";
7
7
 
8
8
  //#region src/context.d.ts
9
9
  /**
@@ -19,9 +19,10 @@ interface NadoClientContext {
19
19
  indexerClient: IndexerClient;
20
20
  triggerClient: TriggerClient;
21
21
  mobileClient: MobileClient;
22
+ clientType?: string;
22
23
  }
23
24
  /**
24
- * Args for creating a context
25
+ * Args for creating a context with custom endpoints
25
26
  */
26
27
  interface NadoClientContextOpts {
27
28
  contractAddresses: NadoDeploymentAddresses;
@@ -29,12 +30,23 @@ interface NadoClientContextOpts {
29
30
  indexerEndpoint: string;
30
31
  triggerEndpoint: string;
31
32
  mobileEndpoint: string;
33
+ clientType?: string;
34
+ }
35
+ /**
36
+ * Args for creating a context with the default endpoints of a chain env
37
+ */
38
+ interface NadoClientContextChainEnvOpts {
39
+ chainEnv: ChainEnv;
40
+ clientType?: string;
32
41
  }
33
42
  /**
34
43
  * Args for signing configuration for creating a context
35
44
  */
36
45
  type CreateNadoClientContextAccountOpts = Pick<NadoClientContext, 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'>;
37
- type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;
46
+ /**
47
+ * Args for creating a context, either fully custom endpoints or a chain env with default endpoints.
48
+ */
49
+ type CreateNadoClientContextOpts = NadoClientContextOpts | NadoClientContextChainEnvOpts;
38
50
  /**
39
51
  * Utility function to create client context from options
40
52
  *
@@ -44,4 +56,4 @@ type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;
44
56
  declare function createClientContext(opts: CreateNadoClientContextOpts, accountOpts: CreateNadoClientContextAccountOpts): NadoClientContext;
45
57
  //#endregion
46
58
  export { createClientContext as i, CreateNadoClientContextOpts as n, NadoClientContext as r, CreateNadoClientContextAccountOpts as t };
47
- //# sourceMappingURL=context-CHBPiOx6.d.cts.map
59
+ //# sourceMappingURL=context-Do0Aff5O.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-Do0Aff5O.d.ts","names":[],"sources":["../src/src/context.ts"],"mappings":";;;;;;;;;;AAwBA;UAAiB,iBAAA;EACf,YAAA,EAAc,YAAA;EACd,YAAA,GAAe,uBAAA;EAEf,wBAAA,GAA2B,uBAAA;EAC3B,SAAA,EAAW,aAAA;EACX,iBAAA,EAAmB,uBAAA;EACnB,YAAA,EAAc,YAAA;EACd,aAAA,EAAe,aAAA;EACf,aAAA,EAAe,aAAA;EACf,YAAA,EAAc,YAAA;EAEd,UAAA;AAAA;;;;UAMQ,qBAAA;EACR,iBAAA,EAAmB,uBAAuB;EAC1C,cAAA;EACA,eAAA;EACA,eAAA;EACA,cAAA;EACA,UAAA;AAAA;;;;UAMQ,6BAAA;EACR,QAAA,EAAU,QAAQ;EAClB,UAAA;AAAA;;;;KAMU,kCAAA,GAAqC,IAAI,CACnD,iBAAA;AA1BD;;;AAAA,KAiCW,2BAAA,GACR,qBAAA,GACA,6BAA6B;;;;;;;iBAQjB,mBAAA,CACd,IAAA,EAAM,2BAAA,EACN,WAAA,EAAa,kCAAA,GACZ,iBAAA"}
package/dist/context.cjs CHANGED
@@ -13,15 +13,16 @@ let _nadohq_trigger_client = require("@nadohq/trigger-client");
13
13
  * @param accountOpts
14
14
  */
15
15
  function createClientContext(opts, accountOpts) {
16
- const { contractAddresses, engineEndpoint, indexerEndpoint, triggerEndpoint, mobileEndpoint } = (() => {
17
- if (typeof opts === "object") return opts;
18
- const chainEnv = opts;
16
+ const { contractAddresses, engineEndpoint, indexerEndpoint, triggerEndpoint, mobileEndpoint, clientType } = (() => {
17
+ if (!("chainEnv" in opts)) return opts;
18
+ const { chainEnv, clientType } = opts;
19
19
  return {
20
20
  contractAddresses: _nadohq_shared.NADO_DEPLOYMENTS[chainEnv],
21
21
  engineEndpoint: _nadohq_engine_client.ENGINE_CLIENT_ENDPOINTS[chainEnv],
22
22
  indexerEndpoint: _nadohq_indexer_client.INDEXER_CLIENT_ENDPOINTS[chainEnv],
23
23
  triggerEndpoint: _nadohq_trigger_client.TRIGGER_CLIENT_ENDPOINTS[chainEnv],
24
- mobileEndpoint: _nadohq_mobile_client.MOBILE_CLIENT_ENDPOINTS[chainEnv]
24
+ mobileEndpoint: _nadohq_mobile_client.MOBILE_CLIENT_ENDPOINTS[chainEnv],
25
+ clientType
25
26
  };
26
27
  })();
27
28
  const { publicClient, walletClient, linkedSignerWalletClient } = accountOpts;
@@ -68,25 +69,30 @@ function createClientContext(opts, accountOpts) {
68
69
  })
69
70
  },
70
71
  contractAddresses,
72
+ clientType,
71
73
  engineClient: new _nadohq_engine_client.EngineClient({
72
74
  url: engineEndpoint,
73
75
  walletClient,
74
- linkedSignerWalletClient
76
+ linkedSignerWalletClient,
77
+ clientType
75
78
  }),
76
79
  indexerClient: new _nadohq_indexer_client.IndexerClient({
77
80
  url: indexerEndpoint,
78
81
  walletClient,
79
- linkedSignerWalletClient
82
+ linkedSignerWalletClient,
83
+ clientType
80
84
  }),
81
85
  triggerClient: new _nadohq_trigger_client.TriggerClient({
82
86
  url: triggerEndpoint,
83
87
  walletClient,
84
- linkedSignerWalletClient
88
+ linkedSignerWalletClient,
89
+ clientType
85
90
  }),
86
91
  mobileClient: new _nadohq_mobile_client.MobileClient({
87
92
  url: mobileEndpoint,
88
93
  walletClient,
89
- linkedSignerWalletClient
94
+ linkedSignerWalletClient,
95
+ clientType
90
96
  })
91
97
  };
92
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.cjs","names":["NADO_DEPLOYMENTS","ENGINE_CLIENT_ENDPOINTS","INDEXER_CLIENT_ENDPOINTS","TRIGGER_CLIENT_ENDPOINTS","MOBILE_CLIENT_ENDPOINTS","EngineClient","IndexerClient","TriggerClient","MobileClient","NADO_ABIS"],"sources":["../src/context.ts"],"sourcesContent":["import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport { MOBILE_CLIENT_ENDPOINTS, MobileClient } from '@nadohq/mobile-client';\nimport {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/shared';\nimport {\n TRIGGER_CLIENT_ENDPOINTS,\n TriggerClient,\n} from '@nadohq/trigger-client';\nimport { getContract, PublicClient } from 'viem';\n\n/**\n * Context required to use the Nado client.\n */\nexport interface NadoClientContext {\n publicClient: PublicClient;\n walletClient?: WalletClientWithAccount;\n // If provided, this is used to sign engine transactions instead of the account associated with walletClient\n linkedSignerWalletClient?: WalletClientWithAccount;\n contracts: NadoContracts;\n contractAddresses: NadoDeploymentAddresses;\n engineClient: EngineClient;\n indexerClient: IndexerClient;\n triggerClient: TriggerClient;\n mobileClient: MobileClient;\n}\n\n/**\n * Args for creating a context\n */\ninterface NadoClientContextOpts {\n contractAddresses: NadoDeploymentAddresses;\n engineEndpoint: string;\n indexerEndpoint: string;\n triggerEndpoint: string;\n mobileEndpoint: string;\n}\n\n/**\n * Args for signing configuration for creating a context\n */\nexport type CreateNadoClientContextAccountOpts = Pick<\n NadoClientContext,\n 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'\n>;\n\nexport type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;\n\n/**\n * Utility function to create client context from options\n *\n * @param opts\n * @param accountOpts\n */\nexport function createClientContext(\n opts: CreateNadoClientContextOpts,\n accountOpts: CreateNadoClientContextAccountOpts,\n): NadoClientContext {\n const {\n contractAddresses,\n engineEndpoint,\n indexerEndpoint,\n triggerEndpoint,\n mobileEndpoint,\n } = ((): NadoClientContextOpts => {\n // Custom options\n if (typeof opts === 'object') {\n return opts;\n }\n\n const chainEnv = opts;\n return {\n contractAddresses: NADO_DEPLOYMENTS[chainEnv],\n engineEndpoint: ENGINE_CLIENT_ENDPOINTS[chainEnv],\n indexerEndpoint: INDEXER_CLIENT_ENDPOINTS[chainEnv],\n triggerEndpoint: TRIGGER_CLIENT_ENDPOINTS[chainEnv],\n mobileEndpoint: MOBILE_CLIENT_ENDPOINTS[chainEnv],\n };\n })();\n const { publicClient, walletClient, linkedSignerWalletClient } = accountOpts;\n\n return {\n walletClient,\n linkedSignerWalletClient,\n publicClient,\n contracts: {\n querier: getNadoContract({\n contractAddresses,\n contractName: 'querier',\n walletClient,\n publicClient,\n }),\n clearinghouse: getNadoContract({\n contractAddresses,\n contractName: 'clearinghouse',\n walletClient,\n publicClient,\n }),\n endpoint: getNadoContract({\n contractAddresses,\n contractName: 'endpoint',\n walletClient,\n publicClient,\n }),\n spotEngine: getNadoContract({\n contractAddresses,\n contractName: 'spotEngine',\n walletClient,\n publicClient,\n }),\n perpEngine: getNadoContract({\n contractAddresses,\n contractName: 'perpEngine',\n walletClient,\n publicClient,\n }),\n withdrawPool: getNadoContract({\n contractAddresses,\n contractName: 'withdrawPool',\n walletClient,\n publicClient,\n }),\n },\n contractAddresses,\n engineClient: new EngineClient({\n url: engineEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n indexerClient: new IndexerClient({\n url: indexerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n triggerClient: new TriggerClient({\n url: triggerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n mobileClient: new MobileClient({\n url: mobileEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n };\n}\n\ninterface GetNadoContractParams<T extends NadoContractName> {\n contractAddresses: NadoDeploymentAddresses;\n contractName: T;\n walletClient?: WalletClientWithAccount;\n publicClient: PublicClient;\n}\n\nfunction getNadoContract<T extends NadoContractName>({\n contractAddresses,\n contractName,\n walletClient,\n publicClient,\n}: GetNadoContractParams<T>): NadoContracts[T] {\n return getContract({\n address: contractAddresses[contractName],\n abi: NADO_ABIS[contractName],\n client: walletClient ?? publicClient,\n }) as NadoContracts[T];\n}\n"],"mappings":";;;;;;;;;;;;;;AAgEA,SAAgB,oBACd,MACA,aACmB;CACnB,MAAM,EACJ,mBACA,gBACA,iBACA,iBACA,0BACgC;EAEhC,IAAI,OAAO,SAAS,UAClB,OAAO;EAGT,MAAM,WAAW;EACjB,OAAO;GACL,mBAAmBA,eAAAA,iBAAiB;GACpC,gBAAgBC,sBAAAA,wBAAwB;GACxC,iBAAiBC,uBAAAA,yBAAyB;GAC1C,iBAAiBC,uBAAAA,yBAAyB;GAC1C,gBAAgBC,sBAAAA,wBAAwB;EAC1C;CACF,GAAG;CACH,MAAM,EAAE,cAAc,cAAc,6BAA6B;CAEjE,OAAO;EACL;EACA;EACA;EACA,WAAW;GACT,SAAS,gBAAgB;IACvB;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,eAAe,gBAAgB;IAC7B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,UAAU,gBAAgB;IACxB;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,YAAY,gBAAgB;IAC1B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,YAAY,gBAAgB;IAC1B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,cAAc,gBAAgB;IAC5B;IACA,cAAc;IACd;IACA;GACF,CAAC;EACH;EACA;EACA,cAAc,IAAIC,sBAAAA,aAAa;GAC7B,KAAK;GACL;GACA;EACF,CAAC;EACD,eAAe,IAAIC,uBAAAA,cAAc;GAC/B,KAAK;GACL;GACA;EACF,CAAC;EACD,eAAe,IAAIC,uBAAAA,cAAc;GAC/B,KAAK;GACL;GACA;EACF,CAAC;EACD,cAAc,IAAIC,sBAAAA,aAAa;GAC7B,KAAK;GACL;GACA;EACF,CAAC;CACH;AACF;AASA,SAAS,gBAA4C,EACnD,mBACA,cACA,cACA,gBAC6C;CAC7C,QAAA,GAAA,KAAA,aAAmB;EACjB,SAAS,kBAAkB;EAC3B,KAAKC,eAAAA,UAAU;EACf,QAAQ,gBAAgB;CAC1B,CAAC;AACH"}
1
+ {"version":3,"file":"context.cjs","names":["NADO_DEPLOYMENTS","ENGINE_CLIENT_ENDPOINTS","INDEXER_CLIENT_ENDPOINTS","TRIGGER_CLIENT_ENDPOINTS","MOBILE_CLIENT_ENDPOINTS","EngineClient","IndexerClient","TriggerClient","MobileClient","NADO_ABIS"],"sources":["../src/context.ts"],"sourcesContent":["import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport { MOBILE_CLIENT_ENDPOINTS, MobileClient } from '@nadohq/mobile-client';\nimport {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/shared';\nimport {\n TRIGGER_CLIENT_ENDPOINTS,\n TriggerClient,\n} from '@nadohq/trigger-client';\nimport { getContract, PublicClient } from 'viem';\n\n/**\n * Context required to use the Nado client.\n */\nexport interface NadoClientContext {\n publicClient: PublicClient;\n walletClient?: WalletClientWithAccount;\n // If provided, this is used to sign engine transactions instead of the account associated with walletClient\n linkedSignerWalletClient?: WalletClientWithAccount;\n contracts: NadoContracts;\n contractAddresses: NadoDeploymentAddresses;\n engineClient: EngineClient;\n indexerClient: IndexerClient;\n triggerClient: TriggerClient;\n mobileClient: MobileClient;\n // If provided, identifies the calling client, sent as a header with every request made by the service clients above\n clientType?: string;\n}\n\n/**\n * Args for creating a context with custom endpoints\n */\ninterface NadoClientContextOpts {\n contractAddresses: NadoDeploymentAddresses;\n engineEndpoint: string;\n indexerEndpoint: string;\n triggerEndpoint: string;\n mobileEndpoint: string;\n clientType?: string;\n}\n\n/**\n * Args for creating a context with the default endpoints of a chain env\n */\ninterface NadoClientContextChainEnvOpts {\n chainEnv: ChainEnv;\n clientType?: string;\n}\n\n/**\n * Args for signing configuration for creating a context\n */\nexport type CreateNadoClientContextAccountOpts = Pick<\n NadoClientContext,\n 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'\n>;\n\n/**\n * Args for creating a context, either fully custom endpoints or a chain env with default endpoints.\n */\nexport type CreateNadoClientContextOpts =\n | NadoClientContextOpts\n | NadoClientContextChainEnvOpts;\n\n/**\n * Utility function to create client context from options\n *\n * @param opts\n * @param accountOpts\n */\nexport function createClientContext(\n opts: CreateNadoClientContextOpts,\n accountOpts: CreateNadoClientContextAccountOpts,\n): NadoClientContext {\n const {\n contractAddresses,\n engineEndpoint,\n indexerEndpoint,\n triggerEndpoint,\n mobileEndpoint,\n clientType,\n } = ((): NadoClientContextOpts => {\n // Custom endpoint options\n if (!('chainEnv' in opts)) {\n return opts;\n }\n\n const { chainEnv, clientType } = opts;\n return {\n contractAddresses: NADO_DEPLOYMENTS[chainEnv],\n engineEndpoint: ENGINE_CLIENT_ENDPOINTS[chainEnv],\n indexerEndpoint: INDEXER_CLIENT_ENDPOINTS[chainEnv],\n triggerEndpoint: TRIGGER_CLIENT_ENDPOINTS[chainEnv],\n mobileEndpoint: MOBILE_CLIENT_ENDPOINTS[chainEnv],\n clientType,\n };\n })();\n const { publicClient, walletClient, linkedSignerWalletClient } = accountOpts;\n\n return {\n walletClient,\n linkedSignerWalletClient,\n publicClient,\n contracts: {\n querier: getNadoContract({\n contractAddresses,\n contractName: 'querier',\n walletClient,\n publicClient,\n }),\n clearinghouse: getNadoContract({\n contractAddresses,\n contractName: 'clearinghouse',\n walletClient,\n publicClient,\n }),\n endpoint: getNadoContract({\n contractAddresses,\n contractName: 'endpoint',\n walletClient,\n publicClient,\n }),\n spotEngine: getNadoContract({\n contractAddresses,\n contractName: 'spotEngine',\n walletClient,\n publicClient,\n }),\n perpEngine: getNadoContract({\n contractAddresses,\n contractName: 'perpEngine',\n walletClient,\n publicClient,\n }),\n withdrawPool: getNadoContract({\n contractAddresses,\n contractName: 'withdrawPool',\n walletClient,\n publicClient,\n }),\n },\n contractAddresses,\n clientType,\n engineClient: new EngineClient({\n url: engineEndpoint,\n walletClient,\n linkedSignerWalletClient,\n clientType,\n }),\n indexerClient: new IndexerClient({\n url: indexerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n clientType,\n }),\n triggerClient: new TriggerClient({\n url: triggerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n clientType,\n }),\n mobileClient: new MobileClient({\n url: mobileEndpoint,\n walletClient,\n linkedSignerWalletClient,\n clientType,\n }),\n };\n}\n\ninterface GetNadoContractParams<T extends NadoContractName> {\n contractAddresses: NadoDeploymentAddresses;\n contractName: T;\n walletClient?: WalletClientWithAccount;\n publicClient: PublicClient;\n}\n\nfunction getNadoContract<T extends NadoContractName>({\n contractAddresses,\n contractName,\n walletClient,\n publicClient,\n}: GetNadoContractParams<T>): NadoContracts[T] {\n return getContract({\n address: contractAddresses[contractName],\n abi: NADO_ABIS[contractName],\n client: walletClient ?? publicClient,\n }) as NadoContracts[T];\n}\n"],"mappings":";;;;;;;;;;;;;;AAgFA,SAAgB,oBACd,MACA,aACmB;CACnB,MAAM,EACJ,mBACA,gBACA,iBACA,iBACA,gBACA,sBACgC;EAEhC,IAAI,EAAE,cAAc,OAClB,OAAO;EAGT,MAAM,EAAE,UAAU,eAAe;EACjC,OAAO;GACL,mBAAmBA,eAAAA,iBAAiB;GACpC,gBAAgBC,sBAAAA,wBAAwB;GACxC,iBAAiBC,uBAAAA,yBAAyB;GAC1C,iBAAiBC,uBAAAA,yBAAyB;GAC1C,gBAAgBC,sBAAAA,wBAAwB;GACxC;EACF;CACF,GAAG;CACH,MAAM,EAAE,cAAc,cAAc,6BAA6B;CAEjE,OAAO;EACL;EACA;EACA;EACA,WAAW;GACT,SAAS,gBAAgB;IACvB;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,eAAe,gBAAgB;IAC7B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,UAAU,gBAAgB;IACxB;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,YAAY,gBAAgB;IAC1B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,YAAY,gBAAgB;IAC1B;IACA,cAAc;IACd;IACA;GACF,CAAC;GACD,cAAc,gBAAgB;IAC5B;IACA,cAAc;IACd;IACA;GACF,CAAC;EACH;EACA;EACA;EACA,cAAc,IAAIC,sBAAAA,aAAa;GAC7B,KAAK;GACL;GACA;GACA;EACF,CAAC;EACD,eAAe,IAAIC,uBAAAA,cAAc;GAC/B,KAAK;GACL;GACA;GACA;EACF,CAAC;EACD,eAAe,IAAIC,uBAAAA,cAAc;GAC/B,KAAK;GACL;GACA;GACA;EACF,CAAC;EACD,cAAc,IAAIC,sBAAAA,aAAa;GAC7B,KAAK;GACL;GACA;GACA;EACF,CAAC;CACH;AACF;AASA,SAAS,gBAA4C,EACnD,mBACA,cACA,cACA,gBAC6C;CAC7C,QAAA,GAAA,KAAA,aAAmB;EACjB,SAAS,kBAAkB;EAC3B,KAAKC,eAAAA,UAAU;EACf,QAAQ,gBAAgB;CAC1B,CAAC;AACH"}
@@ -1,2 +1,2 @@
1
- import { i as createClientContext, n as CreateNadoClientContextOpts, r as NadoClientContext, t as CreateNadoClientContextAccountOpts } from "./context-CHBPiOx6.cjs";
1
+ import { i as createClientContext, n as CreateNadoClientContextOpts, r as NadoClientContext, t as CreateNadoClientContextAccountOpts } from "./context-CwXLME4I.cjs";
2
2
  export { CreateNadoClientContextAccountOpts, CreateNadoClientContextOpts, NadoClientContext, createClientContext };
package/dist/context.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { i as createClientContext, n as CreateNadoClientContextOpts, r as NadoClientContext, t as CreateNadoClientContextAccountOpts } from "./context-D1xmE2Rd.js";
1
+ import { i as createClientContext, n as CreateNadoClientContextOpts, r as NadoClientContext, t as CreateNadoClientContextAccountOpts } from "./context-Do0Aff5O.js";
2
2
  export { CreateNadoClientContextAccountOpts, CreateNadoClientContextOpts, NadoClientContext, createClientContext };