@transia/ripple-binary-codec 1.4.6-alpha.9 → 2.5.2-alpha.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 (363) 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 +1604 -969
  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 +1606 -971
  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 -319
  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/remit-binary.json +0 -1
  342. package/test/fixtures/remit-tx.json +0 -39
  343. package/test/fixtures/signerlistset-tx-binary.json +0 -1
  344. package/test/fixtures/signerlistset-tx-meta-binary.json +0 -1
  345. package/test/fixtures/signerlistset-tx.json +0 -94
  346. package/test/fixtures/ticket-create-binary.json +0 -1
  347. package/test/fixtures/ticket-create-tx.json +0 -7
  348. package/test/fixtures/unl-report-binary.json +0 -1
  349. package/test/fixtures/unl-report-meta-binary.json +0 -1
  350. package/test/fixtures/unl-report.json +0 -89
  351. package/test/fixtures/x-codec-fixtures.json +0 -188
  352. package/test/hash.test.js +0 -135
  353. package/test/ledger.test.js +0 -29
  354. package/test/lower-case-hex.test.js +0 -46
  355. package/test/pseudo-transaction.test.js +0 -38
  356. package/test/quality.test.js +0 -15
  357. package/test/shamap.test.js +0 -89
  358. package/test/signing-data-encoding.test.js +0 -213
  359. package/test/tx-encode-decode.test.js +0 -119
  360. package/test/types.test.js +0 -34
  361. package/test/uint.test.js +0 -148
  362. package/test/utils.js +0 -30
  363. package/test/x-address.test.js +0 -181
