koilib 2.8.0 → 3.0.0
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/README.md +61 -7
- package/dist/koinos.js +8404 -200
- package/dist/koinos.min.js +1 -1
- package/lib/Contract.d.ts +46 -7
- package/lib/Contract.js +89 -21
- package/lib/Contract.js.map +1 -1
- package/lib/Provider.d.ts +16 -3
- package/lib/Provider.js +36 -6
- package/lib/Provider.js.map +1 -1
- package/lib/Serializer.d.ts +2 -1
- package/lib/Serializer.js +50 -37
- package/lib/Serializer.js.map +1 -1
- package/lib/Signer.d.ts +42 -42
- package/lib/Signer.js +294 -112
- package/lib/Signer.js.map +1 -1
- package/lib/browser/Contract.d.ts +46 -7
- package/lib/browser/Contract.js +89 -21
- package/lib/browser/Contract.js.map +1 -1
- package/lib/browser/Provider.d.ts +16 -3
- package/lib/browser/Provider.js +36 -6
- package/lib/browser/Provider.js.map +1 -1
- package/lib/browser/Serializer.d.ts +2 -1
- package/lib/browser/Serializer.js +50 -37
- package/lib/browser/Serializer.js.map +1 -1
- package/lib/browser/Signer.d.ts +42 -42
- package/lib/browser/Signer.js +294 -112
- package/lib/browser/Signer.js.map +1 -1
- package/lib/browser/index.d.ts +1 -1
- package/lib/browser/index.js +1 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/indexUtils.d.ts +2 -0
- package/lib/browser/indexUtils.js +15 -0
- package/lib/browser/indexUtils.js.map +1 -0
- package/lib/browser/interface.d.ts +221 -45
- package/lib/browser/jsonDescriptors/chain-proto.json +676 -0
- package/lib/browser/jsonDescriptors/krc20-proto.json +47 -4
- package/lib/browser/protoModules/protocol-proto.d.ts +2 -0
- package/lib/browser/protoModules/protocol-proto.js +6336 -0
- package/lib/browser/protoModules/protocol-proto.js.map +1 -0
- package/lib/browser/utils.d.ts +18 -254
- package/lib/browser/utils.js +140 -12
- package/lib/browser/utils.js.map +1 -1
- package/lib/browser/utilsNode.d.ts +1021 -0
- package/lib/browser/utilsNode.js +346 -0
- package/lib/browser/utilsNode.js.map +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/indexUtils.d.ts +2 -0
- package/lib/indexUtils.js +15 -0
- package/lib/indexUtils.js.map +1 -0
- package/lib/interface.d.ts +221 -45
- package/lib/jsonDescriptors/chain-proto.json +676 -0
- package/lib/jsonDescriptors/krc20-proto.json +47 -4
- package/lib/protoModules/protocol-proto.d.ts +2 -0
- package/lib/protoModules/protocol-proto.js +6336 -0
- package/lib/protoModules/protocol-proto.js.map +1 -0
- package/lib/utils.d.ts +18 -254
- package/lib/utils.js +140 -12
- package/lib/utils.js.map +1 -1
- package/lib/utilsNode.d.ts +1021 -0
- package/lib/utilsNode.js +346 -0
- package/lib/utilsNode.js.map +1 -0
- package/package.json +1 -1
- package/lib/browser/jsonDescriptors/protocol-proto.json +0 -246
- package/lib/jsonDescriptors/protocol-proto.json +0 -246
package/lib/browser/utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Abi } from "./interface";
|
|
1
|
+
import { Abi, TypeField } from "./interface";
|
|
2
2
|
/**
|
|
3
3
|
* Converts an hex string to Uint8Array
|
|
4
4
|
*/
|
|
@@ -15,14 +15,27 @@ export declare function encodeBase58(buffer: Uint8Array): string;
|
|
|
15
15
|
* Decodes a buffer formatted in base58
|
|
16
16
|
*/
|
|
17
17
|
export declare function decodeBase58(bs58: string): Uint8Array;
|
|
18
|
+
/**
|
|
19
|
+
* Encodes an Uint8Array in base64url
|
|
20
|
+
*/
|
|
21
|
+
export declare function encodeBase64url(buffer: Uint8Array): string;
|
|
22
|
+
/**
|
|
23
|
+
* Decodes a buffer formatted in base64url
|
|
24
|
+
*/
|
|
25
|
+
export declare function decodeBase64url(bs64url: string): Uint8Array;
|
|
18
26
|
/**
|
|
19
27
|
* Encodes an Uint8Array in base64
|
|
20
28
|
*/
|
|
21
29
|
export declare function encodeBase64(buffer: Uint8Array): string;
|
|
30
|
+
export declare function multihash(buffer: Uint8Array, code?: string): Uint8Array;
|
|
22
31
|
/**
|
|
23
32
|
* Decodes a buffer formatted in base64
|
|
24
33
|
*/
|
|
25
34
|
export declare function decodeBase64(bs64: string): Uint8Array;
|
|
35
|
+
/**
|
|
36
|
+
* Calculates the merkle root of sha256 hashes
|
|
37
|
+
*/
|
|
38
|
+
export declare function calculateMerkleRoot(hashes: Uint8Array[]): Uint8Array;
|
|
26
39
|
/**
|
|
27
40
|
* Encodes a public or private key in base58 using
|
|
28
41
|
* the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
|
|
@@ -67,260 +80,11 @@ export declare function formatUnits(value: string | number | bigint, decimals: n
|
|
|
67
80
|
* ```
|
|
68
81
|
*/
|
|
69
82
|
export declare function parseUnits(value: string, decimals: number): string;
|
|
83
|
+
export declare function btypeDecodeValue(valueEncoded: unknown, typeField: TypeField): unknown;
|
|
84
|
+
export declare function btypeEncodeValue(valueDecoded: unknown, typeField: TypeField): unknown;
|
|
85
|
+
export declare function btypeDecode(valueEncoded: Record<string, unknown>, fields: Record<string, TypeField>): Record<string, unknown>;
|
|
86
|
+
export declare function btypeEncode(valueDecoded: Record<string, unknown>, fields: Record<string, TypeField>): Record<string, unknown>;
|
|
70
87
|
/**
|
|
71
88
|
* ABI for tokens
|
|
72
89
|
*/
|
|
73
90
|
export declare const Krc20Abi: Abi;
|
|
74
|
-
export declare const ProtocolTypes: {
|
|
75
|
-
nested: {
|
|
76
|
-
koinos: {
|
|
77
|
-
nested: {
|
|
78
|
-
protocol: {
|
|
79
|
-
options: {
|
|
80
|
-
go_package: string;
|
|
81
|
-
};
|
|
82
|
-
nested: {
|
|
83
|
-
contract_call_bundle: {
|
|
84
|
-
fields: {
|
|
85
|
-
contract_id: {
|
|
86
|
-
type: string;
|
|
87
|
-
id: number;
|
|
88
|
-
options: {
|
|
89
|
-
"(koinos_bytes_type)": string;
|
|
90
|
-
};
|
|
91
|
-
};
|
|
92
|
-
entry_point: {
|
|
93
|
-
type: string;
|
|
94
|
-
id: number;
|
|
95
|
-
};
|
|
96
|
-
};
|
|
97
|
-
};
|
|
98
|
-
system_call_target: {
|
|
99
|
-
oneofs: {
|
|
100
|
-
target: {
|
|
101
|
-
oneof: string[];
|
|
102
|
-
};
|
|
103
|
-
};
|
|
104
|
-
fields: {
|
|
105
|
-
thunk_id: {
|
|
106
|
-
type: string;
|
|
107
|
-
id: number;
|
|
108
|
-
};
|
|
109
|
-
system_call_bundle: {
|
|
110
|
-
type: string;
|
|
111
|
-
id: number;
|
|
112
|
-
};
|
|
113
|
-
};
|
|
114
|
-
};
|
|
115
|
-
upload_contract_operation: {
|
|
116
|
-
fields: {
|
|
117
|
-
contract_id: {
|
|
118
|
-
type: string;
|
|
119
|
-
id: number;
|
|
120
|
-
options: {
|
|
121
|
-
"(koinos_bytes_type)": string;
|
|
122
|
-
};
|
|
123
|
-
};
|
|
124
|
-
bytecode: {
|
|
125
|
-
/**
|
|
126
|
-
* Encodes a public or private key in base58 using
|
|
127
|
-
* the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
|
|
128
|
-
* and [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format)).
|
|
129
|
-
*
|
|
130
|
-
* For private keys this encode is also known as
|
|
131
|
-
* wallet import format (WIF).
|
|
132
|
-
*/
|
|
133
|
-
type: string;
|
|
134
|
-
id: number;
|
|
135
|
-
};
|
|
136
|
-
};
|
|
137
|
-
};
|
|
138
|
-
call_contract_operation: {
|
|
139
|
-
fields: {
|
|
140
|
-
contract_id: {
|
|
141
|
-
type: string;
|
|
142
|
-
id: number;
|
|
143
|
-
options: {
|
|
144
|
-
"(koinos_bytes_type)": string;
|
|
145
|
-
};
|
|
146
|
-
};
|
|
147
|
-
entry_point: {
|
|
148
|
-
type: string;
|
|
149
|
-
id: number;
|
|
150
|
-
};
|
|
151
|
-
args: {
|
|
152
|
-
type: string;
|
|
153
|
-
id: number;
|
|
154
|
-
};
|
|
155
|
-
};
|
|
156
|
-
};
|
|
157
|
-
set_system_call_operation: {
|
|
158
|
-
fields: {
|
|
159
|
-
call_id: {
|
|
160
|
-
type: string;
|
|
161
|
-
id: number;
|
|
162
|
-
};
|
|
163
|
-
target: {
|
|
164
|
-
type: string;
|
|
165
|
-
id: number;
|
|
166
|
-
};
|
|
167
|
-
};
|
|
168
|
-
};
|
|
169
|
-
operation: {
|
|
170
|
-
oneofs: {
|
|
171
|
-
op: {
|
|
172
|
-
oneof: string[];
|
|
173
|
-
};
|
|
174
|
-
};
|
|
175
|
-
fields: {
|
|
176
|
-
upload_contract: {
|
|
177
|
-
type: string;
|
|
178
|
-
id: number;
|
|
179
|
-
};
|
|
180
|
-
call_contract: {
|
|
181
|
-
type: string;
|
|
182
|
-
id: number;
|
|
183
|
-
};
|
|
184
|
-
set_system_call: {
|
|
185
|
-
type: string;
|
|
186
|
-
id: number;
|
|
187
|
-
};
|
|
188
|
-
};
|
|
189
|
-
};
|
|
190
|
-
active_transaction_data: {
|
|
191
|
-
fields: {
|
|
192
|
-
rc_limit: {
|
|
193
|
-
type: string;
|
|
194
|
-
id: number;
|
|
195
|
-
options: {
|
|
196
|
-
jstype: string;
|
|
197
|
-
};
|
|
198
|
-
};
|
|
199
|
-
nonce: {
|
|
200
|
-
type: string;
|
|
201
|
-
id: number;
|
|
202
|
-
options: {
|
|
203
|
-
jstype: string;
|
|
204
|
-
};
|
|
205
|
-
};
|
|
206
|
-
operations: {
|
|
207
|
-
rule: string;
|
|
208
|
-
type: string;
|
|
209
|
-
id: number;
|
|
210
|
-
};
|
|
211
|
-
};
|
|
212
|
-
};
|
|
213
|
-
passive_transaction_data: {
|
|
214
|
-
fields: {};
|
|
215
|
-
};
|
|
216
|
-
transaction: {
|
|
217
|
-
fields: {
|
|
218
|
-
id: {
|
|
219
|
-
type: string;
|
|
220
|
-
id: number;
|
|
221
|
-
options: {
|
|
222
|
-
"(koinos_bytes_type)": string;
|
|
223
|
-
};
|
|
224
|
-
};
|
|
225
|
-
active: {
|
|
226
|
-
type: string;
|
|
227
|
-
id: number;
|
|
228
|
-
};
|
|
229
|
-
passive: {
|
|
230
|
-
type: string;
|
|
231
|
-
id: number;
|
|
232
|
-
};
|
|
233
|
-
signature_data: {
|
|
234
|
-
type: string;
|
|
235
|
-
id: number;
|
|
236
|
-
};
|
|
237
|
-
};
|
|
238
|
-
};
|
|
239
|
-
active_block_data: {
|
|
240
|
-
fields: {
|
|
241
|
-
transaction_merkle_root: {
|
|
242
|
-
type: string;
|
|
243
|
-
id: number;
|
|
244
|
-
};
|
|
245
|
-
passive_data_merkle_root: {
|
|
246
|
-
type: string;
|
|
247
|
-
id: number;
|
|
248
|
-
};
|
|
249
|
-
signer: {
|
|
250
|
-
type: string;
|
|
251
|
-
id: number;
|
|
252
|
-
};
|
|
253
|
-
};
|
|
254
|
-
};
|
|
255
|
-
passive_block_data: {
|
|
256
|
-
fields: {};
|
|
257
|
-
};
|
|
258
|
-
block_header: {
|
|
259
|
-
fields: {
|
|
260
|
-
previous: {
|
|
261
|
-
type: string;
|
|
262
|
-
/**
|
|
263
|
-
* ABI for tokens
|
|
264
|
-
*/
|
|
265
|
-
id: number;
|
|
266
|
-
options: {
|
|
267
|
-
"(koinos_bytes_type)": string;
|
|
268
|
-
};
|
|
269
|
-
};
|
|
270
|
-
height: {
|
|
271
|
-
type: string;
|
|
272
|
-
id: number;
|
|
273
|
-
options: {
|
|
274
|
-
jstype: string;
|
|
275
|
-
};
|
|
276
|
-
};
|
|
277
|
-
timestamp: {
|
|
278
|
-
type: string;
|
|
279
|
-
id: number;
|
|
280
|
-
options: {
|
|
281
|
-
jstype: string;
|
|
282
|
-
};
|
|
283
|
-
};
|
|
284
|
-
};
|
|
285
|
-
};
|
|
286
|
-
block: {
|
|
287
|
-
fields: {
|
|
288
|
-
id: {
|
|
289
|
-
type: string;
|
|
290
|
-
id: number;
|
|
291
|
-
options: {
|
|
292
|
-
"(koinos_bytes_type)": string;
|
|
293
|
-
};
|
|
294
|
-
};
|
|
295
|
-
header: {
|
|
296
|
-
type: string;
|
|
297
|
-
id: number;
|
|
298
|
-
};
|
|
299
|
-
active: {
|
|
300
|
-
type: string;
|
|
301
|
-
id: number;
|
|
302
|
-
};
|
|
303
|
-
passive: {
|
|
304
|
-
type: string;
|
|
305
|
-
id: number;
|
|
306
|
-
};
|
|
307
|
-
signature_data: {
|
|
308
|
-
type: string;
|
|
309
|
-
id: number;
|
|
310
|
-
};
|
|
311
|
-
transactions: {
|
|
312
|
-
rule: string;
|
|
313
|
-
type: string;
|
|
314
|
-
id: number;
|
|
315
|
-
};
|
|
316
|
-
};
|
|
317
|
-
};
|
|
318
|
-
block_receipt: {
|
|
319
|
-
fields: {};
|
|
320
|
-
};
|
|
321
|
-
};
|
|
322
|
-
};
|
|
323
|
-
};
|
|
324
|
-
};
|
|
325
|
-
};
|
|
326
|
-
};
|
package/lib/browser/utils.js
CHANGED
|
@@ -22,12 +22,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
22
22
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
23
|
};
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.
|
|
25
|
+
exports.Krc20Abi = exports.btypeEncode = exports.btypeDecode = exports.btypeEncodeValue = exports.btypeDecodeValue = exports.parseUnits = exports.formatUnits = exports.bitcoinAddress = exports.bitcoinDecode = exports.bitcoinEncode = exports.calculateMerkleRoot = exports.decodeBase64 = exports.multihash = exports.encodeBase64 = exports.decodeBase64url = exports.encodeBase64url = exports.decodeBase58 = exports.encodeBase58 = exports.toHexString = exports.toUint8Array = void 0;
|
|
26
26
|
const multibase = __importStar(require("multibase"));
|
|
27
27
|
const sha256_1 = require("@noble/hashes/sha256");
|
|
28
28
|
const ripemd160_1 = require("@noble/hashes/ripemd160");
|
|
29
29
|
const krc20_proto_json_1 = __importDefault(require("./jsonDescriptors/krc20-proto.json"));
|
|
30
|
-
|
|
30
|
+
//import protocolJson from "./jsonDescriptors/protocol-proto.json";
|
|
31
31
|
/**
|
|
32
32
|
* Converts an hex string to Uint8Array
|
|
33
33
|
*/
|
|
@@ -62,20 +62,67 @@ function decodeBase58(bs58) {
|
|
|
62
62
|
return multibase.decode(`z${bs58}`);
|
|
63
63
|
}
|
|
64
64
|
exports.decodeBase58 = decodeBase58;
|
|
65
|
+
/**
|
|
66
|
+
* Encodes an Uint8Array in base64url
|
|
67
|
+
*/
|
|
68
|
+
function encodeBase64url(buffer) {
|
|
69
|
+
return new TextDecoder().decode(multibase.encode("U", buffer)).slice(1);
|
|
70
|
+
}
|
|
71
|
+
exports.encodeBase64url = encodeBase64url;
|
|
72
|
+
/**
|
|
73
|
+
* Decodes a buffer formatted in base64url
|
|
74
|
+
*/
|
|
75
|
+
function decodeBase64url(bs64url) {
|
|
76
|
+
return multibase.decode(`U${bs64url}`);
|
|
77
|
+
}
|
|
78
|
+
exports.decodeBase64url = decodeBase64url;
|
|
65
79
|
/**
|
|
66
80
|
* Encodes an Uint8Array in base64
|
|
67
81
|
*/
|
|
68
82
|
function encodeBase64(buffer) {
|
|
69
|
-
return new TextDecoder().decode(multibase.encode("
|
|
83
|
+
return new TextDecoder().decode(multibase.encode("M", buffer)).slice(1);
|
|
70
84
|
}
|
|
71
85
|
exports.encodeBase64 = encodeBase64;
|
|
86
|
+
function multihash(buffer, code = "sha2-256") {
|
|
87
|
+
switch (code) {
|
|
88
|
+
case "sha2-256": {
|
|
89
|
+
return new Uint8Array([18, buffer.length, ...buffer]);
|
|
90
|
+
}
|
|
91
|
+
default:
|
|
92
|
+
throw new Error(`multihash code ${code} not supported`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.multihash = multihash;
|
|
72
96
|
/**
|
|
73
97
|
* Decodes a buffer formatted in base64
|
|
74
98
|
*/
|
|
75
99
|
function decodeBase64(bs64) {
|
|
76
|
-
return multibase.decode(`
|
|
100
|
+
return multibase.decode(`M${bs64}`);
|
|
77
101
|
}
|
|
78
102
|
exports.decodeBase64 = decodeBase64;
|
|
103
|
+
/**
|
|
104
|
+
* Calculates the merkle root of sha256 hashes
|
|
105
|
+
*/
|
|
106
|
+
function calculateMerkleRoot(hashes) {
|
|
107
|
+
if (!hashes.length)
|
|
108
|
+
return (0, sha256_1.sha256)(new Uint8Array());
|
|
109
|
+
while (hashes.length > 1) {
|
|
110
|
+
for (let i = 0; i < hashes.length; i += 2) {
|
|
111
|
+
if (i + 1 < hashes.length) {
|
|
112
|
+
const leftHash = hashes[i];
|
|
113
|
+
const rightHash = hashes[i + 1];
|
|
114
|
+
const sumHash = (0, sha256_1.sha256)(new Uint8Array([...leftHash, ...rightHash]));
|
|
115
|
+
hashes[i / 2] = new Uint8Array(sumHash);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
hashes[i / 2] = hashes[i];
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
hashes = hashes.slice(0, Math.ceil(hashes.length / 2));
|
|
122
|
+
}
|
|
123
|
+
return hashes[0];
|
|
124
|
+
}
|
|
125
|
+
exports.calculateMerkleRoot = calculateMerkleRoot;
|
|
79
126
|
/**
|
|
80
127
|
* Encodes a public or private key in base58 using
|
|
81
128
|
* the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
|
|
@@ -199,54 +246,135 @@ function parseUnits(value, decimals) {
|
|
|
199
246
|
return `${sign}${`${integerPart}${decimalPart}`.replace(/^0+(?=\d)/, "")}`;
|
|
200
247
|
}
|
|
201
248
|
exports.parseUnits = parseUnits;
|
|
249
|
+
function btypeDecodeValue(valueEncoded, typeField) {
|
|
250
|
+
// No byte conversion
|
|
251
|
+
if (typeField.type !== "bytes")
|
|
252
|
+
return valueEncoded;
|
|
253
|
+
const value = valueEncoded;
|
|
254
|
+
// Default byte conversion
|
|
255
|
+
if (!typeField.btype) {
|
|
256
|
+
return decodeBase64url(value);
|
|
257
|
+
}
|
|
258
|
+
// Specific byte conversion
|
|
259
|
+
switch (typeField.btype) {
|
|
260
|
+
case "BASE58":
|
|
261
|
+
case "CONTRACT_ID":
|
|
262
|
+
case "ADDRESS":
|
|
263
|
+
return decodeBase58(value);
|
|
264
|
+
case "BASE64":
|
|
265
|
+
return decodeBase64url(value);
|
|
266
|
+
case "HEX":
|
|
267
|
+
case "BLOCK_ID":
|
|
268
|
+
case "TRANSACTION_ID":
|
|
269
|
+
return toUint8Array(value.slice(2));
|
|
270
|
+
default:
|
|
271
|
+
throw new Error(`unknown btype ${typeField.btype}`);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
exports.btypeDecodeValue = btypeDecodeValue;
|
|
275
|
+
function btypeEncodeValue(valueDecoded, typeField) {
|
|
276
|
+
// No byte conversion
|
|
277
|
+
if (typeField.type !== "bytes")
|
|
278
|
+
return valueDecoded;
|
|
279
|
+
const value = valueDecoded;
|
|
280
|
+
// Default byte conversion
|
|
281
|
+
if (!typeField.btype) {
|
|
282
|
+
return encodeBase64url(value);
|
|
283
|
+
}
|
|
284
|
+
// Specific byte conversion
|
|
285
|
+
switch (typeField.btype) {
|
|
286
|
+
case "BASE58":
|
|
287
|
+
case "CONTRACT_ID":
|
|
288
|
+
case "ADDRESS":
|
|
289
|
+
return encodeBase58(value);
|
|
290
|
+
case "BASE64":
|
|
291
|
+
return encodeBase64url(value);
|
|
292
|
+
case "HEX":
|
|
293
|
+
case "BLOCK_ID":
|
|
294
|
+
case "TRANSACTION_ID":
|
|
295
|
+
return `0x${toHexString(value)}`;
|
|
296
|
+
default:
|
|
297
|
+
throw new Error(`unknown btype ${typeField.btype}`);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
exports.btypeEncodeValue = btypeEncodeValue;
|
|
301
|
+
function btypeDecode(valueEncoded, fields) {
|
|
302
|
+
if (typeof valueEncoded !== "object")
|
|
303
|
+
return valueEncoded;
|
|
304
|
+
const valueDecoded = {};
|
|
305
|
+
Object.keys(fields).forEach((name) => {
|
|
306
|
+
if (!valueEncoded[name])
|
|
307
|
+
return;
|
|
308
|
+
if (fields[name].subtypes)
|
|
309
|
+
valueDecoded[name] = btypeDecode(valueEncoded[name], fields[name].subtypes);
|
|
310
|
+
else
|
|
311
|
+
valueDecoded[name] = btypeDecodeValue(valueEncoded[name], fields[name]);
|
|
312
|
+
});
|
|
313
|
+
return valueDecoded;
|
|
314
|
+
}
|
|
315
|
+
exports.btypeDecode = btypeDecode;
|
|
316
|
+
function btypeEncode(valueDecoded, fields) {
|
|
317
|
+
if (typeof valueDecoded !== "object")
|
|
318
|
+
return valueDecoded;
|
|
319
|
+
const valueEncoded = {};
|
|
320
|
+
Object.keys(fields).forEach((name) => {
|
|
321
|
+
if (!valueDecoded[name])
|
|
322
|
+
return;
|
|
323
|
+
if (fields[name].subtypes)
|
|
324
|
+
valueEncoded[name] = btypeEncode(valueDecoded[name], fields[name].subtypes);
|
|
325
|
+
valueEncoded[name] = btypeEncodeValue(valueDecoded[name], fields[name]);
|
|
326
|
+
});
|
|
327
|
+
return valueEncoded;
|
|
328
|
+
}
|
|
329
|
+
exports.btypeEncode = btypeEncode;
|
|
202
330
|
/**
|
|
203
331
|
* ABI for tokens
|
|
204
332
|
*/
|
|
205
333
|
exports.Krc20Abi = {
|
|
206
334
|
methods: {
|
|
207
335
|
name: {
|
|
208
|
-
entryPoint:
|
|
336
|
+
entryPoint: 0x82a3537f,
|
|
209
337
|
input: "name_arguments",
|
|
210
338
|
output: "name_result",
|
|
211
339
|
readOnly: true,
|
|
212
340
|
},
|
|
213
341
|
symbol: {
|
|
214
|
-
entryPoint:
|
|
342
|
+
entryPoint: 0xb76a7ca1,
|
|
215
343
|
input: "symbol_arguments",
|
|
216
344
|
output: "symbol_result",
|
|
217
345
|
readOnly: true,
|
|
218
346
|
},
|
|
219
347
|
decimals: {
|
|
220
|
-
entryPoint:
|
|
348
|
+
entryPoint: 0xee80fd2f,
|
|
221
349
|
input: "decimals_arguments",
|
|
222
350
|
output: "decimals_result",
|
|
223
351
|
readOnly: true,
|
|
224
352
|
},
|
|
225
353
|
totalSupply: {
|
|
226
|
-
entryPoint:
|
|
354
|
+
entryPoint: 0xb0da3934,
|
|
227
355
|
input: "total_supply_arguments",
|
|
228
356
|
output: "total_supply_result",
|
|
229
357
|
readOnly: true,
|
|
230
358
|
},
|
|
231
359
|
balanceOf: {
|
|
232
|
-
entryPoint:
|
|
360
|
+
entryPoint: 0x5c721497,
|
|
233
361
|
input: "balance_of_arguments",
|
|
234
362
|
output: "balance_of_result",
|
|
235
363
|
readOnly: true,
|
|
236
364
|
defaultOutput: { value: "0" },
|
|
237
365
|
},
|
|
238
366
|
transfer: {
|
|
239
|
-
entryPoint:
|
|
367
|
+
entryPoint: 0x27f576ca,
|
|
240
368
|
input: "transfer_arguments",
|
|
241
369
|
output: "transfer_result",
|
|
242
370
|
},
|
|
243
371
|
mint: {
|
|
244
|
-
entryPoint:
|
|
372
|
+
entryPoint: 0xdc6f17bb,
|
|
245
373
|
input: "mint_arguments",
|
|
246
374
|
output: "mint_result",
|
|
247
375
|
},
|
|
248
376
|
},
|
|
249
377
|
types: krc20_proto_json_1.default,
|
|
250
378
|
};
|
|
251
|
-
|
|
379
|
+
//export const ProtocolTypes = protocolJson;
|
|
252
380
|
//# sourceMappingURL=utils.js.map
|
package/lib/browser/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAuC;AACvC,iDAA8C;AAC9C,uDAAoD;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|