xrpl 2.14.1 → 2.14.2

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.

Potentially problematic release.


This version of xrpl might be problematic. Click here for more details.

Files changed (821) hide show
  1. package/README.md +3 -3
  2. package/build/xrpl-latest-min.js +24471 -3
  3. package/build/xrpl-latest-min.js.map +1 -1
  4. package/build/xrpl-latest.js +17934 -75049
  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.d.ts +1 -2
  11. package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
  12. package/dist/npm/Wallet/defaultFaucets.js +1 -6
  13. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  14. package/dist/npm/Wallet/fundWallet.d.ts +17 -3
  15. package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
  16. package/dist/npm/Wallet/fundWallet.js +49 -78
  17. package/dist/npm/Wallet/fundWallet.js.map +1 -1
  18. package/dist/npm/Wallet/index.d.ts.map +1 -1
  19. package/dist/npm/Wallet/index.js +32 -23
  20. package/dist/npm/Wallet/index.js.map +1 -1
  21. package/dist/npm/Wallet/rfc1751.d.ts +1 -2
  22. package/dist/npm/Wallet/rfc1751.d.ts.map +1 -1
  23. package/dist/npm/Wallet/rfc1751.js +21 -5
  24. package/dist/npm/Wallet/rfc1751.js.map +1 -1
  25. package/dist/npm/Wallet/signer.d.ts +2 -4
  26. package/dist/npm/Wallet/signer.d.ts.map +1 -1
  27. package/dist/npm/Wallet/signer.js +19 -14
  28. package/dist/npm/Wallet/signer.js.map +1 -1
  29. package/dist/npm/Wallet/walletFromSecretNumbers.js +2 -2
  30. package/dist/npm/Wallet/walletFromSecretNumbers.js.map +1 -1
  31. package/dist/npm/client/RequestManager.d.ts +6 -4
  32. package/dist/npm/client/RequestManager.d.ts.map +1 -1
  33. package/dist/npm/client/RequestManager.js +25 -1
  34. package/dist/npm/client/RequestManager.js.map +1 -1
  35. package/dist/npm/client/connection.d.ts +8 -11
  36. package/dist/npm/client/connection.d.ts.map +1 -1
  37. package/dist/npm/client/connection.js +11 -57
  38. package/dist/npm/client/connection.js.map +1 -1
  39. package/dist/npm/client/index.d.ts +61 -79
  40. package/dist/npm/client/index.d.ts.map +1 -1
  41. package/dist/npm/client/index.js +180 -50
  42. package/dist/npm/client/index.js.map +1 -1
  43. package/dist/npm/client/partialPayment.d.ts +6 -3
  44. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  45. package/dist/npm/client/partialPayment.js +21 -6
  46. package/dist/npm/client/partialPayment.js.map +1 -1
  47. package/dist/npm/errors.d.ts.map +1 -1
  48. package/dist/npm/errors.js +1 -2
  49. package/dist/npm/errors.js.map +1 -1
  50. package/dist/npm/index.d.ts +2 -1
  51. package/dist/npm/index.d.ts.map +1 -1
  52. package/dist/npm/index.js +9 -3
  53. package/dist/npm/index.js.map +1 -1
  54. package/dist/npm/models/common/index.d.ts +23 -0
  55. package/dist/npm/models/common/index.d.ts.map +1 -1
  56. package/dist/npm/models/common/index.js +4 -0
  57. package/dist/npm/models/common/index.js.map +1 -1
  58. package/dist/npm/models/index.d.ts +1 -1
  59. package/dist/npm/models/index.d.ts.map +1 -1
  60. package/dist/npm/models/index.js +4 -2
  61. package/dist/npm/models/index.js.map +1 -1
  62. package/dist/npm/models/ledger/AMM.d.ts +2 -2
  63. package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
  64. package/dist/npm/models/ledger/AccountRoot.js +1 -1
  65. package/dist/npm/models/ledger/AccountRoot.js.map +1 -1
  66. package/dist/npm/models/ledger/Amendments.d.ts +2 -2
  67. package/dist/npm/models/ledger/Amendments.d.ts.map +1 -1
  68. package/dist/npm/models/ledger/BaseLedgerEntry.d.ts +3 -3
  69. package/dist/npm/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
  70. package/dist/npm/models/ledger/Credential.d.ts +17 -0
  71. package/dist/npm/models/ledger/Credential.d.ts.map +1 -0
  72. package/dist/npm/models/ledger/Credential.js +3 -0
  73. package/dist/npm/models/ledger/Credential.js.map +1 -0
  74. package/dist/npm/models/ledger/DepositPreauth.d.ts +3 -1
  75. package/dist/npm/models/ledger/DepositPreauth.d.ts.map +1 -1
  76. package/dist/npm/models/ledger/DirectoryNode.d.ts +2 -2
  77. package/dist/npm/models/ledger/DirectoryNode.d.ts.map +1 -1
  78. package/dist/npm/models/ledger/FeeSettings.d.ts +2 -2
  79. package/dist/npm/models/ledger/FeeSettings.d.ts.map +1 -1
  80. package/dist/npm/models/ledger/Ledger.d.ts +14 -4
  81. package/dist/npm/models/ledger/Ledger.d.ts.map +1 -1
  82. package/dist/npm/models/ledger/LedgerEntry.d.ts +5 -2
  83. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  84. package/dist/npm/models/ledger/LedgerHashes.d.ts +2 -2
  85. package/dist/npm/models/ledger/LedgerHashes.d.ts.map +1 -1
  86. package/dist/npm/models/ledger/MPToken.d.ts +10 -0
  87. package/dist/npm/models/ledger/MPToken.d.ts.map +1 -0
  88. package/dist/npm/models/ledger/MPToken.js +3 -0
  89. package/dist/npm/models/ledger/MPToken.js.map +1 -0
  90. package/dist/npm/models/ledger/MPTokenIssuance.d.ts +13 -0
  91. package/dist/npm/models/ledger/MPTokenIssuance.d.ts.map +1 -0
  92. package/dist/npm/models/ledger/MPTokenIssuance.js +3 -0
  93. package/dist/npm/models/ledger/MPTokenIssuance.js.map +1 -0
  94. package/dist/npm/models/ledger/NegativeUNL.d.ts +2 -2
  95. package/dist/npm/models/ledger/NegativeUNL.d.ts.map +1 -1
  96. package/dist/npm/models/ledger/Offer.js +1 -1
  97. package/dist/npm/models/ledger/Offer.js.map +1 -1
  98. package/dist/npm/models/ledger/Oracle.d.ts +12 -0
  99. package/dist/npm/models/ledger/Oracle.d.ts.map +1 -0
  100. package/dist/npm/models/ledger/Oracle.js +3 -0
  101. package/dist/npm/models/ledger/Oracle.js.map +1 -0
  102. package/dist/npm/models/ledger/PermissionedDomain.d.ts +11 -0
  103. package/dist/npm/models/ledger/PermissionedDomain.d.ts.map +1 -0
  104. package/dist/npm/models/ledger/PermissionedDomain.js +3 -0
  105. package/dist/npm/models/ledger/PermissionedDomain.js.map +1 -0
  106. package/dist/npm/models/ledger/RippleState.d.ts +4 -1
  107. package/dist/npm/models/ledger/RippleState.d.ts.map +1 -1
  108. package/dist/npm/models/ledger/RippleState.js +4 -1
  109. package/dist/npm/models/ledger/RippleState.js.map +1 -1
  110. package/dist/npm/models/ledger/SignerList.js +1 -1
  111. package/dist/npm/models/ledger/SignerList.js.map +1 -1
  112. package/dist/npm/models/ledger/index.d.ts +6 -2
  113. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  114. package/dist/npm/models/ledger/index.js.map +1 -1
  115. package/dist/npm/models/methods/accountChannels.d.ts +1 -1
  116. package/dist/npm/models/methods/accountChannels.d.ts.map +1 -1
  117. package/dist/npm/models/methods/accountInfo.d.ts +17 -4
  118. package/dist/npm/models/methods/accountInfo.d.ts.map +1 -1
  119. package/dist/npm/models/methods/accountTx.d.ts +11 -5
  120. package/dist/npm/models/methods/accountTx.d.ts.map +1 -1
  121. package/dist/npm/models/methods/depositAuthorized.d.ts +2 -0
  122. package/dist/npm/models/methods/depositAuthorized.d.ts.map +1 -1
  123. package/dist/npm/models/methods/feature.d.ts +28 -0
  124. package/dist/npm/models/methods/feature.d.ts.map +1 -0
  125. package/dist/npm/models/methods/feature.js +3 -0
  126. package/dist/npm/models/methods/feature.js.map +1 -0
  127. package/dist/npm/models/methods/getAggregatePrice.d.ts +31 -0
  128. package/dist/npm/models/methods/getAggregatePrice.d.ts.map +1 -0
  129. package/dist/npm/models/methods/getAggregatePrice.js +3 -0
  130. package/dist/npm/models/methods/getAggregatePrice.js.map +1 -0
  131. package/dist/npm/models/methods/index.d.ts +25 -9
  132. package/dist/npm/models/methods/index.d.ts.map +1 -1
  133. package/dist/npm/models/methods/ledger.d.ts +49 -9
  134. package/dist/npm/models/methods/ledger.d.ts.map +1 -1
  135. package/dist/npm/models/methods/ledgerEntry.d.ts +12 -0
  136. package/dist/npm/models/methods/ledgerEntry.d.ts.map +1 -1
  137. package/dist/npm/models/methods/nftsByIssuer.d.ts +19 -0
  138. package/dist/npm/models/methods/nftsByIssuer.d.ts.map +1 -0
  139. package/dist/npm/models/methods/nftsByIssuer.js +3 -0
  140. package/dist/npm/models/methods/nftsByIssuer.js.map +1 -0
  141. package/dist/npm/models/methods/serverState.d.ts +1 -0
  142. package/dist/npm/models/methods/serverState.d.ts.map +1 -1
  143. package/dist/npm/models/methods/simulate.d.ts +42 -0
  144. package/dist/npm/models/methods/simulate.d.ts.map +1 -0
  145. package/dist/npm/models/methods/simulate.js +3 -0
  146. package/dist/npm/models/methods/simulate.js.map +1 -0
  147. package/dist/npm/models/methods/submit.d.ts +2 -2
  148. package/dist/npm/models/methods/submit.d.ts.map +1 -1
  149. package/dist/npm/models/methods/submitMultisigned.d.ts +16 -5
  150. package/dist/npm/models/methods/submitMultisigned.d.ts.map +1 -1
  151. package/dist/npm/models/methods/subscribe.d.ts +10 -3
  152. package/dist/npm/models/methods/subscribe.d.ts.map +1 -1
  153. package/dist/npm/models/methods/tx.d.ts +21 -10
  154. package/dist/npm/models/methods/tx.d.ts.map +1 -1
  155. package/dist/npm/models/transactions/AMMClawback.d.ts +17 -0
  156. package/dist/npm/models/transactions/AMMClawback.d.ts.map +1 -0
  157. package/dist/npm/models/transactions/AMMClawback.js +34 -0
  158. package/dist/npm/models/transactions/AMMClawback.js.map +1 -0
  159. package/dist/npm/models/transactions/AMMDeposit.d.ts +3 -1
  160. package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
  161. package/dist/npm/models/transactions/AMMDeposit.js +2 -1
  162. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  163. package/dist/npm/models/transactions/AMMWithdraw.js +1 -1
  164. package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
  165. package/dist/npm/models/transactions/CredentialAccept.d.ts +9 -0
  166. package/dist/npm/models/transactions/CredentialAccept.d.ts.map +1 -0
  167. package/dist/npm/models/transactions/CredentialAccept.js +12 -0
  168. package/dist/npm/models/transactions/CredentialAccept.js.map +1 -0
  169. package/dist/npm/models/transactions/CredentialCreate.d.ts +11 -0
  170. package/dist/npm/models/transactions/CredentialCreate.d.ts.map +1 -0
  171. package/dist/npm/models/transactions/CredentialCreate.js +34 -0
  172. package/dist/npm/models/transactions/CredentialCreate.js.map +1 -0
  173. package/dist/npm/models/transactions/CredentialDelete.d.ts +10 -0
  174. package/dist/npm/models/transactions/CredentialDelete.d.ts.map +1 -0
  175. package/dist/npm/models/transactions/CredentialDelete.js +17 -0
  176. package/dist/npm/models/transactions/CredentialDelete.js.map +1 -0
  177. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts +15 -0
  178. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts.map +1 -0
  179. package/dist/npm/models/transactions/MPTokenAuthorize.js +15 -0
  180. package/dist/npm/models/transactions/MPTokenAuthorize.js.map +1 -0
  181. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts +31 -0
  182. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -0
  183. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js +54 -0
  184. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js.map +1 -0
  185. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.d.ts +7 -0
  186. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.d.ts.map +1 -0
  187. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.js +10 -0
  188. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.js.map +1 -0
  189. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts +17 -0
  190. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -0
  191. package/dist/npm/models/transactions/MPTokenIssuanceSet.js +29 -0
  192. package/dist/npm/models/transactions/MPTokenIssuanceSet.js.map +1 -0
  193. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  194. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  195. package/dist/npm/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  196. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  197. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  198. package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
  199. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  200. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  201. package/dist/npm/models/transactions/NFTokenCreateOffer.js +1 -1
  202. package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
  203. package/dist/npm/models/transactions/NFTokenMint.d.ts +7 -1
  204. package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
  205. package/dist/npm/models/transactions/NFTokenMint.js +2 -1
  206. package/dist/npm/models/transactions/NFTokenMint.js.map +1 -1
  207. package/dist/npm/models/transactions/NFTokenModify.d.ts +9 -0
  208. package/dist/npm/models/transactions/NFTokenModify.d.ts.map +1 -0
  209. package/dist/npm/models/transactions/NFTokenModify.js +22 -0
  210. package/dist/npm/models/transactions/NFTokenModify.js.map +1 -0
  211. package/dist/npm/models/transactions/XChainModifyBridge.js +1 -1
  212. package/dist/npm/models/transactions/XChainModifyBridge.js.map +1 -1
  213. package/dist/npm/models/transactions/accountDelete.d.ts +1 -0
  214. package/dist/npm/models/transactions/accountDelete.d.ts.map +1 -1
  215. package/dist/npm/models/transactions/accountDelete.js +1 -0
  216. package/dist/npm/models/transactions/accountDelete.js.map +1 -1
  217. package/dist/npm/models/transactions/accountSet.js +2 -2
  218. package/dist/npm/models/transactions/accountSet.js.map +1 -1
  219. package/dist/npm/models/transactions/clawback.d.ts +3 -2
  220. package/dist/npm/models/transactions/clawback.d.ts.map +1 -1
  221. package/dist/npm/models/transactions/clawback.js +11 -1
  222. package/dist/npm/models/transactions/clawback.js.map +1 -1
  223. package/dist/npm/models/transactions/common.d.ts +7 -1
  224. package/dist/npm/models/transactions/common.d.ts.map +1 -1
  225. package/dist/npm/models/transactions/common.js +97 -4
  226. package/dist/npm/models/transactions/common.js.map +1 -1
  227. package/dist/npm/models/transactions/depositPreauth.d.ts +3 -0
  228. package/dist/npm/models/transactions/depositPreauth.d.ts.map +1 -1
  229. package/dist/npm/models/transactions/depositPreauth.js +20 -7
  230. package/dist/npm/models/transactions/depositPreauth.js.map +1 -1
  231. package/dist/npm/models/transactions/enableAmendment.js +1 -1
  232. package/dist/npm/models/transactions/enableAmendment.js.map +1 -1
  233. package/dist/npm/models/transactions/escrowFinish.d.ts +1 -0
  234. package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
  235. package/dist/npm/models/transactions/escrowFinish.js +1 -0
  236. package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
  237. package/dist/npm/models/transactions/index.d.ts +16 -3
  238. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  239. package/dist/npm/models/transactions/index.js +13 -1
  240. package/dist/npm/models/transactions/index.js.map +1 -1
  241. package/dist/npm/models/transactions/metadata.d.ts +16 -4
  242. package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
  243. package/dist/npm/models/transactions/metadata.js.map +1 -1
  244. package/dist/npm/models/transactions/offerCreate.js +1 -1
  245. package/dist/npm/models/transactions/offerCreate.js.map +1 -1
  246. package/dist/npm/models/transactions/oracleDelete.d.ts +7 -0
  247. package/dist/npm/models/transactions/oracleDelete.d.ts.map +1 -0
  248. package/dist/npm/models/transactions/oracleDelete.js +10 -0
  249. package/dist/npm/models/transactions/oracleDelete.js.map +1 -0
  250. package/dist/npm/models/transactions/oracleSet.d.ts +13 -0
  251. package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -0
  252. package/dist/npm/models/transactions/oracleSet.js +59 -0
  253. package/dist/npm/models/transactions/oracleSet.js.map +1 -0
  254. package/dist/npm/models/transactions/payment.d.ts +12 -6
  255. package/dist/npm/models/transactions/payment.d.ts.map +1 -1
  256. package/dist/npm/models/transactions/payment.js +3 -2
  257. package/dist/npm/models/transactions/payment.js.map +1 -1
  258. package/dist/npm/models/transactions/paymentChannelClaim.d.ts +1 -0
  259. package/dist/npm/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  260. package/dist/npm/models/transactions/paymentChannelClaim.js +2 -1
  261. package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
  262. package/dist/npm/models/transactions/permissionedDomainDelete.d.ts +7 -0
  263. package/dist/npm/models/transactions/permissionedDomainDelete.d.ts.map +1 -0
  264. package/dist/npm/models/transactions/permissionedDomainDelete.js +10 -0
  265. package/dist/npm/models/transactions/permissionedDomainDelete.js.map +1 -0
  266. package/dist/npm/models/transactions/permissionedDomainSet.d.ts +9 -0
  267. package/dist/npm/models/transactions/permissionedDomainSet.d.ts.map +1 -0
  268. package/dist/npm/models/transactions/permissionedDomainSet.js +13 -0
  269. package/dist/npm/models/transactions/permissionedDomainSet.js.map +1 -0
  270. package/dist/npm/models/transactions/transaction.d.ts +19 -4
  271. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  272. package/dist/npm/models/transactions/transaction.js +53 -1
  273. package/dist/npm/models/transactions/transaction.js.map +1 -1
  274. package/dist/npm/models/transactions/trustSet.d.ts +5 -1
  275. package/dist/npm/models/transactions/trustSet.d.ts.map +1 -1
  276. package/dist/npm/models/transactions/trustSet.js +3 -1
  277. package/dist/npm/models/transactions/trustSet.js.map +1 -1
  278. package/dist/npm/models/utils/flags.d.ts +2 -0
  279. package/dist/npm/models/utils/flags.d.ts.map +1 -1
  280. package/dist/npm/models/utils/flags.js +51 -16
  281. package/dist/npm/models/utils/flags.js.map +1 -1
  282. package/dist/npm/models/utils/index.d.ts +1 -0
  283. package/dist/npm/models/utils/index.d.ts.map +1 -1
  284. package/dist/npm/models/utils/index.js +2 -1
  285. package/dist/npm/models/utils/index.js.map +1 -1
  286. package/dist/npm/snippets/src/claimPayChannel.js +1 -1
  287. package/dist/npm/snippets/src/claimPayChannel.js.map +1 -1
  288. package/dist/npm/snippets/src/getTransaction.js +1 -1
  289. package/dist/npm/snippets/src/getTransaction.js.map +1 -1
  290. package/dist/npm/snippets/src/paths.js +7 -12
  291. package/dist/npm/snippets/src/paths.js.map +1 -1
  292. package/dist/npm/snippets/src/sendEscrow.js +1 -1
  293. package/dist/npm/snippets/src/sendEscrow.js.map +1 -1
  294. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  295. package/dist/npm/src/Wallet/authorizeChannel.d.ts +3 -0
  296. package/dist/npm/src/Wallet/authorizeChannel.d.ts.map +1 -0
  297. package/dist/npm/src/Wallet/authorizeChannel.js +14 -0
  298. package/dist/npm/src/Wallet/authorizeChannel.js.map +1 -0
  299. package/dist/npm/src/Wallet/defaultFaucets.d.ts +1 -2
  300. package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
  301. package/dist/npm/src/Wallet/defaultFaucets.js +1 -6
  302. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  303. package/dist/npm/src/Wallet/fundWallet.d.ts +17 -3
  304. package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
  305. package/dist/npm/src/Wallet/fundWallet.js +49 -78
  306. package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
  307. package/dist/npm/src/Wallet/index.d.ts.map +1 -1
  308. package/dist/npm/src/Wallet/index.js +32 -23
  309. package/dist/npm/src/Wallet/index.js.map +1 -1
  310. package/dist/npm/src/Wallet/rfc1751.d.ts +1 -2
  311. package/dist/npm/src/Wallet/rfc1751.d.ts.map +1 -1
  312. package/dist/npm/src/Wallet/rfc1751.js +21 -5
  313. package/dist/npm/src/Wallet/rfc1751.js.map +1 -1
  314. package/dist/npm/src/Wallet/signer.d.ts +2 -4
  315. package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
  316. package/dist/npm/src/Wallet/signer.js +19 -14
  317. package/dist/npm/src/Wallet/signer.js.map +1 -1
  318. package/dist/npm/src/Wallet/walletFromSecretNumbers.js +2 -2
  319. package/dist/npm/src/Wallet/walletFromSecretNumbers.js.map +1 -1
  320. package/dist/npm/src/client/RequestManager.d.ts +6 -4
  321. package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
  322. package/dist/npm/src/client/RequestManager.js +25 -1
  323. package/dist/npm/src/client/RequestManager.js.map +1 -1
  324. package/dist/npm/src/client/connection.d.ts +8 -11
  325. package/dist/npm/src/client/connection.d.ts.map +1 -1
  326. package/dist/npm/src/client/connection.js +11 -57
  327. package/dist/npm/src/client/connection.js.map +1 -1
  328. package/dist/npm/src/client/index.d.ts +61 -79
  329. package/dist/npm/src/client/index.d.ts.map +1 -1
  330. package/dist/npm/src/client/index.js +180 -50
  331. package/dist/npm/src/client/index.js.map +1 -1
  332. package/dist/npm/src/client/partialPayment.d.ts +6 -3
  333. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  334. package/dist/npm/src/client/partialPayment.js +21 -6
  335. package/dist/npm/src/client/partialPayment.js.map +1 -1
  336. package/dist/npm/src/errors.d.ts.map +1 -1
  337. package/dist/npm/src/errors.js +1 -2
  338. package/dist/npm/src/errors.js.map +1 -1
  339. package/dist/npm/src/index.d.ts +2 -1
  340. package/dist/npm/src/index.d.ts.map +1 -1
  341. package/dist/npm/src/index.js +9 -3
  342. package/dist/npm/src/index.js.map +1 -1
  343. package/dist/npm/src/models/common/index.d.ts +23 -0
  344. package/dist/npm/src/models/common/index.d.ts.map +1 -1
  345. package/dist/npm/src/models/common/index.js +4 -0
  346. package/dist/npm/src/models/common/index.js.map +1 -1
  347. package/dist/npm/src/models/index.d.ts +1 -1
  348. package/dist/npm/src/models/index.d.ts.map +1 -1
  349. package/dist/npm/src/models/index.js +4 -2
  350. package/dist/npm/src/models/index.js.map +1 -1
  351. package/dist/npm/src/models/ledger/AMM.d.ts +2 -2
  352. package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
  353. package/dist/npm/src/models/ledger/AccountRoot.js +1 -1
  354. package/dist/npm/src/models/ledger/AccountRoot.js.map +1 -1
  355. package/dist/npm/src/models/ledger/Amendments.d.ts +2 -2
  356. package/dist/npm/src/models/ledger/Amendments.d.ts.map +1 -1
  357. package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts +3 -3
  358. package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
  359. package/dist/npm/src/models/ledger/Credential.d.ts +17 -0
  360. package/dist/npm/src/models/ledger/Credential.d.ts.map +1 -0
  361. package/dist/npm/src/models/ledger/Credential.js +3 -0
  362. package/dist/npm/src/models/ledger/Credential.js.map +1 -0
  363. package/dist/npm/src/models/ledger/DepositPreauth.d.ts +3 -1
  364. package/dist/npm/src/models/ledger/DepositPreauth.d.ts.map +1 -1
  365. package/dist/npm/src/models/ledger/DirectoryNode.d.ts +2 -2
  366. package/dist/npm/src/models/ledger/DirectoryNode.d.ts.map +1 -1
  367. package/dist/npm/src/models/ledger/FeeSettings.d.ts +2 -2
  368. package/dist/npm/src/models/ledger/FeeSettings.d.ts.map +1 -1
  369. package/dist/npm/src/models/ledger/Ledger.d.ts +14 -4
  370. package/dist/npm/src/models/ledger/Ledger.d.ts.map +1 -1
  371. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +5 -2
  372. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  373. package/dist/npm/src/models/ledger/LedgerHashes.d.ts +2 -2
  374. package/dist/npm/src/models/ledger/LedgerHashes.d.ts.map +1 -1
  375. package/dist/npm/src/models/ledger/MPToken.d.ts +10 -0
  376. package/dist/npm/src/models/ledger/MPToken.d.ts.map +1 -0
  377. package/dist/npm/src/models/ledger/MPToken.js +3 -0
  378. package/dist/npm/src/models/ledger/MPToken.js.map +1 -0
  379. package/dist/npm/src/models/ledger/MPTokenIssuance.d.ts +13 -0
  380. package/dist/npm/src/models/ledger/MPTokenIssuance.d.ts.map +1 -0
  381. package/dist/npm/src/models/ledger/MPTokenIssuance.js +3 -0
  382. package/dist/npm/src/models/ledger/MPTokenIssuance.js.map +1 -0
  383. package/dist/npm/src/models/ledger/NegativeUNL.d.ts +2 -2
  384. package/dist/npm/src/models/ledger/NegativeUNL.d.ts.map +1 -1
  385. package/dist/npm/src/models/ledger/Offer.js +1 -1
  386. package/dist/npm/src/models/ledger/Offer.js.map +1 -1
  387. package/dist/npm/src/models/ledger/Oracle.d.ts +12 -0
  388. package/dist/npm/src/models/ledger/Oracle.d.ts.map +1 -0
  389. package/dist/npm/src/models/ledger/Oracle.js +3 -0
  390. package/dist/npm/src/models/ledger/Oracle.js.map +1 -0
  391. package/dist/npm/src/models/ledger/PermissionedDomain.d.ts +11 -0
  392. package/dist/npm/src/models/ledger/PermissionedDomain.d.ts.map +1 -0
  393. package/dist/npm/src/models/ledger/PermissionedDomain.js +3 -0
  394. package/dist/npm/src/models/ledger/PermissionedDomain.js.map +1 -0
  395. package/dist/npm/src/models/ledger/RippleState.d.ts +4 -1
  396. package/dist/npm/src/models/ledger/RippleState.d.ts.map +1 -1
  397. package/dist/npm/src/models/ledger/RippleState.js +4 -1
  398. package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
  399. package/dist/npm/src/models/ledger/SignerList.js +1 -1
  400. package/dist/npm/src/models/ledger/SignerList.js.map +1 -1
  401. package/dist/npm/src/models/ledger/index.d.ts +6 -2
  402. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  403. package/dist/npm/src/models/ledger/index.js.map +1 -1
  404. package/dist/npm/src/models/methods/accountChannels.d.ts +1 -1
  405. package/dist/npm/src/models/methods/accountChannels.d.ts.map +1 -1
  406. package/dist/npm/src/models/methods/accountInfo.d.ts +17 -4
  407. package/dist/npm/src/models/methods/accountInfo.d.ts.map +1 -1
  408. package/dist/npm/src/models/methods/accountTx.d.ts +11 -5
  409. package/dist/npm/src/models/methods/accountTx.d.ts.map +1 -1
  410. package/dist/npm/src/models/methods/depositAuthorized.d.ts +2 -0
  411. package/dist/npm/src/models/methods/depositAuthorized.d.ts.map +1 -1
  412. package/dist/npm/src/models/methods/feature.d.ts +28 -0
  413. package/dist/npm/src/models/methods/feature.d.ts.map +1 -0
  414. package/dist/npm/src/models/methods/feature.js +3 -0
  415. package/dist/npm/src/models/methods/feature.js.map +1 -0
  416. package/dist/npm/src/models/methods/getAggregatePrice.d.ts +31 -0
  417. package/dist/npm/src/models/methods/getAggregatePrice.d.ts.map +1 -0
  418. package/dist/npm/src/models/methods/getAggregatePrice.js +3 -0
  419. package/dist/npm/src/models/methods/getAggregatePrice.js.map +1 -0
  420. package/dist/npm/src/models/methods/index.d.ts +25 -9
  421. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  422. package/dist/npm/src/models/methods/ledger.d.ts +49 -9
  423. package/dist/npm/src/models/methods/ledger.d.ts.map +1 -1
  424. package/dist/npm/src/models/methods/ledgerEntry.d.ts +12 -0
  425. package/dist/npm/src/models/methods/ledgerEntry.d.ts.map +1 -1
  426. package/dist/npm/src/models/methods/nftsByIssuer.d.ts +19 -0
  427. package/dist/npm/src/models/methods/nftsByIssuer.d.ts.map +1 -0
  428. package/dist/npm/src/models/methods/nftsByIssuer.js +3 -0
  429. package/dist/npm/src/models/methods/nftsByIssuer.js.map +1 -0
  430. package/dist/npm/src/models/methods/serverState.d.ts +1 -0
  431. package/dist/npm/src/models/methods/serverState.d.ts.map +1 -1
  432. package/dist/npm/src/models/methods/simulate.d.ts +42 -0
  433. package/dist/npm/src/models/methods/simulate.d.ts.map +1 -0
  434. package/dist/npm/src/models/methods/simulate.js +3 -0
  435. package/dist/npm/src/models/methods/simulate.js.map +1 -0
  436. package/dist/npm/src/models/methods/submit.d.ts +2 -2
  437. package/dist/npm/src/models/methods/submit.d.ts.map +1 -1
  438. package/dist/npm/src/models/methods/submitMultisigned.d.ts +16 -5
  439. package/dist/npm/src/models/methods/submitMultisigned.d.ts.map +1 -1
  440. package/dist/npm/src/models/methods/subscribe.d.ts +10 -3
  441. package/dist/npm/src/models/methods/subscribe.d.ts.map +1 -1
  442. package/dist/npm/src/models/methods/tx.d.ts +21 -10
  443. package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
  444. package/dist/npm/src/models/transactions/AMMClawback.d.ts +17 -0
  445. package/dist/npm/src/models/transactions/AMMClawback.d.ts.map +1 -0
  446. package/dist/npm/src/models/transactions/AMMClawback.js +34 -0
  447. package/dist/npm/src/models/transactions/AMMClawback.js.map +1 -0
  448. package/dist/npm/src/models/transactions/AMMDeposit.d.ts +3 -1
  449. package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
  450. package/dist/npm/src/models/transactions/AMMDeposit.js +2 -1
  451. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  452. package/dist/npm/src/models/transactions/AMMWithdraw.js +1 -1
  453. package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
  454. package/dist/npm/src/models/transactions/CredentialAccept.d.ts +9 -0
  455. package/dist/npm/src/models/transactions/CredentialAccept.d.ts.map +1 -0
  456. package/dist/npm/src/models/transactions/CredentialAccept.js +12 -0
  457. package/dist/npm/src/models/transactions/CredentialAccept.js.map +1 -0
  458. package/dist/npm/src/models/transactions/CredentialCreate.d.ts +11 -0
  459. package/dist/npm/src/models/transactions/CredentialCreate.d.ts.map +1 -0
  460. package/dist/npm/src/models/transactions/CredentialCreate.js +34 -0
  461. package/dist/npm/src/models/transactions/CredentialCreate.js.map +1 -0
  462. package/dist/npm/src/models/transactions/CredentialDelete.d.ts +10 -0
  463. package/dist/npm/src/models/transactions/CredentialDelete.d.ts.map +1 -0
  464. package/dist/npm/src/models/transactions/CredentialDelete.js +17 -0
  465. package/dist/npm/src/models/transactions/CredentialDelete.js.map +1 -0
  466. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts +15 -0
  467. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts.map +1 -0
  468. package/dist/npm/src/models/transactions/MPTokenAuthorize.js +15 -0
  469. package/dist/npm/src/models/transactions/MPTokenAuthorize.js.map +1 -0
  470. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts +31 -0
  471. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -0
  472. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js +54 -0
  473. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js.map +1 -0
  474. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.d.ts +7 -0
  475. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.d.ts.map +1 -0
  476. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.js +10 -0
  477. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.js.map +1 -0
  478. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts +17 -0
  479. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -0
  480. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js +29 -0
  481. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js.map +1 -0
  482. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  483. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  484. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  485. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  486. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  487. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
  488. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  489. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  490. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +1 -1
  491. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
  492. package/dist/npm/src/models/transactions/NFTokenMint.d.ts +7 -1
  493. package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
  494. package/dist/npm/src/models/transactions/NFTokenMint.js +2 -1
  495. package/dist/npm/src/models/transactions/NFTokenMint.js.map +1 -1
  496. package/dist/npm/src/models/transactions/NFTokenModify.d.ts +9 -0
  497. package/dist/npm/src/models/transactions/NFTokenModify.d.ts.map +1 -0
  498. package/dist/npm/src/models/transactions/NFTokenModify.js +22 -0
  499. package/dist/npm/src/models/transactions/NFTokenModify.js.map +1 -0
  500. package/dist/npm/src/models/transactions/XChainModifyBridge.js +1 -1
  501. package/dist/npm/src/models/transactions/XChainModifyBridge.js.map +1 -1
  502. package/dist/npm/src/models/transactions/accountDelete.d.ts +1 -0
  503. package/dist/npm/src/models/transactions/accountDelete.d.ts.map +1 -1
  504. package/dist/npm/src/models/transactions/accountDelete.js +1 -0
  505. package/dist/npm/src/models/transactions/accountDelete.js.map +1 -1
  506. package/dist/npm/src/models/transactions/accountSet.js +2 -2
  507. package/dist/npm/src/models/transactions/accountSet.js.map +1 -1
  508. package/dist/npm/src/models/transactions/clawback.d.ts +3 -2
  509. package/dist/npm/src/models/transactions/clawback.d.ts.map +1 -1
  510. package/dist/npm/src/models/transactions/clawback.js +11 -1
  511. package/dist/npm/src/models/transactions/clawback.js.map +1 -1
  512. package/dist/npm/src/models/transactions/common.d.ts +7 -1
  513. package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
  514. package/dist/npm/src/models/transactions/common.js +97 -4
  515. package/dist/npm/src/models/transactions/common.js.map +1 -1
  516. package/dist/npm/src/models/transactions/depositPreauth.d.ts +3 -0
  517. package/dist/npm/src/models/transactions/depositPreauth.d.ts.map +1 -1
  518. package/dist/npm/src/models/transactions/depositPreauth.js +20 -7
  519. package/dist/npm/src/models/transactions/depositPreauth.js.map +1 -1
  520. package/dist/npm/src/models/transactions/enableAmendment.js +1 -1
  521. package/dist/npm/src/models/transactions/enableAmendment.js.map +1 -1
  522. package/dist/npm/src/models/transactions/escrowFinish.d.ts +1 -0
  523. package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
  524. package/dist/npm/src/models/transactions/escrowFinish.js +1 -0
  525. package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
  526. package/dist/npm/src/models/transactions/index.d.ts +16 -3
  527. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  528. package/dist/npm/src/models/transactions/index.js +13 -1
  529. package/dist/npm/src/models/transactions/index.js.map +1 -1
  530. package/dist/npm/src/models/transactions/metadata.d.ts +16 -4
  531. package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
  532. package/dist/npm/src/models/transactions/metadata.js.map +1 -1
  533. package/dist/npm/src/models/transactions/offerCreate.js +1 -1
  534. package/dist/npm/src/models/transactions/offerCreate.js.map +1 -1
  535. package/dist/npm/src/models/transactions/oracleDelete.d.ts +7 -0
  536. package/dist/npm/src/models/transactions/oracleDelete.d.ts.map +1 -0
  537. package/dist/npm/src/models/transactions/oracleDelete.js +10 -0
  538. package/dist/npm/src/models/transactions/oracleDelete.js.map +1 -0
  539. package/dist/npm/src/models/transactions/oracleSet.d.ts +13 -0
  540. package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -0
  541. package/dist/npm/src/models/transactions/oracleSet.js +59 -0
  542. package/dist/npm/src/models/transactions/oracleSet.js.map +1 -0
  543. package/dist/npm/src/models/transactions/payment.d.ts +12 -6
  544. package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
  545. package/dist/npm/src/models/transactions/payment.js +3 -2
  546. package/dist/npm/src/models/transactions/payment.js.map +1 -1
  547. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts +1 -0
  548. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  549. package/dist/npm/src/models/transactions/paymentChannelClaim.js +2 -1
  550. package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
  551. package/dist/npm/src/models/transactions/permissionedDomainDelete.d.ts +7 -0
  552. package/dist/npm/src/models/transactions/permissionedDomainDelete.d.ts.map +1 -0
  553. package/dist/npm/src/models/transactions/permissionedDomainDelete.js +10 -0
  554. package/dist/npm/src/models/transactions/permissionedDomainDelete.js.map +1 -0
  555. package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts +9 -0
  556. package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts.map +1 -0
  557. package/dist/npm/src/models/transactions/permissionedDomainSet.js +13 -0
  558. package/dist/npm/src/models/transactions/permissionedDomainSet.js.map +1 -0
  559. package/dist/npm/src/models/transactions/transaction.d.ts +19 -4
  560. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  561. package/dist/npm/src/models/transactions/transaction.js +53 -1
  562. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  563. package/dist/npm/src/models/transactions/trustSet.d.ts +5 -1
  564. package/dist/npm/src/models/transactions/trustSet.d.ts.map +1 -1
  565. package/dist/npm/src/models/transactions/trustSet.js +3 -1
  566. package/dist/npm/src/models/transactions/trustSet.js.map +1 -1
  567. package/dist/npm/src/models/utils/flags.d.ts +2 -0
  568. package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
  569. package/dist/npm/src/models/utils/flags.js +51 -16
  570. package/dist/npm/src/models/utils/flags.js.map +1 -1
  571. package/dist/npm/src/models/utils/index.d.ts +1 -0
  572. package/dist/npm/src/models/utils/index.d.ts.map +1 -1
  573. package/dist/npm/src/models/utils/index.js +2 -1
  574. package/dist/npm/src/models/utils/index.js.map +1 -1
  575. package/dist/npm/src/sugar/autofill.d.ts +7 -3
  576. package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
  577. package/dist/npm/src/sugar/autofill.js +11 -32
  578. package/dist/npm/src/sugar/autofill.js.map +1 -1
  579. package/dist/npm/src/sugar/balances.d.ts +2 -17
  580. package/dist/npm/src/sugar/balances.d.ts.map +1 -1
  581. package/dist/npm/src/sugar/balances.js +2 -60
  582. package/dist/npm/src/sugar/balances.js.map +1 -1
  583. package/dist/npm/src/sugar/getFeeXrp.d.ts +1 -1
  584. package/dist/npm/src/sugar/getFeeXrp.d.ts.map +1 -1
  585. package/dist/npm/src/sugar/getFeeXrp.js +3 -2
  586. package/dist/npm/src/sugar/getFeeXrp.js.map +1 -1
  587. package/dist/npm/src/sugar/getOrderbook.d.ts +19 -5
  588. package/dist/npm/src/sugar/getOrderbook.d.ts.map +1 -1
  589. package/dist/npm/src/sugar/getOrderbook.js +72 -53
  590. package/dist/npm/src/sugar/getOrderbook.js.map +1 -1
  591. package/dist/npm/src/sugar/index.d.ts +0 -4
  592. package/dist/npm/src/sugar/index.d.ts.map +1 -1
  593. package/dist/npm/src/sugar/index.js +0 -13
  594. package/dist/npm/src/sugar/index.js.map +1 -1
  595. package/dist/npm/src/sugar/submit.d.ts +7 -11
  596. package/dist/npm/src/sugar/submit.d.ts.map +1 -1
  597. package/dist/npm/src/sugar/submit.js +11 -28
  598. package/dist/npm/src/sugar/submit.js.map +1 -1
  599. package/dist/npm/src/utils/collections.d.ts +5 -0
  600. package/dist/npm/src/utils/collections.d.ts.map +1 -0
  601. package/dist/npm/src/utils/collections.js +24 -0
  602. package/dist/npm/src/utils/collections.js.map +1 -0
  603. package/dist/npm/src/utils/getBalanceChanges.d.ts.map +1 -1
  604. package/dist/npm/src/utils/getBalanceChanges.js +3 -4
  605. package/dist/npm/src/utils/getBalanceChanges.js.map +1 -1
  606. package/dist/npm/src/utils/getNFTokenID.d.ts.map +1 -1
  607. package/dist/npm/src/utils/getNFTokenID.js +8 -8
  608. package/dist/npm/src/utils/getNFTokenID.js.map +1 -1
  609. package/dist/npm/src/utils/hashes/SHAMap/node.js +1 -1
  610. package/dist/npm/src/utils/hashes/SHAMap/node.js.map +1 -1
  611. package/dist/npm/src/utils/hashes/hashLedger.d.ts +5 -5
  612. package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
  613. package/dist/npm/src/utils/hashes/hashLedger.js +7 -7
  614. package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
  615. package/dist/npm/src/utils/hashes/index.d.ts.map +1 -1
  616. package/dist/npm/src/utils/hashes/index.js +3 -2
  617. package/dist/npm/src/utils/hashes/index.js.map +1 -1
  618. package/dist/npm/src/utils/hashes/sha512Half.d.ts.map +1 -1
  619. package/dist/npm/src/utils/hashes/sha512Half.js +4 -7
  620. package/dist/npm/src/utils/hashes/sha512Half.js.map +1 -1
  621. package/dist/npm/src/utils/index.d.ts +2 -1
  622. package/dist/npm/src/utils/index.d.ts.map +1 -1
  623. package/dist/npm/src/utils/index.js +6 -29
  624. package/dist/npm/src/utils/index.js.map +1 -1
  625. package/dist/npm/src/utils/parseNFTokenID.d.ts.map +1 -1
  626. package/dist/npm/src/utils/parseNFTokenID.js +2 -1
  627. package/dist/npm/src/utils/parseNFTokenID.js.map +1 -1
  628. package/dist/npm/src/utils/stringConversion.d.ts +1 -2
  629. package/dist/npm/src/utils/stringConversion.d.ts.map +1 -1
  630. package/dist/npm/src/utils/stringConversion.js +3 -2
  631. package/dist/npm/src/utils/stringConversion.js.map +1 -1
  632. package/dist/npm/src/utils/xrpConversion.d.ts +1 -1
  633. package/dist/npm/src/utils/xrpConversion.js +1 -1
  634. package/dist/npm/src/utils/xrpConversion.js.map +1 -1
  635. package/dist/npm/sugar/autofill.d.ts +7 -3
  636. package/dist/npm/sugar/autofill.d.ts.map +1 -1
  637. package/dist/npm/sugar/autofill.js +11 -32
  638. package/dist/npm/sugar/autofill.js.map +1 -1
  639. package/dist/npm/sugar/balances.d.ts +2 -17
  640. package/dist/npm/sugar/balances.d.ts.map +1 -1
  641. package/dist/npm/sugar/balances.js +2 -60
  642. package/dist/npm/sugar/balances.js.map +1 -1
  643. package/dist/npm/sugar/getFeeXrp.d.ts +1 -1
  644. package/dist/npm/sugar/getFeeXrp.d.ts.map +1 -1
  645. package/dist/npm/sugar/getFeeXrp.js +3 -2
  646. package/dist/npm/sugar/getFeeXrp.js.map +1 -1
  647. package/dist/npm/sugar/getOrderbook.d.ts +19 -5
  648. package/dist/npm/sugar/getOrderbook.d.ts.map +1 -1
  649. package/dist/npm/sugar/getOrderbook.js +72 -53
  650. package/dist/npm/sugar/getOrderbook.js.map +1 -1
  651. package/dist/npm/sugar/index.d.ts +0 -4
  652. package/dist/npm/sugar/index.d.ts.map +1 -1
  653. package/dist/npm/sugar/index.js +0 -13
  654. package/dist/npm/sugar/index.js.map +1 -1
  655. package/dist/npm/sugar/submit.d.ts +7 -11
  656. package/dist/npm/sugar/submit.d.ts.map +1 -1
  657. package/dist/npm/sugar/submit.js +11 -28
  658. package/dist/npm/sugar/submit.js.map +1 -1
  659. package/dist/npm/utils/collections.d.ts +5 -0
  660. package/dist/npm/utils/collections.d.ts.map +1 -0
  661. package/dist/npm/utils/collections.js +24 -0
  662. package/dist/npm/utils/collections.js.map +1 -0
  663. package/dist/npm/utils/getBalanceChanges.d.ts.map +1 -1
  664. package/dist/npm/utils/getBalanceChanges.js +3 -4
  665. package/dist/npm/utils/getBalanceChanges.js.map +1 -1
  666. package/dist/npm/utils/getNFTokenID.d.ts.map +1 -1
  667. package/dist/npm/utils/getNFTokenID.js +8 -8
  668. package/dist/npm/utils/getNFTokenID.js.map +1 -1
  669. package/dist/npm/utils/hashes/SHAMap/node.js +1 -1
  670. package/dist/npm/utils/hashes/SHAMap/node.js.map +1 -1
  671. package/dist/npm/utils/hashes/hashLedger.d.ts +5 -5
  672. package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
  673. package/dist/npm/utils/hashes/hashLedger.js +7 -7
  674. package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
  675. package/dist/npm/utils/hashes/index.d.ts.map +1 -1
  676. package/dist/npm/utils/hashes/index.js +3 -2
  677. package/dist/npm/utils/hashes/index.js.map +1 -1
  678. package/dist/npm/utils/hashes/sha512Half.d.ts.map +1 -1
  679. package/dist/npm/utils/hashes/sha512Half.js +4 -7
  680. package/dist/npm/utils/hashes/sha512Half.js.map +1 -1
  681. package/dist/npm/utils/index.d.ts +2 -1
  682. package/dist/npm/utils/index.d.ts.map +1 -1
  683. package/dist/npm/utils/index.js +6 -29
  684. package/dist/npm/utils/index.js.map +1 -1
  685. package/dist/npm/utils/parseNFTokenID.d.ts.map +1 -1
  686. package/dist/npm/utils/parseNFTokenID.js +2 -1
  687. package/dist/npm/utils/parseNFTokenID.js.map +1 -1
  688. package/dist/npm/utils/stringConversion.d.ts +1 -2
  689. package/dist/npm/utils/stringConversion.d.ts.map +1 -1
  690. package/dist/npm/utils/stringConversion.js +3 -2
  691. package/dist/npm/utils/stringConversion.js.map +1 -1
  692. package/dist/npm/utils/xrpConversion.d.ts +1 -1
  693. package/dist/npm/utils/xrpConversion.js +1 -1
  694. package/dist/npm/utils/xrpConversion.js.map +1 -1
  695. package/package.json +20 -47
  696. package/src/Wallet/authorizeChannel.ts +26 -0
  697. package/src/Wallet/defaultFaucets.ts +0 -6
  698. package/src/Wallet/fundWallet.ts +152 -214
  699. package/src/Wallet/index.ts +38 -25
  700. package/src/Wallet/rfc1751.ts +45 -16
  701. package/src/Wallet/signer.ts +34 -44
  702. package/src/Wallet/walletFromSecretNumbers.ts +1 -1
  703. package/src/client/RequestManager.ts +50 -19
  704. package/src/client/connection.ts +29 -94
  705. package/src/client/index.ts +816 -286
  706. package/src/client/partialPayment.ts +79 -26
  707. package/src/errors.ts +1 -3
  708. package/src/index.ts +8 -3
  709. package/src/models/common/index.ts +56 -0
  710. package/src/models/index.ts +3 -1
  711. package/src/models/ledger/AMM.ts +2 -2
  712. package/src/models/ledger/Amendments.ts +2 -2
  713. package/src/models/ledger/BaseLedgerEntry.ts +9 -5
  714. package/src/models/ledger/Credential.ts +47 -0
  715. package/src/models/ledger/DepositPreauth.ts +6 -2
  716. package/src/models/ledger/DirectoryNode.ts +2 -2
  717. package/src/models/ledger/FeeSettings.ts +4 -2
  718. package/src/models/ledger/Ledger.ts +51 -15
  719. package/src/models/ledger/LedgerEntry.ts +11 -0
  720. package/src/models/ledger/LedgerHashes.ts +2 -4
  721. package/src/models/ledger/MPToken.ts +11 -0
  722. package/src/models/ledger/MPTokenIssuance.ts +13 -0
  723. package/src/models/ledger/NegativeUNL.ts +2 -2
  724. package/src/models/ledger/Oracle.ts +43 -0
  725. package/src/models/ledger/PermissionedDomain.ts +29 -0
  726. package/src/models/ledger/RippleState.ts +6 -0
  727. package/src/models/ledger/index.ts +10 -1
  728. package/src/models/methods/accountChannels.ts +64 -1
  729. package/src/models/methods/accountInfo.ts +58 -12
  730. package/src/models/methods/accountTx.ts +49 -8
  731. package/src/models/methods/depositAuthorized.ts +10 -0
  732. package/src/models/methods/feature.ts +68 -0
  733. package/src/models/methods/getAggregatePrice.ts +119 -0
  734. package/src/models/methods/index.ts +259 -6
  735. package/src/models/methods/ledger.ts +187 -22
  736. package/src/models/methods/ledgerEntry.ts +45 -1
  737. package/src/models/methods/nftsByIssuer.ts +68 -0
  738. package/src/models/methods/serverState.ts +1 -0
  739. package/src/models/methods/simulate.ts +88 -0
  740. package/src/models/methods/submit.ts +2 -2
  741. package/src/models/methods/submitMultisigned.ts +48 -16
  742. package/src/models/methods/subscribe.ts +70 -3
  743. package/src/models/methods/tx.ts +76 -26
  744. package/src/models/transactions/AMMClawback.ts +120 -0
  745. package/src/models/transactions/AMMDeposit.ts +2 -0
  746. package/src/models/transactions/CredentialAccept.ts +44 -0
  747. package/src/models/transactions/CredentialCreate.ts +81 -0
  748. package/src/models/transactions/CredentialDelete.ts +55 -0
  749. package/src/models/transactions/MPTokenAuthorize.ts +67 -0
  750. package/src/models/transactions/MPTokenIssuanceCreate.ts +179 -0
  751. package/src/models/transactions/MPTokenIssuanceDestroy.ts +34 -0
  752. package/src/models/transactions/MPTokenIssuanceSet.ts +86 -0
  753. package/src/models/transactions/NFTokenAcceptOffer.ts +6 -0
  754. package/src/models/transactions/NFTokenCancelOffer.ts +6 -0
  755. package/src/models/transactions/NFTokenCreateOffer.ts +6 -0
  756. package/src/models/transactions/NFTokenMint.ts +11 -0
  757. package/src/models/transactions/NFTokenModify.ts +67 -0
  758. package/src/models/transactions/accountDelete.ts +16 -0
  759. package/src/models/transactions/clawback.ts +27 -6
  760. package/src/models/transactions/common.ts +179 -1
  761. package/src/models/transactions/depositPreauth.ts +54 -15
  762. package/src/models/transactions/escrowFinish.ts +14 -0
  763. package/src/models/transactions/index.ts +33 -2
  764. package/src/models/transactions/metadata.ts +41 -4
  765. package/src/models/transactions/oracleDelete.ts +32 -0
  766. package/src/models/transactions/oracleSet.ts +176 -0
  767. package/src/models/transactions/payment.ts +27 -6
  768. package/src/models/transactions/paymentChannelClaim.ts +20 -1
  769. package/src/models/transactions/permissionedDomainDelete.ts +28 -0
  770. package/src/models/transactions/permissionedDomainSet.ts +54 -0
  771. package/src/models/transactions/transaction.ts +116 -7
  772. package/src/models/transactions/trustSet.ts +10 -0
  773. package/src/models/utils/flags.ts +80 -22
  774. package/src/models/utils/index.ts +1 -0
  775. package/src/sugar/autofill.ts +88 -98
  776. package/src/sugar/balances.ts +8 -116
  777. package/src/sugar/getFeeXrp.ts +6 -3
  778. package/src/sugar/getOrderbook.ts +138 -61
  779. package/src/sugar/index.ts +0 -8
  780. package/src/sugar/submit.ts +135 -146
  781. package/src/utils/collections.ts +57 -0
  782. package/src/utils/getBalanceChanges.ts +2 -3
  783. package/src/utils/getNFTokenID.ts +18 -16
  784. package/src/utils/hashes/hashLedger.ts +15 -14
  785. package/src/utils/hashes/index.ts +3 -2
  786. package/src/utils/hashes/sha512Half.ts +4 -7
  787. package/src/utils/index.ts +14 -7
  788. package/src/utils/parseNFTokenID.ts +2 -1
  789. package/src/utils/stringConversion.ts +11 -6
  790. package/src/utils/xrpConversion.ts +2 -2
  791. package/dist/npm/client/BroadcastClient.d.ts +0 -7
  792. package/dist/npm/client/BroadcastClient.d.ts.map +0 -1
  793. package/dist/npm/client/BroadcastClient.js +0 -49
  794. package/dist/npm/client/BroadcastClient.js.map +0 -1
  795. package/dist/npm/client/WSWrapper.d.ts +0 -25
  796. package/dist/npm/client/WSWrapper.d.ts.map +0 -1
  797. package/dist/npm/client/WSWrapper.js +0 -44
  798. package/dist/npm/client/WSWrapper.js.map +0 -1
  799. package/dist/npm/snippets/src/bridgeTransfer.d.ts +0 -2
  800. package/dist/npm/snippets/src/bridgeTransfer.d.ts.map +0 -1
  801. package/dist/npm/snippets/src/bridgeTransfer.js +0 -126
  802. package/dist/npm/snippets/src/bridgeTransfer.js.map +0 -1
  803. package/dist/npm/src/client/BroadcastClient.d.ts +0 -7
  804. package/dist/npm/src/client/BroadcastClient.d.ts.map +0 -1
  805. package/dist/npm/src/client/BroadcastClient.js +0 -49
  806. package/dist/npm/src/client/BroadcastClient.js.map +0 -1
  807. package/dist/npm/src/client/WSWrapper.d.ts +0 -25
  808. package/dist/npm/src/client/WSWrapper.d.ts.map +0 -1
  809. package/dist/npm/src/client/WSWrapper.js +0 -44
  810. package/dist/npm/src/client/WSWrapper.js.map +0 -1
  811. package/dist/npm/src/sugar/getLedgerIndex.d.ts +0 -3
  812. package/dist/npm/src/sugar/getLedgerIndex.d.ts.map +0 -1
  813. package/dist/npm/src/sugar/getLedgerIndex.js +0 -22
  814. package/dist/npm/src/sugar/getLedgerIndex.js.map +0 -1
  815. package/dist/npm/sugar/getLedgerIndex.d.ts +0 -3
  816. package/dist/npm/sugar/getLedgerIndex.d.ts.map +0 -1
  817. package/dist/npm/sugar/getLedgerIndex.js +0 -22
  818. package/dist/npm/sugar/getLedgerIndex.js.map +0 -1
  819. package/src/client/BroadcastClient.ts +0 -84
  820. package/src/client/WSWrapper.ts +0 -106
  821. package/src/sugar/getLedgerIndex.ts +0 -15
