UNPKG

620 BJavaScriptView Raw
1export default function getExportBlock ( entryModule, exportMode, mechanism = 'return' ) {
2 if ( exportMode === 'default' ) {
3 return `${mechanism} ${entryModule.traceExport( 'default' ).render( false )};`;
4 }
5
6 return entryModule.getExports()
7 .map( name => {
8 const prop = name === 'default' ? `['default']` : `.${name}`;
9 const declaration = entryModule.traceExport( name );
10
11 const lhs = `exports${prop}`;
12 const rhs = declaration.render( false );
13
14 // prevent `exports.count = exports.count`
15 if ( lhs === rhs ) return null;
16
17 return `${lhs} = ${rhs};`;
18 })
19 .filter( Boolean )
20 .join( '\n' );
21}