@transia/ripple-binary-codec 1.4.6-alpha.8 → 2.5.1

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 (361) hide show
  1. package/dist/binary.d.ts +30 -16
  2. package/dist/binary.js +36 -16
  3. package/dist/binary.js.map +1 -1
  4. package/dist/enums/bytes.d.ts +1 -2
  5. package/dist/enums/bytes.js +3 -2
  6. package/dist/enums/bytes.js.map +1 -1
  7. package/dist/enums/constants.d.ts +1 -0
  8. package/dist/enums/constants.js +6 -5
  9. package/dist/enums/constants.js.map +1 -1
  10. package/dist/enums/definitions.json +1650 -964
  11. package/dist/enums/field.d.ts +1 -2
  12. package/dist/enums/field.js +1 -2
  13. package/dist/enums/field.js.map +1 -1
  14. package/dist/enums/index.d.ts +1 -2
  15. package/dist/enums/index.js +5 -27
  16. package/dist/enums/index.js.map +1 -1
  17. package/dist/enums/src/enums/definitions.json +1652 -966
  18. package/dist/enums/xrpl-definitions-base.d.ts +5 -3
  19. package/dist/enums/xrpl-definitions-base.js +26 -6
  20. package/dist/enums/xrpl-definitions-base.js.map +1 -1
  21. package/dist/enums/xrpl-definitions.d.ts +2 -1
  22. package/dist/enums/xrpl-definitions.js +2 -1
  23. package/dist/enums/xrpl-definitions.js.map +1 -1
  24. package/dist/hash-prefixes.d.ts +1 -2
  25. package/dist/hash-prefixes.js +8 -6
  26. package/dist/hash-prefixes.js.map +1 -1
  27. package/dist/hashes.d.ts +6 -7
  28. package/dist/hashes.js +6 -7
  29. package/dist/hashes.js.map +1 -1
  30. package/dist/index.d.ts +16 -11
  31. package/dist/index.js +53 -58
  32. package/dist/index.js.map +1 -1
  33. package/dist/ledger-hashes.d.ts +1 -2
  34. package/dist/ledger-hashes.js +11 -30
  35. package/dist/ledger-hashes.js.map +1 -1
  36. package/dist/quality.d.ts +3 -4
  37. package/dist/quality.js +10 -8
  38. package/dist/quality.js.map +1 -1
  39. package/dist/serdes/binary-parser.d.ts +2 -3
  40. package/dist/serdes/binary-parser.js +16 -32
  41. package/dist/serdes/binary-parser.js.map +1 -1
  42. package/dist/serdes/binary-serializer.d.ts +7 -8
  43. package/dist/serdes/binary-serializer.js +14 -37
  44. package/dist/serdes/binary-serializer.js.map +1 -1
  45. package/dist/shamap.d.ts +4 -5
  46. package/dist/shamap.js +5 -5
  47. package/dist/shamap.js.map +1 -1
  48. package/dist/src/binary.d.ts +106 -0
  49. package/dist/src/binary.js +154 -0
  50. package/dist/src/binary.js.map +1 -0
  51. package/dist/src/coretypes.d.ts +9 -0
  52. package/dist/src/coretypes.js +48 -0
  53. package/dist/src/coretypes.js.map +1 -0
  54. package/dist/src/enums/bytes.d.ts +25 -0
  55. package/dist/src/enums/bytes.js +65 -0
  56. package/dist/src/enums/bytes.js.map +1 -0
  57. package/dist/src/enums/constants.d.ts +5 -0
  58. package/dist/src/enums/constants.js +9 -0
  59. package/dist/src/enums/constants.js.map +1 -0
  60. package/dist/src/enums/definitions.json +3404 -0
  61. package/dist/src/enums/field.d.ts +28 -0
  62. package/dist/src/enums/field.js +58 -0
  63. package/dist/src/enums/field.js.map +1 -0
  64. package/dist/src/enums/index.d.ts +12 -0
  65. package/dist/src/enums/index.js +31 -0
  66. package/dist/src/enums/index.js.map +1 -0
  67. package/dist/src/enums/utils-renumber.d.ts +101 -0
  68. package/dist/src/enums/utils-renumber.js +127 -0
  69. package/dist/src/enums/utils-renumber.js.map +1 -0
  70. package/dist/src/enums/xrpl-definitions-base.d.ts +47 -0
  71. package/dist/src/enums/xrpl-definitions-base.js +83 -0
  72. package/dist/src/enums/xrpl-definitions-base.js.map +1 -0
  73. package/dist/src/enums/xrpl-definitions.d.ts +22 -0
  74. package/dist/src/enums/xrpl-definitions.js +30 -0
  75. package/dist/src/enums/xrpl-definitions.js.map +1 -0
  76. package/dist/src/hash-prefixes.d.ts +5 -0
  77. package/dist/src/hash-prefixes.js +43 -0
  78. package/dist/src/hash-prefixes.js.map +1 -0
  79. package/dist/src/hashes.d.ts +50 -0
  80. package/dist/src/hashes.js +76 -0
  81. package/dist/src/hashes.js.map +1 -0
  82. package/dist/src/index.d.ts +69 -0
  83. package/dist/src/index.js +134 -0
  84. package/dist/src/index.js.map +1 -0
  85. package/dist/src/ledger-hashes.d.ts +48 -0
  86. package/dist/src/ledger-hashes.js +141 -0
  87. package/dist/src/ledger-hashes.js.map +1 -0
  88. package/dist/src/quality.d.ts +21 -0
  89. package/dist/src/quality.js +42 -0
  90. package/dist/src/quality.js.map +1 -0
  91. package/dist/src/serdes/binary-parser.d.ts +100 -0
  92. package/dist/src/serdes/binary-parser.js +194 -0
  93. package/dist/src/serdes/binary-parser.js.map +1 -0
  94. package/dist/src/serdes/binary-serializer.d.ts +81 -0
  95. package/dist/src/serdes/binary-serializer.js +149 -0
  96. package/dist/src/serdes/binary-serializer.js.map +1 -0
  97. package/dist/src/shamap.d.ts +102 -0
  98. package/dist/src/shamap.js +172 -0
  99. package/dist/src/shamap.js.map +1 -0
  100. package/dist/src/types/account-id.d.ts +37 -0
  101. package/dist/src/types/account-id.js +73 -0
  102. package/dist/src/types/account-id.js.map +1 -0
  103. package/dist/src/types/amount.d.ts +92 -0
  104. package/dist/src/types/amount.js +292 -0
  105. package/dist/src/types/amount.js.map +1 -0
  106. package/dist/src/types/blob.d.ts +25 -0
  107. package/dist/src/types/blob.js +46 -0
  108. package/dist/src/types/blob.js.map +1 -0
  109. package/dist/src/types/currency.d.ts +30 -0
  110. package/dist/src/types/currency.js +131 -0
  111. package/dist/src/types/currency.js.map +1 -0
  112. package/dist/src/types/data.d.ts +104 -0
  113. package/dist/src/types/data.js +387 -0
  114. package/dist/src/types/data.js.map +1 -0
  115. package/dist/src/types/dataType.d.ts +94 -0
  116. package/dist/src/types/dataType.js +145 -0
  117. package/dist/src/types/dataType.js.map +1 -0
  118. package/dist/src/types/hash-128.d.ts +18 -0
  119. package/dist/src/types/hash-128.js +36 -0
  120. package/dist/src/types/hash-128.js.map +1 -0
  121. package/dist/src/types/hash-160.d.ts +12 -0
  122. package/dist/src/types/hash-160.js +23 -0
  123. package/dist/src/types/hash-160.js.map +1 -0
  124. package/dist/src/types/hash-192.d.ts +12 -0
  125. package/dist/src/types/hash-192.js +23 -0
  126. package/dist/src/types/hash-192.js.map +1 -0
  127. package/dist/src/types/hash-256.d.ts +12 -0
  128. package/dist/src/types/hash-256.js +20 -0
  129. package/dist/src/types/hash-256.js.map +1 -0
  130. package/dist/src/types/hash.d.ts +40 -0
  131. package/dist/src/types/hash.js +76 -0
  132. package/dist/src/types/hash.js.map +1 -0
  133. package/dist/src/types/index.d.ts +21 -0
  134. package/dist/src/types/index.js +72 -0
  135. package/dist/src/types/index.js.map +1 -0
  136. package/dist/src/types/issue.d.ts +49 -0
  137. package/dist/src/types/issue.js +107 -0
  138. package/dist/src/types/issue.js.map +1 -0
  139. package/dist/src/types/json.d.ts +169 -0
  140. package/dist/src/types/json.js +529 -0
  141. package/dist/src/types/json.js.map +1 -0
  142. package/dist/src/types/path-set.d.ts +37 -0
  143. package/dist/src/types/path-set.js +236 -0
  144. package/dist/src/types/path-set.js.map +1 -0
  145. package/dist/src/types/serialized-type.d.ts +117 -0
  146. package/dist/src/types/serialized-type.js +242 -0
  147. package/dist/src/types/serialized-type.js.map +1 -0
  148. package/dist/src/types/st-array.d.ts +32 -0
  149. package/dist/src/types/st-array.js +89 -0
  150. package/dist/src/types/st-array.js.map +1 -0
  151. package/dist/src/types/st-number.d.ts +55 -0
  152. package/dist/src/types/st-number.js +212 -0
  153. package/dist/src/types/st-number.js.map +1 -0
  154. package/dist/src/types/st-object.d.ts +33 -0
  155. package/dist/src/types/st-object.js +176 -0
  156. package/dist/src/types/st-object.js.map +1 -0
  157. package/dist/src/types/uint-16.d.ts +26 -0
  158. package/dist/src/types/uint-16.js +49 -0
  159. package/dist/src/types/uint-16.js.map +1 -0
  160. package/dist/src/types/uint-32.d.ts +26 -0
  161. package/dist/src/types/uint-32.js +54 -0
  162. package/dist/src/types/uint-32.js.map +1 -0
  163. package/dist/src/types/uint-64.d.ts +40 -0
  164. package/dist/src/types/uint-64.js +112 -0
  165. package/dist/src/types/uint-64.js.map +1 -0
  166. package/dist/src/types/uint-8.d.ts +26 -0
  167. package/dist/src/types/uint-8.js +50 -0
  168. package/dist/src/types/uint-8.js.map +1 -0
  169. package/dist/src/types/uint.d.ts +29 -0
  170. package/dist/src/types/uint.js +47 -0
  171. package/dist/src/types/uint.js.map +1 -0
  172. package/dist/src/types/vector-256.d.ts +31 -0
  173. package/dist/src/types/vector-256.js +76 -0
  174. package/dist/src/types/vector-256.js.map +1 -0
  175. package/dist/src/types/xchain-bridge.d.ts +45 -0
  176. package/dist/src/types/xchain-bridge.js +105 -0
  177. package/dist/src/types/xchain-bridge.js.map +1 -0
  178. package/dist/src/utils.d.ts +79 -0
  179. package/dist/src/utils.js +181 -0
  180. package/dist/src/utils.js.map +1 -0
  181. package/dist/tsconfig.tsbuildinfo +1 -0
  182. package/dist/types/account-id.d.ts +3 -2
  183. package/dist/types/account-id.js +8 -6
  184. package/dist/types/account-id.js.map +1 -1
  185. package/dist/types/amount.d.ts +33 -9
  186. package/dist/types/amount.js +128 -43
  187. package/dist/types/amount.js.map +1 -1
  188. package/dist/types/blob.d.ts +3 -3
  189. package/dist/types/blob.js +8 -2
  190. package/dist/types/blob.js.map +1 -1
  191. package/dist/types/currency.d.ts +3 -2
  192. package/dist/types/currency.js +17 -13
  193. package/dist/types/currency.js.map +1 -1
  194. package/dist/types/data.d.ts +104 -0
  195. package/dist/types/data.js +387 -0
  196. package/dist/types/data.js.map +1 -0
  197. package/dist/types/dataType.d.ts +94 -0
  198. package/dist/types/dataType.js +145 -0
  199. package/dist/types/dataType.js.map +1 -0
  200. package/dist/types/hash-128.d.ts +3 -2
  201. package/dist/types/hash-128.js +7 -3
  202. package/dist/types/hash-128.js.map +1 -1
  203. package/dist/types/hash-160.d.ts +3 -2
  204. package/dist/types/hash-160.js +5 -2
  205. package/dist/types/hash-160.js.map +1 -1
  206. package/dist/types/hash-192.d.ts +12 -0
  207. package/dist/types/hash-192.js +23 -0
  208. package/dist/types/hash-192.js.map +1 -0
  209. package/dist/types/hash-256.d.ts +3 -2
  210. package/dist/types/hash-256.js +5 -2
  211. package/dist/types/hash-256.js.map +1 -1
  212. package/dist/types/hash.d.ts +2 -3
  213. package/dist/types/hash.js +8 -4
  214. package/dist/types/hash.js.map +1 -1
  215. package/dist/types/index.d.ts +4 -1
  216. package/dist/types/index.js +17 -2
  217. package/dist/types/index.js.map +1 -1
  218. package/dist/types/issue.d.ts +49 -0
  219. package/dist/types/issue.js +107 -0
  220. package/dist/types/issue.js.map +1 -0
  221. package/dist/types/json.d.ts +169 -0
  222. package/dist/types/json.js +529 -0
  223. package/dist/types/json.js.map +1 -0
  224. package/dist/types/path-set.d.ts +2 -1
  225. package/dist/types/path-set.js +15 -12
  226. package/dist/types/path-set.js.map +1 -1
  227. package/dist/types/serialized-type.d.ts +70 -16
  228. package/dist/types/serialized-type.js +153 -8
  229. package/dist/types/serialized-type.js.map +1 -1
  230. package/dist/types/st-array.d.ts +7 -3
  231. package/dist/types/st-array.js +20 -11
  232. package/dist/types/st-array.js.map +1 -1
  233. package/dist/types/st-number.d.ts +55 -0
  234. package/dist/types/st-number.js +212 -0
  235. package/dist/types/st-number.js.map +1 -0
  236. package/dist/types/st-object.d.ts +2 -1
  237. package/dist/types/st-object.js +35 -8
  238. package/dist/types/st-object.js.map +1 -1
  239. package/dist/types/uint-16.d.ts +3 -2
  240. package/dist/types/uint-16.js +10 -5
  241. package/dist/types/uint-16.js.map +1 -1
  242. package/dist/types/uint-32.d.ts +3 -2
  243. package/dist/types/uint-32.js +11 -6
  244. package/dist/types/uint-32.js.map +1 -1
  245. package/dist/types/uint-64.d.ts +8 -7
  246. package/dist/types/uint-64.js +49 -24
  247. package/dist/types/uint-64.js.map +1 -1
  248. package/dist/types/uint-8.d.ts +3 -2
  249. package/dist/types/uint-8.js +11 -5
  250. package/dist/types/uint-8.js.map +1 -1
  251. package/dist/types/uint.d.ts +5 -6
  252. package/dist/types/uint.js +5 -0
  253. package/dist/types/uint.js.map +1 -1
  254. package/dist/types/vector-256.d.ts +3 -3
  255. package/dist/types/vector-256.js +5 -4
  256. package/dist/types/vector-256.js.map +1 -1
  257. package/dist/types/xchain-bridge.d.ts +45 -0
  258. package/dist/types/xchain-bridge.js +105 -0
  259. package/dist/types/xchain-bridge.js.map +1 -0
  260. package/dist/utils.d.ts +79 -0
  261. package/dist/utils.js +181 -0
  262. package/dist/utils.js.map +1 -0
  263. package/package.json +21 -17
  264. package/src/README.md +5 -0
  265. package/src/binary.ts +235 -0
  266. package/src/coretypes.ts +31 -0
  267. package/src/enums/README.md +144 -0
  268. package/src/enums/bytes.ts +80 -0
  269. package/src/enums/constants.ts +5 -0
  270. package/src/enums/definitions.json +3409 -0
  271. package/src/enums/field.ts +84 -0
  272. package/src/enums/index.ts +34 -0
  273. package/src/enums/utils-renumber.ts +134 -0
  274. package/src/enums/xrpl-definitions-base.ts +150 -0
  275. package/src/enums/xrpl-definitions.ts +33 -0
  276. package/src/hash-prefixes.ts +42 -0
  277. package/src/hashes.ts +75 -0
  278. package/src/index.ts +166 -0
  279. package/src/ledger-hashes.ts +191 -0
  280. package/src/quality.ts +38 -0
  281. package/src/serdes/binary-parser.ts +228 -0
  282. package/src/serdes/binary-serializer.ts +166 -0
  283. package/src/shamap.ts +189 -0
  284. package/src/types/account-id.ts +91 -0
  285. package/src/types/amount.ts +366 -0
  286. package/src/types/blob.ts +50 -0
  287. package/src/types/currency.ts +145 -0
  288. package/src/types/data.ts +496 -0
  289. package/src/types/dataType.ts +178 -0
  290. package/src/types/hash-128.ts +38 -0
  291. package/src/types/hash-160.ts +24 -0
  292. package/src/types/hash-192.ts +24 -0
  293. package/src/types/hash-256.ts +20 -0
  294. package/src/types/hash.ts +86 -0
  295. package/src/types/index.ts +74 -0
  296. package/src/types/issue.ts +140 -0
  297. package/src/types/json.ts +641 -0
  298. package/src/types/path-set.ts +294 -0
  299. package/src/types/serialized-type.ts +271 -0
  300. package/src/types/st-array.ts +117 -0
  301. package/src/types/st-number.ts +238 -0
  302. package/src/types/st-object.ts +219 -0
  303. package/src/types/uint-16.ts +58 -0
  304. package/src/types/uint-32.ts +64 -0
  305. package/src/types/uint-64.ts +141 -0
  306. package/src/types/uint-8.ts +57 -0
  307. package/src/types/uint.ts +60 -0
  308. package/src/types/vector-256.ts +83 -0
  309. package/src/types/xchain-bridge.ts +132 -0
  310. package/src/utils.ts +220 -0
  311. package/test/amount.test.js +0 -43
  312. package/test/binary-json.test.js +0 -45
  313. package/test/binary-parser.test.js +0 -396
  314. package/test/binary-serializer.test.js +0 -307
  315. package/test/definitions.test.js +0 -100
  316. package/test/fixtures/account-tx-transactions.db +0 -0
  317. package/test/fixtures/codec-fixtures.json +0 -4466
  318. package/test/fixtures/data-driven-tests.json +0 -2919
  319. package/test/fixtures/delivermin-tx-binary.json +0 -1
  320. package/test/fixtures/delivermin-tx.json +0 -98
  321. package/test/fixtures/deposit-preauth-tx-binary.json +0 -1
  322. package/test/fixtures/deposit-preauth-tx-meta-binary.json +0 -1
  323. package/test/fixtures/deposit-preauth-tx.json +0 -58
  324. package/test/fixtures/escrow-cancel-binary.json +0 -1
  325. package/test/fixtures/escrow-cancel-tx.json +0 -6
  326. package/test/fixtures/escrow-create-binary.json +0 -1
  327. package/test/fixtures/escrow-create-tx.json +0 -10
  328. package/test/fixtures/escrow-finish-binary.json +0 -1
  329. package/test/fixtures/escrow-finish-meta-binary.json +0 -1
  330. package/test/fixtures/escrow-finish-tx.json +0 -95
  331. package/test/fixtures/ledger-full-38129.json +0 -1
  332. package/test/fixtures/ledger-full-40000.json +0 -1
  333. package/test/fixtures/negative-unl.json +0 -12
  334. package/test/fixtures/nf-token.json +0 -547
  335. package/test/fixtures/payment-channel-claim-binary.json +0 -1
  336. package/test/fixtures/payment-channel-claim-tx.json +0 -8
  337. package/test/fixtures/payment-channel-create-binary.json +0 -1
  338. package/test/fixtures/payment-channel-create-tx.json +0 -11
  339. package/test/fixtures/payment-channel-fund-binary.json +0 -1
  340. package/test/fixtures/payment-channel-fund-tx.json +0 -7
  341. package/test/fixtures/signerlistset-tx-binary.json +0 -1
  342. package/test/fixtures/signerlistset-tx-meta-binary.json +0 -1
  343. package/test/fixtures/signerlistset-tx.json +0 -94
  344. package/test/fixtures/ticket-create-binary.json +0 -1
  345. package/test/fixtures/ticket-create-tx.json +0 -7
  346. package/test/fixtures/unl-report-binary.json +0 -1
  347. package/test/fixtures/unl-report-meta-binary.json +0 -1
  348. package/test/fixtures/unl-report.json +0 -89
  349. package/test/fixtures/x-codec-fixtures.json +0 -188
  350. package/test/hash.test.js +0 -135
  351. package/test/ledger.test.js +0 -29
  352. package/test/lower-case-hex.test.js +0 -46
  353. package/test/pseudo-transaction.test.js +0 -38
  354. package/test/quality.test.js +0 -15
  355. package/test/shamap.test.js +0 -89
  356. package/test/signing-data-encoding.test.js +0 -213
  357. package/test/tx-encode-decode.test.js +0 -119
  358. package/test/types.test.js +0 -34
  359. package/test/uint.test.js +0 -148
  360. package/test/utils.js +0 -30
  361. package/test/x-address.test.js +0 -181
