@@ -2,17 +2,24 @@ import transform from './transform';
22import errorBoundary from './errorBoundary' ;
33import evalCode from './evalCode' ;
44
5- export const generateElement = ( { code = '' , scope = { } } , errorCallback ) => {
5+ export const generateElement = (
6+ { code = '' , scope = { } , transpileOptions } ,
7+ errorCallback
8+ ) => {
69 // NOTE: Remove trailing semicolon to get an actual expression.
710 const codeTrimmed = code . trim ( ) . replace ( / ; $ / , '' ) ;
811
912 // NOTE: Workaround for classes and arrow functions.
10- const transformed = transform ( `return (${ codeTrimmed } )` ) . trim ( ) ;
13+ const transformed = transform (
14+ `return (${ codeTrimmed } )` ,
15+ transpileOptions
16+ ) . trim ( ) ;
17+
1118 return errorBoundary ( evalCode ( transformed , scope ) , errorCallback ) ;
1219} ;
1320
1421export const renderElementAsync = (
15- { code = '' , scope = { } } ,
22+ { code = '' , scope = { } , transpileOptions } ,
1623 resultCallback ,
1724 errorCallback
1825 // eslint-disable-next-line consistent-return
@@ -31,5 +38,5 @@ export const renderElementAsync = (
3138 ) ;
3239 }
3340
34- evalCode ( transform ( code ) , { ...scope , render } ) ;
41+ evalCode ( transform ( code , transpileOptions ) , { ...scope , render } ) ;
3542} ;
0 commit comments