ripple-binary-codec 1.4.2 → 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 +28 -2
  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
package/dist/binary.js CHANGED
@@ -2,24 +2,24 @@
2
2
  /* eslint-disable func-style */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.transactionID = exports.sha512Half = exports.binaryToJSON = exports.signingClaimData = exports.signingData = exports.multiSigningData = exports.readJSON = exports.serializeObject = exports.makeParser = exports.BytesList = exports.BinarySerializer = exports.BinaryParser = void 0;
5
- var types_1 = require("./types");
6
- var binary_parser_1 = require("./serdes/binary-parser");
5
+ const types_1 = require("./types");
6
+ const binary_parser_1 = require("./serdes/binary-parser");
7
7
  Object.defineProperty(exports, "BinaryParser", { enumerable: true, get: function () { return binary_parser_1.BinaryParser; } });
8
- var hash_prefixes_1 = require("./hash-prefixes");
9
- var binary_serializer_1 = require("./serdes/binary-serializer");
8
+ const hash_prefixes_1 = require("./hash-prefixes");
9
+ const binary_serializer_1 = require("./serdes/binary-serializer");
10
10
  Object.defineProperty(exports, "BinarySerializer", { enumerable: true, get: function () { return binary_serializer_1.BinarySerializer; } });
11
11
  Object.defineProperty(exports, "BytesList", { enumerable: true, get: function () { return binary_serializer_1.BytesList; } });
12
- var hashes_1 = require("./hashes");
12
+ const hashes_1 = require("./hashes");
13
13
  Object.defineProperty(exports, "sha512Half", { enumerable: true, get: function () { return hashes_1.sha512Half; } });
14
14
  Object.defineProperty(exports, "transactionID", { enumerable: true, get: function () { return hashes_1.transactionID; } });
15
- var bigInt = require("big-integer");
15
+ const bigInt = require("big-integer");
16
16
  /**
17
17
  * Construct a BinaryParser
18
18
  *
19
19
  * @param bytes hex-string to construct BinaryParser from
20
20
  * @returns A BinaryParser
21
21
  */
22
- var makeParser = function (bytes) { return new binary_parser_1.BinaryParser(bytes); };
22
+ const makeParser = (bytes) => new binary_parser_1.BinaryParser(bytes);
23
23
  exports.makeParser = makeParser;
24
24
  /**
25
25
  * Parse BinaryParser into JSON
@@ -27,9 +27,7 @@ exports.makeParser = makeParser;
27
27
  * @param parser BinaryParser object
28
28
  * @returns JSON for the bytes in the BinaryParser
29
29
  */
30
- var readJSON = function (parser) {
31
- return parser.readType(types_1.coreTypes.STObject).toJSON();
32
- };
30
+ const readJSON = (parser) => parser.readType(types_1.coreTypes.STObject).toJSON();
33
31
  exports.readJSON = readJSON;
34
32
  /**
35
33
  * Parse a hex-string into its JSON interpretation
@@ -37,7 +35,7 @@ exports.readJSON = readJSON;
37
35
  * @param bytes hex-string to parse into JSON
38
36
  * @returns JSON
39
37
  */
40
- var binaryToJSON = function (bytes) { return readJSON(makeParser(bytes)); };
38
+ const binaryToJSON = (bytes) => readJSON(makeParser(bytes));
41
39
  exports.binaryToJSON = binaryToJSON;
42
40
  /**
43
41
  * Function to serialize JSON object representing a transaction
@@ -46,15 +44,14 @@ exports.binaryToJSON = binaryToJSON;
46
44
  * @param opts options for serializing, including optional prefix, suffix, and signingFieldOnly
47
45
  * @returns A Buffer containing the serialized object
48
46
  */
