ripple-binary-codec 1.5.0-beta.2 → 1.5.0-beta.4

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 (120) hide show
  1. package/dist/binary.d.ts +23 -7
  2. package/dist/binary.js +54 -33
  3. package/dist/binary.js.map +1 -1
  4. package/dist/coretypes.d.ts +2 -2
  5. package/dist/coretypes.js +33 -9
  6. package/dist/coretypes.js.map +1 -1
  7. package/dist/enums/bytes.d.ts +26 -0
  8. package/dist/enums/bytes.js +64 -0
  9. package/dist/enums/bytes.js.map +1 -0
  10. package/dist/enums/constants.d.ts +4 -0
  11. package/dist/enums/constants.js +8 -0
  12. package/dist/enums/constants.js.map +1 -0
  13. package/dist/enums/definitions.json +108 -138
  14. package/dist/enums/field.d.ts +29 -0
  15. package/dist/enums/field.js +59 -0
  16. package/dist/enums/field.js.map +1 -0
  17. package/dist/enums/index.d.ts +12 -48
  18. package/dist/enums/index.js +42 -124
  19. package/dist/enums/index.js.map +1 -1
  20. package/dist/enums/src/enums/definitions.json +108 -138
  21. package/dist/enums/utils-renumber.js +14 -14
  22. package/dist/enums/utils-renumber.js.map +1 -1
  23. package/dist/enums/xrpl-definitions-base.d.ts +44 -0
  24. package/dist/enums/xrpl-definitions-base.js +59 -0
  25. package/dist/enums/xrpl-definitions-base.js.map +1 -0
  26. package/dist/enums/xrpl-definitions.d.ts +21 -0
  27. package/dist/enums/xrpl-definitions.js +29 -0
  28. package/dist/enums/xrpl-definitions.js.map +1 -0
  29. package/dist/hash-prefixes.js +3 -3
  30. package/dist/hash-prefixes.js.map +1 -1
  31. package/dist/hashes.js +21 -43
  32. package/dist/hashes.js.map +1 -1
  33. package/dist/index.d.ts +14 -16
  34. package/dist/index.js +62 -24
  35. package/dist/index.js.map +1 -1
  36. package/dist/ledger-hashes.d.ts +5 -2
  37. package/dist/ledger-hashes.js +54 -29
  38. package/dist/ledger-hashes.js.map +1 -1
  39. package/dist/quality.js +18 -21
  40. package/dist/quality.js.map +1 -1
  41. package/dist/serdes/binary-parser.d.ts +6 -3
  42. package/dist/serdes/binary-parser.js +82 -57
  43. package/dist/serdes/binary-parser.js.map +1 -1
  44. package/dist/serdes/binary-serializer.d.ts +1 -1
  45. package/dist/serdes/binary-serializer.js +59 -40
  46. package/dist/serdes/binary-serializer.js.map +1 -1
  47. package/dist/shamap.js +72 -98
  48. package/dist/shamap.js.map +1 -1
  49. package/dist/types/account-id.js +18 -35
  50. package/dist/types/account-id.js.map +1 -1
  51. package/dist/types/amount.js +71 -88
  52. package/dist/types/amount.js.map +1 -1
  53. package/dist/types/blob.js +10 -27
  54. package/dist/types/blob.js.map +1 -1
  55. package/dist/types/currency.js +26 -44
  56. package/dist/types/currency.js.map +1 -1
  57. package/dist/types/hash-128.d.ts +6 -0
  58. package/dist/types/hash-128.js +23 -25
  59. package/dist/types/hash-128.js.map +1 -1
  60. package/dist/types/hash-160.js +8 -25
  61. package/dist/types/hash-160.js.map +1 -1
  62. package/dist/types/hash-256.js +8 -25
  63. package/dist/types/hash-256.js.map +1 -1
  64. package/dist/types/hash.js +20 -38
  65. package/dist/types/hash.js.map +1 -1
  66. package/dist/types/index.d.ts +3 -24
  67. package/dist/types/index.js +39 -28
  68. package/dist/types/index.js.map +1 -1
  69. package/dist/types/issue.js +24 -41
  70. package/dist/types/issue.js.map +1 -1
  71. package/dist/types/path-set.js +57 -87
  72. package/dist/types/path-set.js.map +1 -1
  73. package/dist/types/serialized-type.d.ts +3 -3
  74. package/dist/types/serialized-type.js +35 -56
  75. package/dist/types/serialized-type.js.map +1 -1
  76. package/dist/types/st-array.js +26 -46
  77. package/dist/types/st-array.js.map +1 -1
  78. package/dist/types/st-object.d.ts +6 -3
  79. package/dist/types/st-object.js +52 -74
  80. package/dist/types/st-object.js.map +1 -1
  81. package/dist/types/uint-16.js +15 -32
  82. package/dist/types/uint-16.js.map +1 -1
  83. package/dist/types/uint-32.js +16 -33
  84. package/dist/types/uint-32.js.map +1 -1
  85. package/dist/types/uint-64.d.ts +1 -1
  86. package/dist/types/uint-64.js +30 -47
  87. package/dist/types/uint-64.js.map +1 -1
  88. package/dist/types/uint-8.js +15 -32
  89. package/dist/types/uint-8.js.map +1 -1
  90. package/dist/types/uint.d.ts +1 -1
  91. package/dist/types/uint.js +10 -27
  92. package/dist/types/uint.js.map +1 -1
  93. package/dist/types/vector-256.js +23 -40
  94. package/dist/types/vector-256.js.map +1 -1
  95. package/dist/types/xchain-bridge.js +44 -61
  96. package/dist/types/xchain-bridge.js.map +1 -1
  97. package/package.json +7 -7
  98. package/test/amount.test.js +1 -1
  99. package/test/binary-json.test.js +1 -1
  100. package/test/binary-parser.test.js +4 -4
  101. package/test/binary-serializer.test.js +3 -3
  102. package/test/definitions.test.js +100 -0
  103. package/test/fixtures/codec-fixtures.json +136 -196
  104. package/test/hash.test.js +28 -2
  105. package/test/ledger.test.js +1 -1
  106. package/test/lower-case-hex.test.js +1 -1
  107. package/test/pseudo-transaction.test.js +1 -1
  108. package/test/quality.test.js +1 -1
  109. package/test/shamap.test.js +3 -3
  110. package/test/signing-data-encoding.test.js +128 -3
  111. package/test/tx-encode-decode.test.js +1 -1
  112. package/test/types.test.js +2 -2
  113. package/test/uint.test.js +2 -2
  114. package/test/x-address.test.js +1 -1
  115. package/dist/types/issued-currency.d.ts +0 -46
  116. package/dist/types/issued-currency.js +0 -108
  117. package/dist/types/issued-currency.js.map +0 -1
  118. package/dist/types/xchain-attestation-batch.d.ts +0 -44
  119. package/dist/types/xchain-attestation-batch.js +0 -107
  120. package/dist/types/xchain-attestation-batch.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { XrplDefinitionsBase } from '../enums';