@@ -0,0 +1,28 @@
1
+ import { Bytes } from './bytes';
2
+ import { SerializedType } from '../types/serialized-type';
3
+ /**
4
+ * Encoding information for a rippled field, often used in transactions.
5
+ * See the enums [README.md](https://github.com/XRPLF/xrpl.js/tree/main/packages/ripple-binary-codec/src/enums) for more details on what each means.
6
+ */
7
+ export interface FieldInfo {
8
+ nth: number;
9
+ isVLEncoded: boolean;
10
+ isSerialized: boolean;
11
+ isSigningField: boolean;
12
+ type: string;
13
+ }
14
+ export interface FieldInstance {
15
+ readonly nth: number;
16
+ readonly isVariableLengthEncoded: boolean;
17
+ readonly isSerialized: boolean;
18
+ readonly isSigningField: boolean;
19
+ readonly type: Bytes;
20
+ readonly ordinal: number;
21
+ readonly name: string;
22
+ readonly header: Uint8Array;
23
+ readonly associatedType: typeof SerializedType;
24
+ }
25
+ export declare class FieldLookup {
26
+ constructor(fields: Array<[string, FieldInfo]>, types: Record<string, number>);
27
+ fromString(value: string): FieldInstance;
28
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldLookup = void 0;
4
+ const bytes_1 = require("./bytes");
5
+ const serialized_type_1 = require("../types/serialized-type");
6
+ const constants_1 = require("./constants");
7
+ /*
8
+ * @brief: Serialize a field based on type_code and Field.nth
9
+ */
10
+ function fieldHeader(type, nth) {
11
+ const header = [];
12
+ if (type < 16) {
13
+ if (nth < 16) {
14
+ header.push((type << 4) | nth);
15
+ }
16
+ else {
17
+ header.push(type << 4, nth);
18
+ }
19
+ }
20
+ else if (nth < 16) {
21
+ header.push(nth, type);
22
+ }
23
+ else {
24
+ header.push(0, type, nth);
25
+ }
26
+ return Uint8Array.from(header);
27
+ }
28
+ function buildField([name, info], typeOrdinal) {
29
+ const field = fieldHeader(typeOrdinal, info.nth);
30
+ return {
31
+ name: name,
32
+ nth: info.nth,
33
+ isVariableLengthEncoded: info.isVLEncoded,
34
+ isSerialized: info.isSerialized,
35
+ isSigningField: info.isSigningField,
36
+ ordinal: (typeOrdinal << 16) | info.nth,
37
+ type: new bytes_1.Bytes(info.type, typeOrdinal, constants_1.TYPE_WIDTH),
38
+ header: field,
39
+ associatedType: serialized_type_1.SerializedType, // For later assignment in ./types/index.js or Definitions.updateAll(...)
40
+ };
41
+ }
42
+ /*
43
+ * @brief: The collection of all fields as defined in definitions.json
44
+ */
45
+ class FieldLookup {
46
+ constructor(fields, types) {
47
+ fields.forEach(([name, field_info]) => {
48
+ const typeOrdinal = types[field_info.type];
49
+ this[name] = buildField([name, field_info], typeOrdinal);
50
+ this[this[name].ordinal.toString()] = this[name];
51
+ });
52
+ }
53
+ fromString(value) {
54
+ return this[value];
55
+ }
56
+ }
57
+ exports.FieldLookup = FieldLookup;
58
+ //# sourceMappingURL=field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/enums/field.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,8DAAyD;AACzD,2CAAwC;AA0BxC;;GAEG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,GAAW;IAC5C,MAAM,MAAM,GAAkB,EAAE,CAAA;IAChC,IAAI,IAAI,GAAG,EAAE,EAAE;QACb,IAAI,GAAG,GAAG,EAAE,EAAE;YACZ,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;SAC/B;aAAM;YACL,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;SAC5B;KACF;SAAM,IAAI,GAAG,GAAG,EAAE,EAAE;QACnB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;KACvB;SAAM;QACL,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;KAC1B;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,UAAU,CACjB,CAAC,IAAI,EAAE,IAAI,CAAsB,EACjC,WAAmB;IAEnB,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;IAChD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,uBAAuB,EAAE,IAAI,CAAC,WAAW;QACzC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,OAAO,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG;QACvC,IAAI,EAAE,IAAI,aAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,sBAAU,CAAC;QACnD,MAAM,EAAE,KAAK;QACb,cAAc,EAAE,gCAAc,EAAE,yEAAyE;KAC1G,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAa,WAAW;IACtB,YACE,MAAkC,EAClC,KAA6B;QAE7B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE;YACpC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,WAAW,CAAC,CAAA;YACxD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,KAAK,CAAkB,CAAA;IACrC,CAAC;CACF;AAfD,kCAeC"}
@@ -0,0 +1,12 @@
1
+ import { XrplDefinitionsBase, FieldInstance, Bytes } from './xrpl-definitions-base';
2
+ /**
3
+ * By default, coreTypes from the `types` folder is where known type definitions are initialized to avoid import cycles.
4
+ */
5
+ declare const DEFAULT_DEFINITIONS: XrplDefinitionsBase;
6
+ declare const Type: import("./bytes").BytesLookup;
7
+ declare const LedgerEntryType: import("./bytes").BytesLookup;
8
+ declare const TransactionType: import("./bytes").BytesLookup;
9
+ declare const TransactionResult: import("./bytes").BytesLookup;
10
+ declare const Field: import("./field").FieldLookup;
11
+ declare const TRANSACTION_TYPES: string[];
12
+ export { Bytes, XrplDefinitionsBase, DEFAULT_DEFINITIONS, Field, FieldInstance, Type, LedgerEntryType, TransactionResult, TransactionType, TRANSACTION_TYPES, };
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TRANSACTION_TYPES = exports.TransactionType = exports.TransactionResult = exports.LedgerEntryType = exports.Type = exports.Field = exports.DEFAULT_DEFINITIONS = exports.XrplDefinitionsBase = exports.Bytes = void 0;
7
+ const definitions_json_1 = __importDefault(require("./definitions.json"));
8
+ const xrpl_definitions_base_1 = require("./xrpl-definitions-base");
9
+ Object.defineProperty(exports, "XrplDefinitionsBase", { enumerable: true, get: function () { return xrpl_definitions_base_1.XrplDefinitionsBase; } });
10
+ Object.defineProperty(exports, "Bytes", { enumerable: true, get: function () { return xrpl_definitions_base_1.Bytes; } });
11
+ /**
12
+ * By default, coreTypes from the `types` folder is where known type definitions are initialized to avoid import cycles.
13
+ */
14
+ const DEFAULT_DEFINITIONS = new xrpl_definitions_base_1.XrplDefinitionsBase(definitions_json_1.default, {});
15
+ exports.DEFAULT_DEFINITIONS = DEFAULT_DEFINITIONS;
16
+ const Type = DEFAULT_DEFINITIONS.type;
17
+ exports.Type = Type;
18
+ const LedgerEntryType = DEFAULT_DEFINITIONS.ledgerEntryType;
19
+ exports.LedgerEntryType = LedgerEntryType;
20
+ const TransactionType = DEFAULT_DEFINITIONS.transactionType;
21
+ exports.TransactionType = TransactionType;
22
+ const TransactionResult = DEFAULT_DEFINITIONS.transactionResult;
23
+ exports.TransactionResult = TransactionResult;
24
+ const Field = DEFAULT_DEFINITIONS.field;
25
+ exports.Field = Field;
26
+ /*
27
+ * @brief: All valid transaction types
28
+ */
29
+ const TRANSACTION_TYPES = DEFAULT_DEFINITIONS.transactionNames;
30
+ exports.TRANSACTION_TYPES = TRANSACTION_TYPES;
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/enums/index.ts"],"names":[],"mappings":";;;;;;AAAA,0EAAsC;AACtC,mEAIgC;AAmB9B,oGAtBA,2CAAmB,OAsBA;AADnB,sFAnBA,6BAAK,OAmBA;AAjBP;;GAEG;AACH,MAAM,mBAAmB,GAAG,IAAI,2CAAmB,CAAC,0BAAK,EAAE,EAAE,CAAC,CAAA;AAgB5D,kDAAmB;AAdrB,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAA;AAiBnC,oBAAI;AAhBN,MAAM,eAAe,GAAG,mBAAmB,CAAC,eAAe,CAAA;AAiBzD,0CAAe;AAhBjB,MAAM,eAAe,GAAG,mBAAmB,CAAC,eAAe,CAAA;AAkBzD,0CAAe;AAjBjB,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,iBAAiB,CAAA;AAgB7D,8CAAiB;AAfnB,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAA;AAWrC,sBAAK;AATP;;GAEG;AACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,gBAAgB,CAAA;AAY5D,8CAAiB"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Quick script to re-number values
3
+ */
4
+ declare const input: {
5
+ temBAD_SEND_XRP_PATHS: number;
6
+ temBAD_SEQUENCE: number;
7
+ temBAD_SIGNATURE: number;
8
+ temBAD_SRC_ACCOUNT: number;
9
+ temBAD_TRANSFER_RATE: number;
10
+ temDST_IS_SRC: number;
11
+ temDST_NEEDED: number;
12
+ temINVALID: number;
13
+ temINVALID_FLAG: number;
14
+ temREDUNDANT: number;
15
+ temRIPPLE_EMPTY: number;
16
+ temDISABLED: number;
17
+ temBAD_SIGNER: number;
18
+ temBAD_QUORUM: number;
19
+ temBAD_WEIGHT: number;
20
+ temBAD_TICK_SIZE: number;
21
+ temINVALID_ACCOUNT_ID: number;
22
+ temCANNOT_PREAUTH_SELF: number;
23
+ temUNCERTAIN: number;
24
+ temUNKNOWN: number;
25
+ tefFAILURE: number;
26
+ tefALREADY: number;
27
+ tefBAD_ADD_AUTH: number;
28
+ tefBAD_AUTH: number;
29
+ tefBAD_LEDGER: number;
30
+ tefCREATED: number;
31
+ tefEXCEPTION: number;
32
+ tefINTERNAL: number;
33
+ tefNO_AUTH_REQUIRED: number;
34
+ tefPAST_SEQ: number;
35
+ tefWRONG_PRIOR: number;
36
+ tefMASTER_DISABLED: number;
37
+ tefMAX_LEDGER: number;
38
+ tefBAD_SIGNATURE: number;
39
+ tefBAD_QUORUM: number;
40
+ tefNOT_MULTI_SIGNING: number;
41
+ tefBAD_AUTH_MASTER: number;
42
+ tefINVARIANT_FAILED: number;
43
+ tefTOO_BIG: number;
44
+ terRETRY: number;
45
+ terFUNDS_SPENT: number;
46
+ terINSUF_FEE_B: number;
47
+ terNO_ACCOUNT: number;
48
+ terNO_AUTH: number;
49
+ terNO_LINE: number;
50
+ terOWNERS: number;
51
+ terPRE_SEQ: number;
52
+ terLAST: number;
53
+ terNO_RIPPLE: number;
54
+ terQUEUED: number;
55
+ tesSUCCESS: number;
56
+ tecCLAIM: number;
57
+ tecPATH_PARTIAL: number;
58
+ tecUNFUNDED_ADD: number;
59
+ tecUNFUNDED_OFFER: number;
60
+ tecUNFUNDED_PAYMENT: number;
61
+ tecFAILED_PROCESSING: number;
62
+ tecDIR_FULL: number;
63
+ tecINSUF_RESERVE_LINE: number;
64
+ tecINSUF_RESERVE_OFFER: number;
65
+ tecNO_DST: number;
66
+ tecNO_DST_INSUF_XRP: number;
67
+ tecNO_LINE_INSUF_RESERVE: number;
68
+ tecNO_LINE_REDUNDANT: number;
69
+ tecPATH_DRY: number;
70
+ tecUNFUNDED: number;
71
+ tecNO_ALTERNATIVE_KEY: number;
72
+ tecNO_REGULAR_KEY: number;
73
+ tecOWNERS: number;
74
+ tecNO_ISSUER: number;
75
+ tecNO_AUTH: number;
76
+ tecNO_LINE: number;
77
+ tecINSUFF_FEE: number;
78
+ tecFROZEN: number;
79
+ tecNO_TARGET: number;
80
+ tecNO_PERMISSION: number;
81
+ tecNO_ENTRY: number;
82
+ tecINSUFFICIENT_RESERVE: number;
83
+ tecNEED_MASTER_KEY: number;
84
+ tecDST_TAG_NEEDED: number;
85
+ tecINTERNAL: number;
86
+ tecOVERSIZE: number;
87
+ tecCRYPTOCONDITION_ERROR: number;
88
+ tecINVARIANT_FAILED: number;
89
+ tecEXPIRED: number;
90
+ tecDUPLICATE: number;
91
+ tecKILLED: number;
92
+ tecHAS_OBLIGATIONS: number;
93
+ tecTOO_SOON: number;
94
+ };
95
+ declare let startingFromTemBADSENDXRPPATHS: number;
96
+ declare let startingFromTefFAILURE: number;
97
+ declare let startingFromTerRETRY: number;
98
+ declare const tesSUCCESS = 0;
99
+ declare let startingFromTecCLAIM: number;
100
+ declare const startingFromTecDIRFULL = 121;
101
+ declare let previousKey: string;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ /**
3
+ * Quick script to re-number values
4
+ */
5
+ const input = {
6
+ temBAD_SEND_XRP_PATHS: -283,
7
+ temBAD_SEQUENCE: -282,
8
+ temBAD_SIGNATURE: -281,
9
+ temBAD_SRC_ACCOUNT: -280,
10
+ temBAD_TRANSFER_RATE: -279,
11
+ temDST_IS_SRC: -278,
12
+ temDST_NEEDED: -277,
13
+ temINVALID: -276,
14
+ temINVALID_FLAG: -275,
15
+ temREDUNDANT: -274,
16
+ temRIPPLE_EMPTY: -273,
17
+ temDISABLED: -272,
18
+ temBAD_SIGNER: -271,
19
+ temBAD_QUORUM: -270,
20
+ temBAD_WEIGHT: -269,
21
+ temBAD_TICK_SIZE: -268,
22
+ temINVALID_ACCOUNT_ID: -267,
23
+ temCANNOT_PREAUTH_SELF: -266,
24
+ temUNCERTAIN: -265,
25
+ temUNKNOWN: -264,
26
+ tefFAILURE: -199,
27
+ tefALREADY: -198,
28
+ tefBAD_ADD_AUTH: -197,
29
+ tefBAD_AUTH: -196,
30
+ tefBAD_LEDGER: -195,
31
+ tefCREATED: -194,
32
+ tefEXCEPTION: -193,
33
+ tefINTERNAL: -192,
34
+ tefNO_AUTH_REQUIRED: -191,
35
+ tefPAST_SEQ: -190,
36
+ tefWRONG_PRIOR: -189,
37
+ tefMASTER_DISABLED: -188,
38
+ tefMAX_LEDGER: -187,
39
+ tefBAD_SIGNATURE: -186,
40
+ tefBAD_QUORUM: -185,
41
+ tefNOT_MULTI_SIGNING: -184,
42
+ tefBAD_AUTH_MASTER: -183,
43
+ tefINVARIANT_FAILED: -182,
44
+ tefTOO_BIG: -181,
45
+ terRETRY: -99,
46
+ terFUNDS_SPENT: -98,
47
+ terINSUF_FEE_B: -97,
48
+ terNO_ACCOUNT: -96,
49
+ terNO_AUTH: -95,
50
+ terNO_LINE: -94,
51
+ terOWNERS: -93,
52
+ terPRE_SEQ: -92,
53
+ terLAST: -91,
54
+ terNO_RIPPLE: -90,
55
+ terQUEUED: -89,
56
+ tesSUCCESS: 0,
57
+ tecCLAIM: 100,
58
+ tecPATH_PARTIAL: 101,
59
+ tecUNFUNDED_ADD: 102,
60
+ tecUNFUNDED_OFFER: 103,
61
+ tecUNFUNDED_PAYMENT: 104,
62
+ tecFAILED_PROCESSING: 105,
63
+ tecDIR_FULL: 121,
64
+ tecINSUF_RESERVE_LINE: 122,
65
+ tecINSUF_RESERVE_OFFER: 123,
66
+ tecNO_DST: 124,
67
+ tecNO_DST_INSUF_XRP: 125,
68
+ tecNO_LINE_INSUF_RESERVE: 126,
69
+ tecNO_LINE_REDUNDANT: 127,
70
+ tecPATH_DRY: 128,
71
+ tecUNFUNDED: 129,
72
+ tecNO_ALTERNATIVE_KEY: 130,
73
+ tecNO_REGULAR_KEY: 131,
74
+ tecOWNERS: 132,
75
+ tecNO_ISSUER: 133,
76
+ tecNO_AUTH: 134,
77
+ tecNO_LINE: 135,
78
+ tecINSUFF_FEE: 136,
79
+ tecFROZEN: 137,
80
+ tecNO_TARGET: 138,
81
+ tecNO_PERMISSION: 139,
82
+ tecNO_ENTRY: 140,
83
+ tecINSUFFICIENT_RESERVE: 141,
84
+ tecNEED_MASTER_KEY: 142,
85
+ tecDST_TAG_NEEDED: 143,
86
+ tecINTERNAL: 144,
87
+ tecOVERSIZE: 145,
88
+ tecCRYPTOCONDITION_ERROR: 146,
89
+ tecINVARIANT_FAILED: 147,
90
+ tecEXPIRED: 148,
91
+ tecDUPLICATE: 149,
92
+ tecKILLED: 150,
93
+ tecHAS_OBLIGATIONS: 151,
94
+ tecTOO_SOON: 152,
95
+ };
96
+ let startingFromTemBADSENDXRPPATHS = -284;
97
+ let startingFromTefFAILURE = -199;
98
+ let startingFromTerRETRY = -99;
99
+ const tesSUCCESS = 0;
100
+ let startingFromTecCLAIM = 100;
101
+ const startingFromTecDIRFULL = 121;
102
+ let previousKey = 'tem';
103
+ Object.keys(input).forEach((key) => {
104
+ if (key.substring(0, 3) !== previousKey.substring(0, 3)) {
105
+ console.log();
106
+ previousKey = key;
107
+ }
108
+ if (key.substring(0, 3) === 'tem') {
109
+ console.log(` "${key}": ${startingFromTemBADSENDXRPPATHS++},`);
110
+ }
111
+ else if (key.substring(0, 3) === 'tef') {
112
+ console.log(` "${key}": ${startingFromTefFAILURE++},`);
113
+ }
114
+ else if (key.substring(0, 3) === 'ter') {
115
+ console.log(` "${key}": ${startingFromTerRETRY++},`);
116
+ }
117
+ else if (key.substring(0, 3) === 'tes') {
118
+ console.log(` "${key}": ${tesSUCCESS},`);
119
+ }
120
+ else if (key.substring(0, 3) === 'tec') {
121
+ if (key === 'tecDIR_FULL') {
122
+ startingFromTecCLAIM = startingFromTecDIRFULL;
123
+ }
124
+ console.log(` "${key}": ${startingFromTecCLAIM++},`);
125
+ }
126
+ });
127
+ //# sourceMappingURL=utils-renumber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-renumber.js","sourceRoot":"","sources":["../../../src/enums/utils-renumber.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { SerializedType } from '../types/serialized-type';
2
+ import { Bytes, BytesLookup } from './bytes';
3
+ import { FieldInfo, FieldLookup, FieldInstance } from './field';
4
+ interface DefinitionsData {
5
+ TYPES: Record<string, number>;
6
+ LEDGER_ENTRY_TYPES: Record<string, number>;
7
+ FIELDS: (string | FieldInfo)[][];
8
+ TRANSACTION_RESULTS: Record<string, number>;
9
+ TRANSACTION_TYPES: Record<string, number>;
10
+ }
11
+ /**
12
+ * Stores the various types and fields for rippled to be used to encode/decode information later on.
13
+ * XrplDefinitions should be instantiated instead of this class.
14
+ */
15
+ declare class XrplDefinitionsBase {
16
+ field: FieldLookup;
17
+ ledgerEntryType: BytesLookup;
18
+ type: BytesLookup;
19
+ transactionResult: BytesLookup;
20
+ transactionType: BytesLookup;
21
+ transactionNames: string[];
22
+ dataTypes: Record<string, typeof SerializedType>;
23
+ granularPermissions: Record<string, number>;
24
+ delegatablePermissions: BytesLookup;
25
+ /**
26
+ * Present rippled types in a typed and updatable format.
27
+ * For an example of the input format see `definitions.json`.
28
+ * To generate a new definitions file from rippled source code, use the tool at
29
+ * `packages/ripple-binary-codec/tools/generateDefinitions.js`.
30
+ *
31
+ * See the definitions.test.js file for examples of how to create your own updated definitions.json.
32
+ *
33
+ * @param enums - A json encoding of the core types, transaction types, transaction results, transaction names, and fields.
34
+ * @param types - A list of type objects with the same name as the fields defined.
35
+ * You can use the coreTypes object if you are not adding new types.
36
+ */
37
+ constructor(enums: DefinitionsData, types: Record<string, typeof SerializedType>);
38
+ /**
39
+ * Associates each Field to a corresponding class that TypeScript can recognize.
40
+ *
41
+ * @param types a list of type objects with the same name as the fields defined.
42
+ * Defaults to xrpl.js's core type definitions.
43
+ */
44
+ associateTypes(types: Record<string, typeof SerializedType>): void;
45
+ getAssociatedTypes(): Record<string, typeof SerializedType>;
46
+ }
47
+ export { DefinitionsData, XrplDefinitionsBase, FieldLookup, FieldInfo, FieldInstance, Bytes, BytesLookup, };
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BytesLookup = exports.Bytes = exports.FieldLookup = exports.XrplDefinitionsBase = void 0;
4
+ const bytes_1 = require("./bytes");
5
+ Object.defineProperty(exports, "Bytes", { enumerable: true, get: function () { return bytes_1.Bytes; } });
6
+ Object.defineProperty(exports, "BytesLookup", { enumerable: true, get: function () { return bytes_1.BytesLookup; } });
7
+ const field_1 = require("./field");
8
+ Object.defineProperty(exports, "FieldLookup", { enumerable: true, get: function () { return field_1.FieldLookup; } });
9
+ const constants_1 = require("./constants");
10
+ /**
11
+ * Stores the various types and fields for rippled to be used to encode/decode information later on.
12
+ * XrplDefinitions should be instantiated instead of this class.
13
+ */
14
+ class XrplDefinitionsBase {
15
+ /**
16
+ * Present rippled types in a typed and updatable format.
17
+ * For an example of the input format see `definitions.json`.
18
+ * To generate a new definitions file from rippled source code, use the tool at
19
+ * `packages/ripple-binary-codec/tools/generateDefinitions.js`.
20
+ *
21
+ * See the definitions.test.js file for examples of how to create your own updated definitions.json.
22
+ *
23
+ * @param enums - A json encoding of the core types, transaction types, transaction results, transaction names, and fields.
24
+ * @param types - A list of type objects with the same name as the fields defined.
25
+ * You can use the coreTypes object if you are not adding new types.
26
+ */
27
+ constructor(enums, types) {
28
+ this.type = new bytes_1.BytesLookup(enums.TYPES, constants_1.TYPE_WIDTH);
29
+ this.ledgerEntryType = new bytes_1.BytesLookup(enums.LEDGER_ENTRY_TYPES, constants_1.LEDGER_ENTRY_WIDTH);
30
+ this.transactionType = new bytes_1.BytesLookup(enums.TRANSACTION_TYPES, constants_1.TRANSACTION_TYPE_WIDTH);
31
+ this.transactionResult = new bytes_1.BytesLookup(enums.TRANSACTION_RESULTS, constants_1.TRANSACTION_RESULT_WIDTH);
32
+ this.field = new field_1.FieldLookup(enums.FIELDS, enums.TYPES);
33
+ this.transactionNames = Object.entries(enums.TRANSACTION_TYPES)
34
+ .filter(([_key, value]) => value >= 0)
35
+ .map(([key, _value]) => key);
36
+ this.dataTypes = {}; // Filled in via associateTypes
37
+ this.associateTypes(types);
38
+ this.granularPermissions = {
39
+ TrustlineAuthorize: 65537,
40
+ TrustlineFreeze: 65538,
41
+ TrustlineUnfreeze: 65539,
42
+ AccountDomainSet: 65540,
43
+ AccountEmailHashSet: 65541,
44
+ AccountMessageKeySet: 65542,
45
+ AccountTransferRateSet: 65543,
46
+ AccountTickSizeSet: 65544,
47
+ PaymentMint: 65545,
48
+ PaymentBurn: 65546,
49
+ MPTokenIssuanceLock: 65547,
50
+ MPTokenIssuanceUnlock: 65548,
51
+ };
52
+ const incrementedTransactionTypes = Object.fromEntries(Object.entries(enums.TRANSACTION_TYPES).map(([key, value]) => [
53
+ key,
54
+ value + 1,
55
+ ]));
56
+ const combinedPermissions = Object.assign(Object.assign({}, this.granularPermissions), incrementedTransactionTypes);
57
+ this.delegatablePermissions = new bytes_1.BytesLookup(combinedPermissions, constants_1.DELEGATABLE_PERMISSIONS_WIDTH);
58
+ }
59
+ /**
60
+ * Associates each Field to a corresponding class that TypeScript can recognize.
61
+ *
62
+ * @param types a list of type objects with the same name as the fields defined.
63
+ * Defaults to xrpl.js's core type definitions.
64
+ */
65
+ associateTypes(types) {
66
+ // Overwrite any existing type definitions with the given types
67
+ this.dataTypes = Object.assign({}, this.dataTypes, types);
68
+ Object.values(this.field).forEach((field) => {
69
+ field.associatedType = this.dataTypes[field.type.name];
70
+ });
71
+ this.field['TransactionType'].associatedType = this.transactionType;
72
+ this.field['TransactionResult'].associatedType = this.transactionResult;
73
+ this.field['LedgerEntryType'].associatedType = this.ledgerEntryType;
74
+ if (this.field['PermissionValue']) {
75
+ this.field['PermissionValue'].associatedType = this.delegatablePermissions;
76
+ }
77
+ }
78
+ getAssociatedTypes() {
79
+ return this.dataTypes;
80
+ }
81
+ }
82
+ exports.XrplDefinitionsBase = XrplDefinitionsBase;
83
+ //# sourceMappingURL=xrpl-definitions-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl-definitions-base.js","sourceRoot":"","sources":["../../../src/enums/xrpl-definitions-base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { type DefinitionsData, XrplDefinitionsBase } from './xrpl-definitions-base';
2
+ import { SerializedType } from '../types/serialized-type';
3
+ /**
4
+ * Stores the various types and fields for rippled to be used to encode/decode information later on.
5
+ * Should be used instead of XrplDefinitionsBase since this defines default `types` for serializing/deserializing
6
+ * ledger data.
7
+ */
8
+ export declare class XrplDefinitions extends XrplDefinitionsBase {
9
+ /**
10
+ * Present rippled types in a typed and updatable format.
11
+ * For an example of the input format see `definitions.json`
12
+ * To generate a new definitions file from rippled source code, use the tool at
13
+ * `packages/ripple-binary-codec/tools/generateDefinitions.js`.
14
+ *
15
+ * See the definitions.test.js file for examples of how to create your own updated definitions.json.
16
+ *
17
+ * @param enums - A json encoding of the core types, transaction types, transaction results, transaction names, and fields.
18
+ * @param additionalTypes - A list of SerializedType objects with the same name as the fields defined.
19
+ * These types will be included in addition to the coreTypes used on mainnet.
20
+ */
21
+ constructor(enums: DefinitionsData, additionalTypes?: Record<string, typeof SerializedType>);
22
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XrplDefinitions = void 0;
4
+ const xrpl_definitions_base_1 = require("./xrpl-definitions-base");
5
+ const types_1 = require("../types");
6
+ /**
7
+ * Stores the various types and fields for rippled to be used to encode/decode information later on.
8
+ * Should be used instead of XrplDefinitionsBase since this defines default `types` for serializing/deserializing
9
+ * ledger data.
10
+ */
11
+ class XrplDefinitions extends xrpl_definitions_base_1.XrplDefinitionsBase {
12
+ /**
13
+ * Present rippled types in a typed and updatable format.
14
+ * For an example of the input format see `definitions.json`
15
+ * To generate a new definitions file from rippled source code, use the tool at
16
+ * `packages/ripple-binary-codec/tools/generateDefinitions.js`.
17
+ *
18
+ * See the definitions.test.js file for examples of how to create your own updated definitions.json.
19
+ *
20
+ * @param enums - A json encoding of the core types, transaction types, transaction results, transaction names, and fields.
21
+ * @param additionalTypes - A list of SerializedType objects with the same name as the fields defined.
22
+ * These types will be included in addition to the coreTypes used on mainnet.
23
+ */
24
+ constructor(enums, additionalTypes) {
25
+ const types = Object.assign({}, types_1.coreTypes, additionalTypes);
26
+ super(enums, types);
27
+ }
28
+ }
29
+ exports.XrplDefinitions = XrplDefinitions;
30
+ //# sourceMappingURL=xrpl-definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl-definitions.js","sourceRoot":"","sources":["../../../src/enums/xrpl-definitions.ts"],"names":[],"mappings":";;;AAAA,mEAGgC;AAChC,oCAAoC;AAGpC;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,2CAAmB;IACtD;;;;;;;;;;;OAWG;IACH,YACE,KAAsB,EACtB,eAAuD;QAEvD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,iBAAS,EAAE,eAAe,CAAC,CAAA;QAC3D,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACrB,CAAC;CACF;AApBD,0CAoBC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Maps HashPrefix names to their byte representation
3
+ */
4
+ declare const HashPrefix: Record<string, Uint8Array>;
5
+ export { HashPrefix };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HashPrefix = void 0;
4
+ const utils_1 = require("./utils");
5
+ /**
6
+ * Write a 32 bit integer to a Uint8Array
7
+ *
8
+ * @param uint32 32 bit integer to write to Uint8Array
9
+ * @returns a Uint8Array with the bytes representation of uint32
10
+ */
11
+ function bytes(uint32) {
12
+ const result = new Uint8Array(4);
13
+ (0, utils_1.writeUInt32BE)(result, uint32, 0);
14
+ return result;
15
+ }
16
+ /**
17
+ * Maps HashPrefix names to their byte representation
18
+ */
19
+ const HashPrefix = {
20
+ transactionID: bytes(0x54584e00),
21
+ // transaction plus metadata
22
+ transaction: bytes(0x534e4400),
23
+ // account state
24
+ accountStateEntry: bytes(0x4d4c4e00),
25
+ // inner node in tree
26
+ innerNode: bytes(0x4d494e00),
27
+ // ledger master data for signing
28
+ ledgerHeader: bytes(0x4c575200),
29
+ // inner transaction to sign
30
+ transactionSig: bytes(0x53545800),
31
+ // inner transaction to sign
32
+ transactionMultiSig: bytes(0x534d5400),
33
+ // validation for signing
34
+ validation: bytes(0x56414c00),
35
+ // proposal for signing
36
+ proposal: bytes(0x50525000),
37
+ // payment channel claim
38
+ paymentChannelClaim: bytes(0x434c4d00),
39
+ // batch
40
+ batch: bytes(0x42434800),
41
+ };
42
+ exports.HashPrefix = HashPrefix;
43
+ //# sourceMappingURL=hash-prefixes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash-prefixes.js","sourceRoot":"","sources":["../../src/hash-prefixes.ts"],"names":[],"mappings":";;;AAAA,mCAAuC;AAEvC;;;;;GAKG;AACH,SAAS,KAAK,CAAC,MAAc;IAC3B,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;IAChC,IAAA,qBAAa,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IAChC,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAA+B;IAC7C,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC;IAChC,4BAA4B;IAC5B,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC;IAC9B,gBAAgB;IAChB,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC;IACpC,qBAAqB;IACrB,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC;IAC5B,iCAAiC;IACjC,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC;IAC/B,4BAA4B;IAC5B,cAAc,EAAE,KAAK,CAAC,UAAU,CAAC;IACjC,4BAA4B;IAC5B,mBAAmB,EAAE,KAAK,CAAC,UAAU,CAAC;IACtC,yBAAyB;IACzB,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC;IAC7B,uBAAuB;IACvB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC;IAC3B,wBAAwB;IACxB,mBAAmB,EAAE,KAAK,CAAC,UAAU,CAAC;IACtC,QAAQ;IACR,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC;CACzB,CAAA;AAEQ,gCAAU"}