@@ -9,10 +9,11 @@ import {
9
9
generateVariableName
10
10
} from '../generators/code-snippet-generators' ;
11
11
import { getFilePathsFromRegex } from '../helpers/regex-helpers' ;
12
- import { deleteFolder , extractSvgContent , writeFile } from '../helpers/file-helpers' ;
12
+ import { deleteFiles , deleteFolder , extractSvgContent , writeFile } from '../helpers/file-helpers' ;
13
13
import { info , separatorEnd , separatorStart , success } from '../helpers/log-helper' ;
14
14
import { svgOptimizer } from '../helpers/svg-optimization' ;
15
15
import { MultiFileConvertionOptions } from '../options/convertion-options' ;
16
+ import { compileSources } from '../compiler/typescript-compiler' ;
16
17
17
18
const typesDelimitor = ' | ' ;
18
19
@@ -25,7 +26,8 @@ export const convertToMultipleFiles = async (convertionOptions: MultiFileConvert
25
26
outputDirectory,
26
27
srcFiles,
27
28
modelFileName,
28
- iconsFolderName
29
+ iconsFolderName,
30
+ preCompileSources
29
31
} = convertionOptions ;
30
32
let indexFileContent = '' ;
31
33
let types = generateTypeDefinition ( typeName ) ;
@@ -57,7 +59,6 @@ export const convertToMultipleFiles = async (convertionOptions: MultiFileConvert
57
59
indexFileContent += generateExportStatement ( generatedFileName , iconsFolderName ) ;
58
60
await writeFile ( `${ outputDirectory } /${ iconsFolderName } ` , generatedFileName , svgConstant ) ;
59
61
info ( `write file svg: ${ outputDirectory } /${ iconsFolderName } /${ generatedFileName } .ts` ) ;
60
-
61
62
types += i === filePaths . length - 1 ? `'${ typeName } ';` : `'${ typeName } '${ typesDelimitor } ` ;
62
63
}
63
64
}
@@ -72,6 +73,17 @@ export const convertToMultipleFiles = async (convertionOptions: MultiFileConvert
72
73
info ( `model-file successfully generated under ${ outputDirectory } /${ iconsFolderName } /${ modelFileName } .ts` ) ;
73
74
}
74
75
76
+ if ( preCompileSources ) {
77
+ const generatedTypeScriptFilePaths = await getFilePathsFromRegex ( [
78
+ `${ outputDirectory } /${ iconsFolderName } /*.ts` ,
79
+ `${ outputDirectory } /index.ts`
80
+ ] ) ;
81
+ compileSources ( generatedTypeScriptFilePaths ) ;
82
+ info ( `compile Typescript - generate JS and d.ts` ) ;
83
+ deleteFiles ( generatedTypeScriptFilePaths ) ;
84
+ info ( `delete Typescript files` ) ;
85
+ }
86
+
75
87
success ( '========================================================' ) ;
76
88
success ( `your files were successfully created under: ${ outputDirectory } ` ) ;
77
89
success (
0 commit comments