1
2
  import { SerializedType, JsonObject } from './serialized-type';
2
3
  import { BinaryParser } from '../serdes/binary-parser';
3
4
  /**
@@ -16,14 +17,16 @@ declare class STObject extends SerializedType {
16
17
  *
17
18
  * @param value An object to include
18
19
  * @param filter optional, denote which field to include in serialized object
20
+ * @param definitions optional, types and values to use to encode/decode a transaction
19
21
  * @returns a STObject object
20
22
  */
21
- static from<T extends STObject | JsonObject>(value: T, filter?: (...any: any[]) => boolean): STObject;
23
+ static from<T extends STObject | JsonObject>(value: T, filter?: (...any: any[]) => boolean, definitions?: XrplDefinitionsBase): STObject;
22
24
  /**
23
25
  * Get the JSON interpretation of this.bytes
24
- *
26
+ * @param definitions rippled definitions used to parse the values of transaction types and such.
27
+ * Can be customized for sidechains and amendments.
25
28
  * @returns a JSON object
26
29
  */
27
- toJSON(): JsonObject;
30
+ toJSON(definitions?: XrplDefinitionsBase): JsonObject;
28
31
  }
29
32
  export { STObject };
@@ -1,34 +1,19 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.STObject = void 0;
19
- var enums_1 = require("../enums");
20
- var serialized_type_1 = require("./serialized-type");
21
- var ripple_address_codec_1 = require("ripple-address-codec");
22
- var binary_parser_1 = require("../serdes/binary-parser");
23
- var binary_serializer_1 = require("../serdes/binary-serializer");
24
- var buffer_1 = require("buffer/");
25
- var OBJECT_END_MARKER_BYTE = buffer_1.Buffer.from([0xe1]);
26
- var OBJECT_END_MARKER = 'ObjectEndMarker';
27
- var ST_OBJECT = 'STObject';
28
- var DESTINATION = 'Destination';
29
- var ACCOUNT = 'Account';
30
- var SOURCE_TAG = 'SourceTag';
31
- var DEST_TAG = 'DestinationTag';
4
+ const enums_1 = require("../enums");
5
+ const serialized_type_1 = require("./serialized-type");
6
+ const ripple_address_codec_1 = require("ripple-address-codec");
7
+ const binary_parser_1 = require("../serdes/binary-parser");
8
+ const binary_serializer_1 = require("../serdes/binary-serializer");
9
+ const buffer_1 = require("buffer/");
10
+ const OBJECT_END_MARKER_BYTE = buffer_1.Buffer.from([0xe1]);
11
+ const OBJECT_END_MARKER = 'ObjectEndMarker';
12
+ const ST_OBJECT = 'STObject';
13
+ const DESTINATION = 'Destination';
14
+ const ACCOUNT = 'Account';
15
+ const SOURCE_TAG = 'SourceTag';
16
+ const DEST_TAG = 'DestinationTag';
32
17
  /**
33
18
  * Break down an X-Address into an account and a tag
34
19
  *
@@ -36,17 +21,17 @@ var DEST_TAG = 'DestinationTag';
36
21
  * @param xAddress X-Address corresponding to the field
37
22
  */
