xrpl 2.13.0 → 3.0.0-beta.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 (334) hide show
  1. package/README.md +2 -2
  2. package/build/xrpl-latest-min.js +1 -1
  3. package/build/xrpl-latest-min.js.map +1 -1
  4. package/build/xrpl-latest.js +18279 -74867
  5. package/build/xrpl-latest.js.map +1 -1
  6. package/dist/npm/Wallet/authorizeChannel.d.ts +3 -0
  7. package/dist/npm/Wallet/authorizeChannel.d.ts.map +1 -0
  8. package/dist/npm/Wallet/authorizeChannel.js +14 -0
  9. package/dist/npm/Wallet/authorizeChannel.js.map +1 -0
  10. package/dist/npm/Wallet/defaultFaucets.js +1 -1
  11. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  12. package/dist/npm/Wallet/fundWallet.d.ts +17 -3
  13. package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
  14. package/dist/npm/Wallet/fundWallet.js +53 -78
  15. package/dist/npm/Wallet/fundWallet.js.map +1 -1
  16. package/dist/npm/Wallet/index.d.ts.map +1 -1
  17. package/dist/npm/Wallet/index.js +24 -23
  18. package/dist/npm/Wallet/index.js.map +1 -1
  19. package/dist/npm/Wallet/signer.d.ts +2 -4
  20. package/dist/npm/Wallet/signer.d.ts.map +1 -1
  21. package/dist/npm/Wallet/signer.js +17 -13
  22. package/dist/npm/Wallet/signer.js.map +1 -1
  23. package/dist/npm/Wallet/walletFromSecretNumbers.js +2 -2
  24. package/dist/npm/Wallet/walletFromSecretNumbers.js.map +1 -1
  25. package/dist/npm/client/RequestManager.d.ts +3 -2
  26. package/dist/npm/client/RequestManager.d.ts.map +1 -1
  27. package/dist/npm/client/RequestManager.js +25 -1
  28. package/dist/npm/client/RequestManager.js.map +1 -1
  29. package/dist/npm/client/connection.d.ts +8 -11
  30. package/dist/npm/client/connection.d.ts.map +1 -1
  31. package/dist/npm/client/connection.js +8 -54
  32. package/dist/npm/client/connection.js.map +1 -1
  33. package/dist/npm/client/index.d.ts +56 -78
  34. package/dist/npm/client/index.d.ts.map +1 -1
  35. package/dist/npm/client/index.js +155 -42
  36. package/dist/npm/client/index.js.map +1 -1
  37. package/dist/npm/client/partialPayment.d.ts +4 -2
  38. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  39. package/dist/npm/client/partialPayment.js.map +1 -1
  40. package/dist/npm/errors.d.ts.map +1 -1
  41. package/dist/npm/errors.js +1 -2
  42. package/dist/npm/errors.js.map +1 -1
  43. package/dist/npm/index.d.ts +1 -1
  44. package/dist/npm/index.d.ts.map +1 -1
  45. package/dist/npm/index.js +1 -3
  46. package/dist/npm/index.js.map +1 -1
  47. package/dist/npm/models/ledger/AccountRoot.js +1 -1
  48. package/dist/npm/models/ledger/AccountRoot.js.map +1 -1
  49. package/dist/npm/models/ledger/Offer.js +1 -1
  50. package/dist/npm/models/ledger/Offer.js.map +1 -1
  51. package/dist/npm/models/ledger/RippleState.js +1 -1
  52. package/dist/npm/models/ledger/RippleState.js.map +1 -1
  53. package/dist/npm/models/ledger/SignerList.js +1 -1
  54. package/dist/npm/models/ledger/SignerList.js.map +1 -1
  55. package/dist/npm/models/methods/index.d.ts +12 -1
  56. package/dist/npm/models/methods/index.d.ts.map +1 -1
  57. package/dist/npm/models/methods/ledger.d.ts +35 -7
  58. package/dist/npm/models/methods/ledger.d.ts.map +1 -1
  59. package/dist/npm/models/methods/subscribe.d.ts +3 -0
  60. package/dist/npm/models/methods/subscribe.d.ts.map +1 -1
  61. package/dist/npm/models/methods/tx.d.ts +1 -1
  62. package/dist/npm/models/methods/tx.d.ts.map +1 -1
  63. package/dist/npm/models/transactions/AMMDeposit.js +1 -1
  64. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  65. package/dist/npm/models/transactions/AMMWithdraw.js +1 -1
  66. package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
  67. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  68. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  69. package/dist/npm/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  70. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  71. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  72. package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
  73. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  74. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  75. package/dist/npm/models/transactions/NFTokenCreateOffer.js +1 -1
  76. package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
  77. package/dist/npm/models/transactions/NFTokenMint.d.ts +4 -0
  78. package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
  79. package/dist/npm/models/transactions/NFTokenMint.js +1 -1
  80. package/dist/npm/models/transactions/NFTokenMint.js.map +1 -1
  81. package/dist/npm/models/transactions/XChainModifyBridge.js +1 -1
  82. package/dist/npm/models/transactions/XChainModifyBridge.js.map +1 -1
  83. package/dist/npm/models/transactions/accountSet.js +2 -2
  84. package/dist/npm/models/transactions/accountSet.js.map +1 -1
  85. package/dist/npm/models/transactions/enableAmendment.js +1 -1
  86. package/dist/npm/models/transactions/enableAmendment.js.map +1 -1
  87. package/dist/npm/models/transactions/metadata.d.ts +9 -1
  88. package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
  89. package/dist/npm/models/transactions/metadata.js.map +1 -1
  90. package/dist/npm/models/transactions/offerCreate.js +1 -1
  91. package/dist/npm/models/transactions/offerCreate.js.map +1 -1
  92. package/dist/npm/models/transactions/payment.d.ts +5 -0
  93. package/dist/npm/models/transactions/payment.d.ts.map +1 -1
  94. package/dist/npm/models/transactions/payment.js +1 -1
  95. package/dist/npm/models/transactions/payment.js.map +1 -1
  96. package/dist/npm/models/transactions/paymentChannelClaim.js +1 -1
  97. package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
  98. package/dist/npm/models/transactions/transaction.d.ts +4 -3
  99. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  100. package/dist/npm/models/transactions/transaction.js.map +1 -1
  101. package/dist/npm/models/transactions/trustSet.js +1 -1
  102. package/dist/npm/models/transactions/trustSet.js.map +1 -1
  103. package/dist/npm/snippets/src/getTransaction.js +1 -1
  104. package/dist/npm/snippets/src/getTransaction.js.map +1 -1
  105. package/dist/npm/snippets/src/paths.js +2 -3
  106. package/dist/npm/snippets/src/paths.js.map +1 -1
  107. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  108. package/dist/npm/src/Wallet/authorizeChannel.d.ts +3 -0
  109. package/dist/npm/src/Wallet/authorizeChannel.d.ts.map +1 -0
  110. package/dist/npm/src/Wallet/authorizeChannel.js +14 -0
  111. package/dist/npm/src/Wallet/authorizeChannel.js.map +1 -0
  112. package/dist/npm/src/Wallet/defaultFaucets.js +1 -1
  113. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  114. package/dist/npm/src/Wallet/fundWallet.d.ts +17 -3
  115. package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
  116. package/dist/npm/src/Wallet/fundWallet.js +53 -78
  117. package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
  118. package/dist/npm/src/Wallet/index.d.ts.map +1 -1
  119. package/dist/npm/src/Wallet/index.js +24 -23
  120. package/dist/npm/src/Wallet/index.js.map +1 -1
  121. package/dist/npm/src/Wallet/signer.d.ts +2 -4
  122. package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
  123. package/dist/npm/src/Wallet/signer.js +17 -13
  124. package/dist/npm/src/Wallet/signer.js.map +1 -1
  125. package/dist/npm/src/Wallet/walletFromSecretNumbers.js +2 -2
  126. package/dist/npm/src/Wallet/walletFromSecretNumbers.js.map +1 -1
  127. package/dist/npm/src/client/RequestManager.d.ts +3 -2
  128. package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
  129. package/dist/npm/src/client/RequestManager.js +25 -1
  130. package/dist/npm/src/client/RequestManager.js.map +1 -1
  131. package/dist/npm/src/client/connection.d.ts +8 -11
  132. package/dist/npm/src/client/connection.d.ts.map +1 -1
  133. package/dist/npm/src/client/connection.js +8 -54
  134. package/dist/npm/src/client/connection.js.map +1 -1
  135. package/dist/npm/src/client/index.d.ts +56 -78
  136. package/dist/npm/src/client/index.d.ts.map +1 -1
  137. package/dist/npm/src/client/index.js +155 -42
  138. package/dist/npm/src/client/index.js.map +1 -1
  139. package/dist/npm/src/client/partialPayment.d.ts +4 -2
  140. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  141. package/dist/npm/src/client/partialPayment.js.map +1 -1
  142. package/dist/npm/src/errors.d.ts.map +1 -1
  143. package/dist/npm/src/errors.js +1 -2
  144. package/dist/npm/src/errors.js.map +1 -1
  145. package/dist/npm/src/index.d.ts +1 -1
  146. package/dist/npm/src/index.d.ts.map +1 -1
  147. package/dist/npm/src/index.js +1 -3
  148. package/dist/npm/src/index.js.map +1 -1
  149. package/dist/npm/src/models/ledger/AccountRoot.js +1 -1
  150. package/dist/npm/src/models/ledger/AccountRoot.js.map +1 -1
  151. package/dist/npm/src/models/ledger/Offer.js +1 -1
  152. package/dist/npm/src/models/ledger/Offer.js.map +1 -1
  153. package/dist/npm/src/models/ledger/RippleState.js +1 -1
  154. package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
  155. package/dist/npm/src/models/ledger/SignerList.js +1 -1
  156. package/dist/npm/src/models/ledger/SignerList.js.map +1 -1
  157. package/dist/npm/src/models/methods/index.d.ts +12 -1
  158. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  159. package/dist/npm/src/models/methods/ledger.d.ts +35 -7
  160. package/dist/npm/src/models/methods/ledger.d.ts.map +1 -1
  161. package/dist/npm/src/models/methods/subscribe.d.ts +3 -0
  162. package/dist/npm/src/models/methods/subscribe.d.ts.map +1 -1
  163. package/dist/npm/src/models/methods/tx.d.ts +1 -1
  164. package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
  165. package/dist/npm/src/models/transactions/AMMDeposit.js +1 -1
  166. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  167. package/dist/npm/src/models/transactions/AMMWithdraw.js +1 -1
  168. package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
  169. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  170. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  171. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  172. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  173. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  174. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
  175. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  176. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  177. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +1 -1
  178. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
  179. package/dist/npm/src/models/transactions/NFTokenMint.d.ts +4 -0
  180. package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
  181. package/dist/npm/src/models/transactions/NFTokenMint.js +1 -1
  182. package/dist/npm/src/models/transactions/NFTokenMint.js.map +1 -1
  183. package/dist/npm/src/models/transactions/XChainModifyBridge.js +1 -1
  184. package/dist/npm/src/models/transactions/XChainModifyBridge.js.map +1 -1
  185. package/dist/npm/src/models/transactions/accountSet.js +2 -2
  186. package/dist/npm/src/models/transactions/accountSet.js.map +1 -1
  187. package/dist/npm/src/models/transactions/enableAmendment.js +1 -1
  188. package/dist/npm/src/models/transactions/enableAmendment.js.map +1 -1
  189. package/dist/npm/src/models/transactions/metadata.d.ts +9 -1
  190. package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
  191. package/dist/npm/src/models/transactions/metadata.js.map +1 -1
  192. package/dist/npm/src/models/transactions/offerCreate.js +1 -1
  193. package/dist/npm/src/models/transactions/offerCreate.js.map +1 -1
  194. package/dist/npm/src/models/transactions/payment.d.ts +5 -0
  195. package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
  196. package/dist/npm/src/models/transactions/payment.js +1 -1
  197. package/dist/npm/src/models/transactions/payment.js.map +1 -1
  198. package/dist/npm/src/models/transactions/paymentChannelClaim.js +1 -1
  199. package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
  200. package/dist/npm/src/models/transactions/transaction.d.ts +4 -3
  201. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  202. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  203. package/dist/npm/src/models/transactions/trustSet.js +1 -1
  204. package/dist/npm/src/models/transactions/trustSet.js.map +1 -1
  205. package/dist/npm/src/sugar/autofill.d.ts +6 -2
  206. package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
  207. package/dist/npm/src/sugar/autofill.js +9 -28
  208. package/dist/npm/src/sugar/autofill.js.map +1 -1
  209. package/dist/npm/src/sugar/balances.d.ts +2 -17
  210. package/dist/npm/src/sugar/balances.d.ts.map +1 -1
  211. package/dist/npm/src/sugar/balances.js +2 -60
  212. package/dist/npm/src/sugar/balances.js.map +1 -1
  213. package/dist/npm/src/sugar/getOrderbook.d.ts +19 -5
  214. package/dist/npm/src/sugar/getOrderbook.d.ts.map +1 -1
  215. package/dist/npm/src/sugar/getOrderbook.js +72 -53
  216. package/dist/npm/src/sugar/getOrderbook.js.map +1 -1
  217. package/dist/npm/src/sugar/index.d.ts +0 -4
  218. package/dist/npm/src/sugar/index.d.ts.map +1 -1
  219. package/dist/npm/src/sugar/index.js +0 -13
  220. package/dist/npm/src/sugar/index.js.map +1 -1
  221. package/dist/npm/src/sugar/submit.d.ts +6 -9
  222. package/dist/npm/src/sugar/submit.d.ts.map +1 -1
  223. package/dist/npm/src/sugar/submit.js +5 -22
  224. package/dist/npm/src/sugar/submit.js.map +1 -1
  225. package/dist/npm/src/utils/collections.d.ts +7 -0
  226. package/dist/npm/src/utils/collections.d.ts.map +1 -0
  227. package/dist/npm/src/utils/collections.js +22 -0
  228. package/dist/npm/src/utils/collections.js.map +1 -0
  229. package/dist/npm/src/utils/getBalanceChanges.d.ts.map +1 -1
  230. package/dist/npm/src/utils/getBalanceChanges.js +3 -4
  231. package/dist/npm/src/utils/getBalanceChanges.js.map +1 -1
  232. package/dist/npm/src/utils/getNFTokenID.d.ts.map +1 -1
  233. package/dist/npm/src/utils/getNFTokenID.js +8 -8
  234. package/dist/npm/src/utils/getNFTokenID.js.map +1 -1
  235. package/dist/npm/src/utils/hashes/SHAMap/node.js +1 -1
  236. package/dist/npm/src/utils/hashes/SHAMap/node.js.map +1 -1
  237. package/dist/npm/src/utils/hashes/sha512Half.d.ts.map +1 -1
  238. package/dist/npm/src/utils/hashes/sha512Half.js +4 -7
  239. package/dist/npm/src/utils/hashes/sha512Half.js.map +1 -1
  240. package/dist/npm/sugar/autofill.d.ts +6 -2
  241. package/dist/npm/sugar/autofill.d.ts.map +1 -1
  242. package/dist/npm/sugar/autofill.js +9 -28
  243. package/dist/npm/sugar/autofill.js.map +1 -1
  244. package/dist/npm/sugar/balances.d.ts +2 -17
  245. package/dist/npm/sugar/balances.d.ts.map +1 -1
  246. package/dist/npm/sugar/balances.js +2 -60
  247. package/dist/npm/sugar/balances.js.map +1 -1
  248. package/dist/npm/sugar/getOrderbook.d.ts +19 -5
  249. package/dist/npm/sugar/getOrderbook.d.ts.map +1 -1
  250. package/dist/npm/sugar/getOrderbook.js +72 -53
  251. package/dist/npm/sugar/getOrderbook.js.map +1 -1
  252. package/dist/npm/sugar/index.d.ts +0 -4
  253. package/dist/npm/sugar/index.d.ts.map +1 -1
  254. package/dist/npm/sugar/index.js +0 -13
  255. package/dist/npm/sugar/index.js.map +1 -1
  256. package/dist/npm/sugar/submit.d.ts +6 -9
  257. package/dist/npm/sugar/submit.d.ts.map +1 -1
  258. package/dist/npm/sugar/submit.js +5 -22
  259. package/dist/npm/sugar/submit.js.map +1 -1
  260. package/dist/npm/utils/collections.d.ts +7 -0
  261. package/dist/npm/utils/collections.d.ts.map +1 -0
  262. package/dist/npm/utils/collections.js +22 -0
  263. package/dist/npm/utils/collections.js.map +1 -0
  264. package/dist/npm/utils/getBalanceChanges.d.ts.map +1 -1
  265. package/dist/npm/utils/getBalanceChanges.js +3 -4
  266. package/dist/npm/utils/getBalanceChanges.js.map +1 -1
  267. package/dist/npm/utils/getNFTokenID.d.ts.map +1 -1
  268. package/dist/npm/utils/getNFTokenID.js +8 -8
  269. package/dist/npm/utils/getNFTokenID.js.map +1 -1
  270. package/dist/npm/utils/hashes/SHAMap/node.js +1 -1
  271. package/dist/npm/utils/hashes/SHAMap/node.js.map +1 -1
  272. package/dist/npm/utils/hashes/sha512Half.d.ts.map +1 -1
  273. package/dist/npm/utils/hashes/sha512Half.js +4 -7
  274. package/dist/npm/utils/hashes/sha512Half.js.map +1 -1
  275. package/package.json +23 -25
  276. package/src/Wallet/authorizeChannel.ts +26 -0
  277. package/src/Wallet/fundWallet.ts +151 -212
  278. package/src/Wallet/index.ts +28 -25
  279. package/src/Wallet/signer.ts +32 -43
  280. package/src/Wallet/walletFromSecretNumbers.ts +1 -1
  281. package/src/client/RequestManager.ts +40 -14
  282. package/src/client/connection.ts +20 -89
  283. package/src/client/index.ts +704 -269
  284. package/src/client/partialPayment.ts +14 -8
  285. package/src/errors.ts +1 -3
  286. package/src/index.ts +1 -3
  287. package/src/models/ledger/Ledger.ts +1 -1
  288. package/src/models/methods/index.ts +175 -0
  289. package/src/models/methods/ledger.ts +149 -20
  290. package/src/models/methods/subscribe.ts +36 -0
  291. package/src/models/methods/tx.ts +2 -1
  292. package/src/models/transactions/NFTokenAcceptOffer.ts +6 -0
  293. package/src/models/transactions/NFTokenCancelOffer.ts +6 -0
  294. package/src/models/transactions/NFTokenCreateOffer.ts +6 -0
  295. package/src/models/transactions/NFTokenMint.ts +6 -0
  296. package/src/models/transactions/metadata.ts +31 -1
  297. package/src/models/transactions/payment.ts +6 -0
  298. package/src/models/transactions/transaction.ts +6 -4
  299. package/src/sugar/autofill.ts +84 -88
  300. package/src/sugar/balances.ts +8 -116
  301. package/src/sugar/getOrderbook.ts +138 -61
  302. package/src/sugar/index.ts +0 -8
  303. package/src/sugar/submit.ts +114 -132
  304. package/src/utils/collections.ts +53 -0
  305. package/src/utils/getBalanceChanges.ts +2 -3
  306. package/src/utils/getNFTokenID.ts +18 -16
  307. package/src/utils/hashes/sha512Half.ts +4 -7
  308. package/dist/npm/client/BroadcastClient.d.ts +0 -7
  309. package/dist/npm/client/BroadcastClient.d.ts.map +0 -1
  310. package/dist/npm/client/BroadcastClient.js +0 -49
  311. package/dist/npm/client/BroadcastClient.js.map +0 -1
  312. package/dist/npm/client/WSWrapper.d.ts +0 -25
  313. package/dist/npm/client/WSWrapper.d.ts.map +0 -1
  314. package/dist/npm/client/WSWrapper.js +0 -44
  315. package/dist/npm/client/WSWrapper.js.map +0 -1
  316. package/dist/npm/src/client/BroadcastClient.d.ts +0 -7
  317. package/dist/npm/src/client/BroadcastClient.d.ts.map +0 -1
  318. package/dist/npm/src/client/BroadcastClient.js +0 -49
  319. package/dist/npm/src/client/BroadcastClient.js.map +0 -1
  320. package/dist/npm/src/client/WSWrapper.d.ts +0 -25
  321. package/dist/npm/src/client/WSWrapper.d.ts.map +0 -1
  322. package/dist/npm/src/client/WSWrapper.js +0 -44
  323. package/dist/npm/src/client/WSWrapper.js.map +0 -1
  324. package/dist/npm/src/sugar/getLedgerIndex.d.ts +0 -3
  325. package/dist/npm/src/sugar/getLedgerIndex.d.ts.map +0 -1
  326. package/dist/npm/src/sugar/getLedgerIndex.js +0 -22
  327. package/dist/npm/src/sugar/getLedgerIndex.js.map +0 -1
  328. package/dist/npm/sugar/getLedgerIndex.d.ts +0 -3
  329. package/dist/npm/sugar/getLedgerIndex.d.ts.map +0 -1
  330. package/dist/npm/sugar/getLedgerIndex.js +0 -22
  331. package/dist/npm/sugar/getLedgerIndex.js.map +0 -1
  332. package/src/client/BroadcastClient.ts +0 -84
  333. package/src/client/WSWrapper.ts +0 -106
  334. package/src/sugar/getLedgerIndex.ts +0 -15
