1
- var CompilerModule = require ( './wasmlib/funcfiftlib.js' ) ;
1
+ const CompilerModule = require ( './wasmlib/funcfiftlib.js' ) ;
2
2
3
3
/*
4
4
* CompilerConfig example:
@@ -17,21 +17,6 @@ export type CompilerConfig = {
17
17
optLevel : number
18
18
} ;
19
19
20
- /*
21
- * CompileResult example:
22
- * If success
23
- * {
24
- * status: 'ok',
25
- * codeBoc: <serialized code cell into BOC with base64 encoding>,
26
- * fiftCode: <fift code from func compiler>
27
- * }
28
- * If failure
29
- * {
30
- * status: 'error',
31
- * message: <the message with reason of failure>
32
- * }
33
- *
34
- */
35
20
export type SuccessResult = {
36
21
status : "ok" ,
37
22
codeBoc : string ,
@@ -64,27 +49,23 @@ export async function compilerVersion(): Promise<CompilerVersion> {
64
49
}
65
50
66
51
export async function funcCompile ( compileConfig : CompilerConfig ) : Promise < CompileResult > {
67
-
68
52
let mod = await CompilerModule ( ) ;
69
53
70
54
let sourcesArr : string [ ] = [ ] ;
71
55
72
56
mod . FS . mkdir ( "/contracts" ) ;
73
57
74
- ( Object . keys ( compileConfig . sources ) ) . forEach ( ( fileName ) => {
58
+ for ( let fileName in compileConfig . sources ) {
59
+ let source = compileConfig . sources [ fileName ]
75
60
sourcesArr . push ( `/contracts/${ fileName } ` ) ;
76
- let code : string = compileConfig . sources [ fileName ] as any ;
77
- mod . FS . writeFile ( `/contracts/${ fileName } ` , code ) ;
78
- } ) ;
61
+ mod . FS . writeFile ( `/contracts/${ fileName } ` , source ) ;
62
+ }
79
63
80
64
let configJson = JSON . stringify ( {
81
65
sources : sourcesArr ,
82
66
optLevel : compileConfig . optLevel
83
67
} ) ;
84
68
85
-
86
- console . log ( configJson ) ;
87
-
88
69
let configJsonPTR = mod . _malloc ( configJson . length + 1 ) ;
89
70
mod . stringToUTF8 ( configJson , configJsonPTR , configJson . length + 1 ) ;
90
71
0 commit comments