@@ -68,7 +68,7 @@ export const markAsBrowserBuild = replace({
6868 } ,
6969} ) ;
7070
71- export const typescriptPluginES5 = typescript ( {
71+ const baseTSPluginOptions = {
7272 tsconfig : 'tsconfig.esm.json' ,
7373 tsconfigOverride : {
7474 compilerOptions : {
@@ -79,7 +79,27 @@ export const typescriptPluginES5 = typescript({
7979 } ,
8080 } ,
8181 include : [ '*.ts+(|x)' , '**/*.ts+(|x)' , '../**/*.ts+(|x)' ] ,
82- } ) ;
82+ } ;
83+
84+ export const typescriptPluginES5 = typescript (
85+ deepMerge ( baseTSPluginOptions , {
86+ tsconfigOverride : {
87+ compilerOptions : {
88+ target : 'es5' ,
89+ } ,
90+ } ,
91+ } ) ,
92+ ) ;
93+
94+ export const typescriptPluginES6 = typescript (
95+ deepMerge ( baseTSPluginOptions , {
96+ tsconfigOverride : {
97+ compilerOptions : {
98+ target : 'es6' ,
99+ } ,
100+ } ,
101+ } ) ,
102+ ) ;
83103
84104export const nodeResolvePlugin = resolve ( ) ;
85105
@@ -124,7 +144,7 @@ export const addOnBundleConfig = {
124144} ;
125145
126146export function makeBaseBundleConfig ( options ) {
127- const { input, isAddOn, outputFileBase } = options ;
147+ const { input, isAddOn, jsVersion , outputFileBase } = options ;
128148
129149 const standAloneBundleConfig = {
130150 output : {
@@ -174,7 +194,7 @@ export function makeBaseBundleConfig(options) {
174194 strict : false ,
175195 esModule : false ,
176196 } ,
177- plugins : [ typescriptPluginES5 , markAsBrowserBuild , nodeResolvePlugin ] ,
197+ plugins : [ jsVersion === 'es5' ? typescriptPluginES5 : typescriptPluginES6 , markAsBrowserBuild , nodeResolvePlugin ] ,
178198 treeshake : 'smallest' ,
179199 } ;
180200
0 commit comments