1+ const fs = require ( 'fs-extra' ) ;
12const path = require ( 'path' ) ;
2- const cwd = process . cwd ( ) ;
33
4- const glob = require ( 'glob' ) ;
5- const rimRaf = require ( 'rimraf' ) ;
64
7- const distDir = path . join ( cwd , 'dist' ) ;
5+ const cleanDirs = [
6+ 'dist'
7+ ] ;
88
9- const distGeneratedNodeModules = path . join ( distDir , 'node_modules' ) ;
10-
11- function rimRafAsync ( dir ) {
12- return new Promise ( ( resolve , reject ) => {
13- rimRaf ( dir , { } , err => {
14- if ( err ) {
15- return reject ( err ) ;
16- }
17- resolve ( ) ;
18- } )
19- } ) ;
20- }
21-
22- function doGlob ( globString ) {
23- return new Promise ( ( resolve , reject ) => {
24- glob ( globString , ( err , matches ) => {
25- if ( err ) {
26- return reject ( err ) ;
27- }
28- resolve ( matches ) ;
29- } )
30- } ) ;
31- }
32-
33- function getCodegenedFilesToDelete ( ) {
34- const ngFactoryGlob = path . join ( distDir , '**' , '*ngfactory*' ) ;
35- const ngSummaryGlob = path . join ( distDir , '**' , '*ngsummary*' ) ;
36- const promises = [ ] ;
37- promises . push ( doGlob ( ngFactoryGlob ) ) ;
38- promises . push ( doGlob ( ngSummaryGlob ) ) ;
39- return Promise . all ( promises ) . then ( listOfGlobResults => {
40- const deleteFilePromises = [ ] ;
41- listOfGlobResults . forEach ( fileMatches => {
42- fileMatches . forEach ( filePath => {
43- deleteFilePromises . push ( rimRafAsync ( filePath ) ) ;
44- } )
45- } )
46- return Promise . all ( deleteFilePromises ) ;
47- } ) ;
48- }
49-
50- const taskPromises = [ ] ;
51- taskPromises . push ( getCodegenedFilesToDelete ( ) ) ;
52- taskPromises . push ( rimRafAsync ( distGeneratedNodeModules ) ) ;
53-
54- return Promise . all ( taskPromises ) ;
9+ cleanDirs . forEach ( dir => {
10+ const cleanDir = path . join ( __dirname , '../' , dir ) ;
11+ fs . removeSync ( cleanDir ) ;
12+ } ) ;
0 commit comments