11import fs from 'fs' ;
2+ import ms from 'pretty-ms' ;
3+ import color from 'colorette' ;
24import resolve from 'rollup-plugin-node-resolve' ;
35import commonjs from 'rollup-plugin-commonjs' ;
46import typescript from 'rollup-plugin-typescript2' ;
@@ -7,6 +9,12 @@ import sourceMaps from 'rollup-plugin-sourcemaps';
79
810import pkg from './package.json' ;
911
12+ const inputDir = 'src' ;
13+ const inputFiles = fs . readdirSync ( inputDir ) . map ( file => `${ inputDir } /${ file } ` ) ;
14+ const otherFiles = [ 'CHANGELOG.md' , 'LICENSE' , 'package.json' , 'README.md' ] ;
15+ const outputDir = 'dist' ;
16+ const outputFormat = 'cjs' ;
17+ const outputSourcemap = true ;
1018const common = {
1119 external : [
1220 ...Object . keys ( pkg . dependencies || { } ) ,
@@ -15,78 +23,48 @@ const common = {
1523 plugins : [
1624 resolve ( ) ,
1725 commonjs ( ) ,
18- typescript ( { useTsconfigDeclarationDir : true , rollupCommonJSResolveHack : true } ) ,
26+ typescript ( {
27+ useTsconfigDeclarationDir : true ,
28+ rollupCommonJSResolveHack : true ,
29+ } ) ,
1930 async ( ) ,
2031 sourceMaps ( ) ,
2132 ] ,
2233} ;
2334
24- ( ( ) => {
25- const dir = 'dist' ;
26- const files = [ 'CHANGELOG.md' , 'LICENSE' , 'package.json' , 'README.md' ] ;
35+ ( function ( ) {
36+ const start = Date . now ( ) ;
2737
28- fs . mkdirSync ( dir ) ;
29- files . map ( ( file ) => {
30- fs . writeFileSync ( `${ dir } /${ file } ` , fs . readFileSync ( file , 'utf-8' ) , 'utf-8' ) ;
38+ fs . mkdirSync ( outputDir ) ;
39+ otherFiles . map ( file => {
40+ fs . writeFileSync (
41+ `${ outputDir } /${ file } ` ,
42+ fs . readFileSync ( file , 'utf-8' ) ,
43+ 'utf-8' ,
44+ ) ;
3145
32- console . info ( `${ file } → ${ dir } /${ file } ` ) ;
46+ console . log (
47+ color . cyan ( `${ color . bold ( file ) } → ${ color . bold ( outputDir ) } ...` ) ,
48+ ) ;
3349 } ) ;
50+
51+ console . log (
52+ color . greenBright (
53+ `created ${ color . bold ( outputDir ) } in ${ color . bold (
54+ ms ( Date . now ( ) - start ) ,
55+ ) } `,
56+ ) ,
57+ ) ;
3458} ) ( ) ;
3559
36- export default [
37- {
38- ...common ,
39- input : 'src/error.ts' ,
40- output : [
41- {
42- dir : 'dist' ,
43- format : 'cjs' ,
44- sourcemap : true ,
45- } ,
46- ] ,
47- } ,
48- {
49- ...common ,
50- input : 'src/errorHandler.ts' ,
51- output : [
52- {
53- dir : 'dist' ,
54- format : 'cjs' ,
55- sourcemap : true ,
56- } ,
57- ] ,
58- } ,
59- {
60- ...common ,
61- input : 'src/express.ts' ,
62- output : [
63- {
64- dir : 'dist' ,
65- format : 'cjs' ,
66- sourcemap : true ,
67- } ,
68- ] ,
69- } ,
70- {
71- ...common ,
72- input : 'src/index.ts' ,
73- output : [
74- {
75- dir : 'dist' ,
76- format : 'cjs' ,
77- sourcemap : true ,
78- } ,
79- ] ,
80- } ,
81- {
82- ...common ,
83- input : 'src/logger.ts' ,
84- output : [
85- {
86- dir : 'dist' ,
87- format : 'cjs' ,
88- sourcemap : true ,
89- } ,
90- ] ,
91- } ,
92- ] ;
60+ export default inputFiles . map ( inputFile => ( {
61+ ...common ,
62+ input : inputFile ,
63+ output : [
64+ {
65+ dir : outputDir ,
66+ format : outputFormat ,
67+ sourcemap : outputSourcemap ,
68+ } ,
69+ ] ,
70+ } ) ) ;
0 commit comments