49
- function serializeObject(object, opts) {
50
- if (opts === void 0) { opts = {}; }
51
- var prefix = opts.prefix, suffix = opts.suffix, _a = opts.signingFieldsOnly, signingFieldsOnly = _a === void 0 ? false : _a;
52
- var bytesList = new binary_serializer_1.BytesList();
47
+ function serializeObject(object, opts = {}) {
48
+ const { prefix, suffix, signingFieldsOnly = false } = opts;
49
+ const bytesList = new binary_serializer_1.BytesList();
53
50
  if (prefix) {
54
51
  bytesList.put(prefix);
55
52
  }
56
- var filter = signingFieldsOnly
57
- ? function (f) { return f.isSigningField; }
53
+ const filter = signingFieldsOnly
54
+ ? (f) => f.isSigningField
58
55
  : undefined;
59
56
  types_1.coreTypes.STObject.from(object, filter).toBytesSink(bytesList);
60
57
  if (suffix) {
@@ -70,9 +67,8 @@ exports.serializeObject = serializeObject;
70
67
  * @param prefix Prefix bytes to put before the serialized object
71
68
  * @returns A Buffer with the serialized object
72
69
  */
73
- function signingData(transaction, prefix) {
74
- if (prefix === void 0) { prefix = hash_prefixes_1.HashPrefix.transactionSig; }
75
- return serializeObject(transaction, { prefix: prefix, signingFieldsOnly: true });
70
+ function signingData(transaction, prefix = hash_prefixes_1.HashPrefix.transactionSig) {
71
+ return serializeObject(transaction, { prefix, signingFieldsOnly: true });
76
72
  }
77
73
  exports.signingData = signingData;
78
74
  /**
@@ -82,11 +78,11 @@ exports.signingData = signingData;
82
78
  * @returns the serialized object with appropriate prefix
83
79
  */
84
80
  function signingClaimData(claim) {
85
- var num = bigInt(String(claim.amount));
86
- var prefix = hash_prefixes_1.HashPrefix.paymentChannelClaim;
87
- var channel = types_1.coreTypes.Hash256.from(claim.channel).toBytes();
88
- var amount = types_1.coreTypes.UInt64.from(num).toBytes();
89
- var bytesList = new binary_serializer_1.BytesList();
81
+ const num = bigInt(String(claim.amount));
82
+ const prefix = hash_prefixes_1.HashPrefix.paymentChannelClaim;
83
+ const channel = types_1.coreTypes.Hash256.from(claim.channel).toBytes();
84
+ const amount = types_1.coreTypes.UInt64.from(num).toBytes();
85
+ const bytesList = new binary_serializer_1.BytesList();
90
86
  bytesList.put(prefix);
91
87
  bytesList.put(channel);
92
88
  bytesList.put(amount);
@@ -101,11 +97,11 @@ exports.signingClaimData = signingClaimData;
101
97
  * @returns serialized transaction with appropriate prefix and suffix
102
98
  */
103
99
  function multiSigningData(transaction, signingAccount) {
104
- var prefix = hash_prefixes_1.HashPrefix.transactionMultiSig;
105
- var suffix = types_1.coreTypes.AccountID.from(signingAccount).toBytes();
100
+ const prefix = hash_prefixes_1.HashPrefix.transactionMultiSig;
101
+ const suffix = types_1.coreTypes.AccountID.from(signingAccount).toBytes();
106
102
  return serializeObject(transaction, {
107
- prefix: prefix,
108
- suffix: suffix,
103
+ prefix,
104
+ suffix,
109
105
  signingFieldsOnly: true,
110
106
  });
111
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"binary.js","sourceRoot":"","sources":["../src/binary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binary.js","sourceRoot":"","sources":["../src/binary.ts"],"names":[],"mappings":"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"}
package/dist/coretypes.js CHANGED
@@ -1,24 +1,47 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.types = exports.ShaMap = exports.HashPrefix = exports.quality = exports.TransactionResult = exports.Type = exports.LedgerEntryType = exports.TransactionType = exports.Field = exports.ledgerHashes = exports.binary = exports.hashes = void 0;
4
- var enums_1 = require("./enums");
27
+ const enums_1 = require("./enums");
5
28
  Object.defineProperty(exports, "Field", { enumerable: true, get: function () { return enums_1.Field; } });
6
29
  Object.defineProperty(exports, "TransactionType", { enumerable: true, get: function () { return enums_1.TransactionType; } });
7
30
  Object.defineProperty(exports, "LedgerEntryType", { enumerable: true, get: function () { return enums_1.LedgerEntryType; } });
8
31
  Object.defineProperty(exports, "Type", { enumerable: true, get: function () { return enums_1.Type; } });
9
32
  Object.defineProperty(exports, "TransactionResult", { enumerable: true, get: function () { return enums_1.TransactionResult; } });
10
- var types = require("./types");
33
+ const types = __importStar(require("./types"));
11
34
  exports.types = types;
12
- var binary = require("./binary");
35
+ const binary = __importStar(require("./binary"));
13
36
  exports.binary = binary;
14
- var shamap_1 = require("./shamap");
37
+ const shamap_1 = require("./shamap");
15
38
  Object.defineProperty(exports, "ShaMap", { enumerable: true, get: function () { return shamap_1.ShaMap; } });
16
- var ledgerHashes = require("./ledger-hashes");
39
+ const ledgerHashes = __importStar(require("./ledger-hashes"));
17
40
  exports.ledgerHashes = ledgerHashes;
18
- var hashes = require("./hashes");
41
+ const hashes = __importStar(require("./hashes"));
19
42
  exports.hashes = hashes;
20
- var quality_1 = require("./quality");
43
+ const quality_1 = require("./quality");
21
44
  Object.defineProperty(exports, "quality", { enumerable: true, get: function () { return quality_1.quality; } });
22
- var hash_prefixes_1 = require("./hash-prefixes");
45
+ const hash_prefixes_1 = require("./hash-prefixes");
23
46
  Object.defineProperty(exports, "HashPrefix", { enumerable: true, get: function () { return hash_prefixes_1.HashPrefix; } });
24
47
  //# sourceMappingURL=coretypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coretypes.js","sourceRoot":"","sources":["../src/coretypes.ts"],"names":[],"mappings":";;;AAAA,iCAMgB;AAad,sFAlBA,aAAK,OAkBA;AACL,gGAlBA,uBAAe,OAkBA;AACf,gGAlBA,uBAAe,OAkBA;AACf,qFAlBA,YAAI,OAkBA;AACJ,kGAlBA,yBAAiB,OAkBA;AAhBnB,+BAAgC;AAoB9B,sBAAK;AAnBP,iCAAkC;AAShC,wBAAM;AARR,mCAAiC;AAiB/B,uFAjBO,eAAM,OAiBP;AAhBR,8CAA+C;AAQ7C,oCAAY;AAPd,iCAAkC;AAKhC,wBAAM;AAJR,qCAAmC;AAYjC,wFAZO,iBAAO,OAYP;AAXT,iDAA4C;AAY1C,2FAZO,0BAAU,OAYP"}
1
+ {"version":3,"file":"coretypes.js","sourceRoot":"","sources":["../src/coretypes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAMgB;AAad,sFAlBA,aAAK,OAkBA;AACL,gGAlBA,uBAAe,OAkBA;AACf,gGAlBA,uBAAe,OAkBA;AACf,qFAlBA,YAAI,OAkBA;AACJ,kGAlBA,yBAAiB,OAkBA;AAhBnB,+CAAgC;AAoB9B,sBAAK;AAnBP,iDAAkC;AAShC,wBAAM;AARR,qCAAiC;AAiB/B,uFAjBO,eAAM,OAiBP;AAhBR,8DAA+C;AAQ7C,oCAAY;AAPd,iDAAkC;AAKhC,wBAAM;AAJR,uCAAmC;AAYjC,wFAZO,iBAAO,OAYP;AAXT,mDAA4C;AAY1C,2FAZO,0BAAU,OAYP"}
@@ -0,0 +1,26 @@
1
+ import { BytesList, BinaryParser } from '../binary';
2
+ import { Buffer } from 'buffer/';
3
+ export declare class Bytes {
4
+ readonly name: string;
5
+ readonly ordinal: number;
6
+ readonly ordinalWidth: number;
7
+ readonly bytes: Buffer;
8
+ constructor(name: string, ordinal: number, ordinalWidth: number);
9
+ toJSON(): string;
10
+ toBytesSink(sink: BytesList): void;
11
+ toBytes(): Uint8Array;
12
+ }
13
+ export declare class BytesLookup {
14
+ readonly ordinalWidth: number;
15
+ constructor(types: Record<string, number>, ordinalWidth: number);
16
+ /**
17
+ * Add a new name value pair to the BytesLookup.
18
+ *
19
+ * @param name - A human readable name for the field.
20
+ * @param value - The numeric value for the field.
21
+ * @throws if the name or value already exist in the lookup because it's unclear how to decode.
22
+ */
23
+ add(name: string, value: number): void;
24
+ from(value: Bytes | string): Bytes;
25
+ fromParser(parser: BinaryParser): Bytes;
26
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BytesLookup = exports.Bytes = void 0;
4
+ const buffer_1 = require("buffer/");
5
+ /*
6
+ * @brief: Bytes, name, and ordinal representing one type, ledger_type, transaction type, or result
7
+ */
8
+ class Bytes {
9
+ constructor(name, ordinal, ordinalWidth) {
10
+ this.name = name;
11
+ this.ordinal = ordinal;
12
+ this.ordinalWidth = ordinalWidth;
13
+ this.bytes = buffer_1.Buffer.alloc(ordinalWidth);
14
+ for (let i = 0; i < ordinalWidth; i++) {
15
+ this.bytes[ordinalWidth - i - 1] = (ordinal >>> (i * 8)) & 0xff;
16
+ }
17
+ }
18
+ toJSON() {
19
+ return this.name;
20
+ }
21
+ toBytesSink(sink) {
22
+ sink.put(this.bytes);
23
+ }
24
+ toBytes() {
25
+ return this.bytes;
26
+ }
27
+ }
28
+ exports.Bytes = Bytes;
29
+ /*
30
+ * @brief: Collection of Bytes objects, mapping bidirectionally
31
+ */
32
+ class BytesLookup {
33
+ constructor(types, ordinalWidth) {
34
+ this.ordinalWidth = ordinalWidth;
35
+ Object.entries(types).forEach(([k, v]) => {
36
+ this.add(k, v);
37
+ });
38
+ }
39
+ /**
40
+ * Add a new name value pair to the BytesLookup.
41
+ *
42
+ * @param name - A human readable name for the field.
43
+ * @param value - The numeric value for the field.
44
+ * @throws if the name or value already exist in the lookup because it's unclear how to decode.
45
+ */
46
+ add(name, value) {
47
+ if (this[name]) {
48
+ throw new SyntaxError(`Attempted to add a value with a duplicate name "${name}". This is not allowed because it is unclear how to decode.`);
49
+ }
50
+ if (this[value.toString()]) {
51
+ throw new SyntaxError(`Attempted to add a duplicate value under a different name (Given name: "${name}" and previous name: "${this[value.toString()]}. This is not allowed because it is unclear how to decode.\nGiven value: ${value.toString()}`);
52
+ }
53
+ this[name] = new Bytes(name, value, this.ordinalWidth);
54
+ this[value.toString()] = this[name];
55
+ }
56
+ from(value) {
57
+ return value instanceof Bytes ? value : this[value];
58
+ }
59
+ fromParser(parser) {
60
+ return this.from(parser.readUIntN(this.ordinalWidth).toString());
61
+ }
62
+ }
63
+ exports.BytesLookup = BytesLookup;
64
+ //# sourceMappingURL=bytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../src/enums/bytes.ts"],"names":[],"mappings":";;;AACA,oCAAgC;AAEhC;;GAEG;AACH,MAAa,KAAK;IAGhB,YACW,IAAY,EACZ,OAAe,EACf,YAAoB;QAFpB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAQ;QACf,iBAAY,GAAZ,YAAY,CAAQ;QAE7B,IAAI,CAAC,KAAK,GAAG,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;SAChE;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,WAAW,CAAC,IAAe;QACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;CACF;AAzBD,sBAyBC;AAED;;GAEG;AACH,MAAa,WAAW;IACtB,YAAY,KAA6B,EAAW,YAAoB;QAApB,iBAAY,GAAZ,YAAY,CAAQ;QACtE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;YACvC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,IAAY,EAAE,KAAa;QAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE;YACd,MAAM,IAAI,WAAW,CACnB,mDAAmD,IAAI,6DAA6D,CACrH,CAAA;SACF;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE;YAC1B,MAAM,IAAI,WAAW,CACnB,2EAA2E,IAAI,yBAC7E,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CACvB,4EAA4E,KAAK,CAAC,QAAQ,EAAE,EAAE,CAC/F,CAAA;SACF;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QACtD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,CAAC,KAAqB;QACxB,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAW,CAAA;IAChE,CAAC;IAED,UAAU,CAAC,MAAoB;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IAClE,CAAC;CACF;AAtCD,kCAsCC"}
@@ -0,0 +1,4 @@
1
+ export declare const TYPE_WIDTH = 2;
2
+ export declare const LEDGER_ENTRY_WIDTH = 2;
3
+ export declare const TRANSACTION_TYPE_WIDTH = 2;
4
+ export declare const TRANSACTION_RESULT_WIDTH = 1;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TRANSACTION_RESULT_WIDTH = exports.TRANSACTION_TYPE_WIDTH = exports.LEDGER_ENTRY_WIDTH = exports.TYPE_WIDTH = void 0;
4
+ exports.TYPE_WIDTH = 2;
5
+ exports.LEDGER_ENTRY_WIDTH = 2;
6
+ exports.TRANSACTION_TYPE_WIDTH = 2;
7
+ exports.TRANSACTION_RESULT_WIDTH = 1;
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/enums/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,CAAC,CAAA;AACd,QAAA,kBAAkB,GAAG,CAAC,CAAA;AACtB,QAAA,sBAAsB,GAAG,CAAC,CAAA;AAC1B,QAAA,wBAAwB,GAAG,CAAC,CAAA"}