@transia/ripple-binary-codec 1.4.6-alpha.8 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/binary.d.ts +30 -16
- package/dist/binary.js +36 -16
- package/dist/binary.js.map +1 -1
- package/dist/enums/bytes.d.ts +1 -2
- package/dist/enums/bytes.js +3 -2
- package/dist/enums/bytes.js.map +1 -1
- package/dist/enums/constants.d.ts +1 -0
- package/dist/enums/constants.js +6 -5
- package/dist/enums/constants.js.map +1 -1
- package/dist/enums/definitions.json +1650 -964
- package/dist/enums/field.d.ts +1 -2
- package/dist/enums/field.js +1 -2
- package/dist/enums/field.js.map +1 -1
- package/dist/enums/index.d.ts +1 -2
- package/dist/enums/index.js +5 -27
- package/dist/enums/index.js.map +1 -1
- package/dist/enums/src/enums/definitions.json +1652 -966
- package/dist/enums/xrpl-definitions-base.d.ts +5 -3
- package/dist/enums/xrpl-definitions-base.js +26 -6
- package/dist/enums/xrpl-definitions-base.js.map +1 -1
- package/dist/enums/xrpl-definitions.d.ts +2 -1
- package/dist/enums/xrpl-definitions.js +2 -1
- package/dist/enums/xrpl-definitions.js.map +1 -1
- package/dist/hash-prefixes.d.ts +1 -2
- package/dist/hash-prefixes.js +8 -6
- package/dist/hash-prefixes.js.map +1 -1
- package/dist/hashes.d.ts +6 -7
- package/dist/hashes.js +6 -7
- package/dist/hashes.js.map +1 -1
- package/dist/index.d.ts +16 -11
- package/dist/index.js +53 -58
- package/dist/index.js.map +1 -1
- package/dist/ledger-hashes.d.ts +1 -2
- package/dist/ledger-hashes.js +11 -30
- package/dist/ledger-hashes.js.map +1 -1
- package/dist/quality.d.ts +3 -4
- package/dist/quality.js +10 -8
- package/dist/quality.js.map +1 -1
- package/dist/serdes/binary-parser.d.ts +2 -3
- package/dist/serdes/binary-parser.js +16 -32
- package/dist/serdes/binary-parser.js.map +1 -1
- package/dist/serdes/binary-serializer.d.ts +7 -8
- package/dist/serdes/binary-serializer.js +14 -37
- package/dist/serdes/binary-serializer.js.map +1 -1
- package/dist/shamap.d.ts +4 -5
- package/dist/shamap.js +5 -5
- package/dist/shamap.js.map +1 -1
- package/dist/src/binary.d.ts +106 -0
- package/dist/src/binary.js +154 -0
- package/dist/src/binary.js.map +1 -0
- package/dist/src/coretypes.d.ts +9 -0
- package/dist/src/coretypes.js +48 -0
- package/dist/src/coretypes.js.map +1 -0
- package/dist/src/enums/bytes.d.ts +25 -0
- package/dist/src/enums/bytes.js +65 -0
- package/dist/src/enums/bytes.js.map +1 -0
- package/dist/src/enums/constants.d.ts +5 -0
- package/dist/src/enums/constants.js +9 -0
- package/dist/src/enums/constants.js.map +1 -0
- package/dist/src/enums/definitions.json +3404 -0
- package/dist/src/enums/field.d.ts +28 -0
- package/dist/src/enums/field.js +58 -0
- package/dist/src/enums/field.js.map +1 -0
- package/dist/src/enums/index.d.ts +12 -0
- package/dist/src/enums/index.js +31 -0
- package/dist/src/enums/index.js.map +1 -0
- package/dist/src/enums/utils-renumber.d.ts +101 -0
- package/dist/src/enums/utils-renumber.js +127 -0
- package/dist/src/enums/utils-renumber.js.map +1 -0
- package/dist/src/enums/xrpl-definitions-base.d.ts +47 -0
- package/dist/src/enums/xrpl-definitions-base.js +83 -0
- package/dist/src/enums/xrpl-definitions-base.js.map +1 -0
- package/dist/src/enums/xrpl-definitions.d.ts +22 -0
- package/dist/src/enums/xrpl-definitions.js +30 -0
- package/dist/src/enums/xrpl-definitions.js.map +1 -0
- package/dist/src/hash-prefixes.d.ts +5 -0
- package/dist/src/hash-prefixes.js +43 -0
- package/dist/src/hash-prefixes.js.map +1 -0
- package/dist/src/hashes.d.ts +50 -0
- package/dist/src/hashes.js +76 -0
- package/dist/src/hashes.js.map +1 -0
- package/dist/src/index.d.ts +69 -0
- package/dist/src/index.js +134 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/ledger-hashes.d.ts +48 -0
- package/dist/src/ledger-hashes.js +141 -0
- package/dist/src/ledger-hashes.js.map +1 -0
- package/dist/src/quality.d.ts +21 -0
- package/dist/src/quality.js +42 -0
- package/dist/src/quality.js.map +1 -0
- package/dist/src/serdes/binary-parser.d.ts +100 -0
- package/dist/src/serdes/binary-parser.js +194 -0
- package/dist/src/serdes/binary-parser.js.map +1 -0
- package/dist/src/serdes/binary-serializer.d.ts +81 -0
- package/dist/src/serdes/binary-serializer.js +149 -0
- package/dist/src/serdes/binary-serializer.js.map +1 -0
- package/dist/src/shamap.d.ts +102 -0
- package/dist/src/shamap.js +172 -0
- package/dist/src/shamap.js.map +1 -0
- package/dist/src/types/account-id.d.ts +37 -0
- package/dist/src/types/account-id.js +73 -0
- package/dist/src/types/account-id.js.map +1 -0
- package/dist/src/types/amount.d.ts +92 -0
- package/dist/src/types/amount.js +292 -0
- package/dist/src/types/amount.js.map +1 -0
- package/dist/src/types/blob.d.ts +25 -0
- package/dist/src/types/blob.js +46 -0
- package/dist/src/types/blob.js.map +1 -0
- package/dist/src/types/currency.d.ts +30 -0
- package/dist/src/types/currency.js +131 -0
- package/dist/src/types/currency.js.map +1 -0
- package/dist/src/types/data.d.ts +104 -0
- package/dist/src/types/data.js +387 -0
- package/dist/src/types/data.js.map +1 -0
- package/dist/src/types/dataType.d.ts +94 -0
- package/dist/src/types/dataType.js +145 -0
- package/dist/src/types/dataType.js.map +1 -0
- package/dist/src/types/hash-128.d.ts +18 -0
- package/dist/src/types/hash-128.js +36 -0
- package/dist/src/types/hash-128.js.map +1 -0
- package/dist/src/types/hash-160.d.ts +12 -0
- package/dist/src/types/hash-160.js +23 -0
- package/dist/src/types/hash-160.js.map +1 -0
- package/dist/src/types/hash-192.d.ts +12 -0
- package/dist/src/types/hash-192.js +23 -0
- package/dist/src/types/hash-192.js.map +1 -0
- package/dist/src/types/hash-256.d.ts +12 -0
- package/dist/src/types/hash-256.js +20 -0
- package/dist/src/types/hash-256.js.map +1 -0
- package/dist/src/types/hash.d.ts +40 -0
- package/dist/src/types/hash.js +76 -0
- package/dist/src/types/hash.js.map +1 -0
- package/dist/src/types/index.d.ts +21 -0
- package/dist/src/types/index.js +72 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/types/issue.d.ts +49 -0
- package/dist/src/types/issue.js +107 -0
- package/dist/src/types/issue.js.map +1 -0
- package/dist/src/types/json.d.ts +169 -0
- package/dist/src/types/json.js +529 -0
- package/dist/src/types/json.js.map +1 -0
- package/dist/src/types/path-set.d.ts +37 -0
- package/dist/src/types/path-set.js +236 -0
- package/dist/src/types/path-set.js.map +1 -0
- package/dist/src/types/serialized-type.d.ts +117 -0
- package/dist/src/types/serialized-type.js +242 -0
- package/dist/src/types/serialized-type.js.map +1 -0
- package/dist/src/types/st-array.d.ts +32 -0
- package/dist/src/types/st-array.js +89 -0
- package/dist/src/types/st-array.js.map +1 -0
- package/dist/src/types/st-number.d.ts +55 -0
- package/dist/src/types/st-number.js +212 -0
- package/dist/src/types/st-number.js.map +1 -0
- package/dist/src/types/st-object.d.ts +33 -0
- package/dist/src/types/st-object.js +176 -0
- package/dist/src/types/st-object.js.map +1 -0
- package/dist/src/types/uint-16.d.ts +26 -0
- package/dist/src/types/uint-16.js +49 -0
- package/dist/src/types/uint-16.js.map +1 -0
- package/dist/src/types/uint-32.d.ts +26 -0
- package/dist/src/types/uint-32.js +54 -0
- package/dist/src/types/uint-32.js.map +1 -0
- package/dist/src/types/uint-64.d.ts +40 -0
- package/dist/src/types/uint-64.js +112 -0
- package/dist/src/types/uint-64.js.map +1 -0
- package/dist/src/types/uint-8.d.ts +26 -0
- package/dist/src/types/uint-8.js +50 -0
- package/dist/src/types/uint-8.js.map +1 -0
- package/dist/src/types/uint.d.ts +29 -0
- package/dist/src/types/uint.js +47 -0
- package/dist/src/types/uint.js.map +1 -0
- package/dist/src/types/vector-256.d.ts +31 -0
- package/dist/src/types/vector-256.js +76 -0
- package/dist/src/types/vector-256.js.map +1 -0
- package/dist/src/types/xchain-bridge.d.ts +45 -0
- package/dist/src/types/xchain-bridge.js +105 -0
- package/dist/src/types/xchain-bridge.js.map +1 -0
- package/dist/src/utils.d.ts +79 -0
- package/dist/src/utils.js +181 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/account-id.d.ts +3 -2
- package/dist/types/account-id.js +8 -6
- package/dist/types/account-id.js.map +1 -1
- package/dist/types/amount.d.ts +33 -9
- package/dist/types/amount.js +128 -43
- package/dist/types/amount.js.map +1 -1
- package/dist/types/blob.d.ts +3 -3
- package/dist/types/blob.js +8 -2
- package/dist/types/blob.js.map +1 -1
- package/dist/types/currency.d.ts +3 -2
- package/dist/types/currency.js +17 -13
- package/dist/types/currency.js.map +1 -1
- package/dist/types/data.d.ts +104 -0
- package/dist/types/data.js +387 -0
- package/dist/types/data.js.map +1 -0
- package/dist/types/dataType.d.ts +94 -0
- package/dist/types/dataType.js +145 -0
- package/dist/types/dataType.js.map +1 -0
- package/dist/types/hash-128.d.ts +3 -2
- package/dist/types/hash-128.js +7 -3
- package/dist/types/hash-128.js.map +1 -1
- package/dist/types/hash-160.d.ts +3 -2
- package/dist/types/hash-160.js +5 -2
- package/dist/types/hash-160.js.map +1 -1
- package/dist/types/hash-192.d.ts +12 -0
- package/dist/types/hash-192.js +23 -0
- package/dist/types/hash-192.js.map +1 -0
- package/dist/types/hash-256.d.ts +3 -2
- package/dist/types/hash-256.js +5 -2
- package/dist/types/hash-256.js.map +1 -1
- package/dist/types/hash.d.ts +2 -3
- package/dist/types/hash.js +8 -4
- package/dist/types/hash.js.map +1 -1
- package/dist/types/index.d.ts +4 -1
- package/dist/types/index.js +17 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/issue.d.ts +49 -0
- package/dist/types/issue.js +107 -0
- package/dist/types/issue.js.map +1 -0
- package/dist/types/json.d.ts +169 -0
- package/dist/types/json.js +529 -0
- package/dist/types/json.js.map +1 -0
- package/dist/types/path-set.d.ts +2 -1
- package/dist/types/path-set.js +15 -12
- package/dist/types/path-set.js.map +1 -1
- package/dist/types/serialized-type.d.ts +70 -16
- package/dist/types/serialized-type.js +153 -8
- package/dist/types/serialized-type.js.map +1 -1
- package/dist/types/st-array.d.ts +7 -3
- package/dist/types/st-array.js +20 -11
- package/dist/types/st-array.js.map +1 -1
- package/dist/types/st-number.d.ts +55 -0
- package/dist/types/st-number.js +212 -0
- package/dist/types/st-number.js.map +1 -0
- package/dist/types/st-object.d.ts +2 -1
- package/dist/types/st-object.js +35 -8
- package/dist/types/st-object.js.map +1 -1
- package/dist/types/uint-16.d.ts +3 -2
- package/dist/types/uint-16.js +10 -5
- package/dist/types/uint-16.js.map +1 -1
- package/dist/types/uint-32.d.ts +3 -2
- package/dist/types/uint-32.js +11 -6
- package/dist/types/uint-32.js.map +1 -1
- package/dist/types/uint-64.d.ts +8 -7
- package/dist/types/uint-64.js +49 -24
- package/dist/types/uint-64.js.map +1 -1
- package/dist/types/uint-8.d.ts +3 -2
- package/dist/types/uint-8.js +11 -5
- package/dist/types/uint-8.js.map +1 -1
- package/dist/types/uint.d.ts +5 -6
- package/dist/types/uint.js +5 -0
- package/dist/types/uint.js.map +1 -1
- package/dist/types/vector-256.d.ts +3 -3
- package/dist/types/vector-256.js +5 -4
- package/dist/types/vector-256.js.map +1 -1
- package/dist/types/xchain-bridge.d.ts +45 -0
- package/dist/types/xchain-bridge.js +105 -0
- package/dist/types/xchain-bridge.js.map +1 -0
- package/dist/utils.d.ts +79 -0
- package/dist/utils.js +181 -0
- package/dist/utils.js.map +1 -0
- package/package.json +21 -17
- package/src/README.md +5 -0
- package/src/binary.ts +235 -0
- package/src/coretypes.ts +31 -0
- package/src/enums/README.md +144 -0
- package/src/enums/bytes.ts +80 -0
- package/src/enums/constants.ts +5 -0
- package/src/enums/definitions.json +3409 -0
- package/src/enums/field.ts +84 -0
- package/src/enums/index.ts +34 -0
- package/src/enums/utils-renumber.ts +134 -0
- package/src/enums/xrpl-definitions-base.ts +150 -0
- package/src/enums/xrpl-definitions.ts +33 -0
- package/src/hash-prefixes.ts +42 -0
- package/src/hashes.ts +75 -0
- package/src/index.ts +166 -0
- package/src/ledger-hashes.ts +191 -0
- package/src/quality.ts +38 -0
- package/src/serdes/binary-parser.ts +228 -0
- package/src/serdes/binary-serializer.ts +166 -0
- package/src/shamap.ts +189 -0
- package/src/types/account-id.ts +91 -0
- package/src/types/amount.ts +366 -0
- package/src/types/blob.ts +50 -0
- package/src/types/currency.ts +145 -0
- package/src/types/data.ts +496 -0
- package/src/types/dataType.ts +178 -0
- package/src/types/hash-128.ts +38 -0
- package/src/types/hash-160.ts +24 -0
- package/src/types/hash-192.ts +24 -0
- package/src/types/hash-256.ts +20 -0
- package/src/types/hash.ts +86 -0
- package/src/types/index.ts +74 -0
- package/src/types/issue.ts +140 -0
- package/src/types/json.ts +641 -0
- package/src/types/path-set.ts +294 -0
- package/src/types/serialized-type.ts +271 -0
- package/src/types/st-array.ts +117 -0
- package/src/types/st-number.ts +238 -0
- package/src/types/st-object.ts +219 -0
- package/src/types/uint-16.ts +58 -0
- package/src/types/uint-32.ts +64 -0
- package/src/types/uint-64.ts +141 -0
- package/src/types/uint-8.ts +57 -0
- package/src/types/uint.ts +60 -0
- package/src/types/vector-256.ts +83 -0
- package/src/types/xchain-bridge.ts +132 -0
- package/src/utils.ts +220 -0
- package/test/amount.test.js +0 -43
- package/test/binary-json.test.js +0 -45
- package/test/binary-parser.test.js +0 -396
- package/test/binary-serializer.test.js +0 -307
- package/test/definitions.test.js +0 -100
- package/test/fixtures/account-tx-transactions.db +0 -0
- package/test/fixtures/codec-fixtures.json +0 -4466
- package/test/fixtures/data-driven-tests.json +0 -2919
- package/test/fixtures/delivermin-tx-binary.json +0 -1
- package/test/fixtures/delivermin-tx.json +0 -98
- package/test/fixtures/deposit-preauth-tx-binary.json +0 -1
- package/test/fixtures/deposit-preauth-tx-meta-binary.json +0 -1
- package/test/fixtures/deposit-preauth-tx.json +0 -58
- package/test/fixtures/escrow-cancel-binary.json +0 -1
- package/test/fixtures/escrow-cancel-tx.json +0 -6
- package/test/fixtures/escrow-create-binary.json +0 -1
- package/test/fixtures/escrow-create-tx.json +0 -10
- package/test/fixtures/escrow-finish-binary.json +0 -1
- package/test/fixtures/escrow-finish-meta-binary.json +0 -1
- package/test/fixtures/escrow-finish-tx.json +0 -95
- package/test/fixtures/ledger-full-38129.json +0 -1
- package/test/fixtures/ledger-full-40000.json +0 -1
- package/test/fixtures/negative-unl.json +0 -12
- package/test/fixtures/nf-token.json +0 -547
- package/test/fixtures/payment-channel-claim-binary.json +0 -1
- package/test/fixtures/payment-channel-claim-tx.json +0 -8
- package/test/fixtures/payment-channel-create-binary.json +0 -1
- package/test/fixtures/payment-channel-create-tx.json +0 -11
- package/test/fixtures/payment-channel-fund-binary.json +0 -1
- package/test/fixtures/payment-channel-fund-tx.json +0 -7
- package/test/fixtures/signerlistset-tx-binary.json +0 -1
- package/test/fixtures/signerlistset-tx-meta-binary.json +0 -1
- package/test/fixtures/signerlistset-tx.json +0 -94
- package/test/fixtures/ticket-create-binary.json +0 -1
- package/test/fixtures/ticket-create-tx.json +0 -7
- package/test/fixtures/unl-report-binary.json +0 -1
- package/test/fixtures/unl-report-meta-binary.json +0 -1
- package/test/fixtures/unl-report.json +0 -89
- package/test/fixtures/x-codec-fixtures.json +0 -188
- package/test/hash.test.js +0 -135
- package/test/ledger.test.js +0 -29
- package/test/lower-case-hex.test.js +0 -46
- package/test/pseudo-transaction.test.js +0 -38
- package/test/quality.test.js +0 -15
- package/test/shamap.test.js +0 -89
- package/test/signing-data-encoding.test.js +0 -213
- package/test/tx-encode-decode.test.js +0 -119
- package/test/types.test.js +0 -34
- package/test/uint.test.js +0 -148
- package/test/utils.js +0 -30
- package/test/x-address.test.js +0 -181
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-set.js","sourceRoot":"","sources":["../../src/types/path-set.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AACxC,yCAAqC;AACrC,2DAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"path-set.js","sourceRoot":"","sources":["../../src/types/path-set.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,52 @@
|
|
|
1
1
|
import { BytesList } from '../serdes/binary-serializer';
|
|
2
2
|
import { BinaryParser } from '../serdes/binary-parser';
|
|
3
|
-
import
|
|
4
|
-
|
|
3
|
+
import { XrplDefinitionsBase } from '../enums';
|
|
4
|
+
/**
|
|
5
|
+
* Enum for SerializedTypeID values used in XRPL
|
|
6
|
+
* These match the C++ implementation's STI_ constants
|
|
7
|
+
*/
|
|
8
|
+
export declare enum SerializedTypeID {
|
|
9
|
+
STI_NOTPRESENT = 0,
|
|
10
|
+
STI_UINT16 = 1,
|
|
11
|
+
STI_UINT32 = 2,
|
|
12
|
+
STI_UINT64 = 3,
|
|
13
|
+
STI_UINT128 = 4,
|
|
14
|
+
STI_UINT256 = 5,
|
|
15
|
+
STI_AMOUNT = 6,
|
|
16
|
+
STI_VL = 7,
|
|
17
|
+
STI_ACCOUNT = 8,
|
|
18
|
+
STI_NUMBER = 9,
|
|
19
|
+
STI_INT32 = 10,
|
|
20
|
+
STI_INT64 = 11,
|
|
21
|
+
STI_OBJECT = 14,
|
|
22
|
+
STI_ARRAY = 15,
|
|
23
|
+
STI_UINT8 = 16,
|
|
24
|
+
STI_UINT160 = 17,
|
|
25
|
+
STI_PATHSET = 18,
|
|
26
|
+
STI_VECTOR256 = 19,
|
|
27
|
+
STI_UINT96 = 20,
|
|
28
|
+
STI_UINT192 = 21,
|
|
29
|
+
STI_UINT384 = 22,
|
|
30
|
+
STI_UINT512 = 23,
|
|
31
|
+
STI_ISSUE = 24,
|
|
32
|
+
STI_XCHAIN_BRIDGE = 25,
|
|
33
|
+
STI_CURRENCY = 26,
|
|
34
|
+
STI_DATA = 27,
|
|
35
|
+
STI_DATATYPE = 28,
|
|
36
|
+
STI_JSON = 29
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Map of type strings to SerializedTypeID values
|
|
40
|
+
*/
|
|
41
|
+
export declare const TYPE_STRING_TO_ID: Record<string, SerializedTypeID>;
|
|
42
|
+
/**
|
|
43
|
+
* Map of type strings to SerializedTypeID values
|
|
44
|
+
*/
|
|
45
|
+
export declare const TYPE_NUMBER_TO_ID: Record<number, SerializedTypeID>;
|
|
46
|
+
/**
|
|
47
|
+
* Map of SerializedTypeID values to type strings
|
|
48
|
+
*/
|
|
49
|
+
export declare const TYPE_ID_TO_STRING: Record<SerializedTypeID, string>;
|
|
5
50
|
type JSON = string | number | boolean | null | undefined | JSON[] | JsonObject;
|
|
6
51
|
type JsonObject = {
|
|
7
52
|
[key: string]: JSON;
|
|
@@ -10,10 +55,10 @@ type JsonObject = {
|
|
|
10
55
|
* The base class for all binary-codec types
|
|
11
56
|
*/
|
|
12
57
|
declare class SerializedType {
|
|
13
|
-
protected readonly bytes:
|
|
14
|
-
constructor(bytes
|
|
58
|
+
protected readonly bytes: Uint8Array;
|
|
59
|
+
constructor(bytes?: Uint8Array);
|
|
15
60
|
static fromParser(parser: BinaryParser, hint?: number): SerializedType;
|
|
16
|
-
static from(value: SerializedType | JSON |
|
|
61
|
+
static from(value: SerializedType | JSON | bigint): SerializedType;
|
|
17
62
|
/**
|
|
18
63
|
* Write the bytes representation of a SerializedType to a BytesList
|
|
19
64
|
*
|
|
@@ -29,35 +74,44 @@ declare class SerializedType {
|
|
|
29
74
|
/**
|
|
30
75
|
* Get the bytes representation of a SerializedType
|
|
31
76
|
*
|
|
32
|
-
* @returns A
|
|
77
|
+
* @returns A Uint8Array of the bytes
|
|
33
78
|
*/
|
|
34
|
-
toBytes():
|
|
79
|
+
toBytes(): Uint8Array;
|
|
35
80
|
/**
|
|
36
81
|
* Return the JSON representation of a SerializedType
|
|
37
82
|
*
|
|
83
|
+
* @param _definitions rippled definitions used to parse the values of transaction types and such.
|
|
84
|
+
* Unused in default, but used in STObject, STArray
|
|
85
|
+
* Can be customized for sidechains and amendments.
|
|
38
86
|
* @returns any type, if not overloaded returns hexString representation of bytes
|
|
39
87
|
*/
|
|
40
|
-
toJSON(): JSON;
|
|
88
|
+
toJSON(_definitions?: XrplDefinitionsBase, _fieldName?: string): JSON;
|
|
41
89
|
/**
|
|
42
90
|
* @returns hexString representation of this.bytes
|
|
43
91
|
*/
|
|
44
92
|
toString(): string;
|
|
93
|
+
getSType(): SerializedTypeID;
|
|
45
94
|
}
|
|
46
95
|
/**
|
|
47
|
-
* Base class for SerializedTypes that are comparable
|
|
96
|
+
* Base class for SerializedTypes that are comparable.
|
|
97
|
+
*
|
|
98
|
+
* @template T - What types you want to allow comparisons between. You must specify all types. Primarily used to allow
|
|
99
|
+
* comparisons between built-in types (like `string`) and SerializedType subclasses (like `Hash`).
|
|
100
|
+
*
|
|
101
|
+
* Ex. `class Hash extends Comparable<Hash | string>`
|
|
48
102
|
*/
|
|
49
|
-
declare class Comparable extends SerializedType {
|
|
50
|
-
lt(other:
|
|
51
|
-
eq(other:
|
|
52
|
-
gt(other:
|
|
53
|
-
gte(other:
|
|
54
|
-
lte(other:
|
|
103
|
+
declare class Comparable<T extends Object> extends SerializedType {
|
|
104
|
+
lt(other: T): boolean;
|
|
105
|
+
eq(other: T): boolean;
|
|
106
|
+
gt(other: T): boolean;
|
|
107
|
+
gte(other: T): boolean;
|
|
108
|
+
lte(other: T): boolean;
|
|
55
109
|
/**
|
|
56
110
|
* Overload this method to define how two Comparable SerializedTypes are compared
|
|
57
111
|
*
|
|
58
112
|
* @param other The comparable object to compare this to
|
|
59
113
|
* @returns A number denoting the relationship of this and other
|
|
60
114
|
*/
|
|
61
|
-
compareTo(other:
|
|
115
|
+
compareTo(other: T): number;
|
|
62
116
|
}
|
|
63
117
|
export { SerializedType, Comparable, JSON, JsonObject };
|
|
@@ -1,15 +1,149 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Comparable = exports.SerializedType = void 0;
|
|
3
|
+
exports.Comparable = exports.SerializedType = exports.TYPE_ID_TO_STRING = exports.TYPE_NUMBER_TO_ID = exports.TYPE_STRING_TO_ID = exports.SerializedTypeID = void 0;
|
|
4
4
|
const binary_serializer_1 = require("../serdes/binary-serializer");
|
|
5
|
-
const
|
|
5
|
+
const utils_1 = require("@transia/isomorphic/utils");
|
|
6
|
+
/**
|
|
7
|
+
* Enum for SerializedTypeID values used in XRPL
|
|
8
|
+
* These match the C++ implementation's STI_ constants
|
|
9
|
+
*/
|
|
10
|
+
var SerializedTypeID;
|
|
11
|
+
(function (SerializedTypeID) {
|
|
12
|
+
SerializedTypeID[SerializedTypeID["STI_NOTPRESENT"] = 0] = "STI_NOTPRESENT";
|
|
13
|
+
SerializedTypeID[SerializedTypeID["STI_UINT16"] = 1] = "STI_UINT16";
|
|
14
|
+
SerializedTypeID[SerializedTypeID["STI_UINT32"] = 2] = "STI_UINT32";
|
|
15
|
+
SerializedTypeID[SerializedTypeID["STI_UINT64"] = 3] = "STI_UINT64";
|
|
16
|
+
SerializedTypeID[SerializedTypeID["STI_UINT128"] = 4] = "STI_UINT128";
|
|
17
|
+
SerializedTypeID[SerializedTypeID["STI_UINT256"] = 5] = "STI_UINT256";
|
|
18
|
+
SerializedTypeID[SerializedTypeID["STI_AMOUNT"] = 6] = "STI_AMOUNT";
|
|
19
|
+
SerializedTypeID[SerializedTypeID["STI_VL"] = 7] = "STI_VL";
|
|
20
|
+
SerializedTypeID[SerializedTypeID["STI_ACCOUNT"] = 8] = "STI_ACCOUNT";
|
|
21
|
+
SerializedTypeID[SerializedTypeID["STI_NUMBER"] = 9] = "STI_NUMBER";
|
|
22
|
+
SerializedTypeID[SerializedTypeID["STI_INT32"] = 10] = "STI_INT32";
|
|
23
|
+
SerializedTypeID[SerializedTypeID["STI_INT64"] = 11] = "STI_INT64";
|
|
24
|
+
SerializedTypeID[SerializedTypeID["STI_OBJECT"] = 14] = "STI_OBJECT";
|
|
25
|
+
SerializedTypeID[SerializedTypeID["STI_ARRAY"] = 15] = "STI_ARRAY";
|
|
26
|
+
SerializedTypeID[SerializedTypeID["STI_UINT8"] = 16] = "STI_UINT8";
|
|
27
|
+
SerializedTypeID[SerializedTypeID["STI_UINT160"] = 17] = "STI_UINT160";
|
|
28
|
+
SerializedTypeID[SerializedTypeID["STI_PATHSET"] = 18] = "STI_PATHSET";
|
|
29
|
+
SerializedTypeID[SerializedTypeID["STI_VECTOR256"] = 19] = "STI_VECTOR256";
|
|
30
|
+
SerializedTypeID[SerializedTypeID["STI_UINT96"] = 20] = "STI_UINT96";
|
|
31
|
+
SerializedTypeID[SerializedTypeID["STI_UINT192"] = 21] = "STI_UINT192";
|
|
32
|
+
SerializedTypeID[SerializedTypeID["STI_UINT384"] = 22] = "STI_UINT384";
|
|
33
|
+
SerializedTypeID[SerializedTypeID["STI_UINT512"] = 23] = "STI_UINT512";
|
|
34
|
+
SerializedTypeID[SerializedTypeID["STI_ISSUE"] = 24] = "STI_ISSUE";
|
|
35
|
+
SerializedTypeID[SerializedTypeID["STI_XCHAIN_BRIDGE"] = 25] = "STI_XCHAIN_BRIDGE";
|
|
36
|
+
SerializedTypeID[SerializedTypeID["STI_CURRENCY"] = 26] = "STI_CURRENCY";
|
|
37
|
+
SerializedTypeID[SerializedTypeID["STI_DATA"] = 27] = "STI_DATA";
|
|
38
|
+
SerializedTypeID[SerializedTypeID["STI_DATATYPE"] = 28] = "STI_DATATYPE";
|
|
39
|
+
SerializedTypeID[SerializedTypeID["STI_JSON"] = 29] = "STI_JSON";
|
|
40
|
+
})(SerializedTypeID || (exports.SerializedTypeID = SerializedTypeID = {}));
|
|
41
|
+
/**
|
|
42
|
+
* Map of type strings to SerializedTypeID values
|
|
43
|
+
*/
|
|
44
|
+
exports.TYPE_STRING_TO_ID = {
|
|
45
|
+
NOTPRESENT: SerializedTypeID.STI_NOTPRESENT,
|
|
46
|
+
UINT16: SerializedTypeID.STI_UINT16,
|
|
47
|
+
UINT32: SerializedTypeID.STI_UINT32,
|
|
48
|
+
UINT64: SerializedTypeID.STI_UINT64,
|
|
49
|
+
UINT128: SerializedTypeID.STI_UINT128,
|
|
50
|
+
UINT256: SerializedTypeID.STI_UINT256,
|
|
51
|
+
AMOUNT: SerializedTypeID.STI_AMOUNT,
|
|
52
|
+
VL: SerializedTypeID.STI_VL,
|
|
53
|
+
ACCOUNT: SerializedTypeID.STI_ACCOUNT,
|
|
54
|
+
NUMBER: SerializedTypeID.STI_NUMBER,
|
|
55
|
+
INT32: SerializedTypeID.STI_INT32,
|
|
56
|
+
INT64: SerializedTypeID.STI_INT64,
|
|
57
|
+
OBJECT: SerializedTypeID.STI_OBJECT,
|
|
58
|
+
ARRAY: SerializedTypeID.STI_ARRAY,
|
|
59
|
+
UINT8: SerializedTypeID.STI_UINT8,
|
|
60
|
+
UINT160: SerializedTypeID.STI_UINT160,
|
|
61
|
+
PATHSET: SerializedTypeID.STI_PATHSET,
|
|
62
|
+
VECTOR256: SerializedTypeID.STI_VECTOR256,
|
|
63
|
+
UINT96: SerializedTypeID.STI_UINT96,
|
|
64
|
+
UINT192: SerializedTypeID.STI_UINT192,
|
|
65
|
+
UINT384: SerializedTypeID.STI_UINT384,
|
|
66
|
+
UINT512: SerializedTypeID.STI_UINT512,
|
|
67
|
+
ISSUE: SerializedTypeID.STI_ISSUE,
|
|
68
|
+
XCHAIN_BRIDGE: SerializedTypeID.STI_XCHAIN_BRIDGE,
|
|
69
|
+
CURRENCY: SerializedTypeID.STI_CURRENCY,
|
|
70
|
+
DATA: SerializedTypeID.STI_DATA,
|
|
71
|
+
DATATYPE: SerializedTypeID.STI_DATATYPE,
|
|
72
|
+
JSON: SerializedTypeID.STI_JSON,
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Map of type strings to SerializedTypeID values
|
|
76
|
+
*/
|
|
77
|
+
exports.TYPE_NUMBER_TO_ID = {
|
|
78
|
+
0: SerializedTypeID.STI_NOTPRESENT,
|
|
79
|
+
1: SerializedTypeID.STI_UINT16,
|
|
80
|
+
2: SerializedTypeID.STI_UINT32,
|
|
81
|
+
3: SerializedTypeID.STI_UINT64,
|
|
82
|
+
4: SerializedTypeID.STI_UINT128,
|
|
83
|
+
5: SerializedTypeID.STI_UINT256,
|
|
84
|
+
6: SerializedTypeID.STI_AMOUNT,
|
|
85
|
+
7: SerializedTypeID.STI_VL,
|
|
86
|
+
8: SerializedTypeID.STI_ACCOUNT,
|
|
87
|
+
9: SerializedTypeID.STI_NUMBER,
|
|
88
|
+
10: SerializedTypeID.STI_INT32,
|
|
89
|
+
11: SerializedTypeID.STI_INT64,
|
|
90
|
+
14: SerializedTypeID.STI_OBJECT,
|
|
91
|
+
15: SerializedTypeID.STI_ARRAY,
|
|
92
|
+
16: SerializedTypeID.STI_UINT8,
|
|
93
|
+
17: SerializedTypeID.STI_UINT160,
|
|
94
|
+
18: SerializedTypeID.STI_PATHSET,
|
|
95
|
+
19: SerializedTypeID.STI_VECTOR256,
|
|
96
|
+
20: SerializedTypeID.STI_UINT96,
|
|
97
|
+
21: SerializedTypeID.STI_UINT192,
|
|
98
|
+
22: SerializedTypeID.STI_UINT384,
|
|
99
|
+
23: SerializedTypeID.STI_UINT512,
|
|
100
|
+
24: SerializedTypeID.STI_ISSUE,
|
|
101
|
+
25: SerializedTypeID.STI_XCHAIN_BRIDGE,
|
|
102
|
+
26: SerializedTypeID.STI_CURRENCY,
|
|
103
|
+
27: SerializedTypeID.STI_DATA,
|
|
104
|
+
28: SerializedTypeID.STI_DATATYPE,
|
|
105
|
+
29: SerializedTypeID.STI_JSON,
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Map of SerializedTypeID values to type strings
|
|
109
|
+
*/
|
|
110
|
+
exports.TYPE_ID_TO_STRING = {
|
|
111
|
+
[SerializedTypeID.STI_NOTPRESENT]: '',
|
|
112
|
+
[SerializedTypeID.STI_UINT16]: 'UINT16',
|
|
113
|
+
[SerializedTypeID.STI_UINT32]: 'UINT32',
|
|
114
|
+
[SerializedTypeID.STI_UINT64]: 'UINT64',
|
|
115
|
+
[SerializedTypeID.STI_UINT128]: 'UINT128',
|
|
116
|
+
[SerializedTypeID.STI_UINT256]: 'UINT256',
|
|
117
|
+
[SerializedTypeID.STI_AMOUNT]: 'AMOUNT',
|
|
118
|
+
[SerializedTypeID.STI_VL]: 'VL',
|
|
119
|
+
[SerializedTypeID.STI_ACCOUNT]: 'ACCOUNT',
|
|
120
|
+
[SerializedTypeID.STI_NUMBER]: 'NUMBER',
|
|
121
|
+
[SerializedTypeID.STI_INT32]: 'INT32',
|
|
122
|
+
[SerializedTypeID.STI_INT64]: 'INT64',
|
|
123
|
+
[SerializedTypeID.STI_OBJECT]: 'OBJECT',
|
|
124
|
+
[SerializedTypeID.STI_ARRAY]: 'ARRAY',
|
|
125
|
+
[SerializedTypeID.STI_UINT8]: 'UINT8',
|
|
126
|
+
[SerializedTypeID.STI_UINT160]: 'UINT160',
|
|
127
|
+
[SerializedTypeID.STI_PATHSET]: 'PATHSET',
|
|
128
|
+
[SerializedTypeID.STI_VECTOR256]: 'VECTOR256',
|
|
129
|
+
[SerializedTypeID.STI_UINT96]: 'UINT96',
|
|
130
|
+
[SerializedTypeID.STI_UINT192]: 'UINT192',
|
|
131
|
+
[SerializedTypeID.STI_UINT384]: 'UINT384',
|
|
132
|
+
[SerializedTypeID.STI_UINT512]: 'UINT512',
|
|
133
|
+
[SerializedTypeID.STI_ISSUE]: 'ISSUE',
|
|
134
|
+
[SerializedTypeID.STI_XCHAIN_BRIDGE]: 'XCHAIN_BRIDGE',
|
|
135
|
+
[SerializedTypeID.STI_CURRENCY]: 'CURRENCY',
|
|
136
|
+
[SerializedTypeID.STI_DATA]: 'DATA',
|
|
137
|
+
[SerializedTypeID.STI_DATATYPE]: 'DATATYPE',
|
|
138
|
+
[SerializedTypeID.STI_JSON]: 'JSON',
|
|
139
|
+
};
|
|
6
140
|
/**
|
|
7
141
|
* The base class for all binary-codec types
|
|
8
142
|
*/
|
|
9
143
|
class SerializedType {
|
|
10
144
|
constructor(bytes) {
|
|
11
|
-
this.bytes =
|
|
12
|
-
this.bytes = bytes !== null && bytes !== void 0 ? bytes :
|
|
145
|
+
this.bytes = new Uint8Array(0);
|
|
146
|
+
this.bytes = bytes !== null && bytes !== void 0 ? bytes : new Uint8Array(0);
|
|
13
147
|
}
|
|
14
148
|
static fromParser(parser, hint) {
|
|
15
149
|
throw new Error('fromParser not implemented');
|
|
@@ -33,12 +167,12 @@ class SerializedType {
|
|
|
33
167
|
* @returns hex String of this.bytes
|
|
34
168
|
*/
|
|
35
169
|
toHex() {
|
|
36
|
-
return this.toBytes()
|
|
170
|
+
return (0, utils_1.bytesToHex)(this.toBytes());
|
|
37
171
|
}
|
|
38
172
|
/**
|
|
39
173
|
* Get the bytes representation of a SerializedType
|
|
40
174
|
*
|
|
41
|
-
* @returns A
|
|
175
|
+
* @returns A Uint8Array of the bytes
|
|
42
176
|
*/
|
|
43
177
|
toBytes() {
|
|
44
178
|
if (this.bytes) {
|
|
@@ -51,9 +185,12 @@ class SerializedType {
|
|
|
51
185
|
/**
|
|
52
186
|
* Return the JSON representation of a SerializedType
|
|
53
187
|
*
|
|
188
|
+
* @param _definitions rippled definitions used to parse the values of transaction types and such.
|
|
189
|
+
* Unused in default, but used in STObject, STArray
|
|
190
|
+
* Can be customized for sidechains and amendments.
|
|
54
191
|
* @returns any type, if not overloaded returns hexString representation of bytes
|
|
55
192
|
*/
|
|
56
|
-
toJSON() {
|
|
193
|
+
toJSON(_definitions, _fieldName) {
|
|
57
194
|
return this.toHex();
|
|
58
195
|
}
|
|
59
196
|
/**
|
|
@@ -62,10 +199,18 @@ class SerializedType {
|
|
|
62
199
|
toString() {
|
|
63
200
|
return this.toHex();
|
|
64
201
|
}
|
|
202
|
+
getSType() {
|
|
203
|
+
return this.getSType();
|
|
204
|
+
}
|
|
65
205
|
}
|
|
66
206
|
exports.SerializedType = SerializedType;
|
|
67
207
|
/**
|
|
68
|
-
* Base class for SerializedTypes that are comparable
|
|
208
|
+
* Base class for SerializedTypes that are comparable.
|
|
209
|
+
*
|
|
210
|
+
* @template T - What types you want to allow comparisons between. You must specify all types. Primarily used to allow
|
|
211
|
+
* comparisons between built-in types (like `string`) and SerializedType subclasses (like `Hash`).
|
|
212
|
+
*
|
|
213
|
+
* Ex. `class Hash extends Comparable<Hash | string>`
|
|
69
214
|
*/
|
|
70
215
|
class Comparable extends SerializedType {
|
|
71
216
|
lt(other) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialized-type.js","sourceRoot":"","sources":["../../src/types/serialized-type.ts"],"names":[],"mappings":";;;AAAA,mEAAuD;AAGvD,
|
|
1
|
+
{"version":3,"file":"serialized-type.js","sourceRoot":"","sources":["../../src/types/serialized-type.ts"],"names":[],"mappings":";;;AAAA,mEAAuD;AAGvD,qDAAsD;AAEtD;;;GAGG;AACH,IAAY,gBA+BX;AA/BD,WAAY,gBAAgB;IAC1B,2EAAkB,CAAA;IAClB,mEAAc,CAAA;IACd,mEAAc,CAAA;IACd,mEAAc,CAAA;IACd,qEAAe,CAAA;IACf,qEAAe,CAAA;IACf,mEAAc,CAAA;IACd,2DAAU,CAAA;IACV,qEAAe,CAAA;IACf,mEAAc,CAAA;IACd,kEAAc,CAAA;IACd,kEAAc,CAAA;IAEd,oEAAe,CAAA;IACf,kEAAc,CAAA;IAEd,kEAAc,CAAA;IACd,sEAAgB,CAAA;IAChB,sEAAgB,CAAA;IAChB,0EAAkB,CAAA;IAClB,oEAAe,CAAA;IACf,sEAAgB,CAAA;IAChB,sEAAgB,CAAA;IAChB,sEAAgB,CAAA;IAChB,kEAAc,CAAA;IACd,kFAAsB,CAAA;IACtB,wEAAiB,CAAA;IACjB,gEAAa,CAAA;IACb,wEAAiB,CAAA;IACjB,gEAAa,CAAA;AACf,CAAC,EA/BW,gBAAgB,gCAAhB,gBAAgB,QA+B3B;AAED;;GAEG;AACU,QAAA,iBAAiB,GAAqC;IACjE,UAAU,EAAE,gBAAgB,CAAC,cAAc;IAC3C,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,EAAE,EAAE,gBAAgB,CAAC,MAAM;IAC3B,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,KAAK,EAAE,gBAAgB,CAAC,SAAS;IACjC,KAAK,EAAE,gBAAgB,CAAC,SAAS;IAEjC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,KAAK,EAAE,gBAAgB,CAAC,SAAS;IAEjC,KAAK,EAAE,gBAAgB,CAAC,SAAS;IACjC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,SAAS,EAAE,gBAAgB,CAAC,aAAa;IACzC,MAAM,EAAE,gBAAgB,CAAC,UAAU;IACnC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,OAAO,EAAE,gBAAgB,CAAC,WAAW;IACrC,KAAK,EAAE,gBAAgB,CAAC,SAAS;IACjC,aAAa,EAAE,gBAAgB,CAAC,iBAAiB;IACjD,QAAQ,EAAE,gBAAgB,CAAC,YAAY;IACvC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;IAC/B,QAAQ,EAAE,gBAAgB,CAAC,YAAY;IACvC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;CAChC,CAAA;AAED;;GAEG;AACU,QAAA,iBAAiB,GAAqC;IACjE,CAAC,EAAE,gBAAgB,CAAC,cAAc;IAClC,CAAC,EAAE,gBAAgB,CAAC,UAAU;IAC9B,CAAC,EAAE,gBAAgB,CAAC,UAAU;IAC9B,CAAC,EAAE,gBAAgB,CAAC,UAAU;IAC9B,CAAC,EAAE,gBAAgB,CAAC,WAAW;IAC/B,CAAC,EAAE,gBAAgB,CAAC,WAAW;IAC/B,CAAC,EAAE,gBAAgB,CAAC,UAAU;IAC9B,CAAC,EAAE,gBAAgB,CAAC,MAAM;IAC1B,CAAC,EAAE,gBAAgB,CAAC,WAAW;IAC/B,CAAC,EAAE,gBAAgB,CAAC,UAAU;IAC9B,EAAE,EAAE,gBAAgB,CAAC,SAAS;IAC9B,EAAE,EAAE,gBAAgB,CAAC,SAAS;IAE9B,EAAE,EAAE,gBAAgB,CAAC,UAAU;IAC/B,EAAE,EAAE,gBAAgB,CAAC,SAAS;IAE9B,EAAE,EAAE,gBAAgB,CAAC,SAAS;IAC9B,EAAE,EAAE,gBAAgB,CAAC,WAAW;IAChC,EAAE,EAAE,gBAAgB,CAAC,WAAW;IAChC,EAAE,EAAE,gBAAgB,CAAC,aAAa;IAClC,EAAE,EAAE,gBAAgB,CAAC,UAAU;IAC/B,EAAE,EAAE,gBAAgB,CAAC,WAAW;IAChC,EAAE,EAAE,gBAAgB,CAAC,WAAW;IAChC,EAAE,EAAE,gBAAgB,CAAC,WAAW;IAChC,EAAE,EAAE,gBAAgB,CAAC,SAAS;IAC9B,EAAE,EAAE,gBAAgB,CAAC,iBAAiB;IACtC,EAAE,EAAE,gBAAgB,CAAC,YAAY;IACjC,EAAE,EAAE,gBAAgB,CAAC,QAAQ;IAC7B,EAAE,EAAE,gBAAgB,CAAC,YAAY;IACjC,EAAE,EAAE,gBAAgB,CAAC,QAAQ;CAC9B,CAAA;AAED;;GAEG;AACU,QAAA,iBAAiB,GAAqC;IACjE,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,EAAE;IACrC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI;IAC/B,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO;IACrC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO;IAErC,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO;IAErC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO;IACrC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,WAAW;IAC7C,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ;IACvC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,SAAS;IACzC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO;IACrC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAAE,eAAe;IACrD,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,UAAU;IAC3C,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM;IACnC,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,UAAU;IAC3C,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM;CACpC,CAAA;AAMD;;GAEG;AACH,MAAM,cAAc;IAGlB,YAAY,KAAkB;QAFX,UAAK,GAAe,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;QAGtD,IAAI,CAAC,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAoB,EAAE,IAAa;QACnD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAqC;QAC/C,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,IAAe;QACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAA,kBAAU,EAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,OAAO,IAAI,CAAC,KAAK,CAAA;SAClB;QACD,MAAM,KAAK,GAAG,IAAI,6BAAS,EAAE,CAAA;QAC7B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACvB,OAAO,KAAK,CAAC,OAAO,EAAE,CAAA;IACxB,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,YAAkC,EAAE,UAAmB;QAC5D,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;CACF;AA0CQ,wCAAc;AAxCvB;;;;;;;GAOG;AACH,MAAM,UAA6B,SAAQ,cAAc;IACvD,EAAE,CAAC,KAAQ;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,EAAE,CAAC,KAAQ;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,EAAE,CAAC,KAAQ;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,GAAG,CAAC,KAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACnC,CAAC;IAED,GAAG,CAAC,KAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAQ;QAChB,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,QAAQ,EAAE,QAAQ,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC9E,CAAC;CACF;AAEwB,gCAAU"}
|
package/dist/types/st-array.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { XrplDefinitionsBase } from '../enums';
|
|
2
|
+
import { SerializedType, JsonObject, SerializedTypeID } from './serialized-type';
|
|
2
3
|
import { BinaryParser } from '../serdes/binary-parser';
|
|
3
4
|
/**
|
|
4
5
|
* Class for serializing and deserializing Arrays of Objects
|
|
@@ -15,14 +16,17 @@ declare class STArray extends SerializedType {
|
|
|
15
16
|
* Construct an STArray from an Array of JSON Objects
|
|
16
17
|
*
|
|
17
18
|
* @param value STArray or Array of Objects to parse into an STArray
|
|
19
|
+
* @param definitions optional, types and values to use to encode/decode a transaction
|
|
18
20
|
* @returns An STArray object
|
|
19
21
|
*/
|
|
20
|
-
static from<T extends STArray | Array<JsonObject>>(value: T): STArray;
|
|
22
|
+
static from<T extends STArray | Array<JsonObject>>(value: T, definitions?: XrplDefinitionsBase): STArray;
|
|
21
23
|
/**
|
|
22
24
|
* Return the JSON representation of this.bytes
|
|
23
25
|
*
|
|
26
|
+
* @param definitions optional, types and values to use to encode/decode a transaction
|
|
24
27
|
* @returns An Array of JSON objects
|
|
25
28
|
*/
|
|
26
|
-
toJSON(): Array<JsonObject>;
|
|
29
|
+
toJSON(definitions?: XrplDefinitionsBase): Array<JsonObject>;
|
|
30
|
+
getSType(): SerializedTypeID;
|
|
27
31
|
}
|
|
28
32
|
export { STArray };
|
package/dist/types/st-array.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.STArray = void 0;
|
|
4
|
+
const enums_1 = require("../enums");
|
|
4
5
|
const serialized_type_1 = require("./serialized-type");
|
|
5
6
|
const st_object_1 = require("./st-object");
|
|
6
7
|
const binary_parser_1 = require("../serdes/binary-parser");
|
|
7
|
-
const
|
|
8
|
-
const ARRAY_END_MARKER =
|
|
8
|
+
const utils_1 = require("@transia/isomorphic/utils");
|
|
9
|
+
const ARRAY_END_MARKER = Uint8Array.from([0xf1]);
|
|
9
10
|
const ARRAY_END_MARKER_NAME = 'ArrayEndMarker';
|
|
10
|
-
const OBJECT_END_MARKER =
|
|
11
|
+
const OBJECT_END_MARKER = Uint8Array.from([0xe1]);
|
|
11
12
|
/**
|
|
12
13
|
* TypeGuard for Array<JsonObject>
|
|
13
14
|
*/
|
|
14
15
|
function isObjects(args) {
|
|
15
|
-
return (Array.isArray(args) &&
|
|
16
|
+
return (Array.isArray(args) &&
|
|
17
|
+
args.every((arg) => typeof arg === 'object' &&
|
|
18
|
+
Object.keys(arg).length === 1 &&
|
|
19
|
+
typeof Object.values(arg)[0] === 'object'));
|
|
16
20
|
}
|
|
17
21
|
/**
|
|
18
22
|
* Class for serializing and deserializing Arrays of Objects
|
|
@@ -34,47 +38,52 @@ class STArray extends serialized_type_1.SerializedType {
|
|
|
34
38
|
bytes.push(field.header, parser.readFieldValue(field).toBytes(), OBJECT_END_MARKER);
|
|
35
39
|
}
|
|
36
40
|
bytes.push(ARRAY_END_MARKER);
|
|
37
|
-
return new STArray(
|
|
41
|
+
return new STArray((0, utils_1.concat)(bytes));
|
|
38
42
|
}
|
|
39
43
|
/**
|
|
40
44
|
* Construct an STArray from an Array of JSON Objects
|
|
41
45
|
*
|
|
42
46
|
* @param value STArray or Array of Objects to parse into an STArray
|
|
47
|
+
* @param definitions optional, types and values to use to encode/decode a transaction
|
|
43
48
|
* @returns An STArray object
|
|
44
49
|
*/
|
|
45
|
-
static from(value) {
|
|
50
|
+
static from(value, definitions = enums_1.DEFAULT_DEFINITIONS) {
|
|
46
51
|
if (value instanceof STArray) {
|
|
47
52
|
return value;
|
|
48
53
|
}
|
|
49
54
|
if (isObjects(value)) {
|
|
50
55
|
const bytes = [];
|
|
51
56
|
value.forEach((obj) => {
|
|
52
|
-
bytes.push(st_object_1.STObject.from(obj).toBytes());
|
|
57
|
+
bytes.push(st_object_1.STObject.from(obj, undefined, definitions).toBytes());
|
|
53
58
|
});
|
|
54
59
|
bytes.push(ARRAY_END_MARKER);
|
|
55
|
-
return new STArray(
|
|
60
|
+
return new STArray((0, utils_1.concat)(bytes));
|
|
56
61
|
}
|
|
57
62
|
throw new Error('Cannot construct STArray from value given');
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
60
65
|
* Return the JSON representation of this.bytes
|
|
61
66
|
*
|
|
67
|
+
* @param definitions optional, types and values to use to encode/decode a transaction
|
|
62
68
|
* @returns An Array of JSON objects
|
|
63
69
|
*/
|
|
64
|
-
toJSON() {
|
|
70
|
+
toJSON(definitions = enums_1.DEFAULT_DEFINITIONS) {
|
|
65
71
|
const result = [];
|
|
66
|
-
const arrayParser = new binary_parser_1.BinaryParser(this.toString());
|
|
72
|
+
const arrayParser = new binary_parser_1.BinaryParser(this.toString(), definitions);
|
|
67
73
|
while (!arrayParser.end()) {
|
|
68
74
|
const field = arrayParser.readField();
|
|
69
75
|
if (field.name === ARRAY_END_MARKER_NAME) {
|
|
70
76
|
break;
|
|
71
77
|
}
|
|
72
78
|
const outer = {};
|
|
73
|
-
outer[field.name] = st_object_1.STObject.fromParser(arrayParser).toJSON();
|
|
79
|
+
outer[field.name] = st_object_1.STObject.fromParser(arrayParser).toJSON(definitions);
|
|
74
80
|
result.push(outer);
|
|
75
81
|
}
|
|
76
82
|
return result;
|
|
77
83
|
}
|
|
84
|
+
getSType() {
|
|
85
|
+
return serialized_type_1.SerializedTypeID.STI_ARRAY;
|
|
86
|
+
}
|
|
78
87
|
}
|
|
79
88
|
exports.STArray = STArray;
|
|
80
89
|
//# sourceMappingURL=st-array.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"st-array.js","sourceRoot":"","sources":["../../src/types/st-array.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"st-array.js","sourceRoot":"","sources":["../../src/types/st-array.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { BinaryParser } from '../serdes/binary-parser';
|
|
2
|
+
import { SerializedType, SerializedTypeID } from './serialized-type';
|
|
3
|
+
/**
|
|
4
|
+
* STNumber: Encodes XRPL's "Number" type.
|
|
5
|
+
*
|
|
6
|
+
* - Always encoded as 12 bytes: 8-byte signed mantissa, 4-byte signed exponent, both big-endian.
|
|
7
|
+
* - Can only be constructed from a valid number string or another STNumber instance.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* STNumber.from("1.2345e5")
|
|
11
|
+
* STNumber.from("-123")
|
|
12
|
+
* STNumber.fromParser(parser)
|
|
13
|
+
*/
|
|
14
|
+
export declare class STNumber extends SerializedType {
|
|
15
|
+
/** 12 zero bytes, represents canonical zero. */
|
|
16
|
+
static defaultBytes: Uint8Array;
|
|
17
|
+
/**
|
|
18
|
+
* Construct a STNumber from 12 bytes (8 for mantissa, 4 for exponent).
|
|
19
|
+
* @param bytes - 12-byte Uint8Array
|
|
20
|
+
* @throws Error if input is not a Uint8Array of length 12.
|
|
21
|
+
*/
|
|
22
|
+
constructor(bytes?: Uint8Array);
|
|
23
|
+
/**
|
|
24
|
+
* Construct from a number string (or another STNumber).
|
|
25
|
+
*
|
|
26
|
+
* @param value - A string, or STNumber instance.
|
|
27
|
+
* @returns STNumber instance.
|
|
28
|
+
* @throws Error if not a string or STNumber.
|
|
29
|
+
*/
|
|
30
|
+
static from(value: unknown): STNumber;
|
|
31
|
+
/**
|
|
32
|
+
* Construct from a number string (integer, decimal, or scientific notation).
|
|
33
|
+
* Handles normalization to XRPL Number constraints.
|
|
34
|
+
*
|
|
35
|
+
* @param val - The number as a string (e.g. '1.23', '-123e5').
|
|
36
|
+
* @returns STNumber instance
|
|
37
|
+
* @throws Error if val is not a valid number string.
|
|
38
|
+
*/
|
|
39
|
+
static fromValue(val: string): STNumber;
|
|
40
|
+
/**
|
|
41
|
+
* Read a STNumber from a BinaryParser stream (12 bytes).
|
|
42
|
+
* @param parser - BinaryParser positioned at the start of a number
|
|
43
|
+
* @returns STNumber instance
|
|
44
|
+
*/
|
|
45
|
+
static fromParser(parser: BinaryParser): STNumber;
|
|
46
|
+
/**
|
|
47
|
+
* Convert this STNumber to a normalized string representation.
|
|
48
|
+
* The output is decimal or scientific notation, depending on exponent range.
|
|
49
|
+
* Follows XRPL convention: zero is "0", other values are normalized to a canonical string.
|
|
50
|
+
*
|
|
51
|
+
* @returns String representation of the value
|
|
52
|
+
*/
|
|
53
|
+
toJSON(): string;
|
|
54
|
+
getSType(): SerializedTypeID;
|
|
55
|
+
}
|