@@ -4,9 +4,15 @@ import {
4
4
  TimeoutError,
5
5
  XrplError,
6
6
  } from '../errors'
7
- import { Response } from '../models/methods'
7
+ import { Response, RequestResponseMap } from '../models/methods'
8
8
  import { BaseRequest, ErrorResponse } from '../models/methods/baseMethod'
9
9
 
10
+ interface PromiseEntry<T> {
11
+ resolve: (value: T | PromiseLike<T>) => void
12
+ reject: (value: Error) => void
13
+ timer: ReturnType<typeof setTimeout>
14
+ }
15
+
10
16
  /**
11
17
  * Manage all the requests made to the websocket, and their async responses
12
18
  * that come in from the WebSocket. Responses come in over the WS connection
@@ -17,13 +23,31 @@ export default class RequestManager {
17
23
  private nextId = 0
18
24
  private readonly promisesAwaitingResponse = new Map<
19
25
  string | number,
20
- {
21
- resolve: (value: Response | PromiseLike<Response>) => void
22
- reject: (value: Error) => void
23
- timer: ReturnType<typeof setTimeout>
24
- }
26
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Necessary and typed wrapper in addPromise method
27
+ PromiseEntry<any>
25
28
  >()
26
29
 
30
+ /**
31
+ * Adds a promise to the collection of promises awaiting response. Handles typing with generics.
32
+ *
33
+ * @template T The generic type parameter representing the resolved value type.
34
+ * @param newId - The identifier for the new promise.
35
+ * @param timer - The timer associated with the promise.
36
+ * @returns A promise that resolves to the specified generic type.
37
+ */
38
+ public async addPromise<R extends BaseRequest, T = RequestResponseMap<R>>(
39
+ newId: string | number,
40
+ timer: ReturnType<typeof setTimeout>,
41
+ ): Promise<T> {
42
+ return new Promise<T>((resolve, reject) => {
43
+ this.promisesAwaitingResponse.set(newId, {
44
+ resolve,
45
+ reject,
46
+ timer,
47
+ })
48
+ })
49
+ }
50
+
27
51
  /**
28
52
  * Successfully resolves a request.
29
53
  *
@@ -87,10 +111,10 @@ export default class RequestManager {
87
111
  * @returns Request ID, new request form, and the promise for resolving the request.
88
112
  * @throws XrplError if request with the same ID is already pending.
89
113
  */
