@provablehq/wasm 0.11.3 → 0.11.5
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/mainnet/aleo_wasm.d.ts +70 -11
- package/dist/mainnet/aleo_wasm.wasm +0 -0
- package/dist/mainnet/index.cjs +148 -60
- package/dist/mainnet/index.cjs.map +1 -1
- package/dist/mainnet/index.js +148 -61
- package/dist/mainnet/index.js.map +1 -1
- package/dist/mainnet/worker.js +148 -60
- package/dist/mainnet/worker.js.map +1 -1
- package/dist/testnet/aleo_wasm.d.ts +73 -14
- package/dist/testnet/aleo_wasm.wasm +0 -0
- package/dist/testnet/index.cjs +156 -68
- package/dist/testnet/index.cjs.map +1 -1
- package/dist/testnet/index.js +156 -69
- package/dist/testnet/index.js.map +1 -1
- package/dist/testnet/worker.js +156 -68
- package/dist/testnet/worker.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/* tslint:disable */
|
|
2
2
|
/* eslint-disable */
|
|
3
3
|
export function runRayonThread(receiver: number): void;
|
|
4
|
-
export function initThreadPool(url: URL, num_threads: number): Promise<void>;
|
|
5
4
|
/**
|
|
6
5
|
* Set the WASM log level from JS. Called automatically by the SDK's
|
|
7
6
|
* `setLogLevel(level)` to keep TS and WASM logging in sync.
|
|
@@ -9,6 +8,7 @@ export function initThreadPool(url: URL, num_threads: number): Promise<void>;
|
|
|
9
8
|
* Values above 4 are clamped to debug.
|
|
10
9
|
*/
|
|
11
10
|
export function setWasmLogLevel(level: number): void;
|
|
11
|
+
export function initThreadPool(url: URL, num_threads: number): Promise<void>;
|
|
12
12
|
/**
|
|
13
13
|
* Verify a SNARK proof against a verifying key and public inputs.
|
|
14
14
|
*
|
|
@@ -21,6 +21,18 @@ export function setWasmLogLevel(level: number): void;
|
|
|
21
21
|
* @returns {boolean} True if the proof is valid, false otherwise
|
|
22
22
|
*/
|
|
23
23
|
export function snarkVerify(verifying_key: VerifyingKey, inputs: Array<any>, proof: Proof): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Verify a batch SNARK proof against multiple verifying keys and their corresponding public inputs.
|
|
26
|
+
*
|
|
27
|
+
* This function verifies a batch proof produced by Aleo programs that may not be deployed on chain.
|
|
28
|
+
* Each verifying key is paired with one or more sets of public inputs (instances).
|
|
29
|
+
*
|
|
30
|
+
* @param {Array<string>} verifying_keys Array of verifying key strings, one per circuit
|
|
31
|
+
* @param {Array<Array<Array<string>>>} inputs 3D array of field element strings [circuit_idx][instance_idx][field_idx]
|
|
32
|
+
* @param {Proof} proof The batch proof to verify
|
|
33
|
+
* @returns {boolean} True if the batch proof is valid, false otherwise
|
|
34
|
+
*/
|
|
35
|
+
export function snarkVerifyBatch(verifying_keys: Array<any>, inputs: Array<any>, proof: Proof): boolean;
|
|
24
36
|
/**
|
|
25
37
|
* Verify an execution. Executions with multiple transitions must have the program source code and
|
|
26
38
|
* verifying keys of imported functions supplied from outside to correctly verify. Also, this does
|
|
@@ -36,17 +48,18 @@ export function snarkVerify(verifying_key: VerifyingKey, inputs: Array<any>, pro
|
|
|
36
48
|
*/
|
|
37
49
|
export function verifyFunctionExecution(execution: Execution, verifying_key: VerifyingKey, program: Program, function_id: string, imports: object | null | undefined, imported_verifying_keys: object | null | undefined, block_height: number, program_imports?: ProgramImports | null): boolean;
|
|
38
50
|
/**
|
|
39
|
-
*
|
|
51
|
+
* Returns the maximum number of imports allowed in a program by the
|
|
52
|
+
* snarkVM network implementation this SDK was built against.
|
|
40
53
|
*
|
|
41
|
-
*
|
|
42
|
-
* Each verifying key is paired with one or more sets of public inputs (instances).
|
|
54
|
+
* @returns {number} The maximum number of program imports.
|
|
43
55
|
*
|
|
44
|
-
* @
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
56
|
+
* @example
|
|
57
|
+
* import { getMaxProgramImports } from '@provablehq/sdk';
|
|
58
|
+
*
|
|
59
|
+
* const maxImports = getMaxProgramImports();
|
|
48
60
|
*/
|
|
49
|
-
export function
|
|
61
|
+
export function getMaxProgramImports(): number;
|
|
62
|
+
export function stringToField(string: string): Field;
|
|
50
63
|
/**
|
|
51
64
|
* Set test consensus version heights for testing.
|
|
52
65
|
*
|
|
@@ -56,10 +69,9 @@ export function snarkVerifyBatch(verifying_keys: Array<any>, inputs: Array<any>,
|
|
|
56
69
|
* import { getOrInitConsensusVersionTestHeights } from '@provablehq/sdk';
|
|
57
70
|
*
|
|
58
71
|
* Set the consensus version heights.
|
|
59
|
-
* getOrInitConsensusVersionTestHeights("0,1,2,3,4,5,6,7,8,9,10,11,12,13,14");
|
|
72
|
+
* getOrInitConsensusVersionTestHeights("0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16");
|
|
60
73
|
*/
|
|
61
74
|
export function getOrInitConsensusVersionTestHeights(heights?: string | null): Array<any>;
|
|
62
|
-
export function stringToField(string: string): Field;
|
|
63
75
|
/**
|
|
64
76
|
* Public address of an Aleo account
|
|
65
77
|
*/
|
|
@@ -2894,6 +2906,20 @@ export class Program {
|
|
|
2894
2906
|
* console.log(credits_functions === expected_functions); // Output should be "true"
|
|
2895
2907
|
*/
|
|
2896
2908
|
getFunctions(): Array<any>;
|
|
2909
|
+
/**
|
|
2910
|
+
* Get the program's name (without the `.aleo` suffix) encoded as a field element.
|
|
2911
|
+
*
|
|
2912
|
+
* This is the same value as casting the program name identifier to a field on-chain
|
|
2913
|
+
* (e.g. `my_program.aleo` -> `Identifier("my_program") as field`), which is used as
|
|
2914
|
+
* the program id in dynamic dispatch calls such as `IARC20@(token_id)`.
|
|
2915
|
+
*
|
|
2916
|
+
* @example
|
|
2917
|
+
* const program = aleo_wasm.Program.getCreditsProgram();
|
|
2918
|
+
* const field = program.nameToField(); // Field encoding of "credits"
|
|
2919
|
+
*
|
|
2920
|
+
* @returns {Field} The program name as a field element
|
|
2921
|
+
*/
|
|
2922
|
+
nameToField(): Field;
|
|
2897
2923
|
/**
|
|
2898
2924
|
* Get the external call graph reachable from a specific entry function.
|
|
2899
2925
|
*
|
|
@@ -3042,6 +3068,39 @@ export class Program {
|
|
|
3042
3068
|
* @returns {Address} The address of the program
|
|
3043
3069
|
*/
|
|
3044
3070
|
address(): Address;
|
|
3071
|
+
/**
|
|
3072
|
+
* Determine if the program implements the ARC-20 fungible token interface (IARC20).
|
|
3073
|
+
*
|
|
3074
|
+
* This checks that the program defines a `Token` record with an `amount: u128` entry
|
|
3075
|
+
* (additional entries are permitted, per the interface's open record definition) and
|
|
3076
|
+
* that every function and view function required by ARC-20 is present with the exact
|
|
3077
|
+
* input and output signature defined by the standard.
|
|
3078
|
+
*
|
|
3079
|
+
* @see https://github.com/ProvableHQ/ARCs/blob/master/arc-0020/README.md
|
|
3080
|
+
*
|
|
3081
|
+
* @returns {boolean} True if the program implements the ARC-20 token interface
|
|
3082
|
+
*/
|
|
3083
|
+
isArc20(): boolean;
|
|
3084
|
+
/**
|
|
3085
|
+
* Determine if the program implements the ARC-22 compliant token interface (IARC22).
|
|
3086
|
+
*
|
|
3087
|
+
* This checks that the program defines `Token` and `ComplianceRecord` records with the
|
|
3088
|
+
* entries required by the standard (additional entries are permitted, per the
|
|
3089
|
+
* interface's open record definitions), and that every function and view function
|
|
3090
|
+
* required by ARC-22 is present with the exact input and output signature defined by
|
|
3091
|
+
* the standard. The `MerkleProof` struct used by the private transfer functions may be
|
|
3092
|
+
* declared locally (in which case its shape must match the standard exactly) or
|
|
3093
|
+
* imported from another program such as a freeze list registry.
|
|
3094
|
+
*
|
|
3095
|
+
* Note: this checks the token interface (IARC22) only. The freeze list registry
|
|
3096
|
+
* interface (IARC22Freezelist) is typically implemented by a separate program and is
|
|
3097
|
+
* not required for a token program to be considered ARC-22 compliant.
|
|
3098
|
+
*
|
|
3099
|
+
* @see https://github.com/ProvableHQ/ARCs/blob/master/arc-0022/README.md
|
|
3100
|
+
*
|
|
3101
|
+
* @returns {boolean} True if the program implements the ARC-22 token interface
|
|
3102
|
+
*/
|
|
3103
|
+
isArc22(): boolean;
|
|
3045
3104
|
/**
|
|
3046
3105
|
* Determine equality with another program
|
|
3047
3106
|
*
|
|
Binary file
|
package/dist/mainnet/index.cjs
CHANGED
|
@@ -292,16 +292,6 @@ function runRayonThread(receiver) {
|
|
|
292
292
|
wasm$1.runRayonThread(receiver);
|
|
293
293
|
}
|
|
294
294
|
|
|
295
|
-
/**
|
|
296
|
-
* @param {URL} url
|
|
297
|
-
* @param {number} num_threads
|
|
298
|
-
* @returns {Promise<void>}
|
|
299
|
-
*/
|
|
300
|
-
function initThreadPool(url, num_threads) {
|
|
301
|
-
const ret = wasm$1.initThreadPool(addHeapObject(url), num_threads);
|
|
302
|
-
return takeObject(ret);
|
|
303
|
-
}
|
|
304
|
-
|
|
305
295
|
/**
|
|
306
296
|
* Set the WASM log level from JS. Called automatically by the SDK's
|
|
307
297
|
* `setLogLevel(level)` to keep TS and WASM logging in sync.
|
|
@@ -313,6 +303,16 @@ function setWasmLogLevel(level) {
|
|
|
313
303
|
wasm$1.setWasmLogLevel(level);
|
|
314
304
|
}
|
|
315
305
|
|
|
306
|
+
/**
|
|
307
|
+
* @param {URL} url
|
|
308
|
+
* @param {number} num_threads
|
|
309
|
+
* @returns {Promise<void>}
|
|
310
|
+
*/
|
|
311
|
+
function initThreadPool(url, num_threads) {
|
|
312
|
+
const ret = wasm$1.initThreadPool(addHeapObject(url), num_threads);
|
|
313
|
+
return takeObject(ret);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
316
|
let stack_pointer = 128;
|
|
317
317
|
|
|
318
318
|
function addBorrowedObject(obj) {
|
|
@@ -353,6 +353,38 @@ function snarkVerify(verifying_key, inputs, proof) {
|
|
|
353
353
|
}
|
|
354
354
|
}
|
|
355
355
|
|
|
356
|
+
/**
|
|
357
|
+
* Verify a batch SNARK proof against multiple verifying keys and their corresponding public inputs.
|
|
358
|
+
*
|
|
359
|
+
* This function verifies a batch proof produced by Aleo programs that may not be deployed on chain.
|
|
360
|
+
* Each verifying key is paired with one or more sets of public inputs (instances).
|
|
361
|
+
*
|
|
362
|
+
* @param {Array<string>} verifying_keys Array of verifying key strings, one per circuit
|
|
363
|
+
* @param {Array<Array<Array<string>>>} inputs 3D array of field element strings [circuit_idx][instance_idx][field_idx]
|
|
364
|
+
* @param {Proof} proof The batch proof to verify
|
|
365
|
+
* @returns {boolean} True if the batch proof is valid, false otherwise
|
|
366
|
+
* @param {Array<any>} verifying_keys
|
|
367
|
+
* @param {Array<any>} inputs
|
|
368
|
+
* @param {Proof} proof
|
|
369
|
+
* @returns {boolean}
|
|
370
|
+
*/
|
|
371
|
+
function snarkVerifyBatch(verifying_keys, inputs, proof) {
|
|
372
|
+
try {
|
|
373
|
+
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
|
374
|
+
_assertClass(proof, Proof);
|
|
375
|
+
wasm$1.snarkVerifyBatch(retptr, addHeapObject(verifying_keys), addHeapObject(inputs), proof.__wbg_ptr);
|
|
376
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
377
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
378
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
379
|
+
if (r2) {
|
|
380
|
+
throw takeObject(r1);
|
|
381
|
+
}
|
|
382
|
+
return r0 !== 0;
|
|
383
|
+
} finally {
|
|
384
|
+
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
|
|
356
388
|
/**
|
|
357
389
|
* Verify an execution. Executions with multiple transitions must have the program source code and
|
|
358
390
|
* verifying keys of imported functions supplied from outside to correctly verify. Also, this does
|
|
@@ -402,32 +434,39 @@ function verifyFunctionExecution(execution, verifying_key, program, function_id,
|
|
|
402
434
|
}
|
|
403
435
|
|
|
404
436
|
/**
|
|
405
|
-
*
|
|
437
|
+
* Returns the maximum number of imports allowed in a program by the
|
|
438
|
+
* snarkVM network implementation this SDK was built against.
|
|
406
439
|
*
|
|
407
|
-
*
|
|
408
|
-
* Each verifying key is paired with one or more sets of public inputs (instances).
|
|
440
|
+
* @returns {number} The maximum number of program imports.
|
|
409
441
|
*
|
|
410
|
-
* @
|
|
411
|
-
*
|
|
412
|
-
*
|
|
413
|
-
*
|
|
414
|
-
* @
|
|
415
|
-
* @param {Array<any>} inputs
|
|
416
|
-
* @param {Proof} proof
|
|
417
|
-
* @returns {boolean}
|
|
442
|
+
* @example
|
|
443
|
+
* import { getMaxProgramImports } from '@provablehq/sdk';
|
|
444
|
+
*
|
|
445
|
+
* const maxImports = getMaxProgramImports();
|
|
446
|
+
* @returns {number}
|
|
418
447
|
*/
|
|
419
|
-
function
|
|
448
|
+
function getMaxProgramImports() {
|
|
449
|
+
const ret = wasm$1.getMaxProgramImports();
|
|
450
|
+
return ret >>> 0;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
/**
|
|
454
|
+
* @param {string} string
|
|
455
|
+
* @returns {Field}
|
|
456
|
+
*/
|
|
457
|
+
function stringToField(string) {
|
|
420
458
|
try {
|
|
421
459
|
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
|
422
|
-
|
|
423
|
-
|
|
460
|
+
const ptr0 = passStringToWasm0(string, wasm$1.__wbindgen_export, wasm$1.__wbindgen_export2);
|
|
461
|
+
const len0 = WASM_VECTOR_LEN;
|
|
462
|
+
wasm$1.stringToField(retptr, ptr0, len0);
|
|
424
463
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
425
464
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
426
465
|
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
427
466
|
if (r2) {
|
|
428
467
|
throw takeObject(r1);
|
|
429
468
|
}
|
|
430
|
-
return r0
|
|
469
|
+
return Field.__wrap(r0);
|
|
431
470
|
} finally {
|
|
432
471
|
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
|
433
472
|
}
|
|
@@ -442,7 +481,7 @@ function snarkVerifyBatch(verifying_keys, inputs, proof) {
|
|
|
442
481
|
* import { getOrInitConsensusVersionTestHeights } from '@provablehq/sdk';
|
|
443
482
|
*
|
|
444
483
|
* Set the consensus version heights.
|
|
445
|
-
* getOrInitConsensusVersionTestHeights("0,1,2,3,4,5,6,7,8,9,10,11,12,13,14");
|
|
484
|
+
* getOrInitConsensusVersionTestHeights("0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16");
|
|
446
485
|
* @param {string | null} [heights]
|
|
447
486
|
* @returns {Array<any>}
|
|
448
487
|
*/
|
|
@@ -453,28 +492,6 @@ function getOrInitConsensusVersionTestHeights(heights) {
|
|
|
453
492
|
return takeObject(ret);
|
|
454
493
|
}
|
|
455
494
|
|
|
456
|
-
/**
|
|
457
|
-
* @param {string} string
|
|
458
|
-
* @returns {Field}
|
|
459
|
-
*/
|
|
460
|
-
function stringToField(string) {
|
|
461
|
-
try {
|
|
462
|
-
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
|
463
|
-
const ptr0 = passStringToWasm0(string, wasm$1.__wbindgen_export, wasm$1.__wbindgen_export2);
|
|
464
|
-
const len0 = WASM_VECTOR_LEN;
|
|
465
|
-
wasm$1.stringToField(retptr, ptr0, len0);
|
|
466
|
-
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
467
|
-
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
468
|
-
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
469
|
-
if (r2) {
|
|
470
|
-
throw takeObject(r1);
|
|
471
|
-
}
|
|
472
|
-
return Field.__wrap(r0);
|
|
473
|
-
} finally {
|
|
474
|
-
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
|
475
|
-
}
|
|
476
|
-
}
|
|
477
|
-
|
|
478
495
|
function passArrayJsValueToWasm0(array, malloc) {
|
|
479
496
|
const ptr = malloc(array.length * 4, 4) >>> 0;
|
|
480
497
|
const mem = getDataViewMemory0();
|
|
@@ -494,16 +511,16 @@ function getArrayJsValueFromWasm0(ptr, len) {
|
|
|
494
511
|
}
|
|
495
512
|
return result;
|
|
496
513
|
}
|
|
497
|
-
function
|
|
498
|
-
wasm$1.
|
|
514
|
+
function __wasm_bindgen_func_elem_7393(arg0, arg1) {
|
|
515
|
+
wasm$1.__wasm_bindgen_func_elem_7393(arg0, arg1);
|
|
499
516
|
}
|
|
500
517
|
|
|
501
|
-
function
|
|
502
|
-
wasm$1.
|
|
518
|
+
function __wasm_bindgen_func_elem_8766(arg0, arg1, arg2) {
|
|
519
|
+
wasm$1.__wasm_bindgen_func_elem_8766(arg0, arg1, addHeapObject(arg2));
|
|
503
520
|
}
|
|
504
521
|
|
|
505
|
-
function
|
|
506
|
-
wasm$1.
|
|
522
|
+
function __wasm_bindgen_func_elem_7666(arg0, arg1, arg2, arg3) {
|
|
523
|
+
wasm$1.__wasm_bindgen_func_elem_7666(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
|
|
507
524
|
}
|
|
508
525
|
|
|
509
526
|
const __wbindgen_enum_RequestCredentials = ["omit", "same-origin", "include"];
|
|
@@ -10020,6 +10037,35 @@ class Program {
|
|
|
10020
10037
|
const ret = wasm$1.program_getFunctions(this.__wbg_ptr);
|
|
10021
10038
|
return takeObject(ret);
|
|
10022
10039
|
}
|
|
10040
|
+
/**
|
|
10041
|
+
* Get the program's name (without the `.aleo` suffix) encoded as a field element.
|
|
10042
|
+
*
|
|
10043
|
+
* This is the same value as casting the program name identifier to a field on-chain
|
|
10044
|
+
* (e.g. `my_program.aleo` -> `Identifier("my_program") as field`), which is used as
|
|
10045
|
+
* the program id in dynamic dispatch calls such as `IARC20@(token_id)`.
|
|
10046
|
+
*
|
|
10047
|
+
* @example
|
|
10048
|
+
* const program = aleo_wasm.Program.getCreditsProgram();
|
|
10049
|
+
* const field = program.nameToField(); // Field encoding of "credits"
|
|
10050
|
+
*
|
|
10051
|
+
* @returns {Field} The program name as a field element
|
|
10052
|
+
* @returns {Field}
|
|
10053
|
+
*/
|
|
10054
|
+
nameToField() {
|
|
10055
|
+
try {
|
|
10056
|
+
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
|
10057
|
+
wasm$1.program_nameToField(retptr, this.__wbg_ptr);
|
|
10058
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
10059
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
10060
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
10061
|
+
if (r2) {
|
|
10062
|
+
throw takeObject(r1);
|
|
10063
|
+
}
|
|
10064
|
+
return Field.__wrap(r0);
|
|
10065
|
+
} finally {
|
|
10066
|
+
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
|
10067
|
+
}
|
|
10068
|
+
}
|
|
10023
10069
|
/**
|
|
10024
10070
|
* Get the external call graph reachable from a specific entry function.
|
|
10025
10071
|
*
|
|
@@ -10275,6 +10321,47 @@ class Program {
|
|
|
10275
10321
|
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
|
10276
10322
|
}
|
|
10277
10323
|
}
|
|
10324
|
+
/**
|
|
10325
|
+
* Determine if the program implements the ARC-20 fungible token interface (IARC20).
|
|
10326
|
+
*
|
|
10327
|
+
* This checks that the program defines a `Token` record with an `amount: u128` entry
|
|
10328
|
+
* (additional entries are permitted, per the interface's open record definition) and
|
|
10329
|
+
* that every function and view function required by ARC-20 is present with the exact
|
|
10330
|
+
* input and output signature defined by the standard.
|
|
10331
|
+
*
|
|
10332
|
+
* @see https://github.com/ProvableHQ/ARCs/blob/master/arc-0020/README.md
|
|
10333
|
+
*
|
|
10334
|
+
* @returns {boolean} True if the program implements the ARC-20 token interface
|
|
10335
|
+
* @returns {boolean}
|
|
10336
|
+
*/
|
|
10337
|
+
isArc20() {
|
|
10338
|
+
const ret = wasm$1.program_isArc20(this.__wbg_ptr);
|
|
10339
|
+
return ret !== 0;
|
|
10340
|
+
}
|
|
10341
|
+
/**
|
|
10342
|
+
* Determine if the program implements the ARC-22 compliant token interface (IARC22).
|
|
10343
|
+
*
|
|
10344
|
+
* This checks that the program defines `Token` and `ComplianceRecord` records with the
|
|
10345
|
+
* entries required by the standard (additional entries are permitted, per the
|
|
10346
|
+
* interface's open record definitions), and that every function and view function
|
|
10347
|
+
* required by ARC-22 is present with the exact input and output signature defined by
|
|
10348
|
+
* the standard. The `MerkleProof` struct used by the private transfer functions may be
|
|
10349
|
+
* declared locally (in which case its shape must match the standard exactly) or
|
|
10350
|
+
* imported from another program such as a freeze list registry.
|
|
10351
|
+
*
|
|
10352
|
+
* Note: this checks the token interface (IARC22) only. The freeze list registry
|
|
10353
|
+
* interface (IARC22Freezelist) is typically implemented by a separate program and is
|
|
10354
|
+
* not required for a token program to be considered ARC-22 compliant.
|
|
10355
|
+
*
|
|
10356
|
+
* @see https://github.com/ProvableHQ/ARCs/blob/master/arc-0022/README.md
|
|
10357
|
+
*
|
|
10358
|
+
* @returns {boolean} True if the program implements the ARC-22 token interface
|
|
10359
|
+
* @returns {boolean}
|
|
10360
|
+
*/
|
|
10361
|
+
isArc22() {
|
|
10362
|
+
const ret = wasm$1.program_isArc22(this.__wbg_ptr);
|
|
10363
|
+
return ret !== 0;
|
|
10364
|
+
}
|
|
10278
10365
|
/**
|
|
10279
10366
|
* Determine equality with another program
|
|
10280
10367
|
*
|
|
@@ -19238,7 +19325,7 @@ function __wbg_get_imports(memory) {
|
|
|
19238
19325
|
const ret = getObject(arg0).length;
|
|
19239
19326
|
return ret;
|
|
19240
19327
|
};
|
|
19241
|
-
imports.wbg.
|
|
19328
|
+
imports.wbg.__wbg_log_a530da429f854235 = function(arg0, arg1) {
|
|
19242
19329
|
console.log(getStringFromWasm0(arg0, arg1));
|
|
19243
19330
|
};
|
|
19244
19331
|
imports.wbg.__wbg_new_1acc0b6eea89d040 = function() {
|
|
@@ -19256,7 +19343,7 @@ function __wbg_get_imports(memory) {
|
|
|
19256
19343
|
const a = state0.a;
|
|
19257
19344
|
state0.a = 0;
|
|
19258
19345
|
try {
|
|
19259
|
-
return
|
|
19346
|
+
return __wasm_bindgen_func_elem_7666(a, state0.b, arg0, arg1);
|
|
19260
19347
|
} finally {
|
|
19261
19348
|
state0.a = a;
|
|
19262
19349
|
}
|
|
@@ -19428,7 +19515,7 @@ function __wbg_get_imports(memory) {
|
|
|
19428
19515
|
const ret = Signature.__wrap(arg0);
|
|
19429
19516
|
return addHeapObject(ret);
|
|
19430
19517
|
};
|
|
19431
|
-
imports.wbg.
|
|
19518
|
+
imports.wbg.__wbg_spawnWorker_ad641c7b32ebd520 = function(arg0, arg1, arg2, arg3) {
|
|
19432
19519
|
const ret = spawnWorker(getObject(arg0), getObject(arg1), getObject(arg2), arg3 >>> 0);
|
|
19433
19520
|
return addHeapObject(ret);
|
|
19434
19521
|
};
|
|
@@ -19527,12 +19614,12 @@ function __wbg_get_imports(memory) {
|
|
|
19527
19614
|
};
|
|
19528
19615
|
imports.wbg.__wbindgen_cast_4a64cbb5b17898c9 = function(arg0, arg1) {
|
|
19529
19616
|
// Cast intrinsic for `Closure(Closure { dtor_idx: 358, function: Function { arguments: [Externref], shim_idx: 359, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
19530
|
-
const ret = makeMutClosure(arg0, arg1, wasm$1.
|
|
19617
|
+
const ret = makeMutClosure(arg0, arg1, wasm$1.__wasm_bindgen_func_elem_7392, __wasm_bindgen_func_elem_8766);
|
|
19531
19618
|
return addHeapObject(ret);
|
|
19532
19619
|
};
|
|
19533
19620
|
imports.wbg.__wbindgen_cast_65bbaf572cb463ed = function(arg0, arg1) {
|
|
19534
19621
|
// Cast intrinsic for `Closure(Closure { dtor_idx: 358, function: Function { arguments: [NamedExternref("MessageEvent")], shim_idx: 359, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
19535
|
-
const ret = makeMutClosure(arg0, arg1, wasm$1.
|
|
19622
|
+
const ret = makeMutClosure(arg0, arg1, wasm$1.__wasm_bindgen_func_elem_7392, __wasm_bindgen_func_elem_8766);
|
|
19536
19623
|
return addHeapObject(ret);
|
|
19537
19624
|
};
|
|
19538
19625
|
imports.wbg.__wbindgen_cast_9ae0607507abb057 = function(arg0) {
|
|
@@ -19542,7 +19629,7 @@ function __wbg_get_imports(memory) {
|
|
|
19542
19629
|
};
|
|
19543
19630
|
imports.wbg.__wbindgen_cast_aca65e91b5ef2a91 = function(arg0, arg1) {
|
|
19544
19631
|
// Cast intrinsic for `Closure(Closure { dtor_idx: 358, function: Function { arguments: [], shim_idx: 467, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
19545
|
-
const ret = makeMutClosure(arg0, arg1, wasm$1.
|
|
19632
|
+
const ret = makeMutClosure(arg0, arg1, wasm$1.__wasm_bindgen_func_elem_7392, __wasm_bindgen_func_elem_7393);
|
|
19546
19633
|
return addHeapObject(ret);
|
|
19547
19634
|
};
|
|
19548
19635
|
imports.wbg.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) {
|
|
@@ -19697,6 +19784,7 @@ var exports$1$1 = /*#__PURE__*/Object.freeze({
|
|
|
19697
19784
|
VerifyingKey: VerifyingKey,
|
|
19698
19785
|
ViewKey: ViewKey,
|
|
19699
19786
|
default: __wbg_init,
|
|
19787
|
+
getMaxProgramImports: getMaxProgramImports,
|
|
19700
19788
|
getOrInitConsensusVersionTestHeights: getOrInitConsensusVersionTestHeights,
|
|
19701
19789
|
initSync: initSync$1,
|
|
19702
19790
|
initThreadPool: initThreadPool,
|