quantumcoin 7.0.3 → 7.0.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.
- package/.github/workflows/publish-npmjs.yaml +22 -22
- package/.gitignore +15 -15
- package/LICENSE +21 -21
- package/README-SDK.md +756 -754
- package/README.md +165 -150
- package/SPEC.md +3845 -3843
- package/config.d.ts +50 -50
- package/config.js +115 -115
- package/examples/AllSolidityTypes.sol +184 -184
- package/examples/SimpleIERC20.sol +74 -74
- package/examples/events.js +41 -35
- package/examples/events.ts +35 -0
- package/examples/example-generator-sdk-js.js +100 -95
- package/examples/example-generator-sdk-js.ts +77 -0
- package/examples/example-generator-sdk-ts.js +100 -95
- package/examples/example-generator-sdk-ts.ts +77 -0
- package/examples/example.js +72 -61
- package/examples/example.ts +61 -0
- package/examples/offline-signing.js +79 -73
- package/examples/offline-signing.ts +66 -0
- package/examples/package-lock.json +48 -57
- package/examples/package.json +32 -16
- package/examples/read-operations.js +32 -27
- package/examples/read-operations.ts +31 -0
- package/examples/sdk-generator-erc20.inline.json +251 -251
- package/examples/solidity-types.ts +43 -43
- package/examples/wallet-offline.js +35 -29
- package/examples/wallet-offline.ts +34 -0
- package/generate-sdk.js +1824 -1490
- package/index.js +12 -12
- package/package.json +95 -75
- package/scripts/copy-declarations.js +31 -0
- package/scripts/run-all-one-by-one.js +151 -0
- package/src/abi/fragments.d.ts +42 -42
- package/src/abi/fragments.js +63 -63
- package/src/abi/index.d.ts +13 -13
- package/src/abi/index.js +9 -9
- package/src/abi/interface.d.ts +128 -132
- package/src/abi/interface.js +590 -590
- package/src/abi/js-abi-coder.d.ts +8 -0
- package/src/abi/js-abi-coder.js +474 -474
- package/src/constants.d.ts +66 -61
- package/src/constants.js +101 -94
- package/src/contract/contract-factory.d.ts +28 -28
- package/src/contract/contract-factory.js +105 -105
- package/src/contract/contract.d.ts +113 -114
- package/src/contract/contract.js +354 -354
- package/src/contract/index.d.ts +9 -9
- package/src/contract/index.js +9 -9
- package/src/errors/index.d.ts +92 -92
- package/src/errors/index.js +188 -188
- package/src/generator/index.d.ts +74 -0
- package/src/generator/index.js +1404 -1404
- package/src/index.d.ts +125 -127
- package/src/index.js +41 -41
- package/src/internal/hex.d.ts +61 -61
- package/src/internal/hex.js +144 -144
- package/src/providers/extra-providers.d.ts +139 -128
- package/src/providers/extra-providers.js +600 -575
- package/src/providers/index.d.ts +17 -16
- package/src/providers/index.js +10 -10
- package/src/providers/json-rpc-provider.d.ts +12 -12
- package/src/providers/json-rpc-provider.js +79 -79
- package/src/providers/provider.d.ts +207 -203
- package/src/providers/provider.js +392 -371
- package/src/types/index.d.ts +214 -462
- package/src/types/index.js +9 -9
- package/src/utils/address.d.ts +72 -72
- package/src/utils/address.js +181 -182
- package/src/utils/encoding.d.ts +120 -120
- package/src/utils/encoding.js +306 -306
- package/src/utils/hashing.d.ts +82 -76
- package/src/utils/hashing.js +313 -298
- package/src/utils/index.d.ts +65 -55
- package/src/utils/index.js +13 -13
- package/src/utils/result.d.ts +57 -57
- package/src/utils/result.js +128 -128
- package/src/utils/rlp.d.ts +12 -12
- package/src/utils/rlp.js +200 -200
- package/src/utils/units.d.ts +29 -29
- package/src/utils/units.js +107 -107
- package/src/wallet/index.d.ts +10 -10
- package/src/wallet/index.js +8 -8
- package/src/wallet/wallet.d.ts +160 -160
- package/src/wallet/wallet.js +483 -489
- package/test/e2e/all-solidity-types.dynamic.test.js +207 -200
- package/test/e2e/all-solidity-types.dynamic.test.ts +191 -0
- package/test/e2e/all-solidity-types.fixtures.js +231 -231
- package/test/e2e/all-solidity-types.generated-sdks.e2e.test.js +387 -368
- package/test/e2e/all-solidity-types.generated-sdks.e2e.test.ts +350 -0
- package/test/e2e/helpers.js +59 -47
- package/test/e2e/signing-context-and-fee.e2e.test.js +137 -0
- package/test/e2e/signing-context-and-fee.e2e.test.ts +128 -0
- package/test/e2e/simple-erc20.generated-sdks.e2e.test.js +168 -151
- package/test/e2e/simple-erc20.generated-sdks.e2e.test.ts +141 -0
- package/test/e2e/transactional.test.js +245 -191
- package/test/e2e/transactional.test.ts +208 -0
- package/test/e2e/typed-generator.e2e.test.js +407 -404
- package/test/e2e/typed-generator.e2e.test.ts +337 -0
- package/test/fixtures/ConstructorParam.sol +23 -23
- package/test/fixtures/MultiContracts.sol +37 -37
- package/test/fixtures/SimpleStorage.sol +18 -18
- package/test/fixtures/StakingContract.abi.json +1 -1
- package/test/integration/ipc-provider.test.js +49 -44
- package/test/integration/ipc-provider.test.ts +44 -0
- package/test/integration/provider.test.js +88 -72
- package/test/integration/provider.test.ts +85 -0
- package/test/integration/ws-provider.test.js +41 -33
- package/test/integration/ws-provider.test.ts +38 -0
- package/test/security/malformed-input.test.js +37 -31
- package/test/security/malformed-input.test.ts +35 -0
- package/test/unit/_encrypted-output.txt +6 -0
- package/test/unit/_log-encrypted-jsons.js +45 -0
- package/test/unit/_write-keystore-fixture.js +16 -0
- package/test/unit/abi-interface.test.js +103 -98
- package/test/unit/abi-interface.test.ts +102 -0
- package/test/unit/address-wallet.test.js +355 -257
- package/test/unit/address-wallet.test.ts +342 -0
- package/test/unit/browser-provider.test.js +85 -82
- package/test/unit/browser-provider.test.ts +79 -0
- package/test/unit/contract.test.js +85 -82
- package/test/unit/contract.test.ts +83 -0
- package/test/unit/encoding-units-rlp.test.js +92 -89
- package/test/unit/encoding-units-rlp.test.ts +91 -0
- package/test/unit/errors.test.js +77 -74
- package/test/unit/errors.test.ts +76 -0
- package/test/unit/filter-by-blockhash.test.js +55 -52
- package/test/unit/filter-by-blockhash.test.ts +54 -0
- package/test/unit/fixtures/encrypted-keystores-48-32-36.js +9 -0
- package/test/unit/generate-contract-cli.test.js +42 -39
- package/test/unit/generate-contract-cli.test.ts +41 -0
- package/test/unit/generate-sdk-artifacts-json.test.js +113 -110
- package/test/unit/generate-sdk-artifacts-json.test.ts +110 -0
- package/test/unit/generator.test.js +102 -99
- package/test/unit/generator.test.ts +101 -0
- package/test/unit/hashing.test.js +68 -54
- package/test/unit/hashing.test.ts +67 -0
- package/test/unit/init.test.js +39 -36
- package/test/unit/init.test.ts +38 -0
- package/test/unit/interface.test.js +56 -53
- package/test/unit/interface.test.ts +54 -0
- package/test/unit/internal-hex.test.js +50 -47
- package/test/unit/internal-hex.test.ts +49 -0
- package/test/unit/populate-transaction.test.js +65 -62
- package/test/unit/populate-transaction.test.ts +64 -0
- package/test/unit/providers.test.js +200 -144
- package/test/unit/providers.test.ts +196 -0
- package/test/unit/result.test.js +80 -77
- package/test/unit/result.test.ts +79 -0
- package/test/unit/solidity-types.test.js +49 -46
- package/test/unit/solidity-types.test.ts +39 -0
- package/test/unit/utils.test.js +57 -54
- package/test/unit/utils.test.ts +56 -0
- package/test/verbose-logger.js +74 -0
- package/tsconfig.build.json +14 -0
package/src/utils/encoding.d.ts
CHANGED
|
@@ -1,120 +1,120 @@
|
|
|
1
|
-
export type BytesLike = string | Uint8Array;
|
|
2
|
-
/**
|
|
3
|
-
* @typedef {string | Uint8Array} BytesLike
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Converts bytes to UTF-8 string.
|
|
7
|
-
* @param {BytesLike} data
|
|
8
|
-
* @returns {string}
|
|
9
|
-
*/
|
|
10
|
-
export function toUtf8String(data: BytesLike): string;
|
|
11
|
-
/**
|
|
12
|
-
* Converts string to UTF-8 bytes.
|
|
13
|
-
* @param {string} str
|
|
14
|
-
* @returns {Uint8Array}
|
|
15
|
-
*/
|
|
16
|
-
export function toUtf8Bytes(str: string): Uint8Array;
|
|
17
|
-
/**
|
|
18
|
-
* Converts data to hex string.
|
|
19
|
-
* @param {BytesLike} data
|
|
20
|
-
* @returns {string}
|
|
21
|
-
*/
|
|
22
|
-
export function toHex(data: BytesLike): string;
|
|
23
|
-
/**
|
|
24
|
-
* Alias for toHex.
|
|
25
|
-
* @param {BytesLike} data
|
|
26
|
-
* @returns {string}
|
|
27
|
-
*/
|
|
28
|
-
export function hexlify(data: BytesLike): string;
|
|
29
|
-
/**
|
|
30
|
-
* Converts data to byte array.
|
|
31
|
-
* @param {BytesLike} data
|
|
32
|
-
* @returns {Uint8Array}
|
|
33
|
-
*/
|
|
34
|
-
export function arrayify(data: BytesLike): Uint8Array;
|
|
35
|
-
/**
|
|
36
|
-
* Concatenates byte arrays and returns a hex string.
|
|
37
|
-
* @param {BytesLike[]} items
|
|
38
|
-
* @returns {string}
|
|
39
|
-
*/
|
|
40
|
-
export function concat(items: BytesLike[]): string;
|
|
41
|
-
/**
|
|
42
|
-
* Strips leading zeros from a hex string.
|
|
43
|
-
* @param {BytesLike} data
|
|
44
|
-
* @returns {string}
|
|
45
|
-
*/
|
|
46
|
-
export function stripZerosLeft(data: BytesLike): string;
|
|
47
|
-
/**
|
|
48
|
-
* Encodes a short UTF-8 string into a bytes32 hex string.
|
|
49
|
-
* @param {string} text
|
|
50
|
-
* @returns {string}
|
|
51
|
-
*/
|
|
52
|
-
export function encodeBytes32String(text: string): string;
|
|
53
|
-
/**
|
|
54
|
-
* Decodes a bytes32 hex string into a UTF-8 string (trailing zeros stripped).
|
|
55
|
-
* @param {BytesLike} bytes
|
|
56
|
-
* @returns {string}
|
|
57
|
-
*/
|
|
58
|
-
export function decodeBytes32String(bytes: BytesLike): string;
|
|
59
|
-
/**
|
|
60
|
-
* Decode Base58 string to bytes.
|
|
61
|
-
* @param {string} data
|
|
62
|
-
* @returns {Uint8Array}
|
|
63
|
-
*/
|
|
64
|
-
export function decodeBase58(data: string): Uint8Array;
|
|
65
|
-
/**
|
|
66
|
-
* Base64 decode to bytes.
|
|
67
|
-
* @param {string} data
|
|
68
|
-
* @returns {Uint8Array}
|
|
69
|
-
*/
|
|
70
|
-
export function decodeBase64(data: string): Uint8Array;
|
|
71
|
-
/**
|
|
72
|
-
* Encode BytesLike as Base58.
|
|
73
|
-
* @param {BytesLike} data
|
|
74
|
-
* @returns {string}
|
|
75
|
-
*/
|
|
76
|
-
export function encodeBase58(data: BytesLike): string;
|
|
77
|
-
/**
|
|
78
|
-
* Base64 encode BytesLike.
|
|
79
|
-
* @param {BytesLike} data
|
|
80
|
-
* @returns {string}
|
|
81
|
-
*/
|
|
82
|
-
export function encodeBase64(data: BytesLike): string;
|
|
83
|
-
/**
|
|
84
|
-
* Returns UTF-8 code points for a string.
|
|
85
|
-
* @param {string} str
|
|
86
|
-
* @returns {number[]}
|
|
87
|
-
*/
|
|
88
|
-
export function toUtf8CodePoints(str: string): number[];
|
|
89
|
-
import { isHexString } from "../internal/hex";
|
|
90
|
-
/**
|
|
91
|
-
* Returns true if value is BytesLike.
|
|
92
|
-
* @param {any} value
|
|
93
|
-
* @returns {boolean}
|
|
94
|
-
*/
|
|
95
|
-
export function isBytesLike(value: any): boolean;
|
|
96
|
-
/**
|
|
97
|
-
* Pads a BytesLike value to the left with zeros (byte length).
|
|
98
|
-
* @param {BytesLike} value
|
|
99
|
-
* @param {number} length
|
|
100
|
-
* @returns {string}
|
|
101
|
-
*/
|
|
102
|
-
export function zeroPad(value: BytesLike, length: number): string;
|
|
103
|
-
/**
|
|
104
|
-
* Pads a hex value (interpreted as bytes) to the left with zeros (byte length).
|
|
105
|
-
* @param {BytesLike} value
|
|
106
|
-
* @param {number} length
|
|
107
|
-
* @returns {string}
|
|
108
|
-
*/
|
|
109
|
-
export function zeroPadValue(value: BytesLike, length: number): string;
|
|
110
|
-
/**
|
|
111
|
-
* Solidity packed encoding.
|
|
112
|
-
* This is a complex helper in ethers.js; in QuantumCoin.js it is currently not implemented.
|
|
113
|
-
* @throws
|
|
114
|
-
*/
|
|
115
|
-
export function solidityPacked(): void;
|
|
116
|
-
export function solidityPackedKeccak256(): void;
|
|
117
|
-
export function solidityPackedSha256(): void;
|
|
118
|
-
import { bytesToHex } from "../internal/hex";
|
|
119
|
-
import { hexToBytes } from "../internal/hex";
|
|
120
|
-
export { isHexString, bytesToHex, hexToBytes };
|
|
1
|
+
export type BytesLike = string | Uint8Array;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {string | Uint8Array} BytesLike
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Converts bytes to UTF-8 string.
|
|
7
|
+
* @param {BytesLike} data
|
|
8
|
+
* @returns {string}
|
|
9
|
+
*/
|
|
10
|
+
export function toUtf8String(data: BytesLike): string;
|
|
11
|
+
/**
|
|
12
|
+
* Converts string to UTF-8 bytes.
|
|
13
|
+
* @param {string} str
|
|
14
|
+
* @returns {Uint8Array}
|
|
15
|
+
*/
|
|
16
|
+
export function toUtf8Bytes(str: string): Uint8Array;
|
|
17
|
+
/**
|
|
18
|
+
* Converts data to hex string.
|
|
19
|
+
* @param {BytesLike} data
|
|
20
|
+
* @returns {string}
|
|
21
|
+
*/
|
|
22
|
+
export function toHex(data: BytesLike): string;
|
|
23
|
+
/**
|
|
24
|
+
* Alias for toHex.
|
|
25
|
+
* @param {BytesLike} data
|
|
26
|
+
* @returns {string}
|
|
27
|
+
*/
|
|
28
|
+
export function hexlify(data: BytesLike): string;
|
|
29
|
+
/**
|
|
30
|
+
* Converts data to byte array.
|
|
31
|
+
* @param {BytesLike} data
|
|
32
|
+
* @returns {Uint8Array}
|
|
33
|
+
*/
|
|
34
|
+
export function arrayify(data: BytesLike): Uint8Array;
|
|
35
|
+
/**
|
|
36
|
+
* Concatenates byte arrays and returns a hex string.
|
|
37
|
+
* @param {BytesLike[]} items
|
|
38
|
+
* @returns {string}
|
|
39
|
+
*/
|
|
40
|
+
export function concat(items: BytesLike[]): string;
|
|
41
|
+
/**
|
|
42
|
+
* Strips leading zeros from a hex string.
|
|
43
|
+
* @param {BytesLike} data
|
|
44
|
+
* @returns {string}
|
|
45
|
+
*/
|
|
46
|
+
export function stripZerosLeft(data: BytesLike): string;
|
|
47
|
+
/**
|
|
48
|
+
* Encodes a short UTF-8 string into a bytes32 hex string.
|
|
49
|
+
* @param {string} text
|
|
50
|
+
* @returns {string}
|
|
51
|
+
*/
|
|
52
|
+
export function encodeBytes32String(text: string): string;
|
|
53
|
+
/**
|
|
54
|
+
* Decodes a bytes32 hex string into a UTF-8 string (trailing zeros stripped).
|
|
55
|
+
* @param {BytesLike} bytes
|
|
56
|
+
* @returns {string}
|
|
57
|
+
*/
|
|
58
|
+
export function decodeBytes32String(bytes: BytesLike): string;
|
|
59
|
+
/**
|
|
60
|
+
* Decode Base58 string to bytes.
|
|
61
|
+
* @param {string} data
|
|
62
|
+
* @returns {Uint8Array}
|
|
63
|
+
*/
|
|
64
|
+
export function decodeBase58(data: string): Uint8Array;
|
|
65
|
+
/**
|
|
66
|
+
* Base64 decode to bytes.
|
|
67
|
+
* @param {string} data
|
|
68
|
+
* @returns {Uint8Array}
|
|
69
|
+
*/
|
|
70
|
+
export function decodeBase64(data: string): Uint8Array;
|
|
71
|
+
/**
|
|
72
|
+
* Encode BytesLike as Base58.
|
|
73
|
+
* @param {BytesLike} data
|
|
74
|
+
* @returns {string}
|
|
75
|
+
*/
|
|
76
|
+
export function encodeBase58(data: BytesLike): string;
|
|
77
|
+
/**
|
|
78
|
+
* Base64 encode BytesLike.
|
|
79
|
+
* @param {BytesLike} data
|
|
80
|
+
* @returns {string}
|
|
81
|
+
*/
|
|
82
|
+
export function encodeBase64(data: BytesLike): string;
|
|
83
|
+
/**
|
|
84
|
+
* Returns UTF-8 code points for a string.
|
|
85
|
+
* @param {string} str
|
|
86
|
+
* @returns {number[]}
|
|
87
|
+
*/
|
|
88
|
+
export function toUtf8CodePoints(str: string): number[];
|
|
89
|
+
import { isHexString } from "../internal/hex";
|
|
90
|
+
/**
|
|
91
|
+
* Returns true if value is BytesLike.
|
|
92
|
+
* @param {any} value
|
|
93
|
+
* @returns {boolean}
|
|
94
|
+
*/
|
|
95
|
+
export function isBytesLike(value: any): boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Pads a BytesLike value to the left with zeros (byte length).
|
|
98
|
+
* @param {BytesLike} value
|
|
99
|
+
* @param {number} length
|
|
100
|
+
* @returns {string}
|
|
101
|
+
*/
|
|
102
|
+
export function zeroPad(value: BytesLike, length: number): string;
|
|
103
|
+
/**
|
|
104
|
+
* Pads a hex value (interpreted as bytes) to the left with zeros (byte length).
|
|
105
|
+
* @param {BytesLike} value
|
|
106
|
+
* @param {number} length
|
|
107
|
+
* @returns {string}
|
|
108
|
+
*/
|
|
109
|
+
export function zeroPadValue(value: BytesLike, length: number): string;
|
|
110
|
+
/**
|
|
111
|
+
* Solidity packed encoding.
|
|
112
|
+
* This is a complex helper in ethers.js; in QuantumCoin.js it is currently not implemented.
|
|
113
|
+
* @throws
|
|
114
|
+
*/
|
|
115
|
+
export function solidityPacked(): void;
|
|
116
|
+
export function solidityPackedKeccak256(): void;
|
|
117
|
+
export function solidityPackedSha256(): void;
|
|
118
|
+
import { bytesToHex } from "../internal/hex";
|
|
119
|
+
import { hexToBytes } from "../internal/hex";
|
|
120
|
+
export { isHexString, bytesToHex, hexToBytes };
|