ripple-binary-codec 1.4.1 → 1.4.3

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 (102) hide show
  1. package/dist/binary.js +25 -29
  2. package/dist/binary.js.map +1 -1
  3. package/dist/coretypes.js +31 -8
  4. package/dist/coretypes.js.map +1 -1
  5. package/dist/enums/bytes.d.ts +26 -0
  6. package/dist/enums/bytes.js +64 -0
  7. package/dist/enums/bytes.js.map +1 -0
  8. package/dist/enums/constants.d.ts +4 -0
  9. package/dist/enums/constants.js +8 -0
  10. package/dist/enums/constants.js.map +1 -0
  11. package/dist/enums/definitions.json +2330 -1971
  12. package/dist/enums/field.d.ts +29 -0
  13. package/dist/enums/field.js +59 -0
  14. package/dist/enums/field.js.map +1 -0
  15. package/dist/enums/index.js +69 -60
  16. package/dist/enums/index.js.map +1 -1
  17. package/dist/enums/src/enums/definitions.json +2337 -0
  18. package/dist/enums/utils-renumber.js +14 -14
  19. package/dist/enums/utils-renumber.js.map +1 -1
  20. package/dist/enums/xrpl-definitions-base.d.ts +44 -0
  21. package/dist/enums/xrpl-definitions-base.js +64 -0
  22. package/dist/enums/xrpl-definitions-base.js.map +1 -0
  23. package/dist/enums/xrpl-definitions.d.ts +21 -0
  24. package/dist/enums/xrpl-definitions.js +28 -0
  25. package/dist/enums/xrpl-definitions.js.map +1 -0
  26. package/dist/hash-prefixes.js +3 -3
  27. package/dist/hash-prefixes.js.map +1 -1
  28. package/dist/hashes.js +21 -43
  29. package/dist/hashes.js.map +1 -1
  30. package/dist/index.d.ts +2 -12
  31. package/dist/index.js +39 -16
  32. package/dist/index.js.map +1 -1
  33. package/dist/ledger-hashes.d.ts +1 -1
  34. package/dist/ledger-hashes.js +51 -28
  35. package/dist/ledger-hashes.js.map +1 -1
  36. package/dist/quality.js +18 -21
  37. package/dist/quality.js.map +1 -1
  38. package/dist/serdes/binary-parser.js +78 -56
  39. package/dist/serdes/binary-parser.js.map +1 -1
  40. package/dist/serdes/binary-serializer.js +59 -40
  41. package/dist/serdes/binary-serializer.js.map +1 -1
  42. package/dist/shamap.js +70 -98
  43. package/dist/shamap.js.map +1 -1
  44. package/dist/types/account-id.js +18 -35
  45. package/dist/types/account-id.js.map +1 -1
  46. package/dist/types/amount.js +71 -88
  47. package/dist/types/amount.js.map +1 -1
  48. package/dist/types/blob.js +10 -27
  49. package/dist/types/blob.js.map +1 -1
  50. package/dist/types/currency.js +26 -44
  51. package/dist/types/currency.js.map +1 -1
  52. package/dist/types/hash-128.d.ts +6 -0
  53. package/dist/types/hash-128.js +23 -25
  54. package/dist/types/hash-128.js.map +1 -1
  55. package/dist/types/hash-160.js +8 -25
  56. package/dist/types/hash-160.js.map +1 -1
  57. package/dist/types/hash-256.js +8 -25
  58. package/dist/types/hash-256.js.map +1 -1
  59. package/dist/types/hash.js +20 -38
  60. package/dist/types/hash.js.map +1 -1
  61. package/dist/types/index.js +18 -18
  62. package/dist/types/index.js.map +1 -1
  63. package/dist/types/path-set.js +57 -87
  64. package/dist/types/path-set.js.map +1 -1
  65. package/dist/types/serialized-type.d.ts +3 -3
  66. package/dist/types/serialized-type.js +35 -56
  67. package/dist/types/serialized-type.js.map +1 -1
  68. package/dist/types/st-array.js +26 -46
  69. package/dist/types/st-array.js.map +1 -1
  70. package/dist/types/st-object.js +49 -73
  71. package/dist/types/st-object.js.map +1 -1
  72. package/dist/types/uint-16.js +15 -32
  73. package/dist/types/uint-16.js.map +1 -1
  74. package/dist/types/uint-32.js +16 -33
  75. package/dist/types/uint-32.js.map +1 -1
  76. package/dist/types/uint-64.d.ts +1 -1
  77. package/dist/types/uint-64.js +30 -47
  78. package/dist/types/uint-64.js.map +1 -1
  79. package/dist/types/uint-8.js +15 -32
  80. package/dist/types/uint-8.js.map +1 -1
  81. package/dist/types/uint.d.ts +1 -1
  82. package/dist/types/uint.js +10 -27
  83. package/dist/types/uint.js.map +1 -1
  84. package/dist/types/vector-256.js +23 -40
  85. package/dist/types/vector-256.js.map +1 -1
  86. package/package.json +6 -8
  87. package/test/amount.test.js +1 -1
  88. package/test/binary-json.test.js +1 -1
  89. package/test/binary-parser.test.js +4 -4
  90. package/test/binary-serializer.test.js +3 -3
  91. package/test/fixtures/data-driven-tests.json +0 -14
  92. package/test/hash.test.js +39 -9
  93. package/test/ledger.test.js +1 -1
  94. package/test/lower-case-hex.test.js +1 -1
  95. package/test/pseudo-transaction.test.js +1 -1
  96. package/test/quality.test.js +1 -1
  97. package/test/shamap.test.js +3 -3
  98. package/test/signing-data-encoding.test.js +1 -1
  99. package/test/tx-encode-decode.test.js +1 -1
  100. package/test/types.test.js +2 -2
  101. package/test/uint.test.js +2 -2
  102. package/test/x-address.test.js +1 -1