38
23
  function handleXAddress(field, xAddress) {
39
- var _a, _b;
40
- var decoded = (0, ripple_address_codec_1.xAddressToClassicAddress)(xAddress);
41
- var tagName;
24
+ const decoded = (0, ripple_address_codec_1.xAddressToClassicAddress)(xAddress);
25
+ let tagName;
42
26
  if (field === DESTINATION)
43
27
  tagName = DEST_TAG;
44
28
  else if (field === ACCOUNT)
45
29
  tagName = SOURCE_TAG;
46
30
  else if (decoded.tag !== false)
47
- throw new Error("".concat(field, " cannot have an associated tag"));
31
+ throw new Error(`${field} cannot have an associated tag`);
48
32
  return decoded.tag !== false
49
- ? (_a = {}, _a[field] = decoded.classicAddress, _a[tagName] = decoded.tag, _a) : (_b = {}, _b[field] = decoded.classicAddress, _b);
33
+ ? { [field]: decoded.classicAddress, [tagName]: decoded.tag }
34
+ : { [field]: decoded.classicAddress };
50
35
  }
51
36
  /**
52
37
  * Validate that two objects don't both have the same tag fields
@@ -64,74 +49,67 @@ function checkForDuplicateTags(obj1, obj2) {
64
49
  /**
65
50
  * Class for Serializing/Deserializing objects
66
51
  */
