Browse Source

es6 -> es

semi-dynamic-namespace-imports
Rich-Harris 9 years ago
parent
commit
b1e6823f08
  1. 9
      src/Bundle.js
  2. 10
      src/Declaration.js
  3. 6
      src/Module.js
  4. 2
      src/finalisers/es.js
  5. 4
      src/finalisers/index.js

9
src/Bundle.js

@ -278,7 +278,12 @@ export default class Bundle {
}
render ( options = {} ) {
const format = options.format || 'es6';
if ( options.format === 'es6' ) {
this.onwarn( 'The es6 format is deprecated – use `es` instead' );
options.format = 'es';
}
const format = options.format || 'es';
// Determine export mode - 'default', 'named', 'none'
const exportMode = getExportMode( this, options.exports, options.moduleName );
@ -287,7 +292,7 @@ export default class Bundle {
let usedModules = [];
this.orderedModules.forEach( module => {
const source = module.render( format === 'es6' );
const source = module.render( format === 'es' );
if ( source.toString().length ) {
magicString.addSource( source );
usedModules.push( module );

10
src/Declaration.js

@ -42,8 +42,8 @@ export default class Declaration {
if ( reference.isReassignment ) this.isReassigned = true;
}
render ( es6 ) {
if ( es6 ) return this.name;
render ( es ) {
if ( es ) return this.name;
if ( !this.isReassigned || !this.exportName ) return this.name;
return `exports.${this.exportName}`;
@ -280,18 +280,18 @@ export class ExternalDeclaration {
}
}
render ( es6 ) {
render ( es ) {
if ( this.name === '*' ) {
return this.module.name;
}
if ( this.name === 'default' ) {
return this.module.exportsNamespace || ( !es6 && this.module.exportsNames ) ?
return this.module.exportsNamespace || ( !es && this.module.exportsNames ) ?
`${this.module.name}__default` :
this.module.name;
}
return es6 ? this.safeName : `${this.module.name}.${this.name}`;
return es ? this.safeName : `${this.module.name}.${this.name}`;
}
run () {

6
src/Module.js

@ -444,7 +444,7 @@ export default class Module {
return statements;
}
render ( es6 ) {
render ( es ) {
let magicString = this.magicString.clone();
this.statements.forEach( statement => {
@ -488,7 +488,7 @@ export default class Module {
const declaration = this.declarations[ name ];
if ( declaration.exportName && declaration.isReassigned ) {
magicString.insertLeft( statement.end, `;\nexports.${name} = ${declaration.render( es6 )}` );
magicString.insertLeft( statement.end, `;\nexports.${name} = ${declaration.render( es )}` );
}
});
}
@ -513,7 +513,7 @@ export default class Module {
const declaration = reference.declaration;
if ( declaration ) {
const name = declaration.render( es6 );
const name = declaration.render( es );
// the second part of this check is necessary because of
// namespace optimisation – name of `foo.bar` could be `bar`

2
src/finalisers/es6.js → src/finalisers/es.js

@ -4,7 +4,7 @@ function notDefault ( name ) {
return name !== 'default';
}
export default function es6 ( bundle, magicString ) {
export default function es ( bundle, magicString ) {
const importBlock = bundle.externalModules
.map( module => {
const specifiers = [];

4
src/finalisers/index.js

@ -1,7 +1,7 @@
import amd from './amd.js';
import cjs from './cjs.js';
import es6 from './es6.js';
import es from './es.js';
import iife from './iife.js';
import umd from './umd.js';
export default { amd, cjs, es6, iife, umd };
export default { amd, cjs, es, iife, umd };

Loading…
Cancel
Save