xrpl 3.0.0-beta.0 → 3.0.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 (223) hide show
  1. package/build/xrpl-latest-min.js +1 -1
  2. package/build/xrpl-latest-min.js.map +1 -1
  3. package/build/xrpl-latest.js +707 -3074
  4. package/build/xrpl-latest.js.map +1 -1
  5. package/dist/npm/Wallet/defaultFaucets.d.ts +1 -3
  6. package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
  7. package/dist/npm/Wallet/defaultFaucets.js +0 -7
  8. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  9. package/dist/npm/Wallet/fundWallet.js +4 -4
  10. package/dist/npm/Wallet/fundWallet.js.map +1 -1
  11. package/dist/npm/Wallet/rfc1751.d.ts +1 -2
  12. package/dist/npm/Wallet/rfc1751.d.ts.map +1 -1
  13. package/dist/npm/Wallet/rfc1751.js +21 -5
  14. package/dist/npm/Wallet/rfc1751.js.map +1 -1
  15. package/dist/npm/Wallet/signer.d.ts.map +1 -1
  16. package/dist/npm/Wallet/signer.js +2 -1
  17. package/dist/npm/Wallet/signer.js.map +1 -1
  18. package/dist/npm/client/connection.d.ts.map +1 -1
  19. package/dist/npm/client/connection.js +3 -3
  20. package/dist/npm/client/connection.js.map +1 -1
  21. package/dist/npm/client/index.d.ts +6 -6
  22. package/dist/npm/client/index.d.ts.map +1 -1
  23. package/dist/npm/client/index.js +3 -3
  24. package/dist/npm/client/index.js.map +1 -1
  25. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  26. package/dist/npm/client/partialPayment.js.map +1 -1
  27. package/dist/npm/models/ledger/AMM.d.ts +1 -1
  28. package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
  29. package/dist/npm/models/ledger/Bridge.d.ts +1 -1
  30. package/dist/npm/models/ledger/Bridge.d.ts.map +1 -1
  31. package/dist/npm/models/ledger/DID.d.ts +11 -0
  32. package/dist/npm/models/ledger/DID.d.ts.map +1 -0
  33. package/dist/npm/models/ledger/DID.js +3 -0
  34. package/dist/npm/models/ledger/DID.js.map +1 -0
  35. package/dist/npm/models/ledger/Ledger.d.ts +2 -2
  36. package/dist/npm/models/ledger/Ledger.d.ts.map +1 -1
  37. package/dist/npm/models/ledger/LedgerEntry.d.ts +1 -1
  38. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  39. package/dist/npm/models/ledger/index.d.ts +2 -1
  40. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  41. package/dist/npm/models/ledger/index.js.map +1 -1
  42. package/dist/npm/models/methods/index.d.ts +5 -4
  43. package/dist/npm/models/methods/index.d.ts.map +1 -1
  44. package/dist/npm/models/methods/ledgerEntry.d.ts +1 -0
  45. package/dist/npm/models/methods/ledgerEntry.d.ts.map +1 -1
  46. package/dist/npm/models/methods/serverDefinitions.d.ts +32 -0
  47. package/dist/npm/models/methods/serverDefinitions.d.ts.map +1 -0
  48. package/dist/npm/models/methods/serverDefinitions.js +3 -0
  49. package/dist/npm/models/methods/serverDefinitions.js.map +1 -0
  50. package/dist/npm/models/methods/submit.d.ts +2 -2
  51. package/dist/npm/models/methods/submit.d.ts.map +1 -1
  52. package/dist/npm/models/methods/tx.d.ts +4 -3
  53. package/dist/npm/models/methods/tx.d.ts.map +1 -1
  54. package/dist/npm/models/transactions/DIDDelete.d.ts +6 -0
  55. package/dist/npm/models/transactions/DIDDelete.d.ts.map +1 -0
  56. package/dist/npm/models/transactions/DIDDelete.js +9 -0
  57. package/dist/npm/models/transactions/DIDDelete.js.map +1 -0
  58. package/dist/npm/models/transactions/DIDSet.d.ts +9 -0
  59. package/dist/npm/models/transactions/DIDSet.d.ts.map +1 -0
  60. package/dist/npm/models/transactions/DIDSet.js +18 -0
  61. package/dist/npm/models/transactions/DIDSet.js.map +1 -0
  62. package/dist/npm/models/transactions/index.d.ts +3 -1
  63. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  64. package/dist/npm/models/transactions/index.js.map +1 -1
  65. package/dist/npm/models/transactions/transaction.d.ts +4 -1
  66. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  67. package/dist/npm/models/transactions/transaction.js +20 -12
  68. package/dist/npm/models/transactions/transaction.js.map +1 -1
  69. package/dist/npm/snippets/src/bridgeTransfer.js +4 -5
  70. package/dist/npm/snippets/src/bridgeTransfer.js.map +1 -1
  71. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  72. package/dist/npm/src/Wallet/defaultFaucets.d.ts +1 -3
  73. package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
  74. package/dist/npm/src/Wallet/defaultFaucets.js +0 -7
  75. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  76. package/dist/npm/src/Wallet/fundWallet.js +4 -4
  77. package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
  78. package/dist/npm/src/Wallet/rfc1751.d.ts +1 -2
  79. package/dist/npm/src/Wallet/rfc1751.d.ts.map +1 -1
  80. package/dist/npm/src/Wallet/rfc1751.js +21 -5
  81. package/dist/npm/src/Wallet/rfc1751.js.map +1 -1
  82. package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
  83. package/dist/npm/src/Wallet/signer.js +2 -1
  84. package/dist/npm/src/Wallet/signer.js.map +1 -1
  85. package/dist/npm/src/client/connection.d.ts.map +1 -1
  86. package/dist/npm/src/client/connection.js +3 -3
  87. package/dist/npm/src/client/connection.js.map +1 -1
  88. package/dist/npm/src/client/index.d.ts +6 -6
  89. package/dist/npm/src/client/index.d.ts.map +1 -1
  90. package/dist/npm/src/client/index.js +3 -3
  91. package/dist/npm/src/client/index.js.map +1 -1
  92. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  93. package/dist/npm/src/client/partialPayment.js.map +1 -1
  94. package/dist/npm/src/models/ledger/AMM.d.ts +1 -1
  95. package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
  96. package/dist/npm/src/models/ledger/Bridge.d.ts +1 -1
  97. package/dist/npm/src/models/ledger/Bridge.d.ts.map +1 -1
  98. package/dist/npm/src/models/ledger/DID.d.ts +11 -0
  99. package/dist/npm/src/models/ledger/DID.d.ts.map +1 -0
  100. package/dist/npm/src/models/ledger/DID.js +3 -0
  101. package/dist/npm/src/models/ledger/DID.js.map +1 -0
  102. package/dist/npm/src/models/ledger/Ledger.d.ts +2 -2
  103. package/dist/npm/src/models/ledger/Ledger.d.ts.map +1 -1
  104. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +1 -1
  105. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  106. package/dist/npm/src/models/ledger/index.d.ts +2 -1
  107. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  108. package/dist/npm/src/models/ledger/index.js.map +1 -1
  109. package/dist/npm/src/models/methods/index.d.ts +5 -4
  110. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  111. package/dist/npm/src/models/methods/ledgerEntry.d.ts +1 -0
  112. package/dist/npm/src/models/methods/ledgerEntry.d.ts.map +1 -1
  113. package/dist/npm/src/models/methods/serverDefinitions.d.ts +32 -0
  114. package/dist/npm/src/models/methods/serverDefinitions.d.ts.map +1 -0
  115. package/dist/npm/src/models/methods/serverDefinitions.js +3 -0
  116. package/dist/npm/src/models/methods/serverDefinitions.js.map +1 -0
  117. package/dist/npm/src/models/methods/submit.d.ts +2 -2
  118. package/dist/npm/src/models/methods/submit.d.ts.map +1 -1
  119. package/dist/npm/src/models/methods/tx.d.ts +4 -3
  120. package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
  121. package/dist/npm/src/models/transactions/DIDDelete.d.ts +6 -0
  122. package/dist/npm/src/models/transactions/DIDDelete.d.ts.map +1 -0
  123. package/dist/npm/src/models/transactions/DIDDelete.js +9 -0
  124. package/dist/npm/src/models/transactions/DIDDelete.js.map +1 -0
  125. package/dist/npm/src/models/transactions/DIDSet.d.ts +9 -0
  126. package/dist/npm/src/models/transactions/DIDSet.d.ts.map +1 -0
  127. package/dist/npm/src/models/transactions/DIDSet.js +18 -0
  128. package/dist/npm/src/models/transactions/DIDSet.js.map +1 -0
  129. package/dist/npm/src/models/transactions/index.d.ts +3 -1
  130. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  131. package/dist/npm/src/models/transactions/index.js.map +1 -1
  132. package/dist/npm/src/models/transactions/transaction.d.ts +4 -1
  133. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  134. package/dist/npm/src/models/transactions/transaction.js +20 -12
  135. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  136. package/dist/npm/src/sugar/submit.d.ts +5 -6
  137. package/dist/npm/src/sugar/submit.d.ts.map +1 -1
  138. package/dist/npm/src/sugar/submit.js.map +1 -1
  139. package/dist/npm/src/utils/collections.d.ts +1 -3
  140. package/dist/npm/src/utils/collections.d.ts.map +1 -1
  141. package/dist/npm/src/utils/collections.js +7 -5
  142. package/dist/npm/src/utils/collections.js.map +1 -1
  143. package/dist/npm/src/utils/hashes/hashLedger.d.ts +1 -2
  144. package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
  145. package/dist/npm/src/utils/hashes/hashLedger.js +7 -7
  146. package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
  147. package/dist/npm/src/utils/hashes/index.d.ts.map +1 -1
  148. package/dist/npm/src/utils/hashes/index.js +3 -2
  149. package/dist/npm/src/utils/hashes/index.js.map +1 -1
  150. package/dist/npm/src/utils/index.d.ts.map +1 -1
  151. package/dist/npm/src/utils/index.js +6 -29
  152. package/dist/npm/src/utils/index.js.map +1 -1
  153. package/dist/npm/src/utils/parseNFTokenID.d.ts.map +1 -1
  154. package/dist/npm/src/utils/parseNFTokenID.js +12 -2
  155. package/dist/npm/src/utils/parseNFTokenID.js.map +1 -1
  156. package/dist/npm/src/utils/stringConversion.d.ts +1 -2
  157. package/dist/npm/src/utils/stringConversion.d.ts.map +1 -1
  158. package/dist/npm/src/utils/stringConversion.js +3 -2
  159. package/dist/npm/src/utils/stringConversion.js.map +1 -1
  160. package/dist/npm/src/utils/xrpConversion.d.ts +1 -1
  161. package/dist/npm/src/utils/xrpConversion.js +1 -1
  162. package/dist/npm/src/utils/xrpConversion.js.map +1 -1
  163. package/dist/npm/sugar/submit.d.ts +5 -6
  164. package/dist/npm/sugar/submit.d.ts.map +1 -1
  165. package/dist/npm/sugar/submit.js.map +1 -1
  166. package/dist/npm/utils/collections.d.ts +1 -3
  167. package/dist/npm/utils/collections.d.ts.map +1 -1
  168. package/dist/npm/utils/collections.js +7 -5
  169. package/dist/npm/utils/collections.js.map +1 -1
  170. package/dist/npm/utils/hashes/hashLedger.d.ts +1 -2
  171. package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
  172. package/dist/npm/utils/hashes/hashLedger.js +7 -7
  173. package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
  174. package/dist/npm/utils/hashes/index.d.ts.map +1 -1
  175. package/dist/npm/utils/hashes/index.js +3 -2
  176. package/dist/npm/utils/hashes/index.js.map +1 -1
  177. package/dist/npm/utils/index.d.ts.map +1 -1
  178. package/dist/npm/utils/index.js +6 -29
  179. package/dist/npm/utils/index.js.map +1 -1
  180. package/dist/npm/utils/parseNFTokenID.d.ts.map +1 -1
  181. package/dist/npm/utils/parseNFTokenID.js +12 -2
  182. package/dist/npm/utils/parseNFTokenID.js.map +1 -1
  183. package/dist/npm/utils/stringConversion.d.ts +1 -2
  184. package/dist/npm/utils/stringConversion.d.ts.map +1 -1
  185. package/dist/npm/utils/stringConversion.js +3 -2
  186. package/dist/npm/utils/stringConversion.js.map +1 -1
  187. package/dist/npm/utils/xrpConversion.d.ts +1 -1
  188. package/dist/npm/utils/xrpConversion.js +1 -1
  189. package/dist/npm/utils/xrpConversion.js.map +1 -1
  190. package/package.json +7 -7
  191. package/src/Wallet/defaultFaucets.ts +0 -8
  192. package/src/Wallet/fundWallet.ts +7 -7
  193. package/src/Wallet/rfc1751.ts +45 -16
  194. package/src/Wallet/signer.ts +2 -1
  195. package/src/client/connection.ts +6 -4
  196. package/src/client/index.ts +13 -11
  197. package/src/client/partialPayment.ts +2 -6
  198. package/src/models/ledger/AMM.ts +1 -1
  199. package/src/models/ledger/Bridge.ts +7 -7
  200. package/src/models/ledger/DID.ts +22 -0
  201. package/src/models/ledger/Ledger.ts +2 -8
  202. package/src/models/ledger/LedgerEntry.ts +1 -0
  203. package/src/models/ledger/index.ts +2 -0
  204. package/src/models/methods/index.ts +10 -0
  205. package/src/models/methods/ledgerEntry.ts +6 -0
  206. package/src/models/methods/nftInfo.ts +1 -1
  207. package/src/models/methods/serverDefinitions.ts +61 -0
  208. package/src/models/methods/submit.ts +2 -2
  209. package/src/models/methods/subscribe.ts +1 -1
  210. package/src/models/methods/tx.ts +14 -6
  211. package/src/models/transactions/DIDDelete.ts +20 -0
  212. package/src/models/transactions/DIDSet.ts +49 -0
  213. package/src/models/transactions/XChainAccountCreateCommit.ts +1 -1
  214. package/src/models/transactions/index.ts +3 -0
  215. package/src/models/transactions/transaction.ts +47 -21
  216. package/src/sugar/submit.ts +14 -8
  217. package/src/utils/collections.ts +16 -12
  218. package/src/utils/hashes/hashLedger.ts +7 -9
  219. package/src/utils/hashes/index.ts +3 -2
  220. package/src/utils/index.ts +12 -6
  221. package/src/utils/parseNFTokenID.ts +13 -2
  222. package/src/utils/stringConversion.ts +11 -6
  223. package/src/utils/xrpConversion.ts +2 -2