@@ -483,13 +483,6 @@
483
483
  "type": 5,
484
484
  "expected_hex": "5013"
485
485
  },
486
- {
487
- "type_name": "Hash256",
488
- "name": "TicketID",
489
- "nth_of_type": 20,
490
- "type": 5,
491
- "expected_hex": "5014"
492
- },
493
486
  {
494
487
  "type_name": "Hash256",
495
488
  "name": "Digest",
@@ -721,13 +714,6 @@
721
714
  "type": 8,
722
715
  "expected_hex": "84"
723
716
  },
724
- {
725
- "type_name": "AccountID",
726
- "name": "Target",
727
- "nth_of_type": 7,
728
- "type": 8,
729
- "expected_hex": "87"
730
- },
731
717
  {
732
718
  "type_name": "AccountID",
733
719
  "name": "RegularKey",
package/test/hash.test.js CHANGED
@@ -1,7 +1,33 @@
1
- const { coreTypes } = require('../dist/types')
2
- const { Hash160, Hash256, AccountID, Currency } = coreTypes
1
+ const { coreTypes } = require('../src/types')
2
+ const { Hash128, Hash160, Hash256, AccountID, Currency } = coreTypes
3
3
  const { Buffer } = require('buffer/')
4
4
 
5
+ describe('Hash128', function () {
6
+ test('has a static width member', function () {
7
+ expect(Hash128.width).toBe(16)
8
+ })
9
+ test('can be unset', function () {
10
+ const h1 = Hash128.from('')
11
+ expect(h1.toJSON()).toBe('')
12
+ })
13
+ test('can be compared against another', function () {
14
+ const h1 = Hash128.from('100000000000000000000000000000000')
15
+ const h2 = Hash128.from('200000000000000000000000000000000')
16
+ const h3 = Hash128.from('000000000000000000000000000000003')
17
+ expect(h1.lt(h2)).toBe(true)
18
+ expect(h3.lt(h2)).toBe(true)
19
+ expect(h2.gt(h1)).toBe(true)
20
+ expect(h1.gt(h3)).toBe(true)
21
+ })
22
+ test('throws when constructed from invalid hash length', () => {
23
+ expect(() => Hash128.from('1000000000000000000000000000000')).toThrow(
24
+ 'Invalid Hash length 15',
25
+ )
26
+ expect(() => Hash128.from('10000000000000000000000000000000000')).toThrow(
27
+ 'Invalid Hash length 17',
28
+ )
29
+ })
30
+ })
5
31
  describe('Hash160', function () {
6
32
  test('has a static width member', function () {
7
33
  expect(Hash160.width).toBe(20)
@@ -54,16 +80,20 @@ describe('Currency', function () {
54
80
  const currencyCode = '0000000000000000000000005852500000000000'
55
81
  expect(Currency.from(currencyCode).toJSON()).toBe(currencyCode)
56
82
  })
57
- test('Currency with lowercase letters decode to hex', () => {
58
- expect(Currency.from('xRp').toJSON()).toBe(
59
- '0000000000000000000000007852700000000000',
60
- )
83
+ test('Currency code with lowercase letters decodes to ISO code', () => {
84
+ expect(Currency.from('xRp').toJSON()).toBe('xRp')
85
+ })
86
+ test('Currency codes with symbols decodes to ISO code', () => {
87
+ expect(Currency.from('x|p').toJSON()).toBe('x|p')
61
88
  })
62
- test('Currency codes with symbols decode to hex', () => {
63
- expect(Currency.from('x|p').toJSON()).toBe(
64
- '000000000000000000000000787C700000000000',
89
+ test('Currency code with non-standard symbols decodes to hex', () => {
90
+ expect(Currency.from(':::').toJSON()).toBe(
91
+ '0000000000000000000000003A3A3A0000000000',
65
92
  )
66
93
  })
94
+ test('Currency codes can be exclusively standard symbols', () => {
95
+ expect(Currency.from('![]').toJSON()).toBe('![]')
96
+ })
67
97
  test('Currency codes with uppercase and 0-9 decode to ISO codes', () => {
68
98
  expect(Currency.from('X8P').toJSON()).toBe('X8P')
69
99
  expect(Currency.from('USD').toJSON()).toBe('USD')
@@ -3,7 +3,7 @@ const {
3
3
  transactionTreeHash,
4
4
  ledgerHash,
5
5
  accountStateHash,
6
- } = require('../dist/ledger-hashes')
6
+ } = require('../src/ledger-hashes')
7
7
 
8
8
  describe('Ledger Hashes', function () {
9
9
  function testFactory(ledgerFixture) {
@@ -1,4 +1,4 @@
1
- const { encode, decode } = require('../dist')
1
+ const { encode, decode } = require('../src')
2
2
 
3
3
  let str =
4
4
  '1100612200000000240000000125000068652D0000000055B6632D6376A2D9319F20A1C6DCCB486432D1E4A79951229D4C3DE2946F51D56662400009184E72A00081140DD319918CD5AE792BF7EC80D63B0F01B4573BBC'
@@ -1,4 +1,4 @@
1
- const { encode, decode } = require('../dist')
1
+ const { encode, decode } = require('../src')
2
2
 
3
3
  let json = {
4
4
  Account: 'rrrrrrrrrrrrrrrrrrrrrhoLvTp',
@@ -1,4 +1,4 @@
1
- const { quality } = require('../dist/coretypes')
1
+ const { quality } = require('../src/coretypes')
2
2
 
3
3
  describe('Quality encode/decode', function () {
4
4
  const bookDirectory =
@@ -1,6 +1,6 @@
1
- const { ShaMap } = require('../dist/shamap.js')
2
- const { binary, HashPrefix } = require('../dist/coretypes')
3
- const { coreTypes } = require('../dist/types')
1
+ const { ShaMap } = require('../src/shamap')
2
+ const { binary, HashPrefix } = require('../src/coretypes')
3
+ const { coreTypes } = require('../src/types')
4
4
  const { loadFixture } = require('./utils')
5
5
  const { Buffer } = require('buffer/')
6
6
 
@@ -3,7 +3,7 @@ const {
3
3
  encodeForSigning,
4
4
  encodeForSigningClaim,
5
5
  encodeForMultisigning,
6
- } = require('../dist')
6
+ } = require('../src')
7
7
 
8
8
  const tx_json = {
9
9
  Account: 'r9LqNeG6qHxjeUocjvVki2XR35weJ9mZgQ',
@@ -1,4 +1,4 @@
1
- const { encode, decode } = require('../dist')
1
+ const { encode, decode } = require('../src')
2
2
 
3
3
  // Notice: no Amount or Fee
4
4
  const tx_json = {
@@ -1,5 +1,5 @@
1
- const { coreTypes } = require('../dist/types')
2
- const { SerializedType } = require('../dist/types/serialized-type')
1
+ const { coreTypes } = require('../src/types')
2
+ const { SerializedType } = require('../src/types/serialized-type')
3
3
 
4
4
  describe('SerializedType interfaces', () => {
5
5
  Object.entries(coreTypes).forEach(([name, Value]) => {
package/test/uint.test.js CHANGED
@@ -1,7 +1,7 @@
1
- const { coreTypes } = require('../dist/types')
1
+ const { coreTypes } = require('../src/types')
2
2
  const { UInt8, UInt64 } = coreTypes
3
3
 
4
- const { encode } = require('../dist')
4
+ const { encode } = require('../src')
5
5
 
6
6
  const binary =
7
7
  '11007222000300003700000000000000003800000000000000006280000000000000000000000000000000000000005553440000000000000000000000000000000000000000000000000166D5438D7EA4C680000000000000000000000000005553440000000000AE123A8556F3CF91154711376AFB0F894F832B3D67D5438D7EA4C680000000000000000000000000005553440000000000F51DFC2A09D62CBBA1DFBDD4691DAC96AD98B90F'
@@ -1,4 +1,4 @@
1
- const { encode, decode } = require('./../dist/index')
1
+ const { encode, decode } = require('./../src/index')
2
2
  const fixtures = require('./fixtures/x-codec-fixtures.json')
3
3
 
4
4
  let json_x1 = {