@@ -10,6 +10,8 @@
10
10
  *is part of the public domain.
11
11
  */
12
12
 
13
+ import { hexToBytes, concat } from '@xrplf/isomorphic/utils'
14
+
13
15
  import rfc1751Words from './rfc1751Words.json'
14
16
 
15
17
  const rfc1751WordList: string[] = rfc1751Words
@@ -59,7 +61,7 @@ function extract(key: string, start: number, length: number): number {
59
61
  */
60
62
  function keyToRFC1751Mnemonic(hex_key: string): string {
61
63
  // Remove whitespace and interpret hex
62
- const buf = Buffer.from(hex_key.replace(/\s+/gu, ''), 'hex')
64
+ const buf = hexToBytes(hex_key.replace(/\s+/gu, ''))
63
65
  // Swap byte order and use rfc1751
64
66
  let key: number[] = bufferToArray(swap128(buf))
65
67
 
@@ -97,7 +99,7 @@ function keyToRFC1751Mnemonic(hex_key: string): string {
97
99
  * @throws Error if the parity after decoding does not match.
98
100
  * @returns A Buffer containing an encoded secret.
99
101
  */
100
- function rfc1751MnemonicToKey(english: string): Buffer {
102
+ function rfc1751MnemonicToKey(english: string): Uint8Array {
101
103
  const words = english.split(' ')
102
104
  let key: number[] = []
103
105
 
@@ -123,7 +125,7 @@ function rfc1751MnemonicToKey(english: string): Buffer {
123
125
  }
124
126
 
125
127
  // This is a step specific to the XRPL's implementation
126
- const bufferKey = swap128(Buffer.from(key))
128
+ const bufferKey = swap128(Uint8Array.from(key))
127
129
  return bufferKey
128
130
  }
129
131
 
@@ -165,26 +167,53 @@ function getSubKey(
165
167
  return { subKey, word }
166
168
  }
167
169
 
168
- function bufferToArray(buf: Buffer): number[] {
170
+ function bufferToArray(buf: Uint8Array): number[] {
169
171
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- We know the end type */
170
172
  return Array.prototype.slice.call(buf) as number[]
171
173
  }
172
174
 
175
+ function swap(arr: Uint8Array, n: number, m: number): void {
176
+ const i = arr[n]
177
+ // eslint-disable-next-line no-param-reassign -- we have to swap
178
+ arr[n] = arr[m]
179
+ // eslint-disable-next-line no-param-reassign -- see above
180
+ arr[m] = i
181
+ }
182
+
183
+ /**
184
+ * Interprets arr as an array of 64-bit numbers and swaps byte order in 64 bit chunks.
185
+ * Example of two 64 bit numbers 0000000100000002 => 1000000020000000
186
+ *
187
+ * @param arr A Uint8Array representation of one or more 64 bit numbers
188
+ * @returns Uint8Array An array containing the bytes of 64 bit numbers each with reversed endianness
189
+ */
190
+ function swap64(arr: Uint8Array): Uint8Array {
191
+ const len = arr.length
192
+
193
+ for (let i = 0; i < len; i += 8) {
194
+ swap(arr, i, i + 7)
195
+ swap(arr, i + 1, i + 6)
196
+ swap(arr, i + 2, i + 5)
197
+ swap(arr, i + 3, i + 4)
198
+ }
199
+
200
+ return arr
201
+ }
202
+
173
203
  /**
174
- * Swap the byte order of a 128-bit buffer.
204
+ * Swap the byte order of a 128-bit array.
205
+ * Ex. 0000000100000002 => 2000000010000000
175
206
  *
176
- * @param buf - A 128-bit (16 byte) buffer
177
- * @returns A buffer containing the same data with reversed endianness
207
+ * @param arr - A 128-bit (16 byte) array
208
+ * @returns An array containing the same data with reversed endianness
178
209
  */
179
- function swap128(buf: Buffer): Buffer {
180
- // Interprets buffer as an array of (two, in this case) 64-bit numbers and swaps byte order in-place.
181
- const reversedBytes = buf.swap64()
182
-
183
- // Swap the two 64-bit numbers since our buffer is 128 bits.
184
- return Buffer.concat(
185
- [reversedBytes.slice(8, 16), reversedBytes.slice(0, 8)],
186
- 16,
187
- )
210
+ function swap128(arr: Uint8Array): Uint8Array {
211
+ // Interprets arr as an array of (two, in this case) 64-bit numbers and swaps byte order in 64 bit chunks.
212
+ // Ex. 0000000100000002 => 1000000020000000
213
+ const reversedBytes = swap64(arr)
214
+ // Further swap the two 64-bit numbers since our buffer is 128 bits.
215
+ // Ex. 1000000020000000 => 2000000010000000
216
+ return concat([reversedBytes.slice(8, 16), reversedBytes.slice(0, 8)])
188
217
  }
189
218
 
190
219
  export { rfc1751MnemonicToKey, keyToRFC1751Mnemonic }
@@ -1,20 +1,13 @@
1
+ import { bytesToHex } from '@xrplf/isomorphic/utils'
1
2
  import { BigNumber } from 'bignumber.js'
2
- import { flatMap } from 'lodash'
3
3
  import { decodeAccountID } from 'ripple-address-codec'
4
- import {
5
- decode,
6
- encode,
7
- encodeForSigning,
8
- encodeForSigningClaim,
9
- } from 'ripple-binary-codec'
10
- import { sign as signWithKeypair, verify } from 'ripple-keypairs'
4
+ import { decode, encode, encodeForSigning } from 'ripple-binary-codec'
5
+ import { verify } from 'ripple-keypairs'
11
6
 
12
7
  import { ValidationError } from '../errors'
13
8
  import { Signer } from '../models/common'
14
9
  import { Transaction, validate } from '../models/transactions'
15
10
 
16
- import { Wallet } from '.'
17
-
18
11
  /**
19
12
  * Takes several transactions with Signer fields (in object or blob form) and creates a
20
13
  * single transaction with all Signers that then gets signed and returned.
@@ -62,42 +55,40 @@ function multisign(transactions: Array<Transaction | string>): string {
62
55
  return encode(getTransactionWithAllSigners(decodedTransactions))
63
56
  }
64
57
 
65
- /**
66
- * Creates a signature that can be used to redeem a specific amount of XRP from a payment channel.
67
- *
68
- * @param wallet - The account that will sign for this payment channel.
69
- * @param channelId - An id for the payment channel to redeem XRP from.
70
- * @param amount - The amount in drops to redeem.
71
- * @returns A signature that can be used to redeem a specific amount of XRP from a payment channel.
72
- * @category Utilities
73
- */
74
- function authorizeChannel(
75
- wallet: Wallet,
76
- channelId: string,
77
- amount: string,
78
- ): string {
79
- const signingData = encodeForSigningClaim({
80
- channel: channelId,
81
- amount,
82
- })
83
-
84
- return signWithKeypair(signingData, wallet.privateKey)
85
- }
86
-
87
58
  /**
88
59
  * Verifies that the given transaction has a valid signature based on public-key encryption.
89
60
  *
90
61
  * @param tx - A transaction to verify the signature of. (Can be in object or encoded string format).
62
+ * @param [publicKey] Specific public key to use to verify. If not specified the `SigningPublicKey` of tx will be used.
91
63
  * @returns Returns true if tx has a valid signature, and returns false otherwise.
64
+ * @throws Error when transaction is missing TxnSignature
65
+ * @throws Error when publicKey is not provided and transaction is missing SigningPubKey
92
66
  * @category Utilities
93
67
  */
94
- function verifySignature(tx: Transaction | string): boolean {
68
+ function verifySignature(
69
+ tx: Transaction | string,
70
+ publicKey?: string,
71
+ ): boolean {
95
72
  const decodedTx: Transaction = getDecodedTransaction(tx)
96
- return verify(
97
- encodeForSigning(decodedTx),
98
- decodedTx.TxnSignature,
99
- decodedTx.SigningPubKey,
100
- )
73
+ let key = publicKey
74
+
75
+ // Need a SignedTransaction class where TxnSignature is not optional.
76
+ if (typeof decodedTx.TxnSignature !== 'string' || !decodedTx.TxnSignature) {
77
+ throw new Error('Transaction is missing a signature, TxnSignature')
78
+ }
79
+
80
+ if (!key) {
81
+ // Need a SignedTransaction class where TxnSignature is not optional.
82
+ if (
83
+ typeof decodedTx.SigningPubKey !== 'string' ||
84
+ !decodedTx.SigningPubKey
85
+ ) {
86
+ throw new Error('Transaction is missing a public key, SigningPubKey')
87
+ }
88
+ key = decodedTx.SigningPubKey
89
+ }
90
+
91
+ return verify(encodeForSigning(decodedTx), decodedTx.TxnSignature, key)
101
92
  }
102
93
 
103
94
  /**
@@ -128,10 +119,9 @@ function getTransactionWithAllSigners(
128
119
  transactions: Transaction[],
129
120
  ): Transaction {
130
121
  // Signers must be sorted in the combined transaction - See compareSigners' documentation for more details
131
- const sortedSigners: Signer[] = flatMap(
132
- transactions,
133
- (tx) => tx.Signers ?? [],
134
- ).sort(compareSigners)
122
+ const sortedSigners: Signer[] = transactions
123
+ .flatMap((tx) => tx.Signers ?? [])
124
+ .sort(compareSigners)
135
125
 
136
126
  return { ...transactions[0], Signers: sortedSigners }
137
127
  }
@@ -155,7 +145,7 @@ function compareSigners(left: Signer, right: Signer): number {
155
145
  const NUM_BITS_IN_HEX = 16
156
146
 
157
147
  function addressToBigNumber(address: string): BigNumber {
158
- const hex = Buffer.from(decodeAccountID(address)).toString('hex')
148
+ const hex = bytesToHex(decodeAccountID(address))
159
149
  return new BigNumber(hex, NUM_BITS_IN_HEX)
160
150
  }
161
151
 
@@ -170,4 +160,4 @@ function getDecodedTransaction(txOrBlob: Transaction | string): Transaction {
170
160
  return decode(txOrBlob) as unknown as Transaction
171
161
  }
172
162
 
173
- export { authorizeChannel, verifySignature, multisign }
163
+ export { verifySignature, multisign }
@@ -1,4 +1,4 @@
1
- import { Account } from 'xrpl-secret-numbers'
1
+ import { Account } from '@xrplf/secret-numbers'
2
2
 
3
3
  import ECDSA from '../ECDSA'
4
4
 
@@ -4,9 +4,16 @@ import {
4
4
  TimeoutError,
5
5
  XrplError,
6
6
  } from '../errors'
7
- import { Response } from '../models/methods'
7
+ import type { APIVersion } from '../models'
8
+ import { Response, RequestResponseMap } from '../models/methods'
8
9
  import { BaseRequest, ErrorResponse } from '../models/methods/baseMethod'
9
10
 
11
+ interface PromiseEntry<T> {
12
+ resolve: (value: T | PromiseLike<T>) => void
13
+ reject: (value: Error) => void
14
+ timer: ReturnType<typeof setTimeout>
15
+ }
16
+
10
17
  /**
11
18
  * Manage all the requests made to the websocket, and their async responses
12
19
  * that come in from the WebSocket. Responses come in over the WS connection
@@ -17,13 +24,31 @@ export default class RequestManager {
17
24
  private nextId = 0
18
25
  private readonly promisesAwaitingResponse = new Map<
19
26
  string | number,
20
- {
21
- resolve: (value: Response | PromiseLike<Response>) => void
22
- reject: (value: Error) => void
23
- timer: ReturnType<typeof setTimeout>
24
- }
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Necessary and typed wrapper in addPromise method
28
+ PromiseEntry<any>
25
29
  >()
26
30
 
31
+ /**
32
+ * Adds a promise to the collection of promises awaiting response. Handles typing with generics.
33
+ *
34
+ * @template T The generic type parameter representing the resolved value type.
35
+ * @param newId - The identifier for the new promise.
36
+ * @param timer - The timer associated with the promise.
37
+ * @returns A promise that resolves to the specified generic type.
38
+ */
39
+ public async addPromise<
40
+ R extends BaseRequest,
41
+ T = RequestResponseMap<R, APIVersion>,
42
+ >(newId: string | number, timer: ReturnType<typeof setTimeout>): Promise<T> {
43
+ return new Promise<T>((resolve, reject) => {
44
+ this.promisesAwaitingResponse.set(newId, {
45
+ resolve,
46
+ reject,
47
+ timer,
48
+ })
49
+ })
50
+ }
51
+
27
52
  /**
28
53
  * Successfully resolves a request.
29
54
  *
@@ -31,7 +56,10 @@ export default class RequestManager {
31
56
  * @param response - Response to return.
32
57
  * @throws Error if no existing promise with the given ID.
33
58
  */
34
- public resolve(id: string | number, response: Response): void {
59
+ public resolve(
60
+ id: string | number,
61
+ response: Partial<Response<APIVersion>>,
62
+ ): void {
35
63
  const promise = this.promisesAwaitingResponse.get(id)
36
64
  if (promise == null) {
37
65
  throw new XrplError(`No existing promise with id ${id}`, {
@@ -87,10 +115,10 @@ export default class RequestManager {
87
115
  * @returns Request ID, new request form, and the promise for resolving the request.
88
116
  * @throws XrplError if request with the same ID is already pending.
89
117
  */
90
- public createRequest<T extends BaseRequest>(
91
- request: T,
92
- timeout: number,
93
- ): [string | number, string, Promise<Response>] {
118
+ public createRequest<
119
+ R extends BaseRequest,
120
+ T = RequestResponseMap<R, APIVersion>,
121
+ >(request: R, timeout: number): [string | number, string, Promise<T>] {
94
122
  let newId: string | number
95
123
  if (request.id == null) {
96
124
  newId = this.nextId
@@ -129,11 +157,13 @@ export default class RequestManager {
129
157
  request,
130
158
  )
131
159
  }
132
- const newPromise = new Promise<Response>(
133
- (resolve: (value: Response | PromiseLike<Response>) => void, reject) => {
134
- this.promisesAwaitingResponse.set(newId, { resolve, reject, timer })
135
- },
136
- )
160
+ const newPromise = new Promise<T>((resolve, reject) => {
161
+ this.promisesAwaitingResponse.set(newId, {
162
+ resolve,
163
+ reject,
164
+ timer,
165
+ })
166
+ })
137
167
 
138
168
  return [newId, newRequest, newPromise]
139
169
  }
@@ -145,7 +175,9 @@ export default class RequestManager {
145
175
  * @param response - The response to handle.
146
176
  * @throws ResponseFormatError if the response format is invalid, RippledError if rippled returns an error.
147
177
  */
148
- public handleResponse(response: Partial<Response | ErrorResponse>): void {
178
+ public handleResponse(
179
+ response: Partial<Response<APIVersion> | ErrorResponse>,
180
+ ): void {
149
181
  if (
150
182
  response.id == null ||
151
183
  !(typeof response.id === 'string' || typeof response.id === 'number')
@@ -179,8 +211,7 @@ export default class RequestManager {
179
211
  }
180
212
  // status no longer needed because error is thrown if status is not "success"
181
213
  delete response.status
182
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Must be a valid Response here
183
- this.resolve(response.id, response as unknown as Response)
214
+ this.resolve(response.id, response)
184
215
  }
185
216
 
186
217
  /**
@@ -1,9 +1,9 @@
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 { bytesToHex, hexToString } from '@xrplf/isomorphic/utils'
5
+ import WebSocket, { ClientOptions } from '@xrplf/isomorphic/ws'
6
+ import { EventEmitter } from 'eventemitter3'
7
7
 
8
8
  import {
9
9
  DisconnectedError,
@@ -11,6 +11,7 @@ import {
11
11
  ConnectionError,
12
12
  XrplError,
13
13
  } from '../errors'
14
+ import type { APIVersion, RequestResponseMap } from '../models'
14
15
  import { BaseRequest } from '../models/methods/baseMethod'
15
16
 
16
17
  import ConnectionManager from './ConnectionManager'
@@ -26,17 +27,11 @@ const CONNECTION_TIMEOUT = 5
26
27
  */
27
28
  interface ConnectionOptions {
28
29
  trace?: boolean | ((id: string, message: string) => void)
29
- proxy?: string
30
- proxyAuthorization?: string
30
+ headers?: { [key: string]: string }
31
+ agent?: Agent
31
32
  authorization?: string
32
- trustedCertificates?: string[]
33
- key?: string
34
- passphrase?: string
35
- certificate?: string
36
- // request timeout
37
- timeout: number
38
33
  connectionTimeout: number
39
- headers?: { [key: string]: string }
34
+ timeout: number
40
35
  }
41
36
 
42
37
  /**
@@ -55,52 +50,6 @@ export const INTENTIONAL_DISCONNECT_CODE = 4000
55
50
 
56
51
  type WebsocketState = 0 | 1 | 2 | 3
57
52
 
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
53
  /**
105
54
  * Create a new websocket given your URL and optional proxy/certificate
106
55
  * configuration.
@@ -113,37 +62,20 @@ function createWebSocket(
113
62
  url: string,
114
63
  config: ConnectionOptions,
115
64
  ): WebSocket | null {
116
- const options: WebSocket.ClientOptions = {}
117
- options.agent = getAgent(url, config)
65
+ const options: ClientOptions = {
66
+ agent: config.agent,
67
+ }
118
68
  if (config.headers) {
119
69
  options.headers = config.headers
120
70
  }
121
71
  if (config.authorization != null) {
122
- const base64 = Buffer.from(config.authorization).toString('base64')
123
72
  options.headers = {
124
73
  ...options.headers,
125
- Authorization: `Basic ${base64}`,
74
+ Authorization: `Basic ${btoa(config.authorization)}`,
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,
@@ -336,6 +267,7 @@ export class Connection extends EventEmitter {
336
267
 
337
268
  /**
338
269
  * Disconnect the websocket, then connect again.
270
+ *
339
271
  */
340
272
  public async reconnect(): Promise<void> {
341
273
  /*
@@ -356,17 +288,17 @@ export class Connection extends EventEmitter {
356
288
  * @returns The response from the rippled server.
357
289
  * @throws NotConnectedError if the Connection isn't connected to a server.
358
290
  */
359
- public async request<T extends BaseRequest>(
360
- request: T,
361
- timeout?: number,
362
- ): Promise<unknown> {
291
+ public async request<
292
+ R extends BaseRequest,
293
+ T = RequestResponseMap<R, APIVersion>,
294
+ >(request: R, timeout?: number): Promise<T> {
363
295
  if (!this.shouldBeConnected || this.ws == null) {
364
296
  throw new NotConnectedError(JSON.stringify(request), request)
365
297
  }
366
- const [id, message, responsePromise] = this.requestManager.createRequest(
367
- request,
368
- timeout ?? this.config.timeout,
369
- )
298
+ const [id, message, responsePromise] = this.requestManager.createRequest<
299
+ R,
300
+ T
301
+ >(request, timeout ?? this.config.timeout)
370
302
  this.trace('send', message)
371
303
  websocketSendAsync(this.ws, message).catch((error) => {
372
304
  this.requestManager.reject(id, error)
@@ -451,7 +383,7 @@ export class Connection extends EventEmitter {
451
383
  this.emit('error', 'websocket', error.message, error),
452
384
  )
453
385
  // Handle a closed connection: reconnect if it was unexpected
454
- this.ws.once('close', (code?: number, reason?: Buffer) => {
386
+ this.ws.once('close', (code?: number, reason?: Uint8Array) => {
455
387
  if (this.ws == null) {
456
388
  throw new XrplError('onceClose: ws is null')
457
389
  }
@@ -459,7 +391,9 @@ export class Connection extends EventEmitter {
459
391
  this.clearHeartbeatInterval()
460
392
  this.requestManager.rejectAll(
461
393
  new DisconnectedError(
462
- `websocket was closed, ${new TextDecoder('utf-8').decode(reason)}`,
394
+ `websocket was closed, ${
395
+ reason ? hexToString(bytesToHex(reason)) : ''
396
+ }`,
463
397
  ),
464
398
  )
465
399
  this.ws.removeAllListeners()
@@ -535,6 +469,7 @@ export class Connection extends EventEmitter {
535
469
 
536
470
  /**
537
471
  * Starts a heartbeat to check the connection with the server.
472
+ *
538
473
  */
539
474
  private startHeartbeatInterval(): void {
540
475
  this.clearHeartbeatInterval()