67
- var STObject = /** @class */ (function (_super) {
68
- __extends(STObject, _super);
69
- function STObject() {
70
- return _super !== null && _super.apply(this, arguments) || this;
71
- }
52
+ class STObject extends serialized_type_1.SerializedType {
72
53
  /**
73
54
  * Construct a STObject from a BinaryParser
74
55
  *
75
56
  * @param parser BinaryParser to read STObject from
76
57
  * @returns A STObject object
77
58
  */
78
- STObject.fromParser = function (parser) {
79
- var list = new binary_serializer_1.BytesList();
80
- var bytes = new binary_serializer_1.BinarySerializer(list);
59
+ static fromParser(parser) {
60
+ const list = new binary_serializer_1.BytesList();
61
+ const bytes = new binary_serializer_1.BinarySerializer(list);
81
62
  while (!parser.end()) {
82
- var field = parser.readField();
63
+ const field = parser.readField();
83
64
  if (field.name === OBJECT_END_MARKER) {
84
65
  break;
85
66
  }
86
- var associatedValue = parser.readFieldValue(field);
67
+ const associatedValue = parser.readFieldValue(field);
87
68
  bytes.writeFieldAndValue(field, associatedValue);
88
69
  if (field.type.name === ST_OBJECT) {
89
70
  bytes.put(OBJECT_END_MARKER_BYTE);
90
71
  }
91
72
  }
92
73
  return new STObject(list.toBytes());
93
- };
74
+ }
94
75
  /**
95
76
  * Construct a STObject from a JSON object
96
77
  *
97
78
  * @param value An object to include
98
79
  * @param filter optional, denote which field to include in serialized object
80
+ * @param definitions optional, types and values to use to encode/decode a transaction
99
81
  * @returns a STObject object
100
82
  */
101
- STObject.from = function (value, filter) {
83
+ static from(value, filter, definitions = enums_1.DEFAULT_DEFINITIONS) {
102
84
  if (value instanceof STObject) {
103
85
  return value;
104
86
  }
105
- var list = new binary_serializer_1.BytesList();
106
- var bytes = new binary_serializer_1.BinarySerializer(list);
107
- var isUnlModify = false;
108
- var xAddressDecoded = Object.entries(value).reduce(function (acc, _a) {
109
- var _b;
110
- var key = _a[0], val = _a[1];
111
- var handled = undefined;
87
+ const list = new binary_serializer_1.BytesList();
88
+ const bytes = new binary_serializer_1.BinarySerializer(list);
89
+ let isUnlModify = false;
90
+ const xAddressDecoded = Object.entries(value).reduce((acc, [key, val]) => {
91
+ let handled = undefined;
112
92
  if (val && (0, ripple_address_codec_1.isValidXAddress)(val.toString())) {
113
93
  handled = handleXAddress(key, val.toString());
114
94
  checkForDuplicateTags(handled, value);
115
95
  }
116
- return Object.assign(acc, handled !== null && handled !== void 0 ? handled : (_b = {}, _b[key] = val, _b));
96
+ return Object.assign(acc, handled !== null && handled !== void 0 ? handled : { [key]: val });
117
97
  }, {});
118
- var sorted = Object.keys(xAddressDecoded)
119
- .map(function (f) { return enums_1.Field[f]; })
120
- .filter(function (f) {
121
- return f !== undefined &&
122
- xAddressDecoded[f.name] !== undefined &&
123
- f.isSerialized;
124
- })
125
- .sort(function (a, b) {
98
+ let sorted = Object.keys(xAddressDecoded)
99
+ .map((f) => definitions.field[f])
100
+ .filter((f) => f !== undefined &&
101
+ xAddressDecoded[f.name] !== undefined &&
102
+ f.isSerialized)
103
+ .sort((a, b) => {
126
104
  return a.ordinal - b.ordinal;
127
105
  });
128
106
  if (filter !== undefined) {
129
107
  sorted = sorted.filter(filter);
130
108
  }
131
- sorted.forEach(function (field) {
132
- var associatedValue = field.associatedType.from(xAddressDecoded[field.name]);
109
+ sorted.forEach((field) => {
110
+ const associatedValue = field.associatedType.from(xAddressDecoded[field.name]);
133
111
  if (associatedValue == undefined) {
134
- throw new TypeError("Unable to interpret \"".concat(field.name, ": ").concat(xAddressDecoded[field.name], "\"."));
112
+ throw new TypeError(`Unable to interpret "${field.name}: ${xAddressDecoded[field.name]}".`);
135
113
  }
136
114
  if (associatedValue.name === 'UNLModify') {
137
115
  // triggered when the TransactionType field has a value of 'UNLModify'
@@ -140,32 +118,32 @@ var STObject = /** @class */ (function (_super) {
140
118
  // true when in the UNLModify pseudotransaction (after the transaction type has been processed) and working with the
141
119
  // Account field
142
120
  // The Account field must not be a part of the UNLModify pseudotransaction encoding, due to a bug in rippled
143
- var isUnlModifyWorkaround = field.name == 'Account' && isUnlModify;
121
+ const isUnlModifyWorkaround = field.name == 'Account' && isUnlModify;
144
122
  bytes.writeFieldAndValue(field, associatedValue, isUnlModifyWorkaround);
145
123
  if (field.type.name === ST_OBJECT) {
146
124
  bytes.put(OBJECT_END_MARKER_BYTE);
147
125
  }
148
126
  });
149
127
  return new STObject(list.toBytes());
150
- };
128
+ }
151
129
  /**
152
130
  * Get the JSON interpretation of this.bytes
153
- *
131
+ * @param definitions rippled definitions used to parse the values of transaction types and such.
132
+ * Can be customized for sidechains and amendments.
154
133
  * @returns a JSON object
155
134
  */
156
- STObject.prototype.toJSON = function () {
157
- var objectParser = new binary_parser_1.BinaryParser(this.toString());
158
- var accumulator = {};
135
+ toJSON(definitions) {
136
+ const objectParser = new binary_parser_1.BinaryParser(this.toString(), definitions);
137
+ const accumulator = {};
159
138
  while (!objectParser.end()) {
160
- var field = objectParser.readField();
139
+ const field = objectParser.readField();
161
140
  if (field.name === OBJECT_END_MARKER) {
162
141
  break;
163
142
  }
164
143
  accumulator[field.name] = objectParser.readFieldValue(field).toJSON();
165
144
  }
166
145
  return accumulator;
167
- };
168
- return STObject;
169
- }(serialized_type_1.SerializedType));
146
+ }
147
+ }
170
148
  exports.STObject = STObject;
171
149
  //# sourceMappingURL=st-object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"st-object.js","sourceRoot":"","sources":["../../src/types/st-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"st-object.js","sourceRoot":"","sources":["../../src/types/st-object.ts"],"names":[],"mappings":"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"}
@@ -1,61 +1,44 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.UInt16 = void 0;
19
- var uint_1 = require("./uint");
20
- var buffer_1 = require("buffer/");
4
+ const uint_1 = require("./uint");
5
+ const buffer_1 = require("buffer/");
21
6
  /**
22
7
  * Derived UInt class for serializing/deserializing 16 bit UInt
23
8
  */
24
- var UInt16 = /** @class */ (function (_super) {
25
- __extends(UInt16, _super);
26
- function UInt16(bytes) {
27
- return _super.call(this, bytes !== null && bytes !== void 0 ? bytes : UInt16.defaultUInt16.bytes) || this;
9
+ class UInt16 extends uint_1.UInt {
10
+ constructor(bytes) {
11
+ super(bytes !== null && bytes !== void 0 ? bytes : UInt16.defaultUInt16.bytes);
28
12
  }
29
- UInt16.fromParser = function (parser) {
13
+ static fromParser(parser) {
30
14
  return new UInt16(parser.read(UInt16.width));
31
- };
15
+ }
32
16
  /**
33
17
  * Construct a UInt16 object from a number
34
18
  *
35
19
  * @param val UInt16 object or number
36
20
  */
37
- UInt16.from = function (val) {
21
+ static from(val) {
38
22
  if (val instanceof UInt16) {
39
23
  return val;
40
24
  }
41
25
  if (typeof val === 'number') {
42
- var buf = buffer_1.Buffer.alloc(UInt16.width);
26
+ const buf = buffer_1.Buffer.alloc(UInt16.width);
43
27
  buf.writeUInt16BE(val, 0);
44
28
  return new UInt16(buf);
45
29
  }
46
30
  throw new Error('Can not construct UInt16 with given value');
47
- };
31
+ }
48
32
  /**
49
33
  * get the value of a UInt16 object
50
34
  *
51
35
  * @returns the number represented by this.bytes
52
36
  */
53
- UInt16.prototype.valueOf = function () {
37
+ valueOf() {
54
38
  return this.bytes.readUInt16BE(0);
55
- };
56
- UInt16.width = 16 / 8; // 2
57
- UInt16.defaultUInt16 = new UInt16(buffer_1.Buffer.alloc(UInt16.width));
58
- return UInt16;
59
- }(uint_1.UInt));
39
+ }
40
+ }
60
41
  exports.UInt16 = UInt16;
42
+ UInt16.width = 16 / 8; // 2
43
+ UInt16.defaultUInt16 = new UInt16(buffer_1.Buffer.alloc(UInt16.width));
61
44
  //# sourceMappingURL=uint-16.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uint-16.js","sourceRoot":"","sources":["../../src/types/uint-16.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,+BAA6B;AAE7B,kCAAgC;AAEhC;;GAEG;AACH;IAAqB,0BAAI;IAIvB,gBAAY,KAAa;eACvB,kBAAM,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,CAAC;IAEM,iBAAU,GAAjB,UAAkB,MAAoB;QACpC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACI,WAAI,GAAX,UAAuC,GAAM;QAC3C,IAAI,GAAG,YAAY,MAAM,EAAE;YACzB,OAAO,GAAG,CAAA;SACX;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,IAAM,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,wBAAO,GAAP;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;IArCyB,YAAK,GAAW,EAAE,GAAG,CAAC,CAAA,CAAC,IAAI;IACrC,oBAAa,GAAW,IAAI,MAAM,CAAC,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAqChF,aAAC;CAAA,AAvCD,CAAqB,WAAI,GAuCxB;AAEQ,wBAAM"}
1
+ {"version":3,"file":"uint-16.js","sourceRoot":"","sources":["../../src/types/uint-16.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAE7B,oCAAgC;AAEhC;;GAEG;AACH,MAAM,MAAO,SAAQ,WAAI;IAIvB,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAA4B,GAAM;QAC3C,IAAI,GAAG,YAAY,MAAM,EAAE;YACzB,OAAO,GAAG,CAAA;SACX;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;;AAGM,wBAAM;AAxCa,YAAK,GAAW,EAAE,GAAG,CAAC,CAAA,CAAC,IAAI;AACrC,oBAAa,GAAW,IAAI,MAAM,CAAC,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA"}
@@ -1,46 +1,30 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.UInt32 = void 0;
19
- var uint_1 = require("./uint");
20
- var buffer_1 = require("buffer/");
4
+ const uint_1 = require("./uint");
5
+ const buffer_1 = require("buffer/");
21
6
  /**
22
7
  * Derived UInt class for serializing/deserializing 32 bit UInt
23
8
  */
24
- var UInt32 = /** @class */ (function (_super) {
25
- __extends(UInt32, _super);
26
- function UInt32(bytes) {
27
- return _super.call(this, bytes !== null && bytes !== void 0 ? bytes : UInt32.defaultUInt32.bytes) || this;
9
+ class UInt32 extends uint_1.UInt {
10
+ constructor(bytes) {
11
+ super(bytes !== null && bytes !== void 0 ? bytes : UInt32.defaultUInt32.bytes);
28
12
  }
29
- UInt32.fromParser = function (parser) {
13
+ static fromParser(parser) {
30
14
  return new UInt32(parser.read(UInt32.width));
31
- };
15
+ }
32
16
  /**
33
17
  * Construct a UInt32 object from a number
34
18
  *
35
19
  * @param val UInt32 object or number
36
20
  */
37
- UInt32.from = function (val) {
21
+ static from(val) {
38
22
  if (val instanceof UInt32) {
39
23
  return val;
40
24
  }
41
- var buf = buffer_1.Buffer.alloc(UInt32.width);
25
+ const buf = buffer_1.Buffer.alloc(UInt32.width);
42
26
  if (typeof val === 'string') {
43
- var num = Number.parseInt(val);
27
+ const num = Number.parseInt(val);
44
28
  buf.writeUInt32BE(num, 0);
45
29
  return new UInt32(buf);
46
30
  }
@@ -49,18 +33,17 @@ var UInt32 = /** @class */ (function (_super) {
49
33
  return new UInt32(buf);
50
34
  }
51
35
  throw new Error('Cannot construct UInt32 from given value');
52
- };
36
+ }
53
37
  /**
54
38
  * get the value of a UInt32 object
55
39
  *
56
40
  * @returns the number represented by this.bytes
57
41
  */
58
- UInt32.prototype.valueOf = function () {
42
+ valueOf() {
59
43
  return this.bytes.readUInt32BE(0);
60
- };
61
- UInt32.width = 32 / 8; // 4
62
- UInt32.defaultUInt32 = new UInt32(buffer_1.Buffer.alloc(UInt32.width));
63
- return UInt32;
64
- }(uint_1.UInt));
44
+ }
45
+ }
65
46
  exports.UInt32 = UInt32;
47
+ UInt32.width = 32 / 8; // 4
48
+ UInt32.defaultUInt32 = new UInt32(buffer_1.Buffer.alloc(UInt32.width));
66
49
  //# sourceMappingURL=uint-32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uint-32.js","sourceRoot":"","sources":["../../src/types/uint-32.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,+BAA6B;AAE7B,kCAAgC;AAEhC;;GAEG;AACH;IAAqB,0BAAI;IAIvB,gBAAY,KAAa;eACvB,kBAAM,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,CAAC;IAEM,iBAAU,GAAjB,UAAkB,MAAoB;QACpC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACI,WAAI,GAAX,UAAgD,GAAM;QACpD,IAAI,GAAG,YAAY,MAAM,EAAE;YACzB,OAAO,GAAG,CAAA;SACX;QAED,IAAM,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAEtC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,IAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YAChC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;OAIG;IACH,wBAAO,GAAP;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;IA5CyB,YAAK,GAAW,EAAE,GAAG,CAAC,CAAA,CAAC,IAAI;IACrC,oBAAa,GAAW,IAAI,MAAM,CAAC,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IA4ChF,aAAC;CAAA,AA9CD,CAAqB,WAAI,GA8CxB;AAEQ,wBAAM"}
1
+ {"version":3,"file":"uint-32.js","sourceRoot":"","sources":["../../src/types/uint-32.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAE7B,oCAAgC;AAEhC;;GAEG;AACH,MAAM,MAAO,SAAQ,WAAI;IAIvB,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAqC,GAAM;QACpD,IAAI,GAAG,YAAY,MAAM,EAAE;YACzB,OAAO,GAAG,CAAA;SACX;QAED,MAAM,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAEtC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YAChC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzB,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;SACvB;QAED,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC7D,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;;AAGM,wBAAM;AA/Ca,YAAK,GAAW,EAAE,GAAG,CAAC,CAAA,CAAC,IAAI;AACrC,oBAAa,GAAW,IAAI,MAAM,CAAC,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { UInt } from './uint';
2
2
  import { BinaryParser } from '../serdes/binary-parser';
3
- import * as bigInt from 'big-integer';
3
+ import bigInt = require('big-integer');
4
4
  import { Buffer } from 'buffer/';
5
5
  /**
6
6
  * Derived UInt class for serializing/deserializing 64 bit UInt
@@ -1,104 +1,87 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.UInt64 = void 0;
19
- var uint_1 = require("./uint");
20
- var bigInt = require("big-integer");
21
- var big_integer_1 = require("big-integer");
22
- var buffer_1 = require("buffer/");
23
- var HEX_REGEX = /^[a-fA-F0-9]{1,16}$/;
24
- var mask = bigInt(0x00000000ffffffff);
4
+ const uint_1 = require("./uint");
5
+ const bigInt = require("big-integer");
6
+ const big_integer_1 = require("big-integer");
7
+ const buffer_1 = require("buffer/");
8
+ const HEX_REGEX = /^[a-fA-F0-9]{1,16}$/;
9
+ const mask = bigInt(0x00000000ffffffff);
25
10
  /**
26
11
  * Derived UInt class for serializing/deserializing 64 bit UInt
27
12
  */
28
- var UInt64 = /** @class */ (function (_super) {
29
- __extends(UInt64, _super);
30
- function UInt64(bytes) {
31
- return _super.call(this, bytes !== null && bytes !== void 0 ? bytes : UInt64.defaultUInt64.bytes) || this;
13
+ class UInt64 extends uint_1.UInt {
14
+ constructor(bytes) {
15
+ super(bytes !== null && bytes !== void 0 ? bytes : UInt64.defaultUInt64.bytes);
32
16
  }
33
- UInt64.fromParser = function (parser) {
17
+ static fromParser(parser) {
34
18
  return new UInt64(parser.read(UInt64.width));
35
- };
19
+ }
36
20
  /**
37
21
  * Construct a UInt64 object
38
22
  *
39
23
  * @param val A UInt64, hex-string, bigInt, or number
40
24
  * @returns A UInt64 object
41
25
  */
42
- UInt64.from = function (val) {
26
+ static from(val) {
43
27
  if (val instanceof UInt64) {
44
28
  return val;
45
29
  }
46
- var buf = buffer_1.Buffer.alloc(UInt64.width);
30
+ let buf = buffer_1.Buffer.alloc(UInt64.width);
47
31
  if (typeof val === 'number') {
48
32
  if (val < 0) {
49
33
  throw new Error('value must be an unsigned integer');
50
34
  }
51
- var number = bigInt(val);
52
- var intBuf = [buffer_1.Buffer.alloc(4), buffer_1.Buffer.alloc(4)];
35
+ const number = bigInt(val);
36
+ const intBuf = [buffer_1.Buffer.alloc(4), buffer_1.Buffer.alloc(4)];
53
37
  intBuf[0].writeUInt32BE(Number(number.shiftRight(32)), 0);
54
38
  intBuf[1].writeUInt32BE(Number(number.and(mask)), 0);
55
39
  return new UInt64(buffer_1.Buffer.concat(intBuf));
56
40
  }
57
41
  if (typeof val === 'string') {
58
42
  if (!HEX_REGEX.test(val)) {
59
- throw new Error("".concat(val, " is not a valid hex-string"));
43
+ throw new Error(`${val} is not a valid hex-string`);
60
44
  }
61
- var strBuf = val.padStart(16, '0');
45
+ const strBuf = val.padStart(16, '0');
62
46
  buf = buffer_1.Buffer.from(strBuf, 'hex');
63
47
  return new UInt64(buf);
64
48
  }
65
49
  if ((0, big_integer_1.isInstance)(val)) {
66
- var intBuf = [buffer_1.Buffer.alloc(4), buffer_1.Buffer.alloc(4)];
50
+ const intBuf = [buffer_1.Buffer.alloc(4), buffer_1.Buffer.alloc(4)];
67
51
  intBuf[0].writeUInt32BE(Number(val.shiftRight(bigInt(32))), 0);
68
52
  intBuf[1].writeUInt32BE(Number(val.and(mask)), 0);
69
53
  return new UInt64(buffer_1.Buffer.concat(intBuf));
70
54
  }
71
55
  throw new Error('Cannot construct UInt64 from given value');
72
- };
56
+ }
73
57
  /**
74
58
  * The JSON representation of a UInt64 object
75
59
  *
76
60
  * @returns a hex-string
77
61
  */
78
- UInt64.prototype.toJSON = function () {
62
+ toJSON() {
79
63
  return this.bytes.toString('hex').toUpperCase();
80
- };
64
+ }
81
65
  /**
82
66
  * Get the value of the UInt64
83
67
  *
84
68
  * @returns the number represented buy this.bytes
85
69
  */
86
- UInt64.prototype.valueOf = function () {
87
- var msb = bigInt(this.bytes.slice(0, 4).readUInt32BE(0));
88
- var lsb = bigInt(this.bytes.slice(4).readUInt32BE(0));
70
+ valueOf() {
71
+ const msb = bigInt(this.bytes.slice(0, 4).readUInt32BE(0));
72
+ const lsb = bigInt(this.bytes.slice(4).readUInt32BE(0));
89
73
  return msb.shiftLeft(bigInt(32)).or(lsb);
90
- };
74
+ }
91
75
  /**
92
76
  * Get the bytes representation of the UInt64 object
93
77
  *
94
78
  * @returns 8 bytes representing the UInt64
95
79
  */
96
- UInt64.prototype.toBytes = function () {
80
+ toBytes() {
97
81
  return this.bytes;
98
- };
99
- UInt64.width = 64 / 8; // 8
100
- UInt64.defaultUInt64 = new UInt64(buffer_1.Buffer.alloc(UInt64.width));
101
- return UInt64;
102
- }(uint_1.UInt));
82
+ }
83
+ }
103
84
  exports.UInt64 = UInt64;
85
+ UInt64.width = 64 / 8; // 8
86
+ UInt64.defaultUInt64 = new UInt64(buffer_1.Buffer.alloc(UInt64.width));
104
87
  //# sourceMappingURL=uint-64.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uint-64.js","sourceRoot":"","sources":["../../src/types/uint-64.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uint-64.js","sourceRoot":"","sources":["../../src/types/uint-64.ts"],"names":[],"mappings":"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"}