@@ -1 +1 @@
1
- {"version":3,"file":"path-set.js","sourceRoot":"","sources":["../../src/types/path-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-set.js","sourceRoot":"","sources":["../../src/types/path-set.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,52 @@
1
1
  import { BytesList } from '../serdes/binary-serializer';
2
2
  import { BinaryParser } from '../serdes/binary-parser';
3
- import bigInt = require('big-integer');
4
- import { Buffer } from 'buffer/';
3
+ import { XrplDefinitionsBase } from '../enums';
4
+ /**
5
+ * Enum for SerializedTypeID values used in XRPL
6
+ * These match the C++ implementation's STI_ constants
7
+ */
8
+ export declare enum SerializedTypeID {
9
+ STI_NOTPRESENT = 0,
10
+ STI_UINT16 = 1,
11
+ STI_UINT32 = 2,
12
+ STI_UINT64 = 3,
13
+ STI_UINT128 = 4,
14
+ STI_UINT256 = 5,
15
+ STI_AMOUNT = 6,
16
+ STI_VL = 7,
17
+ STI_ACCOUNT = 8,
18
+ STI_NUMBER = 9,
19
+ STI_INT32 = 10,
20
+ STI_INT64 = 11,
21
+ STI_OBJECT = 14,
22
+ STI_ARRAY = 15,
23
+ STI_UINT8 = 16,
24
+ STI_UINT160 = 17,
25
+ STI_PATHSET = 18,
26
+ STI_VECTOR256 = 19,
27
+ STI_UINT96 = 20,
28
+ STI_UINT192 = 21,
29
+ STI_UINT384 = 22,
30
+ STI_UINT512 = 23,
31
+ STI_ISSUE = 24,
32
+ STI_XCHAIN_BRIDGE = 25,
33
+ STI_CURRENCY = 26,
34
+ STI_DATA = 27,
35
+ STI_DATATYPE = 28,
36
+ STI_JSON = 29
37
+ }
38
+ /**
39
+ * Map of type strings to SerializedTypeID values
40
+ */
41
+ export declare const TYPE_STRING_TO_ID: Record<string, SerializedTypeID>;
42
+ /**
43
+ * Map of type strings to SerializedTypeID values
44
+ */
45
+ export declare const TYPE_NUMBER_TO_ID: Record<number, SerializedTypeID>;
46
+ /**
47
+ * Map of SerializedTypeID values to type strings
48
+ */
49
+ export declare const TYPE_ID_TO_STRING: Record<SerializedTypeID, string>;
5
50
  type JSON = string | number | boolean | null | undefined | JSON[] | JsonObject;
6
51
  type JsonObject = {
7
52
  [key: string]: JSON;
@@ -10,10 +55,10 @@ type JsonObject = {
10
55
  * The base class for all binary-codec types
11
56
  */
12
57
  declare class SerializedType {
13
- protected readonly bytes: Buffer;
14
- constructor(bytes: Buffer);
58
+ protected readonly bytes: Uint8Array;
59
+ constructor(bytes?: Uint8Array);
15
60
  static fromParser(parser: BinaryParser, hint?: number): SerializedType;
16
- static from(value: SerializedType | JSON | bigInt.BigInteger): SerializedType;
61
+ static from(value: SerializedType | JSON | bigint): SerializedType;
17
62
  /**
18
63
  * Write the bytes representation of a SerializedType to a BytesList
19
64
  *
@@ -29,35 +74,44 @@ declare class SerializedType {
29
74
  /**
30
75
  * Get the bytes representation of a SerializedType
31
76
  *
32
- * @returns A buffer of the bytes
77
+ * @returns A Uint8Array of the bytes
33
78
  */
34
- toBytes(): Buffer;
79
+ toBytes(): Uint8Array;
35
80
  /**
36
81
  * Return the JSON representation of a SerializedType
37
82
  *
83
+ * @param _definitions rippled definitions used to parse the values of transaction types and such.
84
+ * Unused in default, but used in STObject, STArray
85
+ * Can be customized for sidechains and amendments.
38
86
  * @returns any type, if not overloaded returns hexString representation of bytes
39
87
  */
40
- toJSON(): JSON;
88
+ toJSON(_definitions?: XrplDefinitionsBase, _fieldName?: string): JSON;
41
89
  /**
42
90
  * @returns hexString representation of this.bytes
43
91
  */
44
92
  toString(): string;
93
+ getSType(): SerializedTypeID;
45
94
  }
46
95
  /**
47
- * Base class for SerializedTypes that are comparable
96
+ * Base class for SerializedTypes that are comparable.
97
+ *
98
+ * @template T - What types you want to allow comparisons between. You must specify all types. Primarily used to allow
99
+ * comparisons between built-in types (like `string`) and SerializedType subclasses (like `Hash`).
100
+ *
101
+ * Ex. `class Hash extends Comparable<Hash | string>`
48
102
  */
49
- declare class Comparable extends SerializedType {
50
- lt(other: Comparable): boolean;
51
- eq(other: Comparable): boolean;
52
- gt(other: Comparable): boolean;
53
- gte(other: Comparable): boolean;
54
- lte(other: Comparable): boolean;
103
+ declare class Comparable<T extends Object> extends SerializedType {
104
+ lt(other: T): boolean;
105
+ eq(other: T): boolean;
106
+ gt(other: T): boolean;
107
+ gte(other: T): boolean;
108
+ lte(other: T): boolean;
55
109
  /**
56
110
  * Overload this method to define how two Comparable SerializedTypes are compared
57
111
  *
58
112
  * @param other The comparable object to compare this to
59
113
  * @returns A number denoting the relationship of this and other
60
114
  */
61
- compareTo(other: Comparable): number;
115
+ compareTo(other: T): number;
62
116
  }
63
117
  export { SerializedType, Comparable, JSON, JsonObject };
@@ -1,15 +1,149 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Comparable = exports.SerializedType = void 0;
3
+ exports.Comparable = exports.SerializedType = exports.TYPE_ID_TO_STRING = exports.TYPE_NUMBER_TO_ID = exports.TYPE_STRING_TO_ID = exports.SerializedTypeID = void 0;
4
4
  const binary_serializer_1 = require("../serdes/binary-serializer");
5
- const buffer_1 = require("buffer/");
5
+ const utils_1 = require("@transia/isomorphic/utils");
6
+ /**
7
+ * Enum for SerializedTypeID values used in XRPL
8
+ * These match the C++ implementation's STI_ constants
9
+ */
10
+ var SerializedTypeID;
11
+ (function (SerializedTypeID) {
12
+ SerializedTypeID[SerializedTypeID["STI_NOTPRESENT"] = 0] = "STI_NOTPRESENT";
13
+ SerializedTypeID[SerializedTypeID["STI_UINT16"] = 1] = "STI_UINT16";
14
+ SerializedTypeID[SerializedTypeID["STI_UINT32"] = 2] = "STI_UINT32";
15
+ SerializedTypeID[SerializedTypeID["STI_UINT64"] = 3] = "STI_UINT64";
16
+ SerializedTypeID[SerializedTypeID["STI_UINT128"] = 4] = "STI_UINT128";
17
+ SerializedTypeID[SerializedTypeID["STI_UINT256"] = 5] = "STI_UINT256";
18
+ SerializedTypeID[SerializedTypeID["STI_AMOUNT"] = 6] = "STI_AMOUNT";
19
+ SerializedTypeID[SerializedTypeID["STI_VL"] = 7] = "STI_VL";
20
+ SerializedTypeID[SerializedTypeID["STI_ACCOUNT"] = 8] = "STI_ACCOUNT";
21
+ SerializedTypeID[SerializedTypeID["STI_NUMBER"] = 9] = "STI_NUMBER";
22
+ SerializedTypeID[SerializedTypeID["STI_INT32"] = 10] = "STI_INT32";
23
+ SerializedTypeID[SerializedTypeID["STI_INT64"] = 11] = "STI_INT64";
24
+ SerializedTypeID[SerializedTypeID["STI_OBJECT"] = 14] = "STI_OBJECT";
25
+ SerializedTypeID[SerializedTypeID["STI_ARRAY"] = 15] = "STI_ARRAY";
26
+ SerializedTypeID[SerializedTypeID["STI_UINT8"] = 16] = "STI_UINT8";
27
+ SerializedTypeID[SerializedTypeID["STI_UINT160"] = 17] = "STI_UINT160";
28
+ SerializedTypeID[SerializedTypeID["STI_PATHSET"] = 18] = "STI_PATHSET";
29
+ SerializedTypeID[SerializedTypeID["STI_VECTOR256"] = 19] = "STI_VECTOR256";
30
+ SerializedTypeID[SerializedTypeID["STI_UINT96"] = 20] = "STI_UINT96";
31
+ SerializedTypeID[SerializedTypeID["STI_UINT192"] = 21] = "STI_UINT192";
32
+ SerializedTypeID[SerializedTypeID["STI_UINT384"] = 22] = "STI_UINT384";
33
+ SerializedTypeID[SerializedTypeID["STI_UINT512"] = 23] = "STI_UINT512";
34
+ SerializedTypeID[SerializedTypeID["STI_ISSUE"] = 24] = "STI_ISSUE";
35
+ SerializedTypeID[SerializedTypeID["STI_XCHAIN_BRIDGE"] = 25] = "STI_XCHAIN_BRIDGE";
36
+ SerializedTypeID[SerializedTypeID["STI_CURRENCY"] = 26] = "STI_CURRENCY";
37
+ SerializedTypeID[SerializedTypeID["STI_DATA"] = 27] = "STI_DATA";
38
+ SerializedTypeID[SerializedTypeID["STI_DATATYPE"] = 28] = "STI_DATATYPE";
39
+ SerializedTypeID[SerializedTypeID["STI_JSON"] = 29] = "STI_JSON";
40
+ })(SerializedTypeID || (exports.SerializedTypeID = SerializedTypeID = {}));
41
+ /**
42
+ * Map of type strings to SerializedTypeID values
43
+ */
44
+ exports.TYPE_STRING_TO_ID = {
45
+ NOTPRESENT: SerializedTypeID.STI_NOTPRESENT,
46
+ UINT16: SerializedTypeID.STI_UINT16,
47
+ UINT32: SerializedTypeID.STI_UINT32,
48
+ UINT64: SerializedTypeID.STI_UINT64,
49
+ UINT128: SerializedTypeID.STI_UINT128,
50
+ UINT256: SerializedTypeID.STI_UINT256,
51
+ AMOUNT: SerializedTypeID.STI_AMOUNT,
52
+ VL: SerializedTypeID.STI_VL,
53
+ ACCOUNT: SerializedTypeID.STI_ACCOUNT,
54
+ NUMBER: SerializedTypeID.STI_NUMBER,
55
+ INT32: SerializedTypeID.STI_INT32,
56
+ INT64: SerializedTypeID.STI_INT64,
57
+ OBJECT: SerializedTypeID.STI_OBJECT,
58
+ ARRAY: SerializedTypeID.STI_ARRAY,
59
+ UINT8: SerializedTypeID.STI_UINT8,
60
+ UINT160: SerializedTypeID.STI_UINT160,
61
+ PATHSET: SerializedTypeID.STI_PATHSET,
62
+ VECTOR256: SerializedTypeID.STI_VECTOR256,
63
+ UINT96: SerializedTypeID.STI_UINT96,
64
+ UINT192: SerializedTypeID.STI_UINT192,
65
+ UINT384: SerializedTypeID.STI_UINT384,
66
+ UINT512: SerializedTypeID.STI_UINT512,
67
+ ISSUE: SerializedTypeID.STI_ISSUE,
68
+ XCHAIN_BRIDGE: SerializedTypeID.STI_XCHAIN_BRIDGE,
69
+ CURRENCY: SerializedTypeID.STI_CURRENCY,
70
+ DATA: SerializedTypeID.STI_DATA,
71
+ DATATYPE: SerializedTypeID.STI_DATATYPE,
72
+ JSON: SerializedTypeID.STI_JSON,
73
+ };
74
+ /**
75
+ * Map of type strings to SerializedTypeID values
76
+ */
77
+ exports.TYPE_NUMBER_TO_ID = {
78
+ 0: SerializedTypeID.STI_NOTPRESENT,
79
+ 1: SerializedTypeID.STI_UINT16,
80
+ 2: SerializedTypeID.STI_UINT32,
81
+ 3: SerializedTypeID.STI_UINT64,
82
+ 4: SerializedTypeID.STI_UINT128,
83
+ 5: SerializedTypeID.STI_UINT256,
84
+ 6: SerializedTypeID.STI_AMOUNT,
85
+ 7: SerializedTypeID.STI_VL,
86
+ 8: SerializedTypeID.STI_ACCOUNT,
87
+ 9: SerializedTypeID.STI_NUMBER,
88
+ 10: SerializedTypeID.STI_INT32,
89
+ 11: SerializedTypeID.STI_INT64,
90
+ 14: SerializedTypeID.STI_OBJECT,
91
+ 15: SerializedTypeID.STI_ARRAY,
92
+ 16: SerializedTypeID.STI_UINT8,
93
+ 17: SerializedTypeID.STI_UINT160,
94
+ 18: SerializedTypeID.STI_PATHSET,
95
+ 19: SerializedTypeID.STI_VECTOR256,
96
+ 20: SerializedTypeID.STI_UINT96,
97
+ 21: SerializedTypeID.STI_UINT192,
98
+ 22: SerializedTypeID.STI_UINT384,
99
+ 23: SerializedTypeID.STI_UINT512,
100
+ 24: SerializedTypeID.STI_ISSUE,
101
+ 25: SerializedTypeID.STI_XCHAIN_BRIDGE,
102
+ 26: SerializedTypeID.STI_CURRENCY,
103
+ 27: SerializedTypeID.STI_DATA,
104
+ 28: SerializedTypeID.STI_DATATYPE,
105
+ 29: SerializedTypeID.STI_JSON,
106
+ };
107
+ /**
108
+ * Map of SerializedTypeID values to type strings
109
+ */
110
+ exports.TYPE_ID_TO_STRING = {
111
+ [SerializedTypeID.STI_NOTPRESENT]: '',
112
+ [SerializedTypeID.STI_UINT16]: 'UINT16',
113
+ [SerializedTypeID.STI_UINT32]: 'UINT32',
114
+ [SerializedTypeID.STI_UINT64]: 'UINT64',
115
+ [SerializedTypeID.STI_UINT128]: 'UINT128',
116
+ [SerializedTypeID.STI_UINT256]: 'UINT256',
117
+ [SerializedTypeID.STI_AMOUNT]: 'AMOUNT',
118
+ [SerializedTypeID.STI_VL]: 'VL',
119
+ [SerializedTypeID.STI_ACCOUNT]: 'ACCOUNT',
120
+ [SerializedTypeID.STI_NUMBER]: 'NUMBER',
121
+ [SerializedTypeID.STI_INT32]: 'INT32',
122
+ [SerializedTypeID.STI_INT64]: 'INT64',
123
+ [SerializedTypeID.STI_OBJECT]: 'OBJECT',
124
+ [SerializedTypeID.STI_ARRAY]: 'ARRAY',
125
+ [SerializedTypeID.STI_UINT8]: 'UINT8',
126
+ [SerializedTypeID.STI_UINT160]: 'UINT160',
127
+ [SerializedTypeID.STI_PATHSET]: 'PATHSET',
128
+ [SerializedTypeID.STI_VECTOR256]: 'VECTOR256',
129
+ [SerializedTypeID.STI_UINT96]: 'UINT96',
130
+ [SerializedTypeID.STI_UINT192]: 'UINT192',
131
+ [SerializedTypeID.STI_UINT384]: 'UINT384',
132
+ [SerializedTypeID.STI_UINT512]: 'UINT512',
133
+ [SerializedTypeID.STI_ISSUE]: 'ISSUE',
134
+ [SerializedTypeID.STI_XCHAIN_BRIDGE]: 'XCHAIN_BRIDGE',
135
+ [SerializedTypeID.STI_CURRENCY]: 'CURRENCY',
136
+ [SerializedTypeID.STI_DATA]: 'DATA',
137
+ [SerializedTypeID.STI_DATATYPE]: 'DATATYPE',
138
+ [SerializedTypeID.STI_JSON]: 'JSON',
139
+ };
6
140
  /**
7
141
  * The base class for all binary-codec types
8
142
  */
9
143
  class SerializedType {
10
144
  constructor(bytes) {
11
- this.bytes = buffer_1.Buffer.alloc(0);
12
- this.bytes = bytes !== null && bytes !== void 0 ? bytes : buffer_1.Buffer.alloc(0);
145
+ this.bytes = new Uint8Array(0);
146
+ this.bytes = bytes !== null && bytes !== void 0 ? bytes : new Uint8Array(0);
13
147
  }
14
148
  static fromParser(parser, hint) {
15
149
  throw new Error('fromParser not implemented');
@@ -33,12 +167,12 @@ class SerializedType {
33
167
  * @returns hex String of this.bytes
34
168
  */
35
169
  toHex() {
36
- return this.toBytes().toString('hex').toUpperCase();
170
+ return (0, utils_1.bytesToHex)(this.toBytes());
37
171
  }
38
172
  /**
39
173
  * Get the bytes representation of a SerializedType
40
174
  *
41
- * @returns A buffer of the bytes
175
+ * @returns A Uint8Array of the bytes
42
176
  */
43
177
  toBytes() {
44
178
  if (this.bytes) {
@@ -51,9 +185,12 @@ class SerializedType {
51
185
  /**
52
186
  * Return the JSON representation of a SerializedType
53
187
  *
188
+ * @param _definitions rippled definitions used to parse the values of transaction types and such.
189
+ * Unused in default, but used in STObject, STArray
190
+ * Can be customized for sidechains and amendments.
54
191
  * @returns any type, if not overloaded returns hexString representation of bytes
55
192
  */
56
- toJSON() {
193
+ toJSON(_definitions, _fieldName) {
57
194
  return this.toHex();
58
195
  }
59
196
  /**
@@ -62,10 +199,18 @@ class SerializedType {
62
199
  toString() {
63
200
  return this.toHex();
64
201
  }
202
+ getSType() {
203
+ return this.getSType();
204
+ }
65
205
  }
66
206
  exports.SerializedType = SerializedType;
67
207
  /**
68
- * Base class for SerializedTypes that are comparable
208
+ * Base class for SerializedTypes that are comparable.
209
+ *
210
+ * @template T - What types you want to allow comparisons between. You must specify all types. Primarily used to allow
211
+ * comparisons between built-in types (like `string`) and SerializedType subclasses (like `Hash`).
212
+ *
213
+ * Ex. `class Hash extends Comparable<Hash | string>`
69
214
  */
70
215
  class Comparable extends SerializedType {
71
216
  lt(other) {
@@ -1 +1 @@
1
- {"version":3,"file":"serialized-type.js","sourceRoot":"","sources":["../../src/types/serialized-type.ts"],"names":[],"mappings":";;;AAAA,mEAAuD;AAGvD,oCAAgC;AAMhC;;GAEG;AACH,MAAM,cAAc;IAGlB,YAAY,KAAa;QAFN,UAAK,GAAW,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAGhD,IAAI,CAAC,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,eAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAoB,EAAE,IAAa;QACnD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,IAAI,CACT,KAAgD;QAEhD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,IAAe;QACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACrD,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,OAAO,IAAI,CAAC,KAAK,CAAA;SAClB;QACD,MAAM,KAAK,GAAG,IAAI,6BAAS,EAAE,CAAA;QAC7B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACvB,OAAO,KAAK,CAAC,OAAO,EAAE,CAAA;IACxB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;CACF;AAqCQ,wCAAc;AAnCvB;;GAEG;AACH,MAAM,UAAW,SAAQ,cAAc;IACrC,EAAE,CAAC,KAAiB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,EAAE,CAAC,KAAiB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,EAAE,CAAC,KAAiB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,GAAG,CAAC,KAAiB;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACnC,CAAC;IAED,GAAG,CAAC,KAAiB;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAiB;QACzB,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,QAAQ,EAAE,QAAQ,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC9E,CAAC;CACF;AAEwB,gCAAU"}
1
+ {"version":3,"file":"serialized-type.js","sourceRoot":"","sources":["../../src/types/serialized-type.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { SerializedType, JsonObject } from './serialized-type';
1
+ import { XrplDefinitionsBase } from '../enums';
2
+ import { SerializedType, JsonObject, SerializedTypeID } from './serialized-type';
2
3
  import { BinaryParser } from '../serdes/binary-parser';
3
4
  /**
4
5
  * Class for serializing and deserializing Arrays of Objects
@@ -15,14 +16,17 @@ declare class STArray extends SerializedType {
15
16
  * Construct an STArray from an Array of JSON Objects
16
17
  *
17
18
  * @param value STArray or Array of Objects to parse into an STArray
19
+ * @param definitions optional, types and values to use to encode/decode a transaction
18
20
  * @returns An STArray object
19
21
  */
20
- static from<T extends STArray | Array<JsonObject>>(value: T): STArray;
22
+ static from<T extends STArray | Array<JsonObject>>(value: T, definitions?: XrplDefinitionsBase): STArray;
21
23
  /**
22
24
  * Return the JSON representation of this.bytes
23
25
  *
26
+ * @param definitions optional, types and values to use to encode/decode a transaction
24
27
  * @returns An Array of JSON objects
25
28
  */
26
- toJSON(): Array<JsonObject>;
29
+ toJSON(definitions?: XrplDefinitionsBase): Array<JsonObject>;
30
+ getSType(): SerializedTypeID;
27
31
  }
28
32
  export { STArray };
@@ -1,18 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.STArray = void 0;
4
+ const enums_1 = require("../enums");
4
5
  const serialized_type_1 = require("./serialized-type");
5
6
  const st_object_1 = require("./st-object");
6
7
  const binary_parser_1 = require("../serdes/binary-parser");
7
- const buffer_1 = require("buffer/");
8
- const ARRAY_END_MARKER = buffer_1.Buffer.from([0xf1]);
8
+ const utils_1 = require("@transia/isomorphic/utils");
9
+ const ARRAY_END_MARKER = Uint8Array.from([0xf1]);
9
10
  const ARRAY_END_MARKER_NAME = 'ArrayEndMarker';
10
- const OBJECT_END_MARKER = buffer_1.Buffer.from([0xe1]);
11
+ const OBJECT_END_MARKER = Uint8Array.from([0xe1]);
11
12
  /**
12
13
  * TypeGuard for Array<JsonObject>
13
14
  */
14
15
  function isObjects(args) {
15
- return (Array.isArray(args) && (args.length === 0 || typeof args[0] === 'object'));
16
+ return (Array.isArray(args) &&
17
+ args.every((arg) => typeof arg === 'object' &&
18
+ Object.keys(arg).length === 1 &&
19
+ typeof Object.values(arg)[0] === 'object'));
16
20
  }
17
21
  /**
18
22
  * Class for serializing and deserializing Arrays of Objects
@@ -34,47 +38,52 @@ class STArray extends serialized_type_1.SerializedType {
34
38
  bytes.push(field.header, parser.readFieldValue(field).toBytes(), OBJECT_END_MARKER);
35
39
  }
36
40
  bytes.push(ARRAY_END_MARKER);
37
- return new STArray(buffer_1.Buffer.concat(bytes));
41
+ return new STArray((0, utils_1.concat)(bytes));
38
42
  }
39
43
  /**
40
44
  * Construct an STArray from an Array of JSON Objects
41
45
  *
42
46
  * @param value STArray or Array of Objects to parse into an STArray
47
+ * @param definitions optional, types and values to use to encode/decode a transaction
43
48
  * @returns An STArray object
44
49
  */
45
- static from(value) {
50
+ static from(value, definitions = enums_1.DEFAULT_DEFINITIONS) {
46
51
  if (value instanceof STArray) {
47
52
  return value;
48
53
  }
49
54
  if (isObjects(value)) {
50
55
  const bytes = [];
51
56
  value.forEach((obj) => {
52
- bytes.push(st_object_1.STObject.from(obj).toBytes());
57
+ bytes.push(st_object_1.STObject.from(obj, undefined, definitions).toBytes());
53
58
  });
54
59
  bytes.push(ARRAY_END_MARKER);
55
- return new STArray(buffer_1.Buffer.concat(bytes));
60
+ return new STArray((0, utils_1.concat)(bytes));
56
61
  }
57
62
  throw new Error('Cannot construct STArray from value given');
58
63
  }
59
64
  /**
60
65
  * Return the JSON representation of this.bytes
61
66
  *
67
+ * @param definitions optional, types and values to use to encode/decode a transaction
62
68
  * @returns An Array of JSON objects
63
69
  */
64
- toJSON() {
70
+ toJSON(definitions = enums_1.DEFAULT_DEFINITIONS) {
65
71
  const result = [];
66
- const arrayParser = new binary_parser_1.BinaryParser(this.toString());
72
+ const arrayParser = new binary_parser_1.BinaryParser(this.toString(), definitions);
67
73
  while (!arrayParser.end()) {
68
74
  const field = arrayParser.readField();
69
75
  if (field.name === ARRAY_END_MARKER_NAME) {
70
76
  break;
71
77
  }
72
78
  const outer = {};
73
- outer[field.name] = st_object_1.STObject.fromParser(arrayParser).toJSON();
79
+ outer[field.name] = st_object_1.STObject.fromParser(arrayParser).toJSON(definitions);
74
80
  result.push(outer);
75
81
  }
76
82
  return result;
77
83
  }
84
+ getSType() {
85
+ return serialized_type_1.SerializedTypeID.STI_ARRAY;
86
+ }
78
87
  }
79
88
  exports.STArray = STArray;
80
89
  //# sourceMappingURL=st-array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"st-array.js","sourceRoot":"","sources":["../../src/types/st-array.ts"],"names":[],"mappings":";;;AAAA,uDAA8D;AAC9D,2CAAsC;AACtC,2DAAsD;AACtD,oCAAgC;AAEhC,MAAM,gBAAgB,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAC5C,MAAM,qBAAqB,GAAG,gBAAgB,CAAA;AAE9C,MAAM,iBAAiB,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAE7C;;GAEG;AACH,SAAS,SAAS,CAAC,IAAI;IACrB,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAC1E,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,OAAQ,SAAQ,gCAAc;IAClC;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,MAAM,KAAK,GAAkB,EAAE,CAAA;QAE/B,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YAChC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE;gBACxC,MAAK;aACN;YAED,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,EACZ,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EACtC,iBAAiB,CAClB,CAAA;SACF;QAED,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAC5B,OAAO,IAAI,OAAO,CAAC,eAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAwC,KAAQ;QACzD,IAAI,KAAK,YAAY,OAAO,EAAE;YAC5B,OAAO,KAAK,CAAA;SACb;QAED,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YACpB,MAAM,KAAK,GAAkB,EAAE,CAAA;YAC/B,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpB,KAAK,CAAC,IAAI,CAAC,oBAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YAC1C,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC5B,OAAO,IAAI,OAAO,CAAC,eAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;SACzC;QAED,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,MAAM,MAAM,GAAsB,EAAE,CAAA;QAEpC,MAAM,WAAW,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAErD,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,CAAA;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE;gBACxC,MAAK;aACN;YAED,MAAM,KAAK,GAAG,EAAE,CAAA;YAChB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAA;YAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACnB;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAEQ,0BAAO"}
1
+ {"version":3,"file":"st-array.js","sourceRoot":"","sources":["../../src/types/st-array.ts"],"names":[],"mappings":";;;AAAA,oCAAmE;AACnE,uDAAgF;AAChF,2CAAsC;AACtC,2DAAsD;AACtD,qDAAkD;AAElD,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAChD,MAAM,qBAAqB,GAAG,gBAAgB,CAAA;AAE9C,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAEjD;;GAEG;AACH,SAAS,SAAS,CAAC,IAAI;IACrB,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,KAAK,CACR,CAAC,GAAG,EAAE,EAAE,CACN,OAAO,GAAG,KAAK,QAAQ;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;YAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAC5C,CACF,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,OAAQ,SAAQ,gCAAc;IAClC;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,MAAM,KAAK,GAAsB,EAAE,CAAA;QAEnC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YAChC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE;gBACxC,MAAK;aACN;YAED,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,EACZ,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EACtC,iBAAiB,CAClB,CAAA;SACF;QAED,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAC5B,OAAO,IAAI,OAAO,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CACT,KAAQ,EACR,cAAmC,2BAAmB;QAEtD,IAAI,KAAK,YAAY,OAAO,EAAE;YAC5B,OAAO,KAAK,CAAA;SACb;QAED,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YACpB,MAAM,KAAK,GAAsB,EAAE,CAAA;YACnC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpB,KAAK,CAAC,IAAI,CAAC,oBAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YAClE,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC5B,OAAO,IAAI,OAAO,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAA;SAClC;QAED,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,CAAC;IAED;;;;;OAKG;IACH,MAAM,CACJ,cAAmC,2BAAmB;QAEtD,MAAM,MAAM,GAAsB,EAAE,CAAA;QAEpC,MAAM,WAAW,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,CAAA;QAElE,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,CAAA;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE;gBACxC,MAAK;aACN;YAED,MAAM,KAAK,GAAG,EAAE,CAAA;YAChB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YACxE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACnB;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,QAAQ;QACN,OAAO,kCAAgB,CAAC,SAAS,CAAA;IACnC,CAAC;CACF;AAEQ,0BAAO"}
@@ -0,0 +1,55 @@
1
+ import { BinaryParser } from '../serdes/binary-parser';
2
+ import { SerializedType, SerializedTypeID } from './serialized-type';
3
+ /**
4
+ * STNumber: Encodes XRPL's "Number" type.
5
+ *
6
+ * - Always encoded as 12 bytes: 8-byte signed mantissa, 4-byte signed exponent, both big-endian.
7
+ * - Can only be constructed from a valid number string or another STNumber instance.
8
+ *
9
+ * Usage:
10
+ * STNumber.from("1.2345e5")
11
+ * STNumber.from("-123")
12
+ * STNumber.fromParser(parser)
13
+ */
14
+ export declare class STNumber extends SerializedType {
15
+ /** 12 zero bytes, represents canonical zero. */
16
+ static defaultBytes: Uint8Array;
17
+ /**
18
+ * Construct a STNumber from 12 bytes (8 for mantissa, 4 for exponent).
19
+ * @param bytes - 12-byte Uint8Array
20
+ * @throws Error if input is not a Uint8Array of length 12.
21
+ */
22
+ constructor(bytes?: Uint8Array);
23
+ /**
24
+ * Construct from a number string (or another STNumber).
25
+ *
26
+ * @param value - A string, or STNumber instance.
27
+ * @returns STNumber instance.
28
+ * @throws Error if not a string or STNumber.
29
+ */
30
+ static from(value: unknown): STNumber;
31
+ /**
32
+ * Construct from a number string (integer, decimal, or scientific notation).
33
+ * Handles normalization to XRPL Number constraints.
34
+ *
35
+ * @param val - The number as a string (e.g. '1.23', '-123e5').
36
+ * @returns STNumber instance
37
+ * @throws Error if val is not a valid number string.
38
+ */
39
+ static fromValue(val: string): STNumber;
40
+ /**
41
+ * Read a STNumber from a BinaryParser stream (12 bytes).
42
+ * @param parser - BinaryParser positioned at the start of a number
43
+ * @returns STNumber instance
44
+ */
45
+ static fromParser(parser: BinaryParser): STNumber;
46
+ /**
47
+ * Convert this STNumber to a normalized string representation.
48
+ * The output is decimal or scientific notation, depending on exponent range.
49
+ * Follows XRPL convention: zero is "0", other values are normalized to a canonical string.
50
+ *
51
+ * @returns String representation of the value
52
+ */
53
+ toJSON(): string;
54
+ getSType(): SerializedTypeID;
55
+ }