@@ -14,7 +14,13 @@ import {
14
14
  isValidXAddress,
15
15
  xAddressToClassicAddress,
16
16
  } from 'ripple-address-codec'
17
- import * as rbc from 'ripple-binary-codec'
17
+ import {
18
+ encode as rbcEncode,
19
+ decode as rbcDecode,
20
+ encodeForMultisigning as rbcEncodeForMultisigning,
21
+ encodeForSigning as rbcEncodeForSigning,
22
+ encodeForSigningClaim as rbcEncodeForSigningClaim,
23
+ } from 'ripple-binary-codec'
18
24
  import { verify as verifyKeypairSignature } from 'ripple-keypairs'
19
25
 
20
26
  import { LedgerEntry } from '../models/ledger'
@@ -83,7 +89,7 @@ function isValidSecret(secret: string): boolean {
83
89
  * @returns A hex string representing the encoded object.
84
90
  */
85
91
  function encode(object: Transaction | LedgerEntry): string {
86
- return rbc.encode(object)
92
+ return rbcEncode(object)
87
93
  }
88
94
 
89
95
  /**
@@ -93,7 +99,7 @@ function encode(object: Transaction | LedgerEntry): string {
93
99
  * @returns A hex string representing the encoded object.
94
100
  */
95
101
  function encodeForSigning(object: Transaction): string {
96
- return rbc.encodeForSigning(object)
102
+ return rbcEncodeForSigning(object)
97
103
  }
98
104
 
99
105
  /**
@@ -103,7 +109,7 @@ function encodeForSigning(object: Transaction): string {
103
109
  * @returns A hex string representing the encoded object.
104
110
  */
105
111
  function encodeForSigningClaim(object: PaymentChannelClaim): string {
106
- return rbc.encodeForSigningClaim(object)
112
+ return rbcEncodeForSigningClaim(object)
107
113
  }
108
114
 
109
115
  /**
@@ -114,7 +120,7 @@ function encodeForSigningClaim(object: PaymentChannelClaim): string {
114
120
  * @returns A hex string representing the encoded object.
115
121
  */
116
122
  function encodeForMultiSigning(object: Transaction, signer: string): string {
117
- return rbc.encodeForMultisigning(object, signer)
123
+ return rbcEncodeForMultisigning(object, signer)
118
124
  }
119
125
 
120
126
  /**
@@ -124,7 +130,7 @@ function encodeForMultiSigning(object: Transaction, signer: string): string {
124
130
  * @returns The hex string decoded according to XRPL serialization format.
125
131
  */
126
132
  function decode(hex: string): Record<string, unknown> {
127
- return rbc.decode(hex)
133
+ return rbcDecode(hex)
128
134
  }
129
135
 
130
136
  /**
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-magic-numbers -- Doing hex string parsing. */
2
+ import { hexToBytes } from '@xrplf/isomorphic/utils'
2
3
  import BigNumber from 'bignumber.js'
3
4
  import { encodeAccountID } from 'ripple-address-codec'
4
5
 
@@ -24,7 +25,17 @@ import { XrplError } from '../errors'
24
25
  */
25
26
  function unscrambleTaxon(taxon: number, tokenSeq: number): number {
26
27
  /* eslint-disable no-bitwise -- XOR is part of the encode/decode scheme. */
27
- return (taxon ^ (384160001 * tokenSeq + 2459)) % 4294967296
28
+ const seed = 384160001
29
+ const increment = 2459
30
+ const max = 4294967296
31
+
32
+ const scramble = new BigNumber(seed)
33
+ .multipliedBy(tokenSeq)
34
+ .modulo(max)
35
+ .plus(increment)
36
+ .modulo(max)
37
+ .toNumber()
38
+ return (taxon ^ scramble) >>> 0
28
39
  /* eslint-enable no-bitwise */
29
40
  }
30
41
 
@@ -75,7 +86,7 @@ export default function parseNFTokenID(nftokenID: string): {
75
86
  NFTokenID: nftokenID,
76
87
  Flags: new BigNumber(nftokenID.substring(0, 4), 16).toNumber(),
77
88
  TransferFee: new BigNumber(nftokenID.substring(4, 8), 16).toNumber(),
78
- Issuer: encodeAccountID(Buffer.from(nftokenID.substring(8, 48), 'hex')),
89
+ Issuer: encodeAccountID(hexToBytes(nftokenID.substring(8, 48))),
79
90
  Taxon: unscrambleTaxon(scrambledTaxon, sequence),
80
91
  Sequence: sequence,
81
92
  }
@@ -1,12 +1,17 @@
1
+ import { stringToHex, hexToString } from '@xrplf/isomorphic/utils'
2
+
1
3
  /**
2
4
  * Converts a string to its hex equivalent. Useful for Memos.
3
5
  *
4
6
  * @param string - The string to convert to Hex.
5
7
  * @returns The Hex equivalent of the string.
8
+ *
9
+ * @deprecated use `@xrplf/isomorphic/utils`'s `stringToHex`
10
+ *
6
11
  * @category Utilities
7
12
  */
8
13
  function convertStringToHex(string: string): string {
9
- return Buffer.from(string, 'utf8').toString('hex').toUpperCase()
14
+ return stringToHex(string)
10
15
  }
11
16
 
12
17
  /**
@@ -15,13 +20,13 @@ function convertStringToHex(string: string): string {
15
20
  * @param hex - The hex to convert to a string.
16
21
  * @param encoding - The encoding to use. Defaults to 'utf8' (UTF-8). 'ascii' is also allowed.
17
22
  * @returns The converted string.
23
+ *
24
+ * @deprecated use `@xrplf/isomorphic/utils`'s `hexToString`
25
+ *
18
26
  * @category Utilities
19
27
  */
20
- function convertHexToString(
21
- hex: string,
22
- encoding: BufferEncoding = 'utf8',
23
- ): string {
24
- return Buffer.from(hex, 'hex').toString(encoding)
28
+ function convertHexToString(hex: string, encoding = 'utf8'): string {
29
+ return hexToString(hex, encoding)
25
30
  }
26
31
 
27
32
  export { convertHexToString, convertStringToHex }
@@ -15,7 +15,7 @@ const SANITY_CHECK = /^-?[0-9.]+$/u
15
15
  * @throws When drops amount is invalid.
16
16
  * @category Utilities
17
17
  */
18
- export function dropsToXrp(dropsToConvert: BigNumber.Value): string {
18
+ export function dropsToXrp(dropsToConvert: BigNumber.Value): number {
19
19
  /*
20
20
  * Converting to BigNumber and then back to string should remove any
21
21
  * decimal point followed by zeros, e.g. '1.00'.
@@ -50,7 +50,7 @@ export function dropsToXrp(dropsToConvert: BigNumber.Value): string {
50
50
  )
51
51
  }
52
52
 
53
- return new BigNumber(drops).dividedBy(DROPS_PER_XRP).toString(BASE_TEN)
53
+ return new BigNumber(drops).dividedBy(DROPS_PER_XRP).toNumber()
54
54
  }
55
55
 
56
56
  /**