@@ -8,19 +8,17 @@ import esbuild from 'rollup-plugin-esbuild';
88import typescript from '@rollup/plugin-typescript' ;
99import bundleSize from 'rollup-plugin-bundle-size' ;
1010
11- export const fileExtensions = [ '.js' , '.ts' , '.tsx '] ;
11+ export const fileExtensions = [ '.ts ' ] ;
1212
1313export function createEsbuildConfig ( config ) {
1414 config = {
1515 target : 'es2015' ,
16- tsconfig : path . resolve ( './tsconfig.json' ) ,
1716 additionalOptions : { } ,
1817 ...config ,
1918 } ;
2019 return esbuild ( {
2120 minify : false ,
2221 target : config . target ,
23- tsconfig : config . tsconfig ,
2422 ...config . additionalOptions ,
2523 } ) ;
2624}
@@ -73,8 +71,9 @@ export function createESMConfig(config) {
7371 external : config . external ,
7472 plugins : [
7573 nodeResolve ( { extensions : fileExtensions } ) ,
76- createEsbuildConfig ( { target : 'es2015' , tsconfig : config . tsconfig } ) ,
77- // typescript(), // Not required because the 'esbuild-config' does configure typescript for us
74+ createEsbuildConfig ( { target : 'es2015' } ) ,
75+ // typescript(), // Not required because esbuild takes care of configuring typescript
76+ // babel(/* */), // Not required because esbuild takes care of converting ES2015+ modules into compatible JavaScript files
7877 ! config . multiFileOutput && bundleSize ( ) ,
7978 ...config . additionalPlugins ,
8079 ] ,
@@ -96,15 +95,22 @@ export function createCommonJSConfig(config) {
9695
9796 return defineConfig ( {
9897 input : config . input ,
99- output : { file : config . output , format : 'cjs' } ,
98+ output : {
99+ file : config . output ,
100+ format : 'cjs' ,
101+ } ,
100102 external : config . external ,
101103 plugins : [
102104 nodeResolve ( { extensions : fileExtensions } ) ,
105+ // https://github.com/rollup/plugins/tree/master/packages/babel#running-babel-on-the-generated-code
103106 babel ( {
104107 babelHelpers : 'bundled' ,
105108 comments : false ,
109+ exclude : [ 'node_modules/**' ] ,
110+ presets : [ '@babel/preset-env' ] ,
111+ extensions : fileExtensions , // https://github.com/rollup/rollup-plugin-babel/issues/255
106112 } ) ,
107- typescript ( { tsconfig : config . tsconfig } ) ,
113+ typescript ( ) , // Only so that Rollup can work with typescript (Not for generating any 'declaration' files)
108114 bundleSize ( ) ,
109115 ...config . additionalPlugins ,
110116 ] ,
0 commit comments