90
- public createRequest<T extends BaseRequest>(
91
- request: T,
114
+ public createRequest<R extends BaseRequest, T = RequestResponseMap<R>>(
115
+ request: R,
92
116
  timeout: number,
93
- ): [string | number, string, Promise<Response>] {
117
+ ): [string | number, string, Promise<T>] {
94
118
  let newId: string | number
95
119
  if (request.id == null) {
96
120
  newId = this.nextId
@@ -129,11 +153,13 @@ export default class RequestManager {
129
153
  request,
130
154
  )
131
155
  }
132
- const newPromise = new Promise<Response>(
133
- (resolve: (value: Response | PromiseLike<Response>) => void, reject) => {
134
- this.promisesAwaitingResponse.set(newId, { resolve, reject, timer })
135
- },
136
- )
156
+ const newPromise = new Promise<T>((resolve, reject) => {
157
+ this.promisesAwaitingResponse.set(newId, {
158
+ resolve,
159
+ reject,
160
+ timer,
161
+ })
162
+ })
137
163
 
138
164
  return [newId, newRequest, newPromise]
139
165
  }
@@ -1,9 +1,8 @@
1
1
  /* eslint-disable max-lines -- Connection is a large file w/ lots of imports/exports */
2
- import { EventEmitter } from 'events'
3
- import { Agent } from 'http'
2
+ import type { Agent } from 'http'
4
3
 
5
- import omitBy from 'lodash/omitBy'
6
- import WebSocket from 'ws'
4
+ import WebSocket, { ClientOptions } from '@xrplf/isomorphic/ws'
5
+ import { EventEmitter } from 'eventemitter3'
7
6
 
8
7
  import {
9
8
  DisconnectedError,
@@ -11,6 +10,7 @@ import {
11
10
  ConnectionError,
12
11
  XrplError,
13
12
  } from '../errors'
13
+ import type { RequestResponseMap } from '../models'
14
14
  import { BaseRequest } from '../models/methods/baseMethod'
15
15
 
16
16
  import ConnectionManager from './ConnectionManager'
@@ -26,17 +26,11 @@ const CONNECTION_TIMEOUT = 5
26
26
  */
27
27
  interface ConnectionOptions {
28
28
  trace?: boolean | ((id: string, message: string) => void)
29
- proxy?: string
30
- proxyAuthorization?: string
29
+ headers?: { [key: string]: string }
30
+ agent?: Agent
31
31
  authorization?: string
32
- trustedCertificates?: string[]
33
- key?: string
34
- passphrase?: string
35
- certificate?: string
36
- // request timeout
37
- timeout: number
38
32
  connectionTimeout: number
39
- headers?: { [key: string]: string }
33
+ timeout: number
40
34
  }
41
35
 
42
36
  /**
@@ -55,52 +49,6 @@ export const INTENTIONAL_DISCONNECT_CODE = 4000
55
49
 
56
50
  type WebsocketState = 0 | 1 | 2 | 3
57
51
 
58
- function getAgent(url: string, config: ConnectionOptions): Agent | undefined {
59
- if (config.proxy == null) {
60
- return undefined
61
- }
62
-
63
- const parsedURL = new URL(url)
64
- const parsedProxyURL = new URL(config.proxy)
65
-
66
- const proxyOptions = omitBy(
67
- {
68
- secureEndpoint: parsedURL.protocol === 'wss:',
69
- secureProxy: parsedProxyURL.protocol === 'https:',
70
- auth: config.proxyAuthorization,
71
- ca: config.trustedCertificates,
72
- key: config.key,
73
- passphrase: config.passphrase,
74
- cert: config.certificate,
75
- href: parsedProxyURL.href,
76
- origin: parsedProxyURL.origin,
77
- protocol: parsedProxyURL.protocol,
78
- username: parsedProxyURL.username,
79
- password: parsedProxyURL.password,
80
- host: parsedProxyURL.host,
81
- hostname: parsedProxyURL.hostname,
82
- port: parsedProxyURL.port,
83
- pathname: parsedProxyURL.pathname,
84
- search: parsedProxyURL.search,
85
- hash: parsedProxyURL.hash,
86
- },
87
- (value) => value == null,
88
- )
89
-
90
- let HttpsProxyAgent: new (opt: typeof proxyOptions) => Agent
91
- try {
92
- /* eslint-disable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-require-imports,
93
- node/global-require, global-require, -- Necessary for the `require` */
94
- HttpsProxyAgent = require('https-proxy-agent')
95
- /* eslint-enable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-require-imports,
96
- node/global-require, global-require, */
97
- } catch (_error) {
98
- throw new Error('"proxy" option is not supported in the browser')
99
- }
100
-
101
- return new HttpsProxyAgent(proxyOptions)
102
- }
103
-
104
52
  /**
105
53
  * Create a new websocket given your URL and optional proxy/certificate
106
54
  * configuration.
@@ -113,8 +61,9 @@ function createWebSocket(
113
61
  url: string,
114
62
  config: ConnectionOptions,
115
63
  ): WebSocket | null {
116
- const options: WebSocket.ClientOptions = {}
117
- options.agent = getAgent(url, config)
64
+ const options: ClientOptions = {
65
+ agent: config.agent,
66
+ }
118
67
  if (config.headers) {
119
68
  options.headers = config.headers
120
69
  }
@@ -125,25 +74,8 @@ function createWebSocket(
125
74
  Authorization: `Basic ${base64}`,
126
75
  }
127
76
  }
128
- const optionsOverrides = omitBy(
129
- {
130
- ca: config.trustedCertificates,
131
- key: config.key,
132
- passphrase: config.passphrase,
133
- cert: config.certificate,
134
- },
135
- (value) => value == null,
136
- )
137
- const websocketOptions = { ...options, ...optionsOverrides }
138
- const websocket = new WebSocket(url, websocketOptions)
139
- /*
140
- * we will have a listener for each outstanding request,
141
- * so we have to raise the limit (the default is 10)
142
- */
143
- if (typeof websocket.setMaxListeners === 'function') {
144
- websocket.setMaxListeners(Infinity)
145
- }
146
- return websocket
77
+ const websocketOptions = { ...options }
78
+ return new WebSocket(url, websocketOptions)
147
79
  }
148
80
 
149
81
  /**
@@ -177,7 +109,7 @@ export class Connection extends EventEmitter {
177
109
  private ws: WebSocket | null = null
178
110
  // Typing necessary for Jest tests running in browser
179
111
  private reconnectTimeoutID: null | ReturnType<typeof setTimeout> = null
180
- // Typing necessary for Jest tetsts running in browser
112
+ // Typing necessary for Jest tests running in browser
181
113
  private heartbeatIntervalID: null | ReturnType<typeof setTimeout> = null
182
114
  private readonly retryConnectionBackoff = new ExponentialBackoff({
183
115
  min: 100,
@@ -196,7 +128,6 @@ export class Connection extends EventEmitter {
196
128
  */
197
129
  public constructor(url?: string, options: ConnectionUserOptions = {}) {
198
130
  super()
199
- this.setMaxListeners(Infinity)
200
131
  this.url = url
201
132
  this.config = {
202
133
  timeout: TIMEOUT * 1000,
@@ -356,17 +287,17 @@ export class Connection extends EventEmitter {
356
287
  * @returns The response from the rippled server.
357
288
  * @throws NotConnectedError if the Connection isn't connected to a server.
358
289
  */
359
- public async request<T extends BaseRequest>(
360
- request: T,
290
+ public async request<R extends BaseRequest, T = RequestResponseMap<R>>(
291
+ request: R,
361
292
  timeout?: number,
362
- ): Promise<unknown> {
293
+ ): Promise<T> {
363
294
  if (!this.shouldBeConnected || this.ws == null) {
364
295
  throw new NotConnectedError(JSON.stringify(request), request)
365
296
  }
366
- const [id, message, responsePromise] = this.requestManager.createRequest(
367
- request,
368
- timeout ?? this.config.timeout,
369
- )
297
+ const [id, message, responsePromise] = this.requestManager.createRequest<
298
+ R,
299
+ T
300
+ >(request, timeout ?? this.config.timeout)
370
301
  this.trace('send', message)
371
302
  websocketSendAsync(this.ws, message).catch((error) => {
372
303
  this.requestManager.reject(id, error)