esperanto-source 0.6.34.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"esperanto.browser.js","sources":["../../../../src/utils/hasNamedImports.js","../../../../src/utils/hasNamedExports.js","../../../../node_modules/magic-string/src/utils/btoa.js","../../../../node_modules/magic-string/src/SourceMap/index.js","../../../../node_modules/magic-string/src/utils/getRelativePath.js","../../../../node_modules/magic-string/src/Bundle/index.js","../../../../node_modules/magic-string/src/MagicString/guessIndent.js","../../../../node_modules/magic-string/node_modules/vlq/src/vlq.js","../../../../node_modules/magic-string/src/utils/encode.js","../../../../node_modules/magic-string/src/MagicString/encodeMappings.js","../../../../node_modules/magic-string/src/MagicString/index.js","../../../../src/utils/ast/walk.js","../../../../src/utils/mappers.js","../../../../src/utils/ast/annotate.js","../../../../src/utils/ast/findImportsAndExports.js","../../../../src/utils/hasOwnProp.js","../../../../src/utils/ast/getUnscopedNames.js","../../../../src/utils/disallowConflictingImports.js","../../../../src/utils/sanitize.js","../../../../src/standalone/getModule.js","../../../../src/standalone/builders/defaultsMode/utils/transformExportDeclaration.js","../../../../src/utils/packageResult.js","../../../../src/utils/resolveId.js","../../../../src/utils/amd/getImportSummary.js","../../../../src/utils/amd/processName.js","../../../../src/utils/amd/processIds.js","../../../../src/utils/amd/amdIntro.js","../../../../src/standalone/builders/defaultsMode/amd.js","../../../../src/standalone/builders/defaultsMode/cjs.js","../../../../src/utils/umd/umdIntro.js","../../../../src/utils/EsperantoError.js","../../../../src/utils/umd/requireName.js","../../../../src/standalone/builders/defaultsMode/umd.js","../../../../src/standalone/builders/defaultsMode/index.js","../../../../src/standalone/builders/strictMode/utils/gatherImports.js","../../../../src/standalone/builders/strictMode/utils/getExportNames.js","../../../../src/utils/getReadOnlyIdentifiers.js","../../../../src/utils/ast/disallowIllegalReassignment.js","../../../../src/utils/ast/replaceIdentifiers.js","../../../../src/utils/ast/rewriteExportAssignments.js","../../../../src/utils/ast/traverse.js","../../../../src/standalone/builders/strictMode/utils/transformBody.js","../../../../src/standalone/builders/strictMode/amd.js","../../../../src/standalone/builders/strictMode/cjs.js","../../../../src/standalone/builders/strictMode/umd.js","../../../../src/standalone/builders/strictMode/index.js","../../../../src/standalone/builders/index.js","../../../../src/bundler/builders/defaultsMode/amd.js","../../../../src/bundler/builders/defaultsMode/cjs.js","../../../../src/bundler/builders/defaultsMode/umd.js","../../../../src/bundler/builders/defaultsMode/index.js","../../../../src/bundler/builders/strictMode/utils/getExportBlock.js","../../../../src/bundler/builders/strictMode/amd.js","../../../../src/bundler/builders/strictMode/cjs.js","../../../../src/bundler/builders/strictMode/umd.js","../../../../src/bundler/builders/strictMode/index.js","../../../../src/bundler/builders/index.js","../../../../src/bundler/builders/concat.js","../../../../src/esperanto.js"],"sourcesContent":["export default function hasNamedImports ( mod ) {\n\tvar i = mod.imports.length;\n\n\twhile ( i-- ) {\n\t\tif ( mod.imports[i].isNamed ) {\n\t\t\treturn true;\n\t\t}\n\t}\n}\n","export default function hasNamedExports ( mod ) {\n\tvar i = mod.exports.length;\n\n\twhile ( i-- ) {\n\t\tif ( !mod.exports[i].isDefault ) {\n\t\t\treturn true;\n\t\t}\n\t}\n}\n","var _btoa;\n\nif ( typeof window !== 'undefined' && typeof window.btoa === 'function' ) {\n\t_btoa = window.btoa;\n} else if ( typeof Buffer === 'function' ) {\n\t_btoa = function ( str ) {\n\t\treturn new Buffer( str ).toString( 'base64' );\n\t};\n} else {\n\tthrow new Error( 'Unsupported environment: `window.btoa` or `Buffer` should be supported.' );\n}\n\nexport default _btoa;","import btoa from '../utils/btoa';\n\nvar SourceMap = function ( properties ) {\n\tthis.version = 3;\n\n\tthis.file = properties.file;\n\tthis.sources = properties.sources;\n\tthis.sourcesContent = properties.sourcesContent;\n\tthis.names = properties.names;\n\tthis.mappings = properties.mappings;\n};\n\nSourceMap.prototype = {\n\ttoString: function () {\n\t\treturn JSON.stringify( this );\n\t},\n\n\ttoUrl: function () {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa( this.toString() );\n\t}\n};\n\nexport default SourceMap;","export default function getRelativePath ( from, to ) {\n\tvar fromParts, toParts, i;\n\n\tfromParts = from.split( /[\\/\\\\]/ );\n\ttoParts = to.split( /[\\/\\\\]/ );\n\n\tfromParts.pop(); // get dirname\n\n\twhile ( fromParts[0] === toParts[0] ) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif ( fromParts.length ) {\n\t\ti = fromParts.length;\n\t\twhile ( i-- ) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat( toParts ).join( '/' );\n}\n","import SourceMap from '../SourceMap';\nimport getRelativePath from '../utils/getRelativePath';\n\nvar Bundle = function ( options ) {\n\toptions = options || {};\n\n\tthis.intro = options.intro || '';\n\tthis.outro = options.outro || '';\n\tthis.separator = 'separator' in options ? options.separator : '\\n';\n\n\tthis.sources = [];\n};\n\nBundle.prototype = {\n\taddSource: function ( source ) {\n\t\tif ( typeof source !== 'object' || !source.content ) {\n\t\t\tthrow new Error( 'bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`' );\n\t\t}\n\n\t\tthis.sources.push( source );\n\t\treturn this;\n\t},\n\n\tappend: function ( str ) {\n\t\tthis.outro += str;\n\t\treturn this;\n\t},\n\n\tclone: function () {\n\t\tvar bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\toutro: this.outro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone()\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t},\n\n\tgenerateMap: function ( options ) {\n\t\tvar offsets = {}, encoded, encodingSeparator;\n\n\t\tencodingSeparator = getSemis( this.separator );\n\n\t\tencoded = (\n\t\t\tgetSemis( this.intro ) +\n\t\t\tthis.sources.map( function ( source, sourceIndex) {\n\t\t\t\treturn source.content.getMappings( options.hires, sourceIndex, offsets );\n\t\t\t}).join( encodingSeparator ) +\n\t\t\tgetSemis( this.outro )\n\t\t);\n\n\t\treturn new SourceMap({\n\t\t\tfile: ( options.file ? options.file.split( /[\\/\\\\]/ ).pop() : null ),\n\t\t\tsources: this.sources.map( function ( source ) {\n\t\t\t\treturn options.file ? getRelativePath( options.file, source.filename ) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.sources.map( function ( source ) {\n\t\t\t\treturn options.includeContent ? source.content.original : null;\n\t\t\t}),\n\t\t\tnames: [],\n\t\t\tmappings: encoded\n\t\t});\n\t},\n\n\tgetIndentString: function () {\n\t\tvar indentStringCounts = {};\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tvar indentStr = source.content.indentStr;\n\n\t\t\tif ( indentStr === null ) return;\n\n\t\t\tif ( !indentStringCounts[ indentStr ] ) indentStringCounts[ indentStr ] = 0;\n\t\t\tindentStringCounts[ indentStr ] += 1;\n\t\t});\n\n\t\treturn ( Object.keys( indentStringCounts ).sort( function ( a, b ) {\n\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t})[0] ) || '\\t';\n\t},\n\n\tindent: function ( indentStr ) {\n\t\tif ( !indentStr ) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tsource.content.indent( indentStr, { exclude: source.indentExclusionRanges });\n\t\t});\n\n\t\tthis.intro = this.intro.replace( /^[^\\n]/gm, indentStr + '$&' );\n\t\tthis.outro = this.outro.replace( /^[^\\n]/gm, indentStr + '$&' );\n\n\t\treturn this;\n\t},\n\n\tprepend: function ( str ) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t},\n\n\ttoString: function () {\n\t\treturn this.intro + this.sources.map( stringify ).join( this.separator ) + this.outro;\n\t},\n\n\ttrimLines: function () {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t},\n\n\ttrim: function (charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t},\n\n\ttrimStart: function (charType) {\n\t\tvar rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace( rx, '' );\n\n\t\tif ( !this.intro ) {\n\t\t\tvar source;\n\t\t\tvar i = 0;\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i];\n\n\t\t\t\tif ( !source ) {\n\t\t\t\t\tthis.outro = this.outro.replace( rx, '' );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tsource.content.trimStart();\n\t\t\t\ti += 1;\n\t\t\t} while ( source.content.str === '' );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\ttrimEnd: function(charType) {\n\t\tvar rx = new RegExp((charType || '\\\\s') + '+$');\n\t\tthis.outro = this.outro.replace( rx, '' );\n\n\t\tif ( !this.outro ) {\n\t\t\tvar source;\n\t\t\tvar i = this.sources.length - 1;\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i];\n\n\t\t\t\tif ( !source ) {\n\t\t\t\t\tthis.intro = this.intro.replace( rx, '' );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tsource.content.trimEnd(charType);\n\t\t\t\ti -= 1;\n\t\t\t} while ( source.content.str === '' );\n\t\t}\n\n\t\treturn this;\n\t}\n};\n\nexport default Bundle;\n\nfunction stringify ( source ) {\n\treturn source.content.toString();\n}\n\nfunction getSemis ( str ) {\n\treturn new Array( str.split( '\\n' ).length ).join( ';' );\n}\n","export default function guessIndent ( code ) {\n\tvar lines, tabbed, spaced, min;\n\n\tlines = code.split( '\\n' );\n\n\ttabbed = lines.filter( function ( line ) {\n\t\treturn /^\\t+/.test( line );\n\t});\n\n\tspaced = lines.filter( function ( line ) {\n\t\treturn /^ {2,}/.test( line );\n\t});\n\n\tif ( tabbed.length === 0 && spaced.length === 0 ) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif ( tabbed.length >= spaced.length ) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tmin = spaced.reduce( function ( previous, current ) {\n\t\tvar numSpaces = /^ +/.exec( current )[0].length;\n\t\treturn Math.min( numSpaces, previous );\n\t}, Infinity );\n\n\treturn new Array( min + 1 ).join( ' ' );\n}\n","var charToInteger = {};\nvar integerToChar = {};\n\n'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='.split( '' ).forEach( function ( char, i ) {\n\tcharToInteger[ char ] = i;\n\tintegerToChar[ i ] = char;\n});\n\nexport function decode ( string ) {\n\tvar result = [],\n\t\tlen = string.length,\n\t\ti,\n\t\thasContinuationBit,\n\t\tshift = 0,\n\t\tvalue = 0,\n\t\tinteger,\n\t\tshouldNegate;\n\n\tfor ( i = 0; i < len; i += 1 ) {\n\t\tinteger = charToInteger[ string[i] ];\n\n\t\tif ( integer === undefined ) {\n\t\t\tthrow new Error( 'Invalid character (' + string[i] + ')' );\n\t\t}\n\n\t\thasContinuationBit = integer & 32;\n\n\t\tinteger &= 31;\n\t\tvalue += integer << shift;\n\n\t\tif ( hasContinuationBit ) {\n\t\t\tshift += 5;\n\t\t} else {\n\t\t\tshouldNegate = value & 1;\n\t\t\tvalue >>= 1;\n\n\t\t\tresult.push( shouldNegate ? -value : value );\n\n\t\t\t// reset\n\t\t\tvalue = shift = 0;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function encode ( value ) {\n\tvar result, i;\n\n\tif ( typeof value === 'number' ) {\n\t\tresult = encodeInteger( value );\n\t} else {\n\t\tresult = '';\n\t\tfor ( i = 0; i < value.length; i += 1 ) {\n\t\t\tresult += encodeInteger( value[i] );\n\t\t}\n\t}\n\n\treturn result;\n}\n\nfunction encodeInteger ( num ) {\n\tvar result = '', clamped;\n\n\tif ( num < 0 ) {\n\t\tnum = ( -num << 1 ) | 1;\n\t} else {\n\t\tnum <<= 1;\n\t}\n\n\tdo {\n\t\tclamped = num & 31;\n\t\tnum >>= 5;\n\n\t\tif ( num > 0 ) {\n\t\t\tclamped |= 32;\n\t\t}\n\n\t\tresult += integerToChar[ clamped ];\n\t} while ( num > 0 );\n\n\treturn result;\n}\n","import { encode } from 'vlq';\nexport default encode;","import encode from '../utils/encode';\n\nexport default function encodeMappings ( original, str, mappings, hires, sourcemapLocations, sourceIndex, offsets ) {\n\tvar lineStart,\n\t\tlocations,\n\t\tlines,\n\t\tencoded,\n\t\tinverseMappings,\n\t\tcharOffset = 0,\n\t\tfirstSegment = true;\n\n\t// store locations, for fast lookup\n\tlineStart = 0;\n\tlocations = original.split( '\\n' ).map( function ( line ) {\n\t\tvar start = lineStart;\n\t\tlineStart += line.length + 1; // +1 for the newline\n\n\t\treturn start;\n\t});\n\n\tinverseMappings = invert( str, mappings );\n\n\tlines = str.split( '\\n' ).map( function ( line ) {\n\t\tvar segments, len, char, origin, lastOrigin, i, location;\n\n\t\tsegments = [];\n\n\t\tlen = line.length;\n\t\tfor ( i = 0; i < len; i += 1 ) {\n\t\t\tchar = i + charOffset;\n\t\t\torigin = inverseMappings[ char ];\n\n\t\t\tif ( !~origin ) {\n\t\t\t\tif ( !~lastOrigin ) {\n\t\t\t\t\t// do nothing\n\t\t\t\t} else {\n\t\t\t\t\tsegments.push({\n\t\t\t\t\t\tgeneratedCodeColumn: i,\n\t\t\t\t\t\tsourceIndex: sourceIndex,\n\t\t\t\t\t\tsourceCodeLine: 0,\n\t\t\t\t\t\tsourceCodeColumn: 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\telse {\n\t\t\t\tif ( !hires && ( origin === lastOrigin + 1 ) && !sourcemapLocations[ origin ] ) {\n\t\t\t\t\t// do nothing\n\t\t\t\t} else {\n\t\t\t\t\tlocation = getLocation( locations, origin );\n\n\t\t\t\t\tsegments.push({\n\t\t\t\t\t\tgeneratedCodeColumn: i,\n\t\t\t\t\t\tsourceIndex: sourceIndex,\n\t\t\t\t\t\tsourceCodeLine: location.line,\n\t\t\t\t\t\tsourceCodeColumn: location.column\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlastOrigin = origin;\n\t\t}\n\n\t\tcharOffset += line.length + 1;\n\t\treturn segments;\n\t});\n\n\toffsets = offsets || {};\n\n\toffsets.sourceIndex = offsets.sourceIndex || 0;\n\toffsets.sourceCodeLine = offsets.sourceCodeLine || 0;\n\toffsets.sourceCodeColumn = offsets.sourceCodeColumn || 0;\n\n\tencoded = lines.map( function ( segments ) {\n\t\tvar generatedCodeColumn = 0;\n\n\t\treturn segments.map( function ( segment ) {\n\t\t\tvar arr = [\n\t\t\t\tsegment.generatedCodeColumn - generatedCodeColumn,\n\t\t\t\tsegment.sourceIndex - offsets.sourceIndex,\n\t\t\t\tsegment.sourceCodeLine - offsets.sourceCodeLine,\n\t\t\t\tsegment.sourceCodeColumn - offsets.sourceCodeColumn\n\t\t\t];\n\n\t\t\tgeneratedCodeColumn = segment.generatedCodeColumn;\n\t\t\toffsets.sourceIndex = segment.sourceIndex;\n\t\t\toffsets.sourceCodeLine = segment.sourceCodeLine;\n\t\t\toffsets.sourceCodeColumn = segment.sourceCodeColumn;\n\n\t\t\tfirstSegment = false;\n\n\t\t\treturn encode( arr );\n\t\t}).join( ',' );\n\t}).join( ';' );\n\n\treturn encoded;\n}\n\n\nfunction invert ( str, mappings ) {\n\tvar inverted = new Uint32Array( str.length ), i;\n\n\t// initialise everything to -1\n\ti = str.length;\n\twhile ( i-- ) {\n\t\tinverted[i] = -1;\n\t}\n\n\t// then apply the actual mappings\n\ti = mappings.length;\n\twhile ( i-- ) {\n\t\tif ( ~mappings[i] ) {\n\t\t\tinverted[ mappings[i] ] = i;\n\t\t}\n\t}\n\n\treturn inverted;\n}\n\nfunction getLocation ( locations, char ) {\n\tvar i;\n\n\ti = locations.length;\n\twhile ( i-- ) {\n\t\tif ( locations[i] <= char ) {\n\t\t\treturn {\n\t\t\t\tline: i,\n\t\t\t\tcolumn: char - locations[i]\n\t\t\t};\n\t\t}\n\t}\n\n\tthrow new Error( 'Character out of bounds' );\n}\n","import Bundle from '../Bundle';\nimport SourceMap from '../SourceMap';\nimport guessIndent from './guessIndent';\nimport encodeMappings from './encodeMappings';\nimport getRelativePath from '../utils/getRelativePath';\n\nvar MagicString = function ( string ) {\n\tthis.original = this.str = string;\n\tthis.mappings = initMappings( string.length );\n\n\tthis.sourcemapLocations = {};\n\n\tthis.indentStr = guessIndent( string );\n};\n\nMagicString.prototype = {\n\taddSourcemapLocation: function ( char ) {\n\t\tthis.sourcemapLocations[ char ] = true;\n\t},\n\n\tappend: function ( content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'appended content must be a string' );\n\t\t}\n\n\t\tthis.str += content;\n\t\treturn this;\n\t},\n\n\tclone: function () {\n\t\tvar clone, i;\n\n\t\tclone = new MagicString( this.original );\n\t\tclone.str = this.str;\n\n\t\ti = clone.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tclone.mappings[i] = this.mappings[i];\n\t\t}\n\n\t\treturn clone;\n\t},\n\n\tgenerateMap: function ( options ) {\n\t\toptions = options || {};\n\n\t\treturn new SourceMap({\n\t\t\tfile: ( options.file ? options.file.split( /[\\/\\\\]/ ).pop() : null ),\n\t\t\tsources: [ options.source ? getRelativePath( options.file || '', options.source ) : null ],\n\t\t\tsourcesContent: options.includeContent ? [ this.original ] : [ null ],\n\t\t\tnames: [],\n\t\t\tmappings: this.getMappings( options.hires, 0 )\n\t\t});\n\t},\n\n\tgetIndentString: function () {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t},\n\n\tgetMappings: function ( hires, sourceIndex, offsets ) {\n\t\treturn encodeMappings( this.original, this.str, this.mappings, hires, this.sourcemapLocations, sourceIndex, offsets );\n\t},\n\n\tindent: function ( indentStr, options ) {\n\t\tvar self = this,\n\t\t\tmappings = this.mappings,\n\t\t\treverseMappings = reverse( mappings, this.str.length ),\n\t\t\tpattern = /^[^\\r\\n]/gm,\n\t\t\tmatch,\n\t\t\tinserts = [],\n\t\t\tadjustments,\n\t\t\texclusions,\n\t\t\tlastEnd,\n\t\t\ti;\n\n\t\tif ( typeof indentStr === 'object' ) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : ( this.indentStr || '\\t' );\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tif ( options.exclude ) {\n\t\t\texclusions = typeof options.exclude[0] === 'number' ? [ options.exclude ] : options.exclude;\n\n\t\t\texclusions = exclusions.map( function ( range ) {\n\t\t\t\tvar rangeStart, rangeEnd;\n\n\t\t\t\trangeStart = self.locate( range[0] );\n\t\t\t\trangeEnd = self.locate( range[1] );\n\n\t\t\t\tif ( rangeStart === null || rangeEnd === null ) {\n\t\t\t\t\tthrow new Error( 'Cannot use indices of replaced characters as exclusion ranges' );\n\t\t\t\t}\n\n\t\t\t\treturn [ rangeStart, rangeEnd ];\n\t\t\t});\n\n\t\t\texclusions.sort( function ( a, b ) {\n\t\t\t\treturn a[0] - b[0];\n\t\t\t});\n\n\t\t\t// check for overlaps\n\t\t\tlastEnd = -1;\n\t\t\texclusions.forEach( function ( range ) {\n\t\t\t\tif ( range[0] < lastEnd ) {\n\t\t\t\t\tthrow new Error( 'Exclusion ranges cannot overlap' );\n\t\t\t\t}\n\n\t\t\t\tlastEnd = range[1];\n\t\t\t});\n\t\t}\n\n\t\tif ( !exclusions ) {\n\t\t\twhile ( match = pattern.exec( this.str ) ) {\n\t\t\t\tinserts.push( match.index );\n\t\t\t}\n\n\t\t\tthis.str = this.str.replace( pattern, indentStr + '$&' );\n\t\t} else {\n\t\t\twhile ( match = pattern.exec( this.str ) ) {\n\t\t\t\tif ( !isExcluded( match.index - 1 ) ) {\n\t\t\t\t\tinserts.push( match.index );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.str = this.str.replace( pattern, function ( match, index ) {\n\t\t\t\treturn isExcluded( index - 1 ) ? match : indentStr + match;\n\t\t\t});\n\t\t}\n\n\t\tadjustments = inserts.map( function ( index ) {\n\t\t\tvar origin;\n\n\t\t\tdo {\n\t\t\t\torigin = reverseMappings[ index++ ];\n\t\t\t} while ( !~origin && index < self.str.length );\n\n\t\t\treturn origin;\n\t\t});\n\n\t\ti = adjustments.length;\n\t\tlastEnd = this.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tadjust( self.mappings, adjustments[i], lastEnd, ( ( i + 1 ) * indentStr.length ) );\n\t\t\tlastEnd = adjustments[i];\n\t\t}\n\n\t\treturn this;\n\n\t\tfunction isExcluded ( index ) {\n\t\t\tvar i = exclusions.length, range;\n\n\t\t\twhile ( i-- ) {\n\t\t\t\trange = exclusions[i];\n\n\t\t\t\tif ( range[1] < index ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif ( range[0] <= index ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\tinsert: function ( index, content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'inserted content must be a string' );\n\t\t}\n\n\t\tif ( index === this.original.length ) {\n\t\t\tthis.append( content );\n\t\t} else {\n\t\t\tvar mapped = this.locate(index);\n\n\t\t\tif ( mapped === null ) {\n\t\t\t\tthrow new Error( 'Cannot insert at replaced character index: ' + index );\n\t\t\t}\n\n\t\t\tthis.str = this.str.substr( 0, mapped ) + content + this.str.substr( mapped );\n\t\t\tadjust( this.mappings, index, this.mappings.length, content.length );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\t// get current location of character in original string\n\tlocate: function ( character ) {\n\t\tvar loc;\n\n\t\tif ( character < 0 || character > this.mappings.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\tloc = this.mappings[ character ];\n\t\treturn ~loc ? loc : null;\n\t},\n\n\tlocateOrigin: function ( character ) {\n\t\tvar i;\n\n\t\tif ( character < 0 || character >= this.str.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\ti = this.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tif ( this.mappings[i] === character ) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t},\n\n\tprepend: function ( content ) {\n\t\tthis.str = content + this.str;\n\t\tadjust( this.mappings, 0, this.mappings.length, content.length );\n\t\treturn this;\n\t},\n\n\tremove: function ( start, end ) {\n\t\tvar loc, d, i, currentStart, currentEnd;\n\n\t\tif ( start < 0 || end > this.mappings.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\td = 0;\n\t\tcurrentStart = -1;\n\t\tcurrentEnd = -1;\n\t\tfor ( i = start; i < end; i += 1 ) {\n\t\t\tloc = this.mappings[i];\n\n\t\t\tif ( loc !== -1 ) {\n\t\t\t\tif ( !~currentStart ) {\n\t\t\t\t\tcurrentStart = loc;\n\t\t\t\t}\n\n\t\t\t\tcurrentEnd = loc + 1;\n\n\t\t\t\tthis.mappings[i] = -1;\n\t\t\t\td += 1;\n\t\t\t}\n\t\t}\n\n\t\tthis.str = this.str.slice( 0, currentStart ) + this.str.slice( currentEnd );\n\n\t\tadjust( this.mappings, end, this.mappings.length, -d );\n\t\treturn this;\n\t},\n\n\treplace: function ( start, end, content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'replacement content must be a string' );\n\t\t}\n\n\t\tvar firstChar, lastChar, d;\n\n\t\tfirstChar = this.locate( start );\n\t\tlastChar = this.locate( end - 1 );\n\n\t\tif ( firstChar === null || lastChar === null ) {\n\t\t\tthrow new Error( 'Cannot replace the same content twice' );\n\t\t}\n\n\t\tif ( firstChar > lastChar + 1 ) {\n\t\t\tthrow new Error(\n\t\t\t\t'BUG! First character mapped to a position after the last character: ' +\n\t\t\t\t'[' + start + ', ' + end + '] -> [' + firstChar + ', ' + ( lastChar + 1 ) + ']'\n\t\t\t);\n\t\t}\n\n\t\tthis.str = this.str.substr( 0, firstChar ) + content + this.str.substring( lastChar + 1 );\n\n\t\td = content.length - ( lastChar + 1 - firstChar );\n\n\t\tblank( this.mappings, start, end );\n\t\tadjust( this.mappings, end, this.mappings.length, d );\n\t\treturn this;\n\t},\n\n\tslice: function ( start, end ) {\n\t\tvar firstChar, lastChar;\n\n\t\tfirstChar = this.locate( start );\n\t\tlastChar = this.locate( end - 1 ) + 1;\n\n\t\tif ( firstChar === null || lastChar === null ) {\n\t\t\tthrow new Error( 'Cannot use replaced characters as slice anchors' );\n\t\t}\n\n\t\treturn this.str.slice( firstChar, lastChar );\n\t},\n\n\ttoString: function () {\n\t\treturn this.str;\n\t},\n\n\ttrimLines: function() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t},\n\n\ttrim: function (charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t},\n\n\ttrimEnd: function (charType) {\n\t\tvar self = this;\n\t\tvar rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.str = this.str.replace( rx, function ( trailing, index, str ) {\n\t\t\tvar strLength = str.length,\n\t\t\t\tlength = trailing.length,\n\t\t\t\ti,\n\t\t\t\tchars = [];\n\n\t\t\ti = strLength;\n\t\t\twhile ( i-- > strLength - length ) {\n\t\t\t\tchars.push( self.locateOrigin( i ) );\n\t\t\t}\n\n\t\t\ti = chars.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( chars[i] !== null ) {\n\t\t\t\t\tself.mappings[ chars[i] ] = -1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn '';\n\t\t});\n\n\t\treturn this;\n\t},\n\n\ttrimStart: function (charType) {\n\t\tvar self = this;\n\t\tvar rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.str = this.str.replace( rx, function ( leading ) {\n\t\t\tvar length = leading.length, i, chars = [], adjustmentStart = 0;\n\n\t\t\ti = length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tchars.push( self.locateOrigin( i ) );\n\t\t\t}\n\n\t\t\ti = chars.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( chars[i] !== null ) {\n\t\t\t\t\tself.mappings[ chars[i] ] = -1;\n\t\t\t\t\tadjustmentStart += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tadjust( self.mappings, adjustmentStart, self.mappings.length, -length );\n\n\t\t\treturn '';\n\t\t});\n\n\t\treturn this;\n\t}\n};\n\nMagicString.Bundle = Bundle;\n\nfunction adjust ( mappings, start, end, d ) {\n\tvar i = end;\n\n\tif ( !d ) return; // replacement is same length as replaced string\n\n\twhile ( i-- > start ) {\n\t\tif ( ~mappings[i] ) {\n\t\t\tmappings[i] += d;\n\t\t}\n\t}\n}\n\nfunction initMappings ( i ) {\n\tvar mappings = new Uint32Array( i );\n\n\twhile ( i-- ) {\n\t\tmappings[i] = i;\n\t}\n\n\treturn mappings;\n}\n\nfunction blank ( mappings, start, i ) {\n\twhile ( i-- > start ) {\n\t\tmappings[i] = -1;\n\t}\n}\n\nfunction reverse ( mappings, i ) {\n\tvar result, location;\n\n\tresult = new Uint32Array( i );\n\n\twhile ( i-- ) {\n\t\tresult[i] = -1;\n\t}\n\n\ti = mappings.length;\n\twhile ( i-- ) {\n\t\tlocation = mappings[i];\n\n\t\tif ( ~location ) {\n\t\t\tresult[ location ] = i;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport default MagicString;\n","let shouldSkip;\nlet shouldAbort;\n\nexport default function walk ( ast, { enter, leave }) {\n\tshouldAbort = false;\n\tvisit( ast, null, enter, leave );\n}\n\nlet context = {\n\tskip: () => shouldSkip = true,\n\tabort: () => shouldAbort = true\n};\n\nlet childKeys = {};\n\nlet toString = Object.prototype.toString;\n\nfunction isArray ( thing ) {\n\treturn toString.call( thing ) === '[object Array]';\n}\n\nfunction visit ( node, parent, enter, leave ) {\n\tif ( !node || shouldAbort ) return;\n\n\tif ( enter ) {\n\t\tshouldSkip = false;\n\t\tenter.call( context, node, parent );\n\t\tif ( shouldSkip || shouldAbort ) return;\n\t}\n\n\tlet keys = childKeys[ node.type ] || (\n\t\tchildKeys[ node.type ] = Object.keys( node ).filter( key => typeof node[ key ] === 'object' )\n\t);\n\n\tlet key, value, i, j;\n\n\ti = keys.length;\n\twhile ( i-- ) {\n\t\tkey = keys[i];\n\t\tvalue = node[ key ];\n\n\t\tif ( isArray( value ) ) {\n\t\t\tj = value.length;\n\t\t\twhile ( j-- ) {\n\t\t\t\tvisit( value[j], node, enter, leave );\n\t\t\t}\n\t\t}\n\n\t\telse if ( value && value.type ) {\n\t\t\tvisit( value, node, enter, leave );\n\t\t}\n\t}\n\n\tif ( leave && !shouldAbort ) {\n\t\tleave( node, parent );\n\t}\n}","export function getId ( m ) {\n\treturn m.id;\n}\n\nexport function getName ( m ) {\n\treturn m.name;\n}\n\nexport function quote ( str ) {\n\treturn \"'\" + JSON.stringify(str).slice(1, -1).replace(/'/g, \"\\\\'\") + \"'\";\n}\n\nexport function req ( path ) {\n\treturn `require(${quote(path)})`;\n}\n\nexport function globalify ( name ) {\n \tif ( /^__dep\\d+__$/.test( name ) ) {\n\t\treturn 'undefined';\n\t} else {\n\t\treturn `global.${name}`;\n\t}\n}\n","/*\n\tThis module traverse a module's AST, attaching scope information\n\tto nodes as it goes, which is later used to determine which\n\tidentifiers need to be rewritten to avoid collisions\n*/\n\nimport walk from './walk';\nimport { getName } from '../mappers';\n\nfunction Scope ( options ) {\n\toptions = options || {};\n\n\tthis.parent = options.parent;\n\tthis.names = options.params || [];\n}\n\nScope.prototype = {\n\tadd: function ( name ) {\n\t\tthis.names.push( name );\n\t},\n\n\tcontains: function ( name, ignoreTopLevel ) {\n\t\tif ( ignoreTopLevel && !this.parent ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( ~this.names.indexOf( name ) ) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif ( this.parent ) {\n\t\t\treturn this.parent.contains( name, ignoreTopLevel );\n\t\t}\n\n\t\treturn false;\n\t}\n};\n\nexport default function annotateAst ( ast ) {\n\tlet scope = new Scope();\n\tlet blockScope = new Scope();\n\tlet declared = {};\n\tlet topLevelFunctionNames = [];\n\tlet templateLiteralRanges = [];\n\n\tlet envDepth = 0;\n\n\twalk( ast, {\n\t\tenter ( node ) {\n\t\t\tif ( node.type === 'ImportDeclaration' || node.type === 'ExportSpecifier' ) {\n\t\t\t\tnode._skip = true;\n\t\t\t}\n\n\t\t\tif ( node._skip ) {\n\t\t\t\treturn this.skip();\n\t\t\t}\n\n\t\t\tswitch ( node.type ) {\n\t\t\t\tcase 'FunctionExpression':\n\t\t\t\tcase 'FunctionDeclaration':\n\n\t\t\t\t\tenvDepth += 1;\n\n\t\t\t\t\t// fallthrough\n\n\t\t\t\tcase 'ArrowFunctionExpression':\n\t\t\t\t\tif ( node.id ) {\n\t\t\t\t\t\taddToScope( node );\n\n\t\t\t\t\t\t// If this is the root scope, this may need to be\n\t\t\t\t\t\t// exported early, so we make a note of it\n\t\t\t\t\t\tif ( !scope.parent && node.type === 'FunctionDeclaration' ) {\n\t\t\t\t\t\t\ttopLevelFunctionNames.push( node.id.name );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet names = node.params.map( getName );\n\n\t\t\t\t\tnames.forEach( name => declared[ name ] = true );\n\n\t\t\t\t\tscope = node._scope = new Scope({\n\t\t\t\t\t\tparent: scope,\n\t\t\t\t\t\tparams: names // TODO rest params?\n\t\t\t\t\t});\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BlockStatement':\n\t\t\t\t\tblockScope = node._blockScope = new Scope({\n\t\t\t\t\t\tparent: blockScope\n\t\t\t\t\t});\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'VariableDeclaration':\n\t\t\t\t\tnode.declarations.forEach( node.kind === 'let' ? addToBlockScope : addToScope );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ClassExpression':\n\t\t\t\tcase 'ClassDeclaration':\n\t\t\t\t\taddToScope( node );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'MemberExpression':\n\t\t\t\t\tif ( envDepth === 0 && node.object.type === 'ThisExpression' ) {\n\t\t\t\t\t\tthrow new Error('`this` at the top level is undefined');\n\t\t\t\t\t}\n\t\t\t\t\t!node.computed && ( node.property._skip = true );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'Property':\n\t\t\t\t\tnode.key._skip = true;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'TemplateLiteral':\n\t\t\t\t\ttemplateLiteralRanges.push([ node.start, node.end ]);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ThisExpression':\n\t\t\t\t\tif (envDepth === 0) {\n\t\t\t\t\t\tnode._topLevel = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\tleave ( node ) {\n\t\t\tswitch ( node.type ) {\n\t\t\t\tcase 'FunctionExpression':\n\t\t\t\tcase 'FunctionDeclaration':\n\n\t\t\t\t\tenvDepth -= 1;\n\n\t\t\t\t\t// fallthrough\n\n\t\t\t\tcase 'ArrowFunctionExpression':\n\n\t\t\t\t\tscope = scope.parent;\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BlockStatement':\n\t\t\t\t\tblockScope = blockScope.parent;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t});\n\n\tfunction addToScope ( declarator ) {\n\t\tvar name = declarator.id.name;\n\n\t\tscope.add( name );\n\t\tdeclared[ name ] = true;\n\t}\n\n\tfunction addToBlockScope ( declarator ) {\n\t\tvar name = declarator.id.name;\n\n\t\tblockScope.add( name );\n\t\tdeclared[ name ] = true;\n\t}\n\n\tast._scope = scope;\n\tast._blockScope = blockScope;\n\tast._topLevelNames = ast._scope.names.concat( ast._blockScope.names );\n\tast._topLevelFunctionNames = topLevelFunctionNames;\n\tast._declared = declared;\n\tast._templateLiteralRanges = templateLiteralRanges;\n}\n","/**\n * Inspects a module and discovers/categorises import & export declarations\n * @param {object} mod - the module object\n * @param {string} source - the module's original source code\n * @param {object} ast - the result of parsing `source` with acorn\n * @returns {array} - [ imports, exports ]\n */\nexport default function findImportsAndExports ( mod, source, ast ) {\n\tvar imports = [], exports = [], previousDeclaration;\n\n\tast.body.forEach( node => {\n\t\tvar passthrough, declaration;\n\n\t\tif ( previousDeclaration ) {\n\t\t\tpreviousDeclaration.next = node.start;\n\n\t\t\tif ( node.type !== 'EmptyStatement' ) {\n\t\t\t\tpreviousDeclaration = null;\n\t\t\t}\n\t\t}\n\n\t\tif ( node.type === 'ImportDeclaration' ) {\n\t\t\tdeclaration = processImport( node );\n\t\t\timports.push( declaration );\n\t\t}\n\n\t\telse if ( node.type === 'ExportDefaultDeclaration' ) {\n\t\t\tdeclaration = processDefaultExport( node, source );\n\t\t\texports.push( declaration );\n\n\t\t\tif ( mod.defaultExport ) {\n\t\t\t\tthrow new Error( 'Duplicate default exports' );\n\t\t\t}\n\t\t\tmod.defaultExport = declaration;\n\t\t}\n\n\t\telse if ( node.type === 'ExportNamedDeclaration' ) {\n\t\t\tdeclaration = processExport( node, source );\n\t\t\texports.push( declaration );\n\n\t\t\tif ( node.source ) {\n\t\t\t\t// it's both an import and an export, e.g.\n\t\t\t\t// `export { foo } from './bar';\n\t\t\t\tpassthrough = processImport( node, true );\n\t\t\t\timports.push( passthrough );\n\n\t\t\t\tdeclaration.passthrough = passthrough;\n\t\t\t}\n\t\t}\n\n\t\tif ( declaration ) {\n\t\t\tpreviousDeclaration = declaration;\n\t\t}\n\t});\n\n\t// catch any trailing semicolons\n\tif ( previousDeclaration ) {\n\t\tpreviousDeclaration.next = source.length;\n\t\tpreviousDeclaration.isFinal = true;\n\t}\n\n\treturn [ imports, exports ];\n}\n\n/**\n * Generates a representation of an import declaration\n * @param {object} node - the original AST node\n * @param {boolean} passthrough - `true` if this is an `export { foo } from 'bar'`-style declaration\n * @returns {object}\n */\nfunction processImport ( node, passthrough ) {\n\tvar x = {\n\t\tmodule: null, // used by bundler - filled in later\n\t\tnode: node,\n\t\tstart: node.start,\n\t\tend: node.end,\n\t\tpassthrough: !!passthrough,\n\n\t\tpath: node.source.value,\n\t\tspecifiers: node.specifiers.map( s => {\n\t\t\tif ( s.type === 'ImportNamespaceSpecifier' ) {\n\t\t\t\treturn {\n\t\t\t\t\tisBatch: true,\n\t\t\t\t\tname: s.local.name, // TODO is this line necessary?\n\t\t\t\t\tas: s.local.name\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( s.type === 'ImportDefaultSpecifier' ) {\n\t\t\t\treturn {\n\t\t\t\t\tisDefault: true,\n\t\t\t\t\tname: 'default',\n\t\t\t\t\tas: s.local.name\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tname: ( !!passthrough ? s.exported : s.imported ).name,\n\t\t\t\tas: s.local.name\n\t\t\t};\n\t\t})\n\t};\n\n\t// TODO have different types of imports - batch, default, named\n\tif ( x.specifiers.length === 0 ) {\n\t\tx.isEmpty = true;\n\t} else if ( x.specifiers.length === 1 && x.specifiers[0].isDefault ) {\n\t\tx.isDefault = true;\n\t\tx.as = x.specifiers[0].as;\n\n\t} else if ( x.specifiers.length === 1 && x.specifiers[0].isBatch ) {\n\t\tx.isBatch = true;\n\t\tx.as = x.specifiers[0].name;\n\t} else {\n\t\tx.isNamed = true;\n\t}\n\n\treturn x;\n}\n\nfunction processDefaultExport ( node, source ) {\n\tlet result = {\n\t\tisDefault: true,\n\t\tnode: node,\n\t\tstart: node.start,\n\t\tend: node.end\n\t};\n\n\tlet d = node.declaration;\n\n\tif ( d.type === 'FunctionExpression' ) {\n\t\t// Case 1: `export default function () {...}`\n\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\tresult.type = 'anonFunction';\n\t}\n\n\telse if ( d.type === 'FunctionDeclaration' ) {\n\t\t// Case 2: `export default function foo () {...}`\n\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\tresult.type = 'namedFunction';\n\t\tresult.name = d.id.name;\n\t}\n\n\telse if ( d.type === 'ClassExpression' ) {\n\t\t// Case 3: `export default class {...}`\n\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\tresult.type = 'anonClass';\n\t}\n\n\telse if ( d.type === 'ClassDeclaration' ) {\n\t\t// Case 4: `export default class Foo {...}`\n\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\tresult.type = 'namedClass';\n\t\tresult.name = d.id.name;\n\t}\n\n\telse {\n\t\tresult.type = 'expression';\n\t\tresult.name = 'default';\n\t}\n\n\tresult.value = source.slice( d.start, d.end );\n\tresult.valueStart = d.start;\n\n\treturn result;\n}\n\n/**\n * Generates a representation of an export declaration\n * @param {object} node - the original AST node\n * @param {string} source - the original source code\n * @returns {object}\n */\nfunction processExport ( node, source ) {\n\tvar result, d;\n\n\tresult = {\n\t\tnode: node,\n\t\tstart: node.start,\n\t\tend: node.end\n\t};\n\n\tif ( d = node.declaration ) {\n\t\tresult.value = source.slice( d.start, d.end );\n\t\tresult.valueStart = d.start;\n\n\t\t// Case 1: `export var foo = 'bar'`\n\t\tif ( d.type === 'VariableDeclaration' ) {\n\t\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\t\tresult.type = 'varDeclaration';\n\t\t\tresult.name = d.declarations[0].id.name;\n\t\t}\n\n\t\t// Case 2: `export function foo () {...}`\n\t\telse if ( d.type === 'FunctionDeclaration' ) {\n\t\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\t\tresult.type = 'namedFunction';\n\t\t\tresult.name = d.id.name;\n\t\t}\n\n\t\t// Case 3: `export class Foo {...}`\n\t\telse if ( d.type === 'ClassDeclaration' ) {\n\t\t\tresult.hasDeclaration = true; // TODO remove in favour of result.type\n\t\t\tresult.type = 'namedClass';\n\t\t\tresult.name = d.id.name;\n\t\t}\n\t}\n\n\t// Case 9: `export { foo, bar };`\n\telse {\n\t\tresult.type = 'named';\n\t\tresult.specifiers = node.specifiers.map( s => {\n\t\t\treturn {\n\t\t\t\tname: s.local.name,\n\t\t\t\tas: s.exported.name\n\t\t\t};\n\t\t});\n\t}\n\n\treturn result;\n}\n","var hasOwnProp = Object.prototype.hasOwnProperty;\nexport default hasOwnProp;","import walk from './walk';\nimport hasOwnProp from 'utils/hasOwnProp';\n\nexport default function getUnscopedNames ( mod ) {\n\tvar unscoped = [], importedNames, scope;\n\n\tfunction imported ( name ) {\n\t\tif ( !importedNames ) {\n\t\t\timportedNames = {};\n\t\t\tmod.imports.forEach( i => {\n\t\t\t\t!i.passthrough && i.specifiers.forEach( s => {\n\t\t\t\t\timportedNames[ s.as ] = true;\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\treturn hasOwnProp.call( importedNames, name );\n\t}\n\n\twalk( mod.ast, {\n\t\tenter ( node ) {\n\t\t\t// we're only interested in references, not property names etc\n\t\t\tif ( node._skip ) return this.skip();\n\n\t\t\tif ( node._scope ) {\n\t\t\t\tscope = node._scope;\n\t\t\t}\n\n\t\t\tif ( node.type === 'Identifier' &&\n\t\t\t\t\t !scope.contains( node.name ) &&\n\t\t\t\t\t !imported( node.name ) &&\n\t\t\t\t\t !~unscoped.indexOf( node.name ) ) {\n\t\t\t\tunscoped.push( node.name );\n\t\t\t}\n\t\t},\n\n\t\tleave ( node ) {\n\t\t\tif ( node.type === 'Program' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( node._scope ) {\n\t\t\t\tscope = scope.parent;\n\t\t\t}\n\t\t}\n\t});\n\n\treturn unscoped;\n}","import hasOwnProp from './hasOwnProp';\n\nexport default function disallowConflictingImports ( imports ) {\n\tlet usedNames = {};\n\n\timports.forEach( x => {\n\t\tif ( x.passthrough ) return;\n\n\t\tif ( x.as ) {\n\t\t\tcheckName( x.as );\n\t\t} else {\n\t\t\tx.specifiers.forEach( checkSpecifier );\n\t\t}\n\t});\n\n\tfunction checkSpecifier ( s ) {\n\t\tcheckName( s.as );\n\t}\n\n\tfunction checkName ( name ) {\n\t\tif ( hasOwnProp.call( usedNames, name ) ) {\n\t\t\tthrow new SyntaxError( `Duplicated import ('${name}')` );\n\t\t}\n\n\t\tusedNames[ name ] = true;\n\t}\n}\n","const RESERVED = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield'.split( ' ' );\nconst INVALID_CHAR = /[^a-zA-Z0-9_$]/g;\nconst INVALID_LEADING_CHAR = /[^a-zA-Z_$]/;\n\n/**\n * Generates a sanitized (i.e. valid identifier) name from a module ID\n * @param {string} id - a module ID, or part thereof\n * @returns {string}\n */\nexport default function sanitize ( name ) {\n\tname = name.replace( INVALID_CHAR, '_' );\n\n\tif ( INVALID_LEADING_CHAR.test( name[0] ) || ~RESERVED.indexOf( name ) ) {\n\t\tname = `_${name}`;\n\t}\n\n\treturn name;\n}\n\nvar pathSplitRE = /\\/|\\\\/;\nexport function splitPath ( path ) {\n\treturn path.split( pathSplitRE );\n}\n","import acorn from 'acorn';\nimport MagicString from 'magic-string';\nimport annotateAst from 'utils/ast/annotate';\nimport findImportsAndExports from 'utils/ast/findImportsAndExports';\nimport getUnscopedNames from 'utils/ast/getUnscopedNames';\nimport disallowConflictingImports from '../utils/disallowConflictingImports';\nimport hasOwnProp from 'utils/hasOwnProp';\nimport { default as sanitize, splitPath } from 'utils/sanitize';\n\nconst SOURCEMAPPINGURL_REGEX = /^# sourceMappingURL=/;\n\nexport default function getStandaloneModule ( options ) {\n\tlet code, ast;\n\n\tif ( typeof options.source === 'object' ) {\n\t\tcode = options.source.code;\n\t\tast = options.source.ast;\n\t} else {\n\t\tcode = options.source;\n\t}\n\n\tlet toRemove = [];\n\n\tlet mod = {\n\t\tbody: new MagicString( code ),\n\t\tast: ast || ( acorn.parse( code, {\n\t\t\tecmaVersion: 6,\n\t\t\tsourceType: 'module',\n\t\t\tonComment ( block, text, start, end ) {\n\t\t\t\t// sourceMappingURL comments should be removed\n\t\t\t\tif ( !block && SOURCEMAPPINGURL_REGEX.test( text ) ) {\n\t\t\t\t\ttoRemove.push({ start, end });\n\t\t\t\t}\n\t\t\t}\n\t\t}))\n\t};\n\n\ttoRemove.forEach( ({ start, end }) => mod.body.remove( start, end ) );\n\n\tlet [ imports, exports ] = findImportsAndExports( mod, code, mod.ast );\n\n\tdisallowConflictingImports( imports );\n\n\tmod.imports = imports;\n\tmod.exports = exports;\n\n\tlet conflicts = {};\n\n\tif ( options.strict ) {\n\t\tannotateAst( mod.ast );\n\n\t\t// TODO there's probably an easier way to get this array\n\t\tObject.keys( mod.ast._declared ).concat( getUnscopedNames( mod ) ).forEach( n => {\n\t\t\tconflicts[n] = true;\n\t\t});\n\t}\n\n\tdetermineImportNames( imports, options.getModuleName, conflicts );\n\n\treturn mod;\n}\n\nfunction determineImportNames ( imports, userFn, usedNames ) {\n\tlet nameById = {};\n\tlet inferredNames = {};\n\n\timports.forEach( x => {\n\t\tlet moduleId = x.path;\n\t\tlet name;\n\n\t\tmoduleId = x.path;\n\n\t\t// use existing value\n\t\tif ( hasOwnProp.call( nameById, moduleId ) ) {\n\t\t\tx.name = nameById[ moduleId ];\n\t\t\treturn;\n\t\t}\n\n\t\t// if user supplied a function, defer to it\n\t\tif ( userFn && ( name = userFn( moduleId ) ) ) {\n\t\t\tname = sanitize( name );\n\n\t\t\tif ( hasOwnProp.call( usedNames, name ) ) {\n\t\t\t\t// TODO write a test for this\n\t\t\t\tthrow new Error( `Naming collision: module ${moduleId} cannot be called ${name}` );\n\t\t\t}\n\t\t}\n\n\t\telse {\n\t\t\tlet parts = splitPath( moduleId );\n\t\t\tlet i;\n\t\t\tlet prefix = '';\n\t\t\tlet candidate;\n\n\t\t\tdo {\n\t\t\t\ti = parts.length;\n\t\t\t\twhile ( i-- > 0 ) {\n\t\t\t\t\tcandidate = prefix + sanitize( parts.slice( i ).join( '__' ) );\n\n\t\t\t\t\tif ( !hasOwnProp.call( usedNames, candidate ) ) {\n\t\t\t\t\t\tname = candidate;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tprefix += '_';\n\t\t\t} while ( !name );\n\t\t}\n\n\t\tusedNames[ name ] = true;\n\t\tnameById[ moduleId ] = name;\n\n\t\tx.name = name;\n\t});\n\n\t// use inferred names for default imports, wherever they\n\t// don't clash with path-based names\n\timports.forEach( x => {\n\t\tif ( x.as && !hasOwnProp.call( usedNames, x.as ) ) {\n\t\t\tinferredNames[ x.path ] = x.as;\n\t\t}\n\t});\n\n\timports.forEach( x => {\n\t\tif ( hasOwnProp.call( inferredNames, x.path ) ) {\n\t\t\tx.name = inferredNames[ x.path ];\n\t\t}\n\t});\n}\n","export default function transformExportDeclaration ( declaration, body ) {\n\tif ( !declaration ) {\n\t\treturn;\n\t}\n\n\tlet exportedValue;\n\n\tswitch ( declaration.type ) {\n\t\tcase 'namedFunction':\n\t\tcase 'namedClass':\n\t\t\tbody.remove( declaration.start, declaration.valueStart );\n\t\t\texportedValue = declaration.name;\n\t\t\tbreak;\n\n\t\tcase 'anonFunction':\n\t\tcase 'anonClass':\n\t\t\tif ( declaration.isFinal ) {\n\t\t\t\tbody.replace( declaration.start, declaration.valueStart, 'return ' );\n\t\t\t} else {\n\t\t\t\tbody.replace( declaration.start, declaration.valueStart, 'var __export = ' );\n\t\t\t\texportedValue = '__export';\n\t\t\t}\n\n\t\t\t// add semi-colon, if necessary\n\t\t\t// TODO body.original is an implementation detail of magic-string - there\n\t\t\t// should probably be an API for this sort of thing\n\t\t\tif ( body.original[ declaration.end - 1 ] !== ';' ) {\n\t\t\t\tbody.insert( declaration.end, ';' );\n\t\t\t}\n\n\t\t\tbreak;\n\n\t\tcase 'expression':\n\t\t\tbody.remove( declaration.start, declaration.next );\n\t\t\texportedValue = declaration.value;\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tthrow new Error( `Unexpected export type '${declaration.type}'` );\n\t}\n\n\tif ( exportedValue ) {\n\t\tbody.append( `\\nreturn ${exportedValue};` );\n\t}\n}\n","import walk from './ast/walk';\nimport { splitPath } from 'utils/sanitize';\n\nconst ABSOLUTE_PATH = /^(?:[A-Z]:)?[\\/\\\\]/i;\n\nlet warned = {};\n\nexport default function packageResult ( bundleOrModule, body, options, methodName, isBundle ) {\n\t// wrap output\n\tif ( options.banner ) body.prepend( options.banner );\n\tif ( options.footer ) body.append( options.footer );\n\n\tlet code = body.toString();\n\tlet map;\n\n\tif ( !!options.sourceMap ) {\n\t\tif ( options.sourceMap !== 'inline' && !options.sourceMapFile ) {\n\t\t\tthrow new Error( 'You must provide `sourceMapFile` option' );\n\t\t}\n\n\t\tif ( !isBundle && !options.sourceMapSource ) {\n\t\t\tthrow new Error( 'You must provide `sourceMapSource` option' );\n\t\t}\n\n\t\tlet sourceMapFile;\n\t\tif ( options.sourceMap === 'inline' ) {\n\t\t\tsourceMapFile = null;\n\t\t} else {\n\t\t\tsourceMapFile = ABSOLUTE_PATH.test( options.sourceMapFile ) ? options.sourceMapFile : './' + splitPath( options.sourceMapFile ).pop();\n\t\t}\n\n\t\tif ( isBundle ) {\n\t\t\tmarkBundleSourcemapLocations( bundleOrModule );\n\t\t} else {\n\t\t\tmarkModuleSourcemapLocations( bundleOrModule );\n\t\t}\n\n\t\tmap = body.generateMap({\n\t\t\tincludeContent: true,\n\t\t\tfile: sourceMapFile,\n\t\t\tsource: ( sourceMapFile && !isBundle ) ? getRelativePath( sourceMapFile, options.sourceMapSource ) : null\n\t\t});\n\n\t\tif ( options.sourceMap === 'inline' ) {\n\t\t\tcode += '\\n//# sourceMa' + 'ppingURL=' + map.toUrl();\n\t\t\tmap = null;\n\t\t} else {\n\t\t\tcode += '\\n//# sourceMa' + 'ppingURL=' + sourceMapFile + '.map';\n\t\t}\n\t} else {\n\t\tmap = null;\n\t}\n\n\treturn {\n\t\tcode,\n\t\tmap,\n\t\ttoString () {\n\t\t\tif ( !warned[ methodName ] ) {\n\t\t\t\tconsole.log( `Warning: esperanto.${methodName}() returns an object with a 'code' property. You should use this instead of using the returned value directly` );\n\t\t\t\twarned[ methodName ] = true;\n\t\t\t}\n\n\t\t\treturn code;\n\t\t}\n\t};\n}\n\nfunction getRelativePath ( from, to ) {\n\tvar fromParts, toParts, i;\n\n\tfromParts = splitPath( from );\n\ttoParts = splitPath( to );\n\n\tfromParts.pop(); // get dirname\n\n\twhile ( fromParts[0] === '.' ) {\n\t\tfromParts.shift();\n\t}\n\n\twhile ( fromParts[0] === toParts[0] ) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif ( fromParts.length ) {\n\t\ti = fromParts.length;\n\t\twhile ( i-- ) fromParts[i] = '..';\n\n\t\treturn fromParts.concat( toParts ).join( '/' );\n\t} else {\n\t\ttoParts.unshift( '.' );\n\t\treturn toParts.join( '/' );\n\t}\n}\n\nfunction markBundleSourcemapLocations ( bundle ) {\n\tbundle.modules.forEach( mod => {\n\t\twalk( mod.ast, {\n\t\t\tenter: node => {\n\t\t\t\tmod.body.addSourcemapLocation( node.start );\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction markModuleSourcemapLocations ( mod ) {\n\twalk( mod.ast, {\n\t\tenter: node => {\n\t\t\tmod.body.addSourcemapLocation( node.start );\n\t\t}\n\t});\n}\n","import { splitPath } from 'utils/sanitize';\n\n/**\n * Resolves an importPath relative to the module that is importing it\n * @param {string} importPath - the (possibly relative) path of an imported module\n * @param {string} importerPath - the (relative to `base`) path of the importing module\n * @returns {string}\n */\nexport default function resolveId ( importPath, importerPath ) {\n\tvar resolved, importerParts, importParts;\n\n\tif ( importPath[0] !== '.' ) {\n\t\tresolved = importPath;\n\t} else {\n\t\timporterParts = splitPath( importerPath );\n\t\timportParts = splitPath( importPath );\n\n\t\tif ( importParts[0] === '.' ) {\n\t\t\timportParts.shift();\n\t\t}\n\n\t\timporterParts.pop(); // get dirname\n\t\twhile ( importParts[0] === '..' ) {\n\t\t\timportParts.shift();\n\t\t\timporterParts.pop();\n\t\t}\n\n\t\twhile ( importParts[0] === '.' ) {\n\t\t\timportParts.shift();\n\t\t}\n\n\t\tresolved = importerParts.concat( importParts ).join( '/' );\n\t}\n\n\treturn resolved;\n}\n\nexport function resolveAgainst ( importerPath ) {\n\treturn function ( importPath ) {\n\t\treturn resolveId( importPath, importerPath );\n\t};\n}\n","import resolveId from '../resolveId';\n\nexport default function getImportSummary ({ imports, absolutePaths, name }) {\n\tlet paths = [];\n\tlet names = [];\n\tlet seen = {};\n\tlet placeholders = 0;\n\n\timports.forEach( x => {\n\t\tlet path = x.id || x.path; // TODO unify these\n\n\t\tif ( !seen[ path ] ) {\n\t\t\tseen[ path ] = true;\n\n\t\t\tpaths.push( path );\n\n\t\t\t// TODO x could be an external module, or an internal one.\n\t\t\t// they have different shapes, resulting in the confusing\n\t\t\t// code below\n\t\t\tif ( ( x.needsDefault || x.needsNamed ) || ( x.specifiers && x.specifiers.length ) ) {\n\t\t\t\twhile ( placeholders ) {\n\t\t\t\t\tnames.push( `__dep${names.length}__` );\n\t\t\t\t\tplaceholders--;\n\t\t\t\t}\n\t\t\t\tnames.push( x.name );\n\t\t\t} else {\n\t\t\t\tplaceholders++;\n\t\t\t}\n\t\t}\n\t});\n\n\tlet ids = absolutePaths ? paths.map( relativePath => resolveId( relativePath, name ) ) : paths.slice();\n\n\treturn { ids, paths, names };\n}","import { quote } from '../mappers';\n\nexport default function processName ( name ) {\n\treturn name ? quote( name ) + ', ' : '';\n}","import { quote } from '../mappers';\n\nexport default function processIds ( ids ) {\n\treturn ids.length ? '[' + ids.map( quote ).join( ', ' ) + '], ' : '';\n}","import getImportSummary from './getImportSummary';\nimport processName from './processName';\nimport processIds from './processIds';\n\nexport default function amdIntro ({ name, imports, hasExports, indentStr, absolutePaths, useStrict }) {\n\tlet { ids, names } = getImportSummary({ name, imports, absolutePaths });\n\n\tif ( hasExports ) {\n\t\tids.unshift( 'exports' );\n\t\tnames.unshift( 'exports' );\n\t}\n\n\tlet intro = `\ndefine(${processName(name)}${processIds(ids)}function (${names.join( ', ' ) }) {\n\n`;\n\n\tif ( useStrict ) {\n\t\tintro += `${indentStr}'use strict';\\n\\n`;\n\t}\n\n\treturn intro;\n}","import transformExportDeclaration from './utils/transformExportDeclaration';\nimport packageResult from 'utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\n\nexport default function amd ( mod, options ) {\n\tmod.imports.forEach( x => {\n\t\tmod.body.remove( x.start, x.next );\n\t});\n\n\ttransformExportDeclaration( mod.exports[0], mod.body );\n\n\tlet intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: mod.imports,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tmod.body.trim()\n\t\t.indent()\n\t\t.prepend( intro )\n\t\t.trim()\n\t\t.append( '\\n\\n});' );\n\n\treturn packageResult( mod, mod.body, options, 'toAmd' );\n}\n","import hasOwnProp from 'utils/hasOwnProp';\nimport packageResult from 'utils/packageResult';\nimport { req } from 'utils/mappers';\n\nexport default function cjs ( mod, options ) {\n\tlet seen = {};\n\n\tmod.imports.forEach( x => {\n\t\tif ( !hasOwnProp.call( seen, x.path ) ) {\n\t\t\tlet replacement = x.isEmpty ? `${req(x.path)};` : `var ${x.as} = ${req(x.path)};`;\n\t\t\tmod.body.replace( x.start, x.end, replacement );\n\n\t\t\tseen[ x.path ] = true;\n\t\t} else {\n\t\t\tmod.body.remove( x.start, x.next );\n\t\t}\n\t});\n\n\tlet exportDeclaration = mod.exports[0];\n\n\tif ( exportDeclaration ) {\n\t\tswitch ( exportDeclaration.type ) {\n\t\t\tcase 'namedFunction':\n\t\t\tcase 'namedClass':\n\t\t\t\tmod.body.remove( exportDeclaration.start, exportDeclaration.valueStart );\n\t\t\t\tmod.body.replace( exportDeclaration.end, exportDeclaration.end, `\\nmodule.exports = ${exportDeclaration.node.declaration.id.name};` );\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tmod.body.replace( exportDeclaration.start, exportDeclaration.valueStart, 'module.exports = ' );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tif ( options.useStrict !== false ) {\n\t\tmod.body.prepend( \"'use strict';\\n\\n\" ).trimLines();\n\t}\n\n\treturn packageResult( mod, mod.body, options, 'toCjs' );\n}\n","import { globalify, req } from 'utils/mappers';\nimport processName from '../amd/processName';\nimport processIds from '../amd/processIds';\nimport getImportSummary from '../amd/getImportSummary';\n\nexport default function umdIntro ({ amdName, name, hasExports, imports, absolutePaths, externalDefaults, indentStr, strict, useStrict }) {\n\tconst useStrictPragma = useStrict ? ` 'use strict';` : '';\n\tlet intro;\n\n\tif ( !hasExports && !imports.length ) {\n\t\tintro =\n\t\t\t`(function (factory) {\n\t\t\t\t!(typeof exports === 'object' && typeof module !== 'undefined') &&\n\t\t\t\ttypeof define === 'function' && define.amd ? define(${processName(amdName)}factory) :\n\t\t\t\tfactory()\n\t\t\t}(function () {${useStrictPragma}\n\n\t\t\t`;\n\t}\n\n\telse {\n\t\tlet { ids, paths, names } = getImportSummary({ imports, name: amdName, absolutePaths });\n\n\t\tlet amdExport, cjsExport, globalExport, defaultsBlock;\n\n\t\tif ( strict ) {\n\t\t\tcjsExport = `factory(${( hasExports ? [ 'exports' ] : [] ).concat( paths.map( req ) ).join( ', ' )})`;\n\t\t\tlet globalDeps = ( hasExports ? [ `(global.${name} = {})` ] : [] ).concat( names.map( globalify ) ).join( ', ' );\n\t\t\tglobalExport = `factory(${globalDeps})`;\n\n\t\t\tif ( hasExports ) {\n\t\t\t\tids.unshift( 'exports' );\n\t\t\t\tnames.unshift( 'exports' );\n\t\t\t}\n\n\t\t\tamdExport = `define(${processName(amdName)}${processIds(ids)}factory)`;\n\t\t\tdefaultsBlock = '';\n\t\t\tif ( externalDefaults && externalDefaults.length > 0 ) {\n\t\t\t\tdefaultsBlock = externalDefaults.map( x =>\n\t\t\t\t\t'\\t' + ( x.needsNamed ? `var ${x.name}__default` : x.name ) +\n\t\t\t\t\t\t` = ('default' in ${x.name} ? ${x.name}['default'] : ${x.name});`\n\t\t\t\t).join('\\n') + '\\n\\n';\n\t\t\t}\n\t\t} else {\n\t\t\tamdExport = `define(${processName(amdName)}${processIds(ids)}factory)`;\n\t\t\tcjsExport = ( hasExports ? 'module.exports = ' : '' ) + `factory(${paths.map( req ).join( ', ' )})`;\n\t\t\tglobalExport = ( hasExports ? `global.${name} = ` : '' ) + `factory(${names.map( globalify ).join( ', ' )})`;\n\n\t\t\tdefaultsBlock = '';\n\t\t}\n\n\t\tintro =\n\t\t\t`(function (global, factory) {\n\t\t\t\ttypeof exports === 'object' && typeof module !== 'undefined' ? ${cjsExport} :\n\t\t\t\ttypeof define === 'function' && define.amd ? ${amdExport} :\n\t\t\t\t${globalExport}\n\t\t\t}(this, function (${names.join( ', ' )}) {${useStrictPragma}\n\n\t\t\t${defaultsBlock}`;\n\n\t}\n\n\treturn intro.replace( /^\\t\\t\\t/gm, '' ).replace( /\\t/g, indentStr );\n}","var EsperantoError = function ( message, data ) {\n\tvar prop;\n\n\tthis.message = message;\n\tthis.stack = (new Error()).stack;\n\n\tfor ( prop in data ) {\n\t\tif ( data.hasOwnProperty( prop ) ) {\n\t\t\tthis[ prop ] = data[ prop ];\n\t\t}\n\t}\n};\n\nEsperantoError.prototype = new Error();\nEsperantoError.prototype.constructor = EsperantoError;\nEsperantoError.prototype.name = 'EsperantoError';\n\nexport default EsperantoError;","import EsperantoError from 'utils/EsperantoError';\n\nexport default function requireName ( options ) {\n\tif ( !options.name ) {\n\t\tthrow new EsperantoError( 'You must supply a `name` option for UMD modules', {\n\t\t\tcode: 'MISSING_NAME'\n\t\t});\n\t}\n}","import transformExportDeclaration from './utils/transformExportDeclaration';\nimport packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\n\nexport default function umd ( mod, options ) {\n\trequireName( options );\n\n\tmod.imports.forEach( x => {\n\t\tmod.body.remove( x.start, x.next );\n\t});\n\n\tlet intro = umdIntro({\n\t\thasExports: mod.exports.length > 0,\n\t\timports: mod.imports,\n\t\tamdName: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tname: options.name,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformExportDeclaration( mod.exports[0], mod.body );\n\n\tmod.body.indent().prepend( intro ).trimLines().append( '\\n\\n}));' );\n\n\treturn packageResult( mod, mod.body, options, 'toUmd' );\n}\n","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n","export default function gatherImports ( imports ) {\n\tlet chains = {};\n\tlet identifierReplacements = {};\n\n\timports.forEach( x => {\n\t\tx.specifiers.forEach( s => {\n\t\t\tif ( s.isBatch ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet name = s.as;\n\t\t\tlet replacement = x.name + ( s.isDefault ? `['default']` : `.${s.name}` );\n\n\t\t\tif ( !x.passthrough ) {\n\t\t\t\tidentifierReplacements[ name ] = replacement;\n\t\t\t}\n\n\t\t\tchains[ name ] = replacement;\n\t\t});\n\t});\n\n\treturn [ chains, identifierReplacements ];\n}\n","export default function getExportNames ( exports ) {\n\tvar result = {};\n\n\texports.forEach( x => {\n\t\tif ( x.isDefault ) return;\n\n\t\tif ( x.hasDeclaration ) {\n\t\t\tresult[ x.name ] = x.name;\n\t\t\treturn;\n\t\t}\n\n\t\tx.specifiers.forEach( s => {\n\t\t\tresult[ s.name ] = s.as;\n\t\t});\n\t});\n\n\treturn result;\n}\n","/**\n * Scans an array of imports, and determines which identifiers\n are readonly, and which cannot be assigned to. For example\n you cannot `import foo from 'foo'` then do `foo = 42`, nor\n can you `import * as foo from 'foo'` then do `foo.answer = 42`\n * @param {array} imports - the array of imports\n * @returns {array} [ importedBindings, importedNamespaces ]\n */\nexport default function getReadOnlyIdentifiers ( imports ) {\n\tvar importedBindings = {}, importedNamespaces = {};\n\n\timports.forEach( x => {\n\t\tif ( x.passthrough ) return;\n\n\t\tx.specifiers.forEach( s => {\n\t\t\tif ( s.isBatch ) {\n\t\t\t\timportedNamespaces[ s.as ] = true;\n\t\t\t} else {\n\t\t\t\timportedBindings[ s.as ] = true;\n\t\t\t}\n\t\t});\n\t});\n\n\treturn [ importedBindings, importedNamespaces ];\n}","import hasOwnProp from 'utils/hasOwnProp';\n\nvar bindingMessage = 'Cannot reassign imported binding ',\n\tnamespaceMessage = 'Cannot reassign imported binding of namespace ';\n\nexport default function disallowIllegalReassignment ( node, importedBindings, importedNamespaces, scope ) {\n\tlet assignee, isNamespaceAssignment;\n\n\tif ( node.type === 'AssignmentExpression' ) {\n\t\tassignee = node.left;\n\t} else if ( node.type === 'UpdateExpression' ) {\n\t\tassignee = node.argument;\n\t} else {\n\t\treturn; // not an assignment\n\t}\n\n\tif ( assignee.type === 'MemberExpression' ) {\n\t\tassignee = assignee.object;\n\t\tisNamespaceAssignment = true;\n\t}\n\n\tif ( assignee.type !== 'Identifier' ) {\n\t\treturn; // not assigning to a binding\n\t}\n\n\tlet name = assignee.name;\n\n\tif ( hasOwnProp.call( isNamespaceAssignment ? importedNamespaces : importedBindings, name ) && !scope.contains( name ) ) {\n\t\tthrow new Error( ( isNamespaceAssignment ? namespaceMessage : bindingMessage ) + '`' + name + '`' );\n\t}\n}\n","import hasOwnProp from 'utils/hasOwnProp';\n\nexport default function replaceIdentifiers ( body, node, identifierReplacements, scope ) {\n\tlet name = node.name;\n\tlet replacement = hasOwnProp.call( identifierReplacements, name ) && identifierReplacements[ name ];\n\n\t// TODO unchanged identifiers shouldn't have got this far -\n\t// remove the `replacement !== name` safeguard once that's the case\n\tif ( replacement && replacement !== name && !scope.contains( name, true ) ) {\n\t\t// rewrite\n\t\tbody.replace( node.start, node.end, replacement );\n\t}\n}\n","import hasOwnProp from 'utils/hasOwnProp';\n\nexport default function rewriteExportAssignments ( body, node, parent, exports, scope, capturedUpdates ) {\n\tlet assignee;\n\n\tif ( node.type === 'AssignmentExpression' ) {\n\t\tassignee = node.left;\n\t} else if ( node.type === 'UpdateExpression' ) {\n\t\tassignee = node.argument;\n\t} else {\n\t\treturn; // not an assignment\n\t}\n\n\tif ( assignee.type !== 'Identifier' ) {\n\t\treturn;\n\t}\n\n\tlet name = assignee.name;\n\n\tif ( scope.contains( name, true ) ) {\n\t\treturn; // shadows an export\n\t}\n\n\tif ( exports && hasOwnProp.call( exports, name ) ) {\n\t\tlet exportAs = exports[ name ];\n\n\t\tif ( !!capturedUpdates ) {\n\t\t\tcapturedUpdates.push({ name, exportAs });\n\t\t\treturn;\n\t\t}\n\n\t\t// special case - increment/decrement operators\n\t\tif ( node.operator === '++' || node.operator === '--' ) {\n\t\t\tlet prefix = ``;\n\t\t\tlet suffix = `, exports.${exportAs} = ${name}`;\n\t\t\tif ( parent.type !== 'ExpressionStatement' ) {\n\t\t\t\tif ( !node.prefix ) {\n\t\t\t\t\tsuffix += `, ${name} ${node.operator === '++' ? '-' : '+'} 1`;\n\t\t\t\t}\n\t\t\t\tprefix += `( `;\n\t\t\t\tsuffix += ` )`;\n\t\t\t}\n\t\t\tbody.insert( node.start, prefix );\n\t\t\tbody.insert( node.end, suffix );\n\t\t} else {\n\t\t\tbody.insert( node.start, `exports.${exportAs} = ` );\n\t\t}\n\t}\n}","import walk from './walk';\nimport disallowIllegalReassignment from './disallowIllegalReassignment';\nimport replaceIdentifiers from './replaceIdentifiers';\nimport rewriteExportAssignments from './rewriteExportAssignments';\n\nexport default function traverseAst ( ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames ) {\n\tlet scope = ast._scope;\n\tlet blockScope = ast._blockScope;\n\tlet capturedUpdates = null;\n\tlet previousCapturedUpdates = null;\n\n\twalk( ast, {\n\t\tenter ( node, parent ) {\n\t\t\t// we're only interested in references, not property names etc\n\t\t\tif ( node._skip ) return this.skip();\n\n\t\t\tif ( node._scope ) {\n\t\t\t\tscope = node._scope;\n\t\t\t} else if ( node._blockScope ) {\n\t\t\t\tblockScope = node._blockScope;\n\t\t\t}\n\n\t\t\t// Special case: if you have a variable declaration that updates existing\n\t\t\t// bindings as a side-effect, e.g. `var a = b++`, where `b` is an exported\n\t\t\t// value, we can't simply append `exports.b = b` to the update (as we\n\t\t\t// normally would) because that would be syntactically invalid. Instead,\n\t\t\t// we capture the change and update the export (and any others) after the\n\t\t\t// variable declaration\n\t\t\tif ( node.type === 'VariableDeclaration' ) {\n\t\t\t\tpreviousCapturedUpdates = capturedUpdates;\n\t\t\t\tcapturedUpdates = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tdisallowIllegalReassignment( node, importedBindings, importedNamespaces, scope );\n\n\t\t\t// Rewrite assignments to exports inside functions, to keep bindings live.\n\t\t\t// This call may mutate `capturedUpdates`, which is used elsewhere\n\t\t\tif ( scope !== ast._scope ) {\n\t\t\t\trewriteExportAssignments( body, node, parent, exportNames, scope, capturedUpdates );\n\t\t\t}\n\n\t\t\tif ( node.type === 'Identifier' && parent.type !== 'FunctionExpression' ) {\n\t\t\t\treplaceIdentifiers( body, node, identifierReplacements, scope );\n\t\t\t}\n\n\t\t\t// Replace top-level this with undefined ES6 8.1.1.5.4\n\t\t\tif ( node.type === 'ThisExpression' && node._topLevel ) {\n\t\t\t\tbody.replace( node.start, node.end, 'undefined' );\n\t\t\t}\n\t\t},\n\n\t\tleave ( node ) {\n\t\t\t// Special case - see above\n\t\t\tif ( node.type === 'VariableDeclaration' ) {\n\t\t\t\tif ( capturedUpdates.length ) {\n\t\t\t\t\tbody.insert( node.end, capturedUpdates.map( exportCapturedUpdate ).join( '' ) );\n\t\t\t\t}\n\n\t\t\t\tcapturedUpdates = previousCapturedUpdates;\n\t\t\t}\n\n\t\t\tif ( node._scope ) {\n\t\t\t\tscope = scope.parent;\n\t\t\t} else if ( node._blockScope ) {\n\t\t\t\tblockScope = blockScope.parent;\n\t\t\t}\n\t\t}\n\t});\n}\n\nfunction exportCapturedUpdate ( c ) {\n\treturn ` exports.${c.exportAs} = ${c.name};`;\n}\n","import gatherImports from './gatherImports';\nimport getExportNames from './getExportNames';\nimport getReadOnlyIdentifiers from 'utils/getReadOnlyIdentifiers';\nimport traverseAst from 'utils/ast/traverse';\nimport hasOwnProp from 'utils/hasOwnProp';\n\nexport default function transformBody ( mod, body, options ) {\n\tlet [ chains, identifierReplacements ] = gatherImports( mod.imports );\n\tlet exportNames = getExportNames( mod.exports );\n\n\tlet [ importedBindings, importedNamespaces ] = getReadOnlyIdentifiers( mod.imports );\n\n\t// ensure no conflict with `exports`\n\tidentifierReplacements.exports = deconflict( 'exports', mod.ast._declared );\n\n\ttraverseAst( mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames );\n\n\t// Remove import statements from the body of the module\n\tmod.imports.forEach( x => {\n\t\tbody.remove( x.start, x.next );\n\t});\n\n\t// Prepend require() statements (CommonJS output only)\n\tif ( options.header ) {\n\t\tbody.prepend( options.header + '\\n\\n' );\n\t}\n\n\t// Remove export statements (but keep declarations)\n\tmod.exports.forEach( x => {\n\t\tif ( x.isDefault ) {\n\t\t\tif ( /^named/.test( x.type ) ) {\n\t\t\t\t// export default function answer () { return 42; }\n\t\t\t\tbody.remove( x.start, x.valueStart );\n\t\t\t\tbody.insert( x.end, `\\nexports['default'] = ${x.name};` );\n\t\t\t} else {\n\t\t\t\t// everything else\n\t\t\t\tbody.replace( x.start, x.valueStart, 'exports[\\'default\\'] = ' );\n\t\t\t}\n\t\t}\n\n\t\telse {\n\t\t\tswitch ( x.type ) {\n\t\t\t\tcase 'varDeclaration': // export var answer = 42; (or let)\n\t\t\t\tcase 'namedFunction': // export function answer () {...}\n\t\t\t\tcase 'namedClass': // export class answer {...}\n\t\t\t\t\tbody.remove( x.start, x.valueStart );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'named': // export { foo, bar };\n\t\t\t\t\tbody.remove( x.start, x.next );\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tbody.replace( x.start, x.valueStart, 'exports[\\'default\\'] = ' );\n\t\t\t}\n\t\t}\n\t});\n\n\t// Append export block (this is the same for all module types, unlike imports)\n\tlet earlyExports = [];\n\tlet lateExports = [];\n\n\tObject.keys( exportNames ).forEach( name => {\n\t\tvar exportAs = exportNames[ name ];\n\n\t\tif ( chains.hasOwnProperty( name ) ) {\n\t\t\t// special case - a binding from another module\n\t\t\tif ( !options._evilES3SafeReExports ) {\n\t\t\t\tearlyExports.push( `Object.defineProperty(exports, '${exportAs}', { enumerable: true, get: function () { return ${chains[name]}; }});` );\n\t\t\t} else {\n\t\t\t\tlateExports.push( `exports.${exportAs} = ${chains[name]};` );\n\t\t\t}\n\t\t} else if ( ~mod.ast._topLevelFunctionNames.indexOf( name ) ) {\n\t\t\t// functions should be exported early, in\n\t\t\t// case of cyclic dependencies\n\t\t\tearlyExports.push( `exports.${exportAs} = ${name};` );\n\t\t} else {\n\t\t\tlateExports.push( `exports.${exportAs} = ${name};` );\n\t\t}\n\t});\n\n\t// Function exports should be exported immediately after 'use strict'\n\tif ( earlyExports.length ) {\n\t\tbody.trim().prepend( earlyExports.join( '\\n' ) + '\\n\\n' );\n\t}\n\n\t// Everything else should be exported at the end\n\tif ( lateExports.length ) {\n\t\tbody.trim().append( '\\n\\n' + lateExports.join( '\\n' ) );\n\t}\n\n\tif ( options.intro && options.outro ) {\n\t\tbody.indent().prepend( options.intro ).trimLines().append( options.outro );\n\t}\n}\n\nfunction deconflict ( name, declared ) {\n\twhile ( hasOwnProp.call( declared, name ) ) {\n\t\tname = '_' + name;\n\t}\n\n\treturn name;\n}\n","import packageResult from '../../../utils/packageResult';\nimport transformBody from './utils/transformBody';\nimport amdIntro from '../../../utils/amd/amdIntro';\n\nexport default function amd ( mod, options ) {\n\tlet intro = amdIntro({\n\t\tname: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\timports: mod.imports,\n\t\tindentStr: mod.body.getIndentString(),\n\t\thasExports: mod.exports.length,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformBody( mod, mod.body, {\n\t\tintro,\n\t\toutro: '\\n\\n});',\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\treturn packageResult( mod, mod.body, options, 'toAmd' );\n}\n","import packageResult from 'utils/packageResult';\nimport hasOwnProp from 'utils/hasOwnProp';\nimport transformBody from './utils/transformBody';\nimport { req } from 'utils/mappers';\n\nexport default function cjs ( mod, options ) {\n\tlet seen = {};\n\n\t// Create block of require statements\n\tlet importBlock = mod.imports.map( x => {\n\t\tif ( !hasOwnProp.call( seen, x.path ) ) {\n\t\t\tseen[ x.path ] = true;\n\n\t\t\tif ( x.isEmpty ) {\n\t\t\t\treturn `${req(x.path)};`;\n\t\t\t}\n\n\t\t\treturn `var ${x.name} = ${req(x.path)};`;\n\t\t}\n\t}).filter( Boolean ).join( '\\n' );\n\n\ttransformBody( mod, mod.body, {\n\t\theader: importBlock,\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\tif ( options.useStrict !== false ) {\n\t\tmod.body.prepend( \"'use strict';\\n\\n\" ).trimLines();\n\t}\n\n\treturn packageResult( mod, mod.body, options, 'toCjs' );\n}\n","import packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nimport transformBody from './utils/transformBody';\n\nexport default function umd ( mod, options ) {\n\trequireName( options );\n\n\tlet intro = umdIntro({\n\t\thasExports: mod.exports.length > 0,\n\t\timports: mod.imports,\n\t\tamdName: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tname: options.name,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tstrict: true,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformBody( mod, mod.body, {\n\t\tintro: intro,\n\t\toutro: '\\n\\n}));',\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\treturn packageResult( mod, mod.body, options, 'toUmd' );\n}\n","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n","// TODO rewrite with named imports/exports\nimport defaultsMode from './defaultsMode';\nimport strictMode from './strictMode';\n\nexport default {\n\tdefaultsMode: defaultsMode,\n\tstrictMode: strictMode\n};\n","import packageResult from '../../../utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\n\nexport default function amd ( bundle, options ) {\n\tlet defaultName = bundle.entryModule.identifierReplacements.default;\n\tif ( defaultName ) {\n\t\tbundle.body.append( `\\n\\nreturn ${defaultName};` );\n\t}\n\n\tlet intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: bundle.externalModules,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tbundle.body.indent().prepend( intro ).trimLines().append( '\\n\\n});' );\n\treturn packageResult( bundle, bundle.body, options, 'toAmd', true );\n}","import packageResult from 'utils/packageResult';\nimport { req } from 'utils/mappers';\n\nexport default function cjs ( bundle, options ) {\n\tlet importBlock = bundle.externalModules.map( x => {\n\t\treturn `var ${x.name} = ${req(x.id)};`;\n\t}).join( '\\n' );\n\n\tif ( importBlock ) {\n\t\tbundle.body.prepend( importBlock + '\\n\\n' );\n\t}\n\n\tlet defaultName = bundle.entryModule.identifierReplacements.default;\n\tif ( defaultName ) {\n\t\tbundle.body.append( `\\n\\nmodule.exports = ${defaultName};` );\n\t}\n\n\tif ( options.useStrict !== false ) {\n\t\tbundle.body.prepend(\"'use strict';\\n\\n\").trimLines();\n\t}\n\n\treturn packageResult( bundle, bundle.body, options, 'toCjs', true );\n}\n","import packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\n\nexport default function umd ( bundle, options ) {\n\trequireName( options );\n\n\tlet entry = bundle.entryModule;\n\n\tlet intro = umdIntro({\n\t\thasExports: entry.exports.length > 0,\n\t\timports: bundle.externalModules,\n\t\tamdName: options.amdName,\n\t\tname: options.name,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tif ( entry.defaultExport ) {\n\t\tbundle.body.append( `\\n\\nreturn ${entry.identifierReplacements.default};` );\n\t}\n\n\tbundle.body.indent().prepend( intro ).trimLines().append('\\n\\n}));');\n\n\treturn packageResult( bundle, bundle.body, options, 'toUmd', true );\n}\n","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n","export default function getExportBlock ( entry ) {\n\tlet name = entry.identifierReplacements.default;\n\treturn `exports['default'] = ${name};`;\n}\n","import packageResult from '../../../utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\nimport getExportBlock from './utils/getExportBlock';\n\nexport default function amd ( bundle, options ) {\n\tlet externalDefaults = bundle.externalModules.filter( needsDefault );\n\tlet entry = bundle.entryModule;\n\n\tif ( externalDefaults.length ) {\n\t\tlet defaultsBlock = externalDefaults.map( x => {\n\t\t\t// Case 1: default is used, and named is not\n\t\t\tif ( !x.needsNamed ) {\n\t\t\t\treturn `${x.name} = ('default' in ${x.name} ? ${x.name}['default'] : ${x.name});`;\n\t\t\t}\n\n\t\t\t// Case 2: both default and named are used\n\t\t\treturn `var ${x.name}__default = ('default' in ${x.name} ? ${x.name}['default'] : ${x.name});`;\n\t\t}).join( '\\n' );\n\n\t\tbundle.body.prepend( defaultsBlock + '\\n\\n' );\n\t}\n\n\tif ( entry.defaultExport ) {\n\t\tbundle.body.append( '\\n\\n' + getExportBlock( entry ) );\n\t}\n\n\tlet intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: bundle.externalModules,\n\t\thasExports: entry.exports.length,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tbundle.body.indent().prepend( intro ).trimLines().append( '\\n\\n});' );\n\treturn packageResult( bundle, bundle.body, options, 'toAmd', true );\n}\n\nfunction needsDefault ( externalModule ) {\n\treturn externalModule.needsDefault;\n}\n","import packageResult from 'utils/packageResult';\nimport getExportBlock from './utils/getExportBlock';\nimport { req } from 'utils/mappers';\n\nexport default function cjs ( bundle, options ) {\n\tlet entry = bundle.entryModule;\n\n\tlet importBlock = bundle.externalModules.map( x => {\n\t\tlet statement = `var ${x.name} = ${req(x.id)};`;\n\n\t\tif ( x.needsDefault ) {\n\t\t\tstatement += '\\n' +\n\t\t\t\t( x.needsNamed ? `var ${x.name}__default` : x.name ) +\n\t\t\t\t` = ('default' in ${x.name} ? ${x.name}['default'] : ${x.name});`;\n\t\t}\n\n\t\treturn statement;\n\t}).join( '\\n' );\n\n\tif ( importBlock ) {\n\t\tbundle.body.prepend( importBlock + '\\n\\n' );\n\t}\n\n\tif ( entry.defaultExport ) {\n\t\tbundle.body.append( '\\n\\n' + getExportBlock( entry ) );\n\t}\n\n\tif ( options.useStrict !== false ) {\n\t\tbundle.body.prepend(\"'use strict';\\n\\n\").trimLines();\n\t}\n\n\treturn packageResult( bundle, bundle.body, options, 'toCjs', true );\n}\n","import umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nimport packageResult from 'utils/packageResult';\nimport getExportBlock from './utils/getExportBlock';\n\nexport default function umd ( bundle, options ) {\n\trequireName( options );\n\n\tlet entry = bundle.entryModule;\n\n\tlet intro = umdIntro({\n\t\thasExports: entry.exports.length > 0,\n\t\timports: bundle.externalModules,\n\t\texternalDefaults: bundle.externalModules.filter( needsDefault ),\n\t\tamdName: options.amdName,\n\t\tname: options.name,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tstrict: true,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tif ( entry.defaultExport ) {\n\t\tbundle.body.append( '\\n\\n' + getExportBlock( entry ) );\n\t}\n\n\tbundle.body.indent().prepend( intro ).trimLines().append('\\n\\n}));');\n\n\treturn packageResult( bundle, bundle.body, options, 'toUmd', true );\n}\n\nfunction needsDefault ( externalModule ) {\n\treturn externalModule.needsDefault;\n}\n","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n","// TODO rewrite with named imports/exports\nimport defaultsMode from './defaultsMode';\nimport strictMode from './strictMode';\n\nexport default {\n\tdefaultsMode: defaultsMode,\n\tstrictMode: strictMode\n};\n","import packageResult from 'utils/packageResult';\n\nexport default function concat ( bundle, options ) {\n\t// This bundle must be self-contained - no imports or exports\n\tif ( bundle.externalModules.length || bundle.entryModule.exports.length ) {\n\t\tthrow new Error( `bundle.concat() can only be used with bundles that have no imports/exports (imports: [${bundle.externalModules.map(x=>x.id).join(', ')}], exports: [${bundle.entryModule.exports.join(', ')}])` );\n\t}\n\n\t// TODO test these options\n\tlet intro = 'intro' in options ? options.intro : `(function () { 'use strict';\\n\\n`;\n\tlet outro = 'outro' in options ? options.outro : '\\n\\n})();';\n\tlet indent;\n\n\tif ( !( 'indent' in options ) || options.indent === true ) {\n\t\tindent = bundle.body.getIndentString();\n\t} else {\n\t\tindent = options.indent || '';\n\t}\n\n\tbundle.body.trimLines().indent( indent ).prepend( intro ).append( outro );\n\n\treturn packageResult( bundle, bundle.body, options, 'toString', true );\n}\n","import hasNamedImports from 'utils/hasNamedImports';\nimport hasNamedExports from 'utils/hasNamedExports';\nimport getStandaloneModule from 'standalone/getModule';\nimport getBundle from 'bundler/getBundle';\nimport moduleBuilders from 'standalone/builders';\nimport bundleBuilders from 'bundler/builders';\nimport concat from 'bundler/builders/concat';\nimport { getName } from 'utils/mappers';\n\nlet deprecateMessage = 'options.defaultOnly has been deprecated, and is now standard behaviour. To use named imports/exports, pass `strict: true`.';\nlet alreadyWarned = false;\n\nfunction transpileMethod ( format ) {\n\treturn function ( source, options = {} ) {\n\t\tlet mod = getStandaloneModule({\n\t\t\tsource,\n\t\t\tgetModuleName: options.getModuleName,\n\t\t\tstrict: options.strict\n\t\t});\n\n\t\tif ( 'defaultOnly' in options && !alreadyWarned ) {\n\t\t\t// TODO link to a wiki page explaining this, or something\n\t\t\tconsole.log( deprecateMessage );\n\t\t\talreadyWarned = true;\n\t\t}\n\n\t\tif ( options.absolutePaths && !options.amdName ) {\n\t\t\tthrow new Error( 'You must specify an `amdName` in order to use the `absolutePaths` option' );\n\t\t}\n\n\t\tlet builder;\n\n\t\tif ( !options.strict ) {\n\t\t\t// ensure there are no named imports/exports. TODO link to a wiki page...\n\t\t\tif ( hasNamedImports( mod ) || hasNamedExports( mod ) ) {\n\t\t\t\tthrow new Error( 'You must be in strict mode (pass `strict: true`) to use named imports or exports' );\n\t\t\t}\n\n\t\t\tbuilder = moduleBuilders.defaultsMode[ format ];\n\t\t} else {\n\t\t\tbuilder = moduleBuilders.strictMode[ format ];\n\t\t}\n\n\t\treturn builder( mod, options );\n\t};\n}\n\nexport default {\n\ttoAmd: transpileMethod( 'amd' ),\n\ttoCjs: transpileMethod( 'cjs' ),\n\ttoUmd: transpileMethod( 'umd' ),\n\n\tbundle: function ( options ) {\n\t\treturn getBundle( options ).then( function ( bundle ) {\n\t\t\treturn {\n\t\t\t\timports: bundle.externalModules.map( mod => mod.id ),\n\t\t\t\texports: flattenExports( bundle.entryModule.exports ),\n\n\t\t\t\ttoAmd: options => transpile( 'amd', options ),\n\t\t\t\ttoCjs: options => transpile( 'cjs', options ),\n\t\t\t\ttoUmd: options => transpile( 'umd', options ),\n\n\t\t\t\tconcat: options => concat( bundle, options || {} )\n\t\t\t};\n\n\t\t\tfunction transpile ( format, options = {} ) {\n\t\t\t\tif ( 'defaultOnly' in options && !alreadyWarned ) {\n\t\t\t\t\t// TODO link to a wiki page explaining this, or something\n\t\t\t\t\tconsole.log( deprecateMessage );\n\t\t\t\t\talreadyWarned = true;\n\t\t\t\t}\n\n\t\t\t\tlet builder;\n\n\t\t\t\tif ( !options.strict ) {\n\t\t\t\t\t// ensure there are no named imports/exports\n\t\t\t\t\tif ( hasNamedExports( bundle.entryModule ) ) {\n\t\t\t\t\t\tthrow new Error( 'Entry module can only have named exports in strict mode (pass `strict: true`)' );\n\t\t\t\t\t}\n\n\t\t\t\t\tbundle.modules.forEach( mod => {\n\t\t\t\t\t\tmod.imports.forEach( x => {\n\t\t\t\t\t\t\tif ( x.module.isExternal && ( !x.isDefault && !x.isBatch ) ) {\n\t\t\t\t\t\t\t\tthrow new Error( 'You can only have named external imports in strict mode (pass `strict: true`)' );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\n\t\t\t\t\tbuilder = bundleBuilders.defaultsMode[ format ];\n\t\t\t\t} else {\n\t\t\t\t\tbuilder = bundleBuilders.strictMode[ format ];\n\t\t\t\t}\n\n\t\t\t\treturn builder( bundle, options );\n\t\t\t}\n\t\t});\n\t}\n};\n\nfunction flattenExports ( exports ) {\n\tlet flattened = [];\n\n\texports.forEach( x => {\n\t\tif ( x.isDefault ) {\n\t\t\tflattened.push( 'default' );\n\t\t}\n\n\t\telse if ( x.name ) {\n\t\t\tflattened.push( x.name );\n\t\t}\n\n\t\telse if ( x.specifiers ) {\n\t\t\tflattened.push.apply( flattened, x.specifiers.map( getName ) );\n\t\t}\n\t});\n\n\treturn flattened;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"esperanto.browser.js","sources":["../../01-babel/1/utils/hasNamedImports.js","../../01-babel/1/utils/hasNamedExports.js","../../../node_modules/magic-string/src/utils/btoa.js","../../../node_modules/magic-string/src/SourceMap/index.js","../../../node_modules/magic-string/src/utils/getRelativePath.js","../../../node_modules/magic-string/src/Bundle/index.js","../../../node_modules/magic-string/src/MagicString/guessIndent.js","../../../node_modules/magic-string/node_modules/vlq/src/vlq.js","../../../node_modules/magic-string/src/utils/encode.js","../../../node_modules/magic-string/src/MagicString/encodeMappings.js","../../../node_modules/magic-string/src/MagicString/index.js","../../01-babel/1/utils/ast/walk.js","../../01-babel/1/utils/mappers.js","../../01-babel/1/utils/ast/annotate.js","../../01-babel/1/utils/ast/findImportsAndExports.js","../../01-babel/1/utils/hasOwnProp.js","../../01-babel/1/utils/ast/getUnscopedNames.js","../../01-babel/1/utils/disallowConflictingImports.js","../../01-babel/1/utils/sanitize.js","../../01-babel/1/standalone/getModule.js","../../01-babel/1/standalone/builders/defaultsMode/utils/transformExportDeclaration.js","../../01-babel/1/utils/packageResult.js","../../01-babel/1/utils/resolveId.js","../../01-babel/1/utils/amd/getImportSummary.js","../../01-babel/1/utils/amd/processName.js","../../01-babel/1/utils/amd/processIds.js","../../01-babel/1/utils/amd/amdIntro.js","../../01-babel/1/standalone/builders/defaultsMode/amd.js","../../01-babel/1/standalone/builders/defaultsMode/cjs.js","../../01-babel/1/utils/umd/umdIntro.js","../../01-babel/1/utils/EsperantoError.js","../../01-babel/1/utils/umd/requireName.js","../../01-babel/1/standalone/builders/defaultsMode/umd.js","../../01-babel/1/standalone/builders/defaultsMode/index.js","../../01-babel/1/standalone/builders/strictMode/utils/gatherImports.js","../../01-babel/1/standalone/builders/strictMode/utils/getExportNames.js","../../01-babel/1/utils/getReadOnlyIdentifiers.js","../../01-babel/1/utils/ast/disallowIllegalReassignment.js","../../01-babel/1/utils/ast/replaceIdentifiers.js","../../01-babel/1/utils/ast/rewriteExportAssignments.js","../../01-babel/1/utils/ast/traverse.js","../../01-babel/1/standalone/builders/strictMode/utils/transformBody.js","../../01-babel/1/standalone/builders/strictMode/amd.js","../../01-babel/1/standalone/builders/strictMode/cjs.js","../../01-babel/1/standalone/builders/strictMode/umd.js","../../01-babel/1/standalone/builders/strictMode/index.js","../../01-babel/1/standalone/builders/index.js","../../01-babel/1/bundler/builders/defaultsMode/amd.js","../../01-babel/1/bundler/builders/defaultsMode/cjs.js","../../01-babel/1/bundler/builders/defaultsMode/umd.js","../../01-babel/1/bundler/builders/defaultsMode/index.js","../../01-babel/1/bundler/builders/strictMode/utils/getExportBlock.js","../../01-babel/1/bundler/builders/strictMode/amd.js","../../01-babel/1/bundler/builders/strictMode/cjs.js","../../01-babel/1/bundler/builders/strictMode/umd.js","../../01-babel/1/bundler/builders/strictMode/index.js","../../01-babel/1/bundler/builders/index.js","../../01-babel/1/bundler/builders/concat.js","../../01-babel/1/esperanto.js"],"sourcesContent":["export default hasNamedImports;\n\nfunction hasNamedImports(mod) {\n\tvar i = mod.imports.length;\n\n\twhile (i--) {\n\t\tif (mod.imports[i].isNamed) {\n\t\t\treturn true;\n\t\t}\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/hasNamedImports.js.01-babel.map","export default hasNamedExports;\n\nfunction hasNamedExports(mod) {\n\tvar i = mod.exports.length;\n\n\twhile (i--) {\n\t\tif (!mod.exports[i].isDefault) {\n\t\t\treturn true;\n\t\t}\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/hasNamedExports.js.01-babel.map","var _btoa;\n\nif ( typeof window !== 'undefined' && typeof window.btoa === 'function' ) {\n\t_btoa = window.btoa;\n} else if ( typeof Buffer === 'function' ) {\n\t_btoa = function ( str ) {\n\t\treturn new Buffer( str ).toString( 'base64' );\n\t};\n} else {\n\tthrow new Error( 'Unsupported environment: `window.btoa` or `Buffer` should be supported.' );\n}\n\nexport default _btoa;","import btoa from '../utils/btoa';\n\nvar SourceMap = function ( properties ) {\n\tthis.version = 3;\n\n\tthis.file = properties.file;\n\tthis.sources = properties.sources;\n\tthis.sourcesContent = properties.sourcesContent;\n\tthis.names = properties.names;\n\tthis.mappings = properties.mappings;\n};\n\nSourceMap.prototype = {\n\ttoString: function () {\n\t\treturn JSON.stringify( this );\n\t},\n\n\ttoUrl: function () {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa( this.toString() );\n\t}\n};\n\nexport default SourceMap;","export default function getRelativePath ( from, to ) {\n\tvar fromParts, toParts, i;\n\n\tfromParts = from.split( /[\\/\\\\]/ );\n\ttoParts = to.split( /[\\/\\\\]/ );\n\n\tfromParts.pop(); // get dirname\n\n\twhile ( fromParts[0] === toParts[0] ) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif ( fromParts.length ) {\n\t\ti = fromParts.length;\n\t\twhile ( i-- ) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat( toParts ).join( '/' );\n}\n","import SourceMap from '../SourceMap';\nimport getRelativePath from '../utils/getRelativePath';\n\nvar Bundle = function ( options ) {\n\toptions = options || {};\n\n\tthis.intro = options.intro || '';\n\tthis.outro = options.outro || '';\n\tthis.separator = 'separator' in options ? options.separator : '\\n';\n\n\tthis.sources = [];\n};\n\nBundle.prototype = {\n\taddSource: function ( source ) {\n\t\tif ( typeof source !== 'object' || !source.content ) {\n\t\t\tthrow new Error( 'bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`' );\n\t\t}\n\n\t\tthis.sources.push( source );\n\t\treturn this;\n\t},\n\n\tappend: function ( str ) {\n\t\tthis.outro += str;\n\t\treturn this;\n\t},\n\n\tclone: function () {\n\t\tvar bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\toutro: this.outro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone()\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t},\n\n\tgenerateMap: function ( options ) {\n\t\tvar offsets = {}, encoded, encodingSeparator;\n\n\t\tencodingSeparator = getSemis( this.separator );\n\n\t\tencoded = (\n\t\t\tgetSemis( this.intro ) +\n\t\t\tthis.sources.map( function ( source, sourceIndex) {\n\t\t\t\treturn source.content.getMappings( options.hires, sourceIndex, offsets );\n\t\t\t}).join( encodingSeparator ) +\n\t\t\tgetSemis( this.outro )\n\t\t);\n\n\t\treturn new SourceMap({\n\t\t\tfile: ( options.file ? options.file.split( /[\\/\\\\]/ ).pop() : null ),\n\t\t\tsources: this.sources.map( function ( source ) {\n\t\t\t\treturn options.file ? getRelativePath( options.file, source.filename ) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.sources.map( function ( source ) {\n\t\t\t\treturn options.includeContent ? source.content.original : null;\n\t\t\t}),\n\t\t\tnames: [],\n\t\t\tmappings: encoded\n\t\t});\n\t},\n\n\tgetIndentString: function () {\n\t\tvar indentStringCounts = {};\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tvar indentStr = source.content.indentStr;\n\n\t\t\tif ( indentStr === null ) return;\n\n\t\t\tif ( !indentStringCounts[ indentStr ] ) indentStringCounts[ indentStr ] = 0;\n\t\t\tindentStringCounts[ indentStr ] += 1;\n\t\t});\n\n\t\treturn ( Object.keys( indentStringCounts ).sort( function ( a, b ) {\n\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t})[0] ) || '\\t';\n\t},\n\n\tindent: function ( indentStr ) {\n\t\tif ( !indentStr ) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tthis.sources.forEach( function ( source ) {\n\t\t\tsource.content.indent( indentStr, { exclude: source.indentExclusionRanges });\n\t\t});\n\n\t\tthis.intro = this.intro.replace( /^[^\\n]/gm, indentStr + '$&' );\n\t\tthis.outro = this.outro.replace( /^[^\\n]/gm, indentStr + '$&' );\n\n\t\treturn this;\n\t},\n\n\tprepend: function ( str ) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t},\n\n\ttoString: function () {\n\t\treturn this.intro + this.sources.map( stringify ).join( this.separator ) + this.outro;\n\t},\n\n\ttrimLines: function () {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t},\n\n\ttrim: function (charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t},\n\n\ttrimStart: function (charType) {\n\t\tvar rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace( rx, '' );\n\n\t\tif ( !this.intro ) {\n\t\t\tvar source;\n\t\t\tvar i = 0;\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i];\n\n\t\t\t\tif ( !source ) {\n\t\t\t\t\tthis.outro = this.outro.replace( rx, '' );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tsource.content.trimStart();\n\t\t\t\ti += 1;\n\t\t\t} while ( source.content.str === '' );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\ttrimEnd: function(charType) {\n\t\tvar rx = new RegExp((charType || '\\\\s') + '+$');\n\t\tthis.outro = this.outro.replace( rx, '' );\n\n\t\tif ( !this.outro ) {\n\t\t\tvar source;\n\t\t\tvar i = this.sources.length - 1;\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i];\n\n\t\t\t\tif ( !source ) {\n\t\t\t\t\tthis.intro = this.intro.replace( rx, '' );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tsource.content.trimEnd(charType);\n\t\t\t\ti -= 1;\n\t\t\t} while ( source.content.str === '' );\n\t\t}\n\n\t\treturn this;\n\t}\n};\n\nexport default Bundle;\n\nfunction stringify ( source ) {\n\treturn source.content.toString();\n}\n\nfunction getSemis ( str ) {\n\treturn new Array( str.split( '\\n' ).length ).join( ';' );\n}\n","export default function guessIndent ( code ) {\n\tvar lines, tabbed, spaced, min;\n\n\tlines = code.split( '\\n' );\n\n\ttabbed = lines.filter( function ( line ) {\n\t\treturn /^\\t+/.test( line );\n\t});\n\n\tspaced = lines.filter( function ( line ) {\n\t\treturn /^ {2,}/.test( line );\n\t});\n\n\tif ( tabbed.length === 0 && spaced.length === 0 ) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif ( tabbed.length >= spaced.length ) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tmin = spaced.reduce( function ( previous, current ) {\n\t\tvar numSpaces = /^ +/.exec( current )[0].length;\n\t\treturn Math.min( numSpaces, previous );\n\t}, Infinity );\n\n\treturn new Array( min + 1 ).join( ' ' );\n}\n","var charToInteger = {};\nvar integerToChar = {};\n\n'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='.split( '' ).forEach( function ( char, i ) {\n\tcharToInteger[ char ] = i;\n\tintegerToChar[ i ] = char;\n});\n\nexport function decode ( string ) {\n\tvar result = [],\n\t\tlen = string.length,\n\t\ti,\n\t\thasContinuationBit,\n\t\tshift = 0,\n\t\tvalue = 0,\n\t\tinteger,\n\t\tshouldNegate;\n\n\tfor ( i = 0; i < len; i += 1 ) {\n\t\tinteger = charToInteger[ string[i] ];\n\n\t\tif ( integer === undefined ) {\n\t\t\tthrow new Error( 'Invalid character (' + string[i] + ')' );\n\t\t}\n\n\t\thasContinuationBit = integer & 32;\n\n\t\tinteger &= 31;\n\t\tvalue += integer << shift;\n\n\t\tif ( hasContinuationBit ) {\n\t\t\tshift += 5;\n\t\t} else {\n\t\t\tshouldNegate = value & 1;\n\t\t\tvalue >>= 1;\n\n\t\t\tresult.push( shouldNegate ? -value : value );\n\n\t\t\t// reset\n\t\t\tvalue = shift = 0;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function encode ( value ) {\n\tvar result, i;\n\n\tif ( typeof value === 'number' ) {\n\t\tresult = encodeInteger( value );\n\t} else {\n\t\tresult = '';\n\t\tfor ( i = 0; i < value.length; i += 1 ) {\n\t\t\tresult += encodeInteger( value[i] );\n\t\t}\n\t}\n\n\treturn result;\n}\n\nfunction encodeInteger ( num ) {\n\tvar result = '', clamped;\n\n\tif ( num < 0 ) {\n\t\tnum = ( -num << 1 ) | 1;\n\t} else {\n\t\tnum <<= 1;\n\t}\n\n\tdo {\n\t\tclamped = num & 31;\n\t\tnum >>= 5;\n\n\t\tif ( num > 0 ) {\n\t\t\tclamped |= 32;\n\t\t}\n\n\t\tresult += integerToChar[ clamped ];\n\t} while ( num > 0 );\n\n\treturn result;\n}\n","import { encode } from 'vlq';\nexport default encode;","import encode from '../utils/encode';\n\nexport default function encodeMappings ( original, str, mappings, hires, sourcemapLocations, sourceIndex, offsets ) {\n\tvar lineStart,\n\t\tlocations,\n\t\tlines,\n\t\tencoded,\n\t\tinverseMappings,\n\t\tcharOffset = 0,\n\t\tfirstSegment = true;\n\n\t// store locations, for fast lookup\n\tlineStart = 0;\n\tlocations = original.split( '\\n' ).map( function ( line ) {\n\t\tvar start = lineStart;\n\t\tlineStart += line.length + 1; // +1 for the newline\n\n\t\treturn start;\n\t});\n\n\tinverseMappings = invert( str, mappings );\n\n\tlines = str.split( '\\n' ).map( function ( line ) {\n\t\tvar segments, len, char, origin, lastOrigin, i, location;\n\n\t\tsegments = [];\n\n\t\tlen = line.length;\n\t\tfor ( i = 0; i < len; i += 1 ) {\n\t\t\tchar = i + charOffset;\n\t\t\torigin = inverseMappings[ char ];\n\n\t\t\tif ( !~origin ) {\n\t\t\t\tif ( !~lastOrigin ) {\n\t\t\t\t\t// do nothing\n\t\t\t\t} else {\n\t\t\t\t\tsegments.push({\n\t\t\t\t\t\tgeneratedCodeColumn: i,\n\t\t\t\t\t\tsourceIndex: sourceIndex,\n\t\t\t\t\t\tsourceCodeLine: 0,\n\t\t\t\t\t\tsourceCodeColumn: 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\telse {\n\t\t\t\tif ( !hires && ( origin === lastOrigin + 1 ) && !sourcemapLocations[ origin ] ) {\n\t\t\t\t\t// do nothing\n\t\t\t\t} else {\n\t\t\t\t\tlocation = getLocation( locations, origin );\n\n\t\t\t\t\tsegments.push({\n\t\t\t\t\t\tgeneratedCodeColumn: i,\n\t\t\t\t\t\tsourceIndex: sourceIndex,\n\t\t\t\t\t\tsourceCodeLine: location.line,\n\t\t\t\t\t\tsourceCodeColumn: location.column\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlastOrigin = origin;\n\t\t}\n\n\t\tcharOffset += line.length + 1;\n\t\treturn segments;\n\t});\n\n\toffsets = offsets || {};\n\n\toffsets.sourceIndex = offsets.sourceIndex || 0;\n\toffsets.sourceCodeLine = offsets.sourceCodeLine || 0;\n\toffsets.sourceCodeColumn = offsets.sourceCodeColumn || 0;\n\n\tencoded = lines.map( function ( segments ) {\n\t\tvar generatedCodeColumn = 0;\n\n\t\treturn segments.map( function ( segment ) {\n\t\t\tvar arr = [\n\t\t\t\tsegment.generatedCodeColumn - generatedCodeColumn,\n\t\t\t\tsegment.sourceIndex - offsets.sourceIndex,\n\t\t\t\tsegment.sourceCodeLine - offsets.sourceCodeLine,\n\t\t\t\tsegment.sourceCodeColumn - offsets.sourceCodeColumn\n\t\t\t];\n\n\t\t\tgeneratedCodeColumn = segment.generatedCodeColumn;\n\t\t\toffsets.sourceIndex = segment.sourceIndex;\n\t\t\toffsets.sourceCodeLine = segment.sourceCodeLine;\n\t\t\toffsets.sourceCodeColumn = segment.sourceCodeColumn;\n\n\t\t\tfirstSegment = false;\n\n\t\t\treturn encode( arr );\n\t\t}).join( ',' );\n\t}).join( ';' );\n\n\treturn encoded;\n}\n\n\nfunction invert ( str, mappings ) {\n\tvar inverted = new Uint32Array( str.length ), i;\n\n\t// initialise everything to -1\n\ti = str.length;\n\twhile ( i-- ) {\n\t\tinverted[i] = -1;\n\t}\n\n\t// then apply the actual mappings\n\ti = mappings.length;\n\twhile ( i-- ) {\n\t\tif ( ~mappings[i] ) {\n\t\t\tinverted[ mappings[i] ] = i;\n\t\t}\n\t}\n\n\treturn inverted;\n}\n\nfunction getLocation ( locations, char ) {\n\tvar i;\n\n\ti = locations.length;\n\twhile ( i-- ) {\n\t\tif ( locations[i] <= char ) {\n\t\t\treturn {\n\t\t\t\tline: i,\n\t\t\t\tcolumn: char - locations[i]\n\t\t\t};\n\t\t}\n\t}\n\n\tthrow new Error( 'Character out of bounds' );\n}\n","import Bundle from '../Bundle';\nimport SourceMap from '../SourceMap';\nimport guessIndent from './guessIndent';\nimport encodeMappings from './encodeMappings';\nimport getRelativePath from '../utils/getRelativePath';\n\nvar MagicString = function ( string ) {\n\tthis.original = this.str = string;\n\tthis.mappings = initMappings( string.length );\n\n\tthis.sourcemapLocations = {};\n\n\tthis.indentStr = guessIndent( string );\n};\n\nMagicString.prototype = {\n\taddSourcemapLocation: function ( char ) {\n\t\tthis.sourcemapLocations[ char ] = true;\n\t},\n\n\tappend: function ( content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'appended content must be a string' );\n\t\t}\n\n\t\tthis.str += content;\n\t\treturn this;\n\t},\n\n\tclone: function () {\n\t\tvar clone, i;\n\n\t\tclone = new MagicString( this.original );\n\t\tclone.str = this.str;\n\n\t\ti = clone.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tclone.mappings[i] = this.mappings[i];\n\t\t}\n\n\t\treturn clone;\n\t},\n\n\tgenerateMap: function ( options ) {\n\t\toptions = options || {};\n\n\t\treturn new SourceMap({\n\t\t\tfile: ( options.file ? options.file.split( /[\\/\\\\]/ ).pop() : null ),\n\t\t\tsources: [ options.source ? getRelativePath( options.file || '', options.source ) : null ],\n\t\t\tsourcesContent: options.includeContent ? [ this.original ] : [ null ],\n\t\t\tnames: [],\n\t\t\tmappings: this.getMappings( options.hires, 0 )\n\t\t});\n\t},\n\n\tgetIndentString: function () {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t},\n\n\tgetMappings: function ( hires, sourceIndex, offsets ) {\n\t\treturn encodeMappings( this.original, this.str, this.mappings, hires, this.sourcemapLocations, sourceIndex, offsets );\n\t},\n\n\tindent: function ( indentStr, options ) {\n\t\tvar self = this,\n\t\t\tmappings = this.mappings,\n\t\t\treverseMappings = reverse( mappings, this.str.length ),\n\t\t\tpattern = /^[^\\r\\n]/gm,\n\t\t\tmatch,\n\t\t\tinserts = [],\n\t\t\tadjustments,\n\t\t\texclusions,\n\t\t\tlastEnd,\n\t\t\ti;\n\n\t\tif ( typeof indentStr === 'object' ) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : ( this.indentStr || '\\t' );\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tif ( options.exclude ) {\n\t\t\texclusions = typeof options.exclude[0] === 'number' ? [ options.exclude ] : options.exclude;\n\n\t\t\texclusions = exclusions.map( function ( range ) {\n\t\t\t\tvar rangeStart, rangeEnd;\n\n\t\t\t\trangeStart = self.locate( range[0] );\n\t\t\t\trangeEnd = self.locate( range[1] );\n\n\t\t\t\tif ( rangeStart === null || rangeEnd === null ) {\n\t\t\t\t\tthrow new Error( 'Cannot use indices of replaced characters as exclusion ranges' );\n\t\t\t\t}\n\n\t\t\t\treturn [ rangeStart, rangeEnd ];\n\t\t\t});\n\n\t\t\texclusions.sort( function ( a, b ) {\n\t\t\t\treturn a[0] - b[0];\n\t\t\t});\n\n\t\t\t// check for overlaps\n\t\t\tlastEnd = -1;\n\t\t\texclusions.forEach( function ( range ) {\n\t\t\t\tif ( range[0] < lastEnd ) {\n\t\t\t\t\tthrow new Error( 'Exclusion ranges cannot overlap' );\n\t\t\t\t}\n\n\t\t\t\tlastEnd = range[1];\n\t\t\t});\n\t\t}\n\n\t\tif ( !exclusions ) {\n\t\t\twhile ( match = pattern.exec( this.str ) ) {\n\t\t\t\tinserts.push( match.index );\n\t\t\t}\n\n\t\t\tthis.str = this.str.replace( pattern, indentStr + '$&' );\n\t\t} else {\n\t\t\twhile ( match = pattern.exec( this.str ) ) {\n\t\t\t\tif ( !isExcluded( match.index - 1 ) ) {\n\t\t\t\t\tinserts.push( match.index );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.str = this.str.replace( pattern, function ( match, index ) {\n\t\t\t\treturn isExcluded( index - 1 ) ? match : indentStr + match;\n\t\t\t});\n\t\t}\n\n\t\tadjustments = inserts.map( function ( index ) {\n\t\t\tvar origin;\n\n\t\t\tdo {\n\t\t\t\torigin = reverseMappings[ index++ ];\n\t\t\t} while ( !~origin && index < self.str.length );\n\n\t\t\treturn origin;\n\t\t});\n\n\t\ti = adjustments.length;\n\t\tlastEnd = this.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tadjust( self.mappings, adjustments[i], lastEnd, ( ( i + 1 ) * indentStr.length ) );\n\t\t\tlastEnd = adjustments[i];\n\t\t}\n\n\t\treturn this;\n\n\t\tfunction isExcluded ( index ) {\n\t\t\tvar i = exclusions.length, range;\n\n\t\t\twhile ( i-- ) {\n\t\t\t\trange = exclusions[i];\n\n\t\t\t\tif ( range[1] < index ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif ( range[0] <= index ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\tinsert: function ( index, content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'inserted content must be a string' );\n\t\t}\n\n\t\tif ( index === this.original.length ) {\n\t\t\tthis.append( content );\n\t\t} else {\n\t\t\tvar mapped = this.locate(index);\n\n\t\t\tif ( mapped === null ) {\n\t\t\t\tthrow new Error( 'Cannot insert at replaced character index: ' + index );\n\t\t\t}\n\n\t\t\tthis.str = this.str.substr( 0, mapped ) + content + this.str.substr( mapped );\n\t\t\tadjust( this.mappings, index, this.mappings.length, content.length );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\t// get current location of character in original string\n\tlocate: function ( character ) {\n\t\tvar loc;\n\n\t\tif ( character < 0 || character > this.mappings.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\tloc = this.mappings[ character ];\n\t\treturn ~loc ? loc : null;\n\t},\n\n\tlocateOrigin: function ( character ) {\n\t\tvar i;\n\n\t\tif ( character < 0 || character >= this.str.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\ti = this.mappings.length;\n\t\twhile ( i-- ) {\n\t\t\tif ( this.mappings[i] === character ) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t},\n\n\tprepend: function ( content ) {\n\t\tthis.str = content + this.str;\n\t\tadjust( this.mappings, 0, this.mappings.length, content.length );\n\t\treturn this;\n\t},\n\n\tremove: function ( start, end ) {\n\t\tvar loc, d, i, currentStart, currentEnd;\n\n\t\tif ( start < 0 || end > this.mappings.length ) {\n\t\t\tthrow new Error( 'Character is out of bounds' );\n\t\t}\n\n\t\td = 0;\n\t\tcurrentStart = -1;\n\t\tcurrentEnd = -1;\n\t\tfor ( i = start; i < end; i += 1 ) {\n\t\t\tloc = this.mappings[i];\n\n\t\t\tif ( loc !== -1 ) {\n\t\t\t\tif ( !~currentStart ) {\n\t\t\t\t\tcurrentStart = loc;\n\t\t\t\t}\n\n\t\t\t\tcurrentEnd = loc + 1;\n\n\t\t\t\tthis.mappings[i] = -1;\n\t\t\t\td += 1;\n\t\t\t}\n\t\t}\n\n\t\tthis.str = this.str.slice( 0, currentStart ) + this.str.slice( currentEnd );\n\n\t\tadjust( this.mappings, end, this.mappings.length, -d );\n\t\treturn this;\n\t},\n\n\treplace: function ( start, end, content ) {\n\t\tif ( typeof content !== 'string' ) {\n\t\t\tthrow new TypeError( 'replacement content must be a string' );\n\t\t}\n\n\t\tvar firstChar, lastChar, d;\n\n\t\tfirstChar = this.locate( start );\n\t\tlastChar = this.locate( end - 1 );\n\n\t\tif ( firstChar === null || lastChar === null ) {\n\t\t\tthrow new Error( 'Cannot replace the same content twice' );\n\t\t}\n\n\t\tif ( firstChar > lastChar + 1 ) {\n\t\t\tthrow new Error(\n\t\t\t\t'BUG! First character mapped to a position after the last character: ' +\n\t\t\t\t'[' + start + ', ' + end + '] -> [' + firstChar + ', ' + ( lastChar + 1 ) + ']'\n\t\t\t);\n\t\t}\n\n\t\tthis.str = this.str.substr( 0, firstChar ) + content + this.str.substring( lastChar + 1 );\n\n\t\td = content.length - ( lastChar + 1 - firstChar );\n\n\t\tblank( this.mappings, start, end );\n\t\tadjust( this.mappings, end, this.mappings.length, d );\n\t\treturn this;\n\t},\n\n\tslice: function ( start, end ) {\n\t\tvar firstChar, lastChar;\n\n\t\tfirstChar = this.locate( start );\n\t\tlastChar = this.locate( end - 1 ) + 1;\n\n\t\tif ( firstChar === null || lastChar === null ) {\n\t\t\tthrow new Error( 'Cannot use replaced characters as slice anchors' );\n\t\t}\n\n\t\treturn this.str.slice( firstChar, lastChar );\n\t},\n\n\ttoString: function () {\n\t\treturn this.str;\n\t},\n\n\ttrimLines: function() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t},\n\n\ttrim: function (charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t},\n\n\ttrimEnd: function (charType) {\n\t\tvar self = this;\n\t\tvar rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.str = this.str.replace( rx, function ( trailing, index, str ) {\n\t\t\tvar strLength = str.length,\n\t\t\t\tlength = trailing.length,\n\t\t\t\ti,\n\t\t\t\tchars = [];\n\n\t\t\ti = strLength;\n\t\t\twhile ( i-- > strLength - length ) {\n\t\t\t\tchars.push( self.locateOrigin( i ) );\n\t\t\t}\n\n\t\t\ti = chars.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( chars[i] !== null ) {\n\t\t\t\t\tself.mappings[ chars[i] ] = -1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn '';\n\t\t});\n\n\t\treturn this;\n\t},\n\n\ttrimStart: function (charType) {\n\t\tvar self = this;\n\t\tvar rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.str = this.str.replace( rx, function ( leading ) {\n\t\t\tvar length = leading.length, i, chars = [], adjustmentStart = 0;\n\n\t\t\ti = length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tchars.push( self.locateOrigin( i ) );\n\t\t\t}\n\n\t\t\ti = chars.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( chars[i] !== null ) {\n\t\t\t\t\tself.mappings[ chars[i] ] = -1;\n\t\t\t\t\tadjustmentStart += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tadjust( self.mappings, adjustmentStart, self.mappings.length, -length );\n\n\t\t\treturn '';\n\t\t});\n\n\t\treturn this;\n\t}\n};\n\nMagicString.Bundle = Bundle;\n\nfunction adjust ( mappings, start, end, d ) {\n\tvar i = end;\n\n\tif ( !d ) return; // replacement is same length as replaced string\n\n\twhile ( i-- > start ) {\n\t\tif ( ~mappings[i] ) {\n\t\t\tmappings[i] += d;\n\t\t}\n\t}\n}\n\nfunction initMappings ( i ) {\n\tvar mappings = new Uint32Array( i );\n\n\twhile ( i-- ) {\n\t\tmappings[i] = i;\n\t}\n\n\treturn mappings;\n}\n\nfunction blank ( mappings, start, i ) {\n\twhile ( i-- > start ) {\n\t\tmappings[i] = -1;\n\t}\n}\n\nfunction reverse ( mappings, i ) {\n\tvar result, location;\n\n\tresult = new Uint32Array( i );\n\n\twhile ( i-- ) {\n\t\tresult[i] = -1;\n\t}\n\n\ti = mappings.length;\n\twhile ( i-- ) {\n\t\tlocation = mappings[i];\n\n\t\tif ( ~location ) {\n\t\t\tresult[ location ] = i;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport default MagicString;\n","\n\nexport default walk;\n\nvar shouldSkip = undefined;\nvar shouldAbort = undefined;\nfunction walk(ast, _ref) {\n\tvar enter = _ref.enter;\n\tvar leave = _ref.leave;\n\n\tshouldAbort = false;\n\tvisit(ast, null, enter, leave);\n}\n\nvar context = {\n\tskip: function () {\n\t\treturn shouldSkip = true;\n\t},\n\tabort: function () {\n\t\treturn shouldAbort = true;\n\t}\n};\n\nvar childKeys = {};\n\nvar toString = Object.prototype.toString;\n\nfunction isArray(thing) {\n\treturn toString.call(thing) === '[object Array]';\n}\n\nfunction visit(node, parent, enter, leave) {\n\tif (!node || shouldAbort) return;\n\n\tif (enter) {\n\t\tshouldSkip = false;\n\t\tenter.call(context, node, parent);\n\t\tif (shouldSkip || shouldAbort) return;\n\t}\n\n\tvar keys = childKeys[node.type] || (childKeys[node.type] = Object.keys(node).filter(function (key) {\n\t\treturn typeof node[key] === 'object';\n\t}));\n\n\tvar key = undefined,\n\t value = undefined,\n\t i = undefined,\n\t j = undefined;\n\n\ti = keys.length;\n\twhile (i--) {\n\t\tkey = keys[i];\n\t\tvalue = node[key];\n\n\t\tif (isArray(value)) {\n\t\t\tj = value.length;\n\t\t\twhile (j--) {\n\t\t\t\tvisit(value[j], node, enter, leave);\n\t\t\t}\n\t\t} else if (value && value.type) {\n\t\t\tvisit(value, node, enter, leave);\n\t\t}\n\t}\n\n\tif (leave && !shouldAbort) {\n\t\tleave(node, parent);\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/walk.js.01-babel.map","export { getId };\n\nexport { getName };\n\nexport { quote };\n\nexport { req };\n\nexport { globalify };\n\nfunction getId(m) {\n\treturn m.id;\n}\n\nfunction getName(m) {\n\treturn m.name;\n}\n\nfunction quote(str) {\n\treturn \"'\" + JSON.stringify(str).slice(1, -1).replace(/'/g, \"\\\\'\") + \"'\";\n}\n\nfunction req(path) {\n\treturn \"require(\" + quote(path) + \")\";\n}\n\nfunction globalify(name) {\n\tif (/^__dep\\d+__$/.test(name)) {\n\t\treturn \"undefined\";\n\t} else {\n\t\treturn \"global.\" + name;\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/mappers.js.01-babel.map","\n\nexport default annotateAst;\n/*\n\tThis module traverse a module's AST, attaching scope information\n\tto nodes as it goes, which is later used to determine which\n\tidentifiers need to be rewritten to avoid collisions\n*/\n\nimport walk from './walk';\nimport { getName } from '../mappers';\n\nfunction Scope(options) {\n\toptions = options || {};\n\n\tthis.parent = options.parent;\n\tthis.names = options.params || [];\n}\n\nScope.prototype = {\n\tadd: function (name) {\n\t\tthis.names.push(name);\n\t},\n\n\tcontains: function (name, ignoreTopLevel) {\n\t\tif (ignoreTopLevel && !this.parent) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (~this.names.indexOf(name)) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (this.parent) {\n\t\t\treturn this.parent.contains(name, ignoreTopLevel);\n\t\t}\n\n\t\treturn false;\n\t}\n};\nfunction annotateAst(ast, options) {\n\tvar trackAssignments = options && options.trackAssignments;\n\n\tvar scope = new Scope();\n\tvar blockScope = new Scope();\n\tvar declared = {};\n\tvar topLevelFunctionNames = [];\n\tvar templateLiteralRanges = [];\n\n\tvar envDepth = 0;\n\n\twalk(ast, {\n\t\tenter: function (node) {\n\t\t\tif (node.type === 'ImportDeclaration' || node.type === 'ExportSpecifier') {\n\t\t\t\tnode._skip = true;\n\t\t\t}\n\n\t\t\tif (node._skip) {\n\t\t\t\treturn this.skip();\n\t\t\t}\n\n\t\t\tswitch (node.type) {\n\t\t\t\tcase 'FunctionExpression':\n\t\t\t\tcase 'FunctionDeclaration':\n\n\t\t\t\t\tenvDepth += 1;\n\n\t\t\t\t// fallthrough\n\n\t\t\t\tcase 'ArrowFunctionExpression':\n\t\t\t\t\tif (node.id) {\n\t\t\t\t\t\taddToScope(node);\n\n\t\t\t\t\t\t// If this is the root scope, this may need to be\n\t\t\t\t\t\t// exported early, so we make a note of it\n\t\t\t\t\t\tif (!scope.parent && node.type === 'FunctionDeclaration') {\n\t\t\t\t\t\t\ttopLevelFunctionNames.push(node.id.name);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tvar names = node.params.map(getName);\n\n\t\t\t\t\tnames.forEach(function (name) {\n\t\t\t\t\t\treturn declared[name] = true;\n\t\t\t\t\t});\n\n\t\t\t\t\tscope = node._scope = new Scope({\n\t\t\t\t\t\tparent: scope,\n\t\t\t\t\t\tparams: names // TODO rest params?\n\t\t\t\t\t});\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BlockStatement':\n\t\t\t\t\tblockScope = node._blockScope = new Scope({\n\t\t\t\t\t\tparent: blockScope\n\t\t\t\t\t});\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'VariableDeclaration':\n\t\t\t\t\tnode.declarations.forEach(node.kind === 'let' ? addToBlockScope : addToScope);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ClassExpression':\n\t\t\t\tcase 'ClassDeclaration':\n\t\t\t\t\taddToScope(node);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'MemberExpression':\n\t\t\t\t\tif (envDepth === 0 && node.object.type === 'ThisExpression') {\n\t\t\t\t\t\tthrow new Error('`this` at the top level is undefined');\n\t\t\t\t\t}\n\t\t\t\t\t!node.computed && (node.property._skip = true);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'Property':\n\t\t\t\t\tnode.key._skip = true;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'TemplateLiteral':\n\t\t\t\t\ttemplateLiteralRanges.push([node.start, node.end]);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ThisExpression':\n\t\t\t\t\tif (envDepth === 0) {\n\t\t\t\t\t\tnode._topLevel = true;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'AssignmentExpression':\n\t\t\t\t\tassignTo(node.left);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'UpdateExpression':\n\t\t\t\t\tassignTo(node.argument);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\tleave: function (node) {\n\t\t\tswitch (node.type) {\n\t\t\t\tcase 'FunctionExpression':\n\t\t\t\tcase 'FunctionDeclaration':\n\n\t\t\t\t\tenvDepth -= 1;\n\n\t\t\t\t// fallthrough\n\n\t\t\t\tcase 'ArrowFunctionExpression':\n\n\t\t\t\t\tscope = scope.parent;\n\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BlockStatement':\n\t\t\t\t\tblockScope = blockScope.parent;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t});\n\n\tfunction assignTo(node) {\n\t\tif (trackAssignments && node.type === 'Identifier' && node.name === trackAssignments.name) {\n\t\t\t// This is possibly somewhat hacky. Open to alternative approaches...\n\t\t\t// It will yield false positives if `foo` in `export default foo` is shadowed\n\t\t\t(trackAssignments._assignments || (trackAssignments._assignments = [])).push({\n\t\t\t\tscope: scope,\n\t\t\t\tnode: node\n\t\t\t});\n\t\t}\n\t}\n\n\tfunction addToScope(declarator) {\n\t\tvar name = declarator.id.name;\n\n\t\tscope.add(name);\n\t\tdeclared[name] = true;\n\t}\n\n\tfunction addToBlockScope(declarator) {\n\t\tvar name = declarator.id.name;\n\n\t\tblockScope.add(name);\n\t\tdeclared[name] = true;\n\t}\n\n\tast._scope = scope;\n\tast._blockScope = blockScope;\n\tast._topLevelNames = ast._scope.names.concat(ast._blockScope.names);\n\tast._topLevelFunctionNames = topLevelFunctionNames;\n\tast._declared = declared;\n\tast._templateLiteralRanges = templateLiteralRanges;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/annotate.js.01-babel.map","/**\n * Inspects a module and discovers/categorises import & export declarations\n * @param {object} ast - the result of parsing `source` with acorn\n * @param {string} source - the module's original source code\n * @returns {object} - { imports, exports, defaultExport }\n */\nexport default findImportsAndExports;\n\nfunction findImportsAndExports(ast, source) {\n\tvar imports = [];\n\tvar exports = [];\n\tvar defaultExport = undefined;\n\tvar previousDeclaration = undefined;\n\n\tast.body.forEach(function (node) {\n\t\tvar passthrough, declaration;\n\n\t\tif (previousDeclaration) {\n\t\t\tpreviousDeclaration.next = node.start;\n\n\t\t\tif (node.type !== 'EmptyStatement') {\n\t\t\t\tpreviousDeclaration = null;\n\t\t\t}\n\t\t}\n\n\t\tif (node.type === 'ImportDeclaration') {\n\t\t\tdeclaration = processImport(node);\n\t\t\timports.push(declaration);\n\t\t} else if (node.type === 'ExportDefaultDeclaration') {\n\t\t\tdeclaration = processDefaultExport(node, source);\n\t\t\texports.push(declaration);\n\n\t\t\tif (defaultExport) {\n\t\t\t\tthrow new Error('Duplicate default exports');\n\t\t\t}\n\t\t\tdefaultExport = declaration;\n\t\t} else if (node.type === 'ExportNamedDeclaration') {\n\t\t\tdeclaration = processExport(node, source);\n\t\t\texports.push(declaration);\n\n\t\t\tif (node.source) {\n\t\t\t\t// it's both an import and an export, e.g.\n\t\t\t\t// `export { foo } from './bar';\n\t\t\t\tpassthrough = processImport(node, true);\n\t\t\t\timports.push(passthrough);\n\n\t\t\t\tdeclaration.passthrough = passthrough;\n\t\t\t}\n\t\t}\n\n\t\tif (declaration) {\n\t\t\tpreviousDeclaration = declaration;\n\t\t}\n\t});\n\n\t// catch any trailing semicolons\n\tif (previousDeclaration) {\n\t\tpreviousDeclaration.next = source.length;\n\t\tpreviousDeclaration.isFinal = true;\n\t}\n\n\treturn { imports: imports, exports: exports, defaultExport: defaultExport };\n}\n\n/**\n * Generates a representation of an import declaration\n * @param {object} node - the original AST node\n * @param {boolean} passthrough - `true` if this is an `export { foo } from 'bar'`-style declaration\n * @returns {object}\n */\nfunction processImport(node, passthrough) {\n\tvar x = {\n\t\tmodule: null, // used by bundler - filled in later\n\t\tnode: node,\n\t\tstart: node.start,\n\t\tend: node.end,\n\t\tpassthrough: !!passthrough,\n\n\t\tpath: node.source.value,\n\t\tspecifiers: node.specifiers.map(function (s) {\n\t\t\tif (s.type === 'ImportNamespaceSpecifier') {\n\t\t\t\treturn {\n\t\t\t\t\tisBatch: true,\n\t\t\t\t\tname: s.local.name, // TODO is this line necessary?\n\t\t\t\t\tas: s.local.name,\n\t\t\t\t\torigin: null // filled in later by bundler\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (s.type === 'ImportDefaultSpecifier') {\n\t\t\t\treturn {\n\t\t\t\t\tisDefault: true,\n\t\t\t\t\tname: 'default',\n\t\t\t\t\tas: s.local.name,\n\t\t\t\t\torigin: null\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tname: (!!passthrough ? s.exported : s.imported).name,\n\t\t\t\tas: s.local.name,\n\t\t\t\torigin: null\n\t\t\t};\n\t\t})\n\t};\n\n\t// TODO have different types of imports - batch, default, named\n\tif (x.specifiers.length === 0) {\n\t\tx.isEmpty = true;\n\t} else if (x.specifiers.length === 1 && x.specifiers[0].isDefault) {\n\t\tx.isDefault = true;\n\t\tx.as = x.specifiers[0].as;\n\t} else if (x.specifiers.length === 1 && x.specifiers[0].isBatch) {\n\t\tx.isBatch = true;\n\t\tx.as = x.specifiers[0].name;\n\t} else {\n\t\tx.isNamed = true;\n\t}\n\n\treturn x;\n}\n\nfunction processDefaultExport(node, source) {\n\tvar d = node.declaration;\n\n\tvar result = {\n\t\tnode: node,\n\t\tisDefault: true,\n\t\tstart: node.start,\n\t\tend: node.end,\n\t\tvalue: source.slice(d.start, d.end),\n\t\tvalueStart: d.start,\n\t\thasDeclaration: null,\n\t\ttype: null,\n\t\tname: null\n\t};\n\n\t// possible declaration types:\n\t// * FunctionExpression - `export default function () {...}`\n\t// * FunctionDeclaration - `export default function foo () {...}`\n\t// * ClassExpression - `export default class {...}`\n\t// * ClassDeclaration - `export default class Foo {...}`\n\tvar match = /^(Function|Class)(Declaration)?/.exec(d.type);\n\n\tif (match) {\n\t\tresult.hasDeclaration = true;\n\t\tresult.type = (match[2] ? 'named' : 'anon') + match[1];\n\n\t\tif (match[2]) {\n\t\t\tresult.name = d.id.name;\n\t\t}\n\t}\n\n\t// if no match, we have an expression like `export default whatever`\n\telse {\n\t\tresult.type = 'expression';\n\t\tresult.name = 'default';\n\t}\n\n\treturn result;\n}\n\n/**\n * Generates a representation of an export declaration\n * @param {object} node - the original AST node\n * @param {string} source - the original source code\n * @returns {object}\n */\nfunction processExport(node, source) {\n\tvar result = {\n\t\tnode: node,\n\t\tstart: node.start,\n\t\tend: node.end,\n\t\tvalue: null,\n\t\tvalueStart: null,\n\t\thasDeclaration: null,\n\t\ttype: null,\n\t\tname: null,\n\t\tspecifiers: null\n\t};\n\n\tvar d = node.declaration;\n\n\tif (d) {\n\t\tresult.hasDeclaration = true;\n\t\tresult.value = source.slice(d.start, d.end);\n\t\tresult.valueStart = d.start;\n\n\t\t// Case 1: `export var foo = 'bar'`\n\t\tif (d.type === 'VariableDeclaration') {\n\t\t\tresult.type = 'varDeclaration';\n\t\t\tresult.name = d.declarations[0].id.name;\n\t\t}\n\n\t\t// Case 2: `export function foo () {...}`\n\t\telse if (d.type === 'FunctionDeclaration') {\n\t\t\tresult.type = 'namedFunction';\n\t\t\tresult.name = d.id.name;\n\t\t}\n\n\t\t// Case 3: `export class Foo {...}`\n\t\telse if (d.type === 'ClassDeclaration') {\n\t\t\tresult.type = 'namedClass';\n\t\t\tresult.name = d.id.name;\n\t\t}\n\t}\n\n\t// Case 9: `export { foo, bar };`\n\telse {\n\t\tresult.type = 'named';\n\t\tresult.specifiers = node.specifiers.map(function (s) {\n\t\t\treturn {\n\t\t\t\torigin: null, // filled in later by bundler\n\t\t\t\tname: s.local.name,\n\t\t\t\tas: s.exported.name\n\t\t\t};\n\t\t});\n\t}\n\n\treturn result;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/findImportsAndExports.js.01-babel.map","var hasOwnProp = Object.prototype.hasOwnProperty;\nexport default hasOwnProp;\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/hasOwnProp.js.01-babel.map","\n\nexport default getUnscopedNames;\nimport walk from './walk';\nimport hasOwnProp from 'utils/hasOwnProp';\nfunction getUnscopedNames(mod) {\n\tvar unscoped = [],\n\t importedNames,\n\t scope;\n\n\tfunction imported(name) {\n\t\tif (!importedNames) {\n\t\t\timportedNames = {};\n\t\t\tmod.imports.forEach(function (i) {\n\t\t\t\t!i.passthrough && i.specifiers.forEach(function (s) {\n\t\t\t\t\timportedNames[s.as] = true;\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\treturn hasOwnProp.call(importedNames, name);\n\t}\n\n\twalk(mod.ast, {\n\t\tenter: function (node) {\n\t\t\t// we're only interested in references, not property names etc\n\t\t\tif (node._skip) return this.skip();\n\n\t\t\tif (node._scope) {\n\t\t\t\tscope = node._scope;\n\t\t\t}\n\n\t\t\tif (node.type === 'Identifier' && !scope.contains(node.name) && !imported(node.name) && ! ~unscoped.indexOf(node.name)) {\n\t\t\t\tunscoped.push(node.name);\n\t\t\t}\n\t\t},\n\n\t\tleave: function (node) {\n\t\t\tif (node.type === 'Program') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (node._scope) {\n\t\t\t\tscope = scope.parent;\n\t\t\t}\n\t\t}\n\t});\n\n\treturn unscoped;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/getUnscopedNames.js.01-babel.map","\n\nexport default disallowConflictingImports;\nimport hasOwnProp from './hasOwnProp';\nfunction disallowConflictingImports(imports) {\n\tvar usedNames = {};\n\n\timports.forEach(function (x) {\n\t\tif (x.passthrough) return;\n\n\t\tif (x.as) {\n\t\t\tcheckName(x.as);\n\t\t} else {\n\t\t\tx.specifiers.forEach(checkSpecifier);\n\t\t}\n\t});\n\n\tfunction checkSpecifier(s) {\n\t\tcheckName(s.as);\n\t}\n\n\tfunction checkName(name) {\n\t\tif (hasOwnProp.call(usedNames, name)) {\n\t\t\tthrow new SyntaxError('Duplicated import (\\'' + name + '\\')');\n\t\t}\n\n\t\tusedNames[name] = true;\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/disallowConflictingImports.js.01-babel.map","\n\n/**\n * Generates a sanitized (i.e. valid identifier) name from a module ID\n * @param {string} id - a module ID, or part thereof\n * @returns {string}\n */\nexport default sanitize;\n\nexport { splitPath };\nvar RESERVED = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield'.split(' ');\nvar INVALID_CHAR = /[^a-zA-Z0-9_$]/g;\nvar INVALID_LEADING_CHAR = /[^a-zA-Z_$]/;\nfunction sanitize(name) {\n\tname = name.replace(INVALID_CHAR, '_');\n\n\tif (INVALID_LEADING_CHAR.test(name[0]) || ~RESERVED.indexOf(name)) {\n\t\tname = '_' + name;\n\t}\n\n\treturn name;\n}\n\nvar pathSplitRE = /\\/|\\\\/;\nfunction splitPath(path) {\n\treturn path.split(pathSplitRE);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/sanitize.js.01-babel.map","\n\nexport default getStandaloneModule;\n\nimport { parse } from 'acorn';\nimport MagicString from 'magic-string';\nimport annotateAst from 'utils/ast/annotate';\nimport findImportsAndExports from 'utils/ast/findImportsAndExports';\nimport getUnscopedNames from 'utils/ast/getUnscopedNames';\nimport disallowConflictingImports from '../utils/disallowConflictingImports';\nimport hasOwnProp from 'utils/hasOwnProp';\nimport { default as sanitize, splitPath } from 'utils/sanitize';\n\nvar SOURCEMAPPINGURL_REGEX = /^# sourceMappingURL=/;\nfunction getStandaloneModule(options) {\n\tvar code = undefined,\n\t ast = undefined;\n\n\tif (typeof options.source === 'object') {\n\t\tcode = options.source.code;\n\t\tast = options.source.ast;\n\t} else {\n\t\tcode = options.source;\n\t}\n\n\tvar toRemove = [];\n\n\tvar mod = {\n\t\tbody: new MagicString(code),\n\t\tast: ast || parse(code, {\n\t\t\tecmaVersion: 6,\n\t\t\tsourceType: 'module',\n\t\t\tonComment: function (block, text, start, end) {\n\t\t\t\t// sourceMappingURL comments should be removed\n\t\t\t\tif (!block && SOURCEMAPPINGURL_REGEX.test(text)) {\n\t\t\t\t\ttoRemove.push({ start: start, end: end });\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t};\n\n\ttoRemove.forEach(function (_ref) {\n\t\tvar start = _ref.start;\n\t\tvar end = _ref.end;\n\t\treturn mod.body.remove(start, end);\n\t});\n\n\tvar _findImportsAndExports = findImportsAndExports(mod.ast, code);\n\n\tvar imports = _findImportsAndExports.imports;\n\tvar exports = _findImportsAndExports.exports;\n\tvar defaultExport = _findImportsAndExports.defaultExport;\n\n\tdisallowConflictingImports(imports);\n\n\tmod.imports = imports;\n\tmod.exports = exports;\n\tmod.defaultExport = defaultExport;\n\n\tvar conflicts = {};\n\n\tif (options.strict) {\n\t\tannotateAst(mod.ast, {\n\t\t\ttrackAssignments: null\n\t\t});\n\n\t\t// TODO there's probably an easier way to get this array\n\t\tObject.keys(mod.ast._declared).concat(getUnscopedNames(mod)).forEach(function (n) {\n\t\t\tconflicts[n] = true;\n\t\t});\n\t}\n\n\tdetermineImportNames(imports, options.getModuleName, conflicts);\n\n\treturn mod;\n}\n\nfunction determineImportNames(imports, userFn, usedNames) {\n\tvar nameById = {};\n\tvar inferredNames = {};\n\n\timports.forEach(function (x) {\n\t\tvar moduleId = x.path;\n\t\tvar name = undefined;\n\n\t\tmoduleId = x.path;\n\n\t\t// use existing value\n\t\tif (hasOwnProp.call(nameById, moduleId)) {\n\t\t\tx.name = nameById[moduleId];\n\t\t\treturn;\n\t\t}\n\n\t\t// if user supplied a function, defer to it\n\t\tif (userFn && (name = userFn(moduleId))) {\n\t\t\tname = sanitize(name);\n\n\t\t\tif (hasOwnProp.call(usedNames, name)) {\n\t\t\t\t// TODO write a test for this\n\t\t\t\tthrow new Error('Naming collision: module ' + moduleId + ' cannot be called ' + name);\n\t\t\t}\n\t\t} else {\n\t\t\tvar parts = splitPath(moduleId);\n\t\t\tvar i = undefined;\n\t\t\tvar prefix = '';\n\t\t\tvar candidate = undefined;\n\n\t\t\tdo {\n\t\t\t\ti = parts.length;\n\t\t\t\twhile (i-- > 0) {\n\t\t\t\t\tcandidate = prefix + sanitize(parts.slice(i).join('__'));\n\n\t\t\t\t\tif (!hasOwnProp.call(usedNames, candidate)) {\n\t\t\t\t\t\tname = candidate;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tprefix += '_';\n\t\t\t} while (!name);\n\t\t}\n\n\t\tusedNames[name] = true;\n\t\tnameById[moduleId] = name;\n\n\t\tx.name = name;\n\t});\n\n\t// use inferred names for default imports, wherever they\n\t// don't clash with path-based names\n\timports.forEach(function (x) {\n\t\tif (x.as && !hasOwnProp.call(usedNames, x.as)) {\n\t\t\tinferredNames[x.path] = x.as;\n\t\t}\n\t});\n\n\timports.forEach(function (x) {\n\t\tif (hasOwnProp.call(inferredNames, x.path)) {\n\t\t\tx.name = inferredNames[x.path];\n\t\t}\n\t});\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/getModule.js.01-babel.map","export default transformExportDeclaration;\n\nfunction transformExportDeclaration(declaration, body) {\n\tif (!declaration) {\n\t\treturn;\n\t}\n\n\tvar exportedValue = undefined;\n\n\tswitch (declaration.type) {\n\t\tcase 'namedFunction':\n\t\tcase 'namedClass':\n\t\t\tbody.remove(declaration.start, declaration.valueStart);\n\t\t\texportedValue = declaration.name;\n\t\t\tbreak;\n\n\t\tcase 'anonFunction':\n\t\tcase 'anonClass':\n\t\t\tif (declaration.isFinal) {\n\t\t\t\tbody.replace(declaration.start, declaration.valueStart, 'return ');\n\t\t\t} else {\n\t\t\t\tbody.replace(declaration.start, declaration.valueStart, 'var __export = ');\n\t\t\t\texportedValue = '__export';\n\t\t\t}\n\n\t\t\t// add semi-colon, if necessary\n\t\t\t// TODO body.original is an implementation detail of magic-string - there\n\t\t\t// should probably be an API for this sort of thing\n\t\t\tif (body.original[declaration.end - 1] !== ';') {\n\t\t\t\tbody.insert(declaration.end, ';');\n\t\t\t}\n\n\t\t\tbreak;\n\n\t\tcase 'expression':\n\t\t\tbody.remove(declaration.start, declaration.next);\n\t\t\texportedValue = declaration.value;\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tthrow new Error('Unexpected export type \\'' + declaration.type + '\\'');\n\t}\n\n\tif (exportedValue) {\n\t\tbody.append('\\nreturn ' + exportedValue + ';');\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/defaultsMode/utils/transformExportDeclaration.js.01-babel.map","\n\nexport default packageResult;\n\nimport walk from './ast/walk';\nimport { splitPath } from 'utils/sanitize';\n\nvar ABSOLUTE_PATH = /^(?:[A-Z]:)?[\\/\\\\]/i;\n\nvar warned = {};\nfunction packageResult(bundleOrModule, body, options, methodName, isBundle) {\n\t// wrap output\n\tif (options.banner) body.prepend(options.banner);\n\tif (options.footer) body.append(options.footer);\n\n\tvar code = body.toString();\n\tvar map = undefined;\n\n\tif (!!options.sourceMap) {\n\t\tif (options.sourceMap !== 'inline' && !options.sourceMapFile) {\n\t\t\tthrow new Error('You must provide `sourceMapFile` option');\n\t\t}\n\n\t\tif (!isBundle && !options.sourceMapSource) {\n\t\t\tthrow new Error('You must provide `sourceMapSource` option');\n\t\t}\n\n\t\tvar sourceMapFile = undefined;\n\t\tif (options.sourceMap === 'inline') {\n\t\t\tsourceMapFile = null;\n\t\t} else {\n\t\t\tsourceMapFile = ABSOLUTE_PATH.test(options.sourceMapFile) ? options.sourceMapFile : './' + splitPath(options.sourceMapFile).pop();\n\t\t}\n\n\t\tif (isBundle) {\n\t\t\tmarkBundleSourcemapLocations(bundleOrModule);\n\t\t} else {\n\t\t\tmarkModuleSourcemapLocations(bundleOrModule);\n\t\t}\n\n\t\tmap = body.generateMap({\n\t\t\tincludeContent: true,\n\t\t\tfile: sourceMapFile,\n\t\t\tsource: sourceMapFile && !isBundle ? getRelativePath(sourceMapFile, options.sourceMapSource) : null\n\t\t});\n\n\t\tif (options.sourceMap === 'inline') {\n\t\t\tcode += '\\n//# sourceMa' + 'ppingURL=' + map.toUrl();\n\t\t\tmap = null;\n\t\t} else {\n\t\t\tcode += '\\n//# sourceMa' + 'ppingURL=' + sourceMapFile + '.map';\n\t\t}\n\t} else {\n\t\tmap = null;\n\t}\n\n\treturn {\n\t\tcode: code,\n\t\tmap: map,\n\t\ttoString: function () {\n\t\t\tif (!warned[methodName]) {\n\t\t\t\tconsole.log('Warning: esperanto.' + methodName + '() returns an object with a \\'code\\' property. You should use this instead of using the returned value directly');\n\t\t\t\twarned[methodName] = true;\n\t\t\t}\n\n\t\t\treturn code;\n\t\t}\n\t};\n}\n\nfunction getRelativePath(from, to) {\n\tvar fromParts, toParts, i;\n\n\tfromParts = splitPath(from);\n\ttoParts = splitPath(to);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === '.') {\n\t\tfromParts.shift();\n\t}\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\ti = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\n\t\treturn fromParts.concat(toParts).join('/');\n\t} else {\n\t\ttoParts.unshift('.');\n\t\treturn toParts.join('/');\n\t}\n}\n\nfunction markBundleSourcemapLocations(bundle) {\n\tbundle.modules.forEach(function (mod) {\n\t\twalk(mod.ast, {\n\t\t\tenter: function (node) {\n\t\t\t\tmod.body.addSourcemapLocation(node.start);\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction markModuleSourcemapLocations(mod) {\n\twalk(mod.ast, {\n\t\tenter: function (node) {\n\t\t\tmod.body.addSourcemapLocation(node.start);\n\t\t}\n\t});\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/packageResult.js.01-babel.map","\n\n/**\n * Resolves an importPath relative to the module that is importing it\n * @param {string} importPath - the (possibly relative) path of an imported module\n * @param {string} importerPath - the (relative to `base`) path of the importing module\n * @returns {string}\n */\nexport default resolveId;\n\nexport { resolveAgainst };\nimport { splitPath } from 'utils/sanitize';\nfunction resolveId(importPath, importerPath) {\n\tvar resolved, importerParts, importParts;\n\n\tif (importPath[0] !== '.') {\n\t\tresolved = importPath;\n\t} else {\n\t\timporterParts = splitPath(importerPath);\n\t\timportParts = splitPath(importPath);\n\n\t\tif (importParts[0] === '.') {\n\t\t\timportParts.shift();\n\t\t}\n\n\t\timporterParts.pop(); // get dirname\n\t\twhile (importParts[0] === '..') {\n\t\t\timportParts.shift();\n\t\t\timporterParts.pop();\n\t\t}\n\n\t\twhile (importParts[0] === '.') {\n\t\t\timportParts.shift();\n\t\t}\n\n\t\tresolved = importerParts.concat(importParts).join('/');\n\t}\n\n\treturn resolved;\n}\n\nfunction resolveAgainst(importerPath) {\n\treturn function (importPath) {\n\t\treturn resolveId(importPath, importerPath);\n\t};\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/resolveId.js.01-babel.map","\n\nexport default getImportSummary;\nimport resolveId from '../resolveId';\nfunction getImportSummary(_ref) {\n\tvar imports = _ref.imports;\n\tvar absolutePaths = _ref.absolutePaths;\n\tvar name = _ref.name;\n\n\tvar paths = [];\n\tvar names = [];\n\tvar seen = {};\n\tvar placeholders = 0;\n\n\timports.forEach(function (x) {\n\t\tvar path = x.id || x.path; // TODO unify these\n\n\t\tif (!seen[path]) {\n\t\t\tseen[path] = true;\n\n\t\t\tpaths.push(path);\n\n\t\t\t// TODO x could be an external module, or an internal one.\n\t\t\t// they have different shapes, resulting in the confusing\n\t\t\t// code below\n\t\t\tif (x.needsDefault || x.needsNamed || x.specifiers && x.specifiers.length) {\n\t\t\t\twhile (placeholders) {\n\t\t\t\t\tnames.push('__dep' + names.length + '__');\n\t\t\t\t\tplaceholders--;\n\t\t\t\t}\n\t\t\t\tnames.push(x.name);\n\t\t\t} else {\n\t\t\t\tplaceholders++;\n\t\t\t}\n\t\t}\n\t});\n\n\tvar ids = absolutePaths ? paths.map(function (relativePath) {\n\t\treturn resolveId(relativePath, name);\n\t}) : paths.slice();\n\n\treturn { ids: ids, paths: paths, names: names };\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/amd/getImportSummary.js.01-babel.map","\n\nexport default processName;\nimport { quote } from '../mappers';\nfunction processName(name) {\n\treturn name ? quote(name) + ', ' : '';\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/amd/processName.js.01-babel.map","\n\nexport default processIds;\nimport { quote } from '../mappers';\nfunction processIds(ids) {\n\treturn ids.length ? '[' + ids.map(quote).join(', ') + '], ' : '';\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/amd/processIds.js.01-babel.map","\n\nexport default amdIntro;\nimport getImportSummary from './getImportSummary';\nimport processName from './processName';\nimport processIds from './processIds';\nfunction amdIntro(_ref) {\n\tvar name = _ref.name;\n\tvar imports = _ref.imports;\n\tvar hasExports = _ref.hasExports;\n\tvar indentStr = _ref.indentStr;\n\tvar absolutePaths = _ref.absolutePaths;\n\tvar useStrict = _ref.useStrict;\n\n\tvar _getImportSummary = getImportSummary({ name: name, imports: imports, absolutePaths: absolutePaths });\n\n\tvar ids = _getImportSummary.ids;\n\tvar names = _getImportSummary.names;\n\n\tif (hasExports) {\n\t\tids.unshift('exports');\n\t\tnames.unshift('exports');\n\t}\n\n\tvar intro = '\\ndefine(' + processName(name) + '' + processIds(ids) + 'function (' + names.join(', ') + ') {\\n\\n';\n\n\tif (useStrict) {\n\t\tintro += '' + indentStr + '\\'use strict\\';\\n\\n';\n\t}\n\n\treturn intro;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/amd/amdIntro.js.01-babel.map","\n\nexport default amd;\nimport transformExportDeclaration from './utils/transformExportDeclaration';\nimport packageResult from 'utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\nfunction amd(mod, options) {\n\tmod.imports.forEach(function (x) {\n\t\tmod.body.remove(x.start, x.next);\n\t});\n\n\ttransformExportDeclaration(mod.exports[0], mod.body);\n\n\tvar intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: mod.imports,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tmod.body.trim().indent().prepend(intro).trim().append('\\n\\n});');\n\n\treturn packageResult(mod, mod.body, options, 'toAmd');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/defaultsMode/amd.js.01-babel.map","\n\nexport default cjs;\nimport hasOwnProp from 'utils/hasOwnProp';\nimport packageResult from 'utils/packageResult';\nimport { req } from 'utils/mappers';\nfunction cjs(mod, options) {\n\tvar seen = {};\n\n\tmod.imports.forEach(function (x) {\n\t\tif (!hasOwnProp.call(seen, x.path)) {\n\t\t\tvar replacement = x.isEmpty ? '' + req(x.path) + ';' : 'var ' + x.as + ' = ' + req(x.path) + ';';\n\t\t\tmod.body.replace(x.start, x.end, replacement);\n\n\t\t\tseen[x.path] = true;\n\t\t} else {\n\t\t\tmod.body.remove(x.start, x.next);\n\t\t}\n\t});\n\n\tvar exportDeclaration = mod.exports[0];\n\n\tif (exportDeclaration) {\n\t\tswitch (exportDeclaration.type) {\n\t\t\tcase 'namedFunction':\n\t\t\tcase 'namedClass':\n\t\t\t\tmod.body.remove(exportDeclaration.start, exportDeclaration.valueStart);\n\t\t\t\tmod.body.replace(exportDeclaration.end, exportDeclaration.end, '\\nmodule.exports = ' + exportDeclaration.name + ';');\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tmod.body.replace(exportDeclaration.start, exportDeclaration.valueStart, 'module.exports = ');\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tif (options.useStrict !== false) {\n\t\tmod.body.prepend('\\'use strict\\';\\n\\n').trimLines();\n\t}\n\n\treturn packageResult(mod, mod.body, options, 'toCjs');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/defaultsMode/cjs.js.01-babel.map","\n\nexport default umdIntro;\nimport { globalify, req } from 'utils/mappers';\nimport processName from '../amd/processName';\nimport processIds from '../amd/processIds';\nimport getImportSummary from '../amd/getImportSummary';\nfunction umdIntro(_ref) {\n\tvar amdName = _ref.amdName;\n\tvar name = _ref.name;\n\tvar hasExports = _ref.hasExports;\n\tvar imports = _ref.imports;\n\tvar absolutePaths = _ref.absolutePaths;\n\tvar externalDefaults = _ref.externalDefaults;\n\tvar indentStr = _ref.indentStr;\n\tvar strict = _ref.strict;\n\tvar useStrict = _ref.useStrict;\n\n\tvar useStrictPragma = useStrict ? ' \\'use strict\\';' : '';\n\tvar intro = undefined;\n\n\tif (!hasExports && !imports.length) {\n\t\tintro = '(function (factory) {\\n\\t\\t\\t\\t!(typeof exports === \\'object\\' && typeof module !== \\'undefined\\') &&\\n\\t\\t\\t\\ttypeof define === \\'function\\' && define.amd ? define(' + processName(amdName) + 'factory) :\\n\\t\\t\\t\\tfactory()\\n\\t\\t\\t}(function () {' + useStrictPragma + '\\n\\n\\t\\t\\t';\n\t} else {\n\t\tvar _getImportSummary = getImportSummary({ imports: imports, name: amdName, absolutePaths: absolutePaths });\n\n\t\tvar ids = _getImportSummary.ids;\n\t\tvar paths = _getImportSummary.paths;\n\t\tvar names = _getImportSummary.names;\n\n\t\tvar amdExport = undefined,\n\t\t cjsExport = undefined,\n\t\t globalExport = undefined,\n\t\t defaultsBlock = undefined;\n\n\t\tif (strict) {\n\t\t\tcjsExport = 'factory(' + (hasExports ? ['exports'] : []).concat(paths.map(req)).join(', ') + ')';\n\t\t\tvar globalDeps = (hasExports ? ['(global.' + name + ' = {})'] : []).concat(names.map(globalify)).join(', ');\n\t\t\tglobalExport = 'factory(' + globalDeps + ')';\n\n\t\t\tif (hasExports) {\n\t\t\t\tids.unshift('exports');\n\t\t\t\tnames.unshift('exports');\n\t\t\t}\n\n\t\t\tamdExport = 'define(' + processName(amdName) + '' + processIds(ids) + 'factory)';\n\t\t\tdefaultsBlock = '';\n\t\t\tif (externalDefaults && externalDefaults.length > 0) {\n\t\t\t\tdefaultsBlock = externalDefaults.map(function (x) {\n\t\t\t\t\treturn '\\t' + (x.needsNamed ? 'var ' + x.name + '__default' : x.name) + (' = (\\'default\\' in ' + x.name + ' ? ' + x.name + '[\\'default\\'] : ' + x.name + ');');\n\t\t\t\t}).join('\\n') + '\\n\\n';\n\t\t\t}\n\t\t} else {\n\t\t\tamdExport = 'define(' + processName(amdName) + '' + processIds(ids) + 'factory)';\n\t\t\tcjsExport = (hasExports ? 'module.exports = ' : '') + ('factory(' + paths.map(req).join(', ') + ')');\n\t\t\tglobalExport = (hasExports ? 'global.' + name + ' = ' : '') + ('factory(' + names.map(globalify).join(', ') + ')');\n\n\t\t\tdefaultsBlock = '';\n\t\t}\n\n\t\tintro = '(function (global, factory) {\\n\\t\\t\\t\\ttypeof exports === \\'object\\' && typeof module !== \\'undefined\\' ? ' + cjsExport + ' :\\n\\t\\t\\t\\ttypeof define === \\'function\\' && define.amd ? ' + amdExport + ' :\\n\\t\\t\\t\\t' + globalExport + '\\n\\t\\t\\t}(this, function (' + names.join(', ') + ') {' + useStrictPragma + '\\n\\n\\t\\t\\t' + defaultsBlock;\n\t}\n\n\treturn intro.replace(/^\\t\\t\\t/gm, '').replace(/\\t/g, indentStr);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/umd/umdIntro.js.01-babel.map","var EsperantoError = function (message, data) {\n\tvar prop;\n\n\tthis.message = message;\n\tthis.stack = new Error().stack;\n\n\tfor (prop in data) {\n\t\tif (data.hasOwnProperty(prop)) {\n\t\t\tthis[prop] = data[prop];\n\t\t}\n\t}\n};\n\nEsperantoError.prototype = new Error();\nEsperantoError.prototype.constructor = EsperantoError;\nEsperantoError.prototype.name = 'EsperantoError';\n\nexport default EsperantoError;\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/EsperantoError.js.01-babel.map","\n\nexport default requireName;\nimport EsperantoError from 'utils/EsperantoError';\nfunction requireName(options) {\n\tif (!options.name) {\n\t\tthrow new EsperantoError('You must supply a `name` option for UMD modules', {\n\t\t\tcode: 'MISSING_NAME'\n\t\t});\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/umd/requireName.js.01-babel.map","\n\nexport default umd;\nimport transformExportDeclaration from './utils/transformExportDeclaration';\nimport packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nfunction umd(mod, options) {\n\trequireName(options);\n\n\tmod.imports.forEach(function (x) {\n\t\tmod.body.remove(x.start, x.next);\n\t});\n\n\tvar intro = umdIntro({\n\t\thasExports: mod.exports.length > 0,\n\t\timports: mod.imports,\n\t\tamdName: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tname: options.name,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformExportDeclaration(mod.exports[0], mod.body);\n\n\tmod.body.indent().prepend(intro).trimLines().append('\\n\\n}));');\n\n\treturn packageResult(mod, mod.body, options, 'toUmd');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/defaultsMode/umd.js.01-babel.map","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/defaultsMode/index.js.01-babel.map","export default gatherImports;\n\nfunction gatherImports(imports) {\n\tvar chains = {};\n\tvar identifierReplacements = {};\n\n\timports.forEach(function (x) {\n\t\tx.specifiers.forEach(function (s) {\n\t\t\tif (s.isBatch) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar name = s.as;\n\t\t\tvar replacement = x.name + (s.isDefault ? \"['default']\" : \".\" + s.name);\n\n\t\t\tif (!x.passthrough) {\n\t\t\t\tidentifierReplacements[name] = replacement;\n\t\t\t}\n\n\t\t\tchains[name] = replacement;\n\t\t});\n\t});\n\n\treturn [chains, identifierReplacements];\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/utils/gatherImports.js.01-babel.map","export default getExportNames;\n\nfunction getExportNames(exports) {\n\tvar result = {};\n\n\texports.forEach(function (x) {\n\t\tif (x.isDefault) return;\n\n\t\tif (x.hasDeclaration) {\n\t\t\tresult[x.name] = x.name;\n\t\t\treturn;\n\t\t}\n\n\t\tx.specifiers.forEach(function (s) {\n\t\t\tresult[s.name] = s.as;\n\t\t});\n\t});\n\n\treturn result;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/utils/getExportNames.js.01-babel.map","/**\n * Scans an array of imports, and determines which identifiers\n are readonly, and which cannot be assigned to. For example\n you cannot `import foo from 'foo'` then do `foo = 42`, nor\n can you `import * as foo from 'foo'` then do `foo.answer = 42`\n * @param {array} imports - the array of imports\n * @returns {array} [ importedBindings, importedNamespaces ]\n */\nexport default getReadOnlyIdentifiers;\n\nfunction getReadOnlyIdentifiers(imports) {\n\tvar importedBindings = {},\n\t importedNamespaces = {};\n\n\timports.forEach(function (x) {\n\t\tif (x.passthrough) return;\n\n\t\tx.specifiers.forEach(function (s) {\n\t\t\tif (s.isBatch) {\n\t\t\t\timportedNamespaces[s.as] = true;\n\t\t\t} else {\n\t\t\t\timportedBindings[s.as] = true;\n\t\t\t}\n\t\t});\n\t});\n\n\treturn [importedBindings, importedNamespaces];\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/getReadOnlyIdentifiers.js.01-babel.map","\n\nexport default disallowIllegalReassignment;\nimport hasOwnProp from 'utils/hasOwnProp';\n\nvar bindingMessage = 'Cannot reassign imported binding ',\n namespaceMessage = 'Cannot reassign imported binding of namespace ';\nfunction disallowIllegalReassignment(node, importedBindings, importedNamespaces, scope) {\n\tvar assignee = undefined,\n\t isNamespaceAssignment = undefined;\n\n\tif (node.type === 'AssignmentExpression') {\n\t\tassignee = node.left;\n\t} else if (node.type === 'UpdateExpression') {\n\t\tassignee = node.argument;\n\t} else {\n\t\treturn; // not an assignment\n\t}\n\n\tif (assignee.type === 'MemberExpression') {\n\t\tassignee = assignee.object;\n\t\tisNamespaceAssignment = true;\n\t}\n\n\tif (assignee.type !== 'Identifier') {\n\t\treturn; // not assigning to a binding\n\t}\n\n\tvar name = assignee.name;\n\n\tif (hasOwnProp.call(isNamespaceAssignment ? importedNamespaces : importedBindings, name) && !scope.contains(name)) {\n\t\tthrow new Error((isNamespaceAssignment ? namespaceMessage : bindingMessage) + '`' + name + '`');\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/disallowIllegalReassignment.js.01-babel.map","\n\nexport default replaceIdentifiers;\nimport hasOwnProp from 'utils/hasOwnProp';\nfunction replaceIdentifiers(body, node, identifierReplacements, scope) {\n\tvar name = node.name;\n\tvar replacement = hasOwnProp.call(identifierReplacements, name) && identifierReplacements[name];\n\n\t// TODO unchanged identifiers shouldn't have got this far -\n\t// remove the `replacement !== name` safeguard once that's the case\n\tif (replacement && replacement !== name && !scope.contains(name, true)) {\n\t\t// rewrite\n\t\tbody.replace(node.start, node.end, replacement);\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/replaceIdentifiers.js.01-babel.map","\n\nexport default rewriteExportAssignments;\nimport hasOwnProp from 'utils/hasOwnProp';\nfunction rewriteExportAssignments(body, node, parent, exports, scope, capturedUpdates) {\n\tvar assignee = undefined;\n\n\tif (node.type === 'AssignmentExpression') {\n\t\tassignee = node.left;\n\t} else if (node.type === 'UpdateExpression') {\n\t\tassignee = node.argument;\n\t} else {\n\t\treturn; // not an assignment\n\t}\n\n\tif (assignee.type !== 'Identifier') {\n\t\treturn;\n\t}\n\n\tvar name = assignee.name;\n\n\tif (scope.contains(name, true)) {\n\t\treturn; // shadows an export\n\t}\n\n\tif (exports && hasOwnProp.call(exports, name)) {\n\t\tvar exportAs = exports[name];\n\n\t\tif (!!capturedUpdates) {\n\t\t\tcapturedUpdates.push({ name: name, exportAs: exportAs });\n\t\t\treturn;\n\t\t}\n\n\t\t// special case - increment/decrement operators\n\t\tif (node.operator === '++' || node.operator === '--') {\n\t\t\tvar prefix = '';\n\t\t\tvar suffix = ', exports.' + exportAs + ' = ' + name;\n\t\t\tif (parent.type !== 'ExpressionStatement') {\n\t\t\t\tif (!node.prefix) {\n\t\t\t\t\tsuffix += ', ' + name + ' ' + (node.operator === '++' ? '-' : '+') + ' 1';\n\t\t\t\t}\n\t\t\t\tprefix += '( ';\n\t\t\t\tsuffix += ' )';\n\t\t\t}\n\t\t\tbody.insert(node.start, prefix);\n\t\t\tbody.insert(node.end, suffix);\n\t\t} else {\n\t\t\tbody.insert(node.start, 'exports.' + exportAs + ' = ');\n\t\t}\n\t}\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/rewriteExportAssignments.js.01-babel.map","\n\nexport default traverseAst;\n\nimport walk from './walk';\nimport disallowIllegalReassignment from './disallowIllegalReassignment';\nimport replaceIdentifiers from './replaceIdentifiers';\nimport rewriteExportAssignments from './rewriteExportAssignments';\nfunction traverseAst(ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames) {\n\tvar scope = ast._scope;\n\tvar blockScope = ast._blockScope;\n\tvar capturedUpdates = null;\n\tvar previousCapturedUpdates = null;\n\n\twalk(ast, {\n\t\tenter: function (node, parent) {\n\t\t\t// we're only interested in references, not property names etc\n\t\t\tif (node._skip) return this.skip();\n\n\t\t\tif (node._scope) {\n\t\t\t\tscope = node._scope;\n\t\t\t} else if (node._blockScope) {\n\t\t\t\tblockScope = node._blockScope;\n\t\t\t}\n\n\t\t\t// Special case: if you have a variable declaration that updates existing\n\t\t\t// bindings as a side-effect, e.g. `var a = b++`, where `b` is an exported\n\t\t\t// value, we can't simply append `exports.b = b` to the update (as we\n\t\t\t// normally would) because that would be syntactically invalid. Instead,\n\t\t\t// we capture the change and update the export (and any others) after the\n\t\t\t// variable declaration\n\t\t\tif (node.type === 'VariableDeclaration') {\n\t\t\t\tpreviousCapturedUpdates = capturedUpdates;\n\t\t\t\tcapturedUpdates = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tdisallowIllegalReassignment(node, importedBindings, importedNamespaces, scope);\n\n\t\t\t// Rewrite assignments to exports inside functions, to keep bindings live.\n\t\t\t// This call may mutate `capturedUpdates`, which is used elsewhere\n\t\t\tif (scope !== ast._scope) {\n\t\t\t\trewriteExportAssignments(body, node, parent, exportNames, scope, capturedUpdates);\n\t\t\t}\n\n\t\t\tif (node.type === 'Identifier' && parent.type !== 'FunctionExpression') {\n\t\t\t\treplaceIdentifiers(body, node, identifierReplacements, scope);\n\t\t\t}\n\n\t\t\t// Replace top-level this with undefined ES6 8.1.1.5.4\n\t\t\tif (node.type === 'ThisExpression' && node._topLevel) {\n\t\t\t\tbody.replace(node.start, node.end, 'undefined');\n\t\t\t}\n\t\t},\n\n\t\tleave: function (node) {\n\t\t\t// Special case - see above\n\t\t\tif (node.type === 'VariableDeclaration') {\n\t\t\t\tif (capturedUpdates.length) {\n\t\t\t\t\tbody.insert(node.end, capturedUpdates.map(exportCapturedUpdate).join(''));\n\t\t\t\t}\n\n\t\t\t\tcapturedUpdates = previousCapturedUpdates;\n\t\t\t}\n\n\t\t\tif (node._scope) {\n\t\t\t\tscope = scope.parent;\n\t\t\t} else if (node._blockScope) {\n\t\t\t\tblockScope = blockScope.parent;\n\t\t\t}\n\t\t}\n\t});\n}\n\nfunction exportCapturedUpdate(c) {\n\treturn ' exports.' + c.exportAs + ' = ' + c.name + ';';\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/utils/ast/traverse.js.01-babel.map","\n\nexport default transformBody;\n\nimport gatherImports from './gatherImports';\nimport getExportNames from './getExportNames';\nimport getReadOnlyIdentifiers from 'utils/getReadOnlyIdentifiers';\nimport traverseAst from 'utils/ast/traverse';\nimport hasOwnProp from 'utils/hasOwnProp';\nfunction transformBody(mod, body, options) {\n\tvar _gatherImports = gatherImports(mod.imports);\n\n\tvar chains = _gatherImports[0];\n\tvar identifierReplacements = _gatherImports[1];\n\n\tvar exportNames = getExportNames(mod.exports);\n\n\tvar _getReadOnlyIdentifiers = getReadOnlyIdentifiers(mod.imports);\n\n\tvar importedBindings = _getReadOnlyIdentifiers[0];\n\tvar importedNamespaces = _getReadOnlyIdentifiers[1];\n\n\t// ensure no conflict with `exports`\n\tidentifierReplacements.exports = deconflict('exports', mod.ast._declared);\n\n\ttraverseAst(mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames);\n\n\t// Remove import statements from the body of the module\n\tmod.imports.forEach(function (x) {\n\t\tbody.remove(x.start, x.next);\n\t});\n\n\t// Prepend require() statements (CommonJS output only)\n\tif (options.header) {\n\t\tbody.prepend(options.header + '\\n\\n');\n\t}\n\n\t// Remove export statements (but keep declarations)\n\tmod.exports.forEach(function (x) {\n\t\tif (x.isDefault) {\n\t\t\tif (/^named/.test(x.type)) {\n\t\t\t\t// export default function answer () { return 42; }\n\t\t\t\tbody.remove(x.start, x.valueStart);\n\t\t\t\tbody.insert(x.end, '\\nexports[\\'default\\'] = ' + x.name + ';');\n\t\t\t} else {\n\t\t\t\t// everything else\n\t\t\t\tbody.replace(x.start, x.valueStart, 'exports[\\'default\\'] = ');\n\t\t\t}\n\t\t} else {\n\t\t\tswitch (x.type) {\n\t\t\t\tcase 'varDeclaration': // export var answer = 42; (or let)\n\t\t\t\tcase 'namedFunction': // export function answer () {...}\n\t\t\t\tcase 'namedClass':\n\t\t\t\t\t// export class answer {...}\n\t\t\t\t\tbody.remove(x.start, x.valueStart);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'named':\n\t\t\t\t\t// export { foo, bar };\n\t\t\t\t\tbody.remove(x.start, x.next);\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tbody.replace(x.start, x.valueStart, 'exports[\\'default\\'] = ');\n\t\t\t}\n\t\t}\n\t});\n\n\t// Append export block (this is the same for all module types, unlike imports)\n\tvar earlyExports = [];\n\tvar lateExports = [];\n\n\tObject.keys(exportNames).forEach(function (name) {\n\t\tvar exportAs = exportNames[name];\n\n\t\tif (chains.hasOwnProperty(name)) {\n\t\t\t// special case - a binding from another module\n\t\t\tif (!options._evilES3SafeReExports) {\n\t\t\t\tearlyExports.push('Object.defineProperty(exports, \\'' + exportAs + '\\', { enumerable: true, get: function () { return ' + chains[name] + '; }});');\n\t\t\t} else {\n\t\t\t\tlateExports.push('exports.' + exportAs + ' = ' + chains[name] + ';');\n\t\t\t}\n\t\t} else if (~mod.ast._topLevelFunctionNames.indexOf(name)) {\n\t\t\t// functions should be exported early, in\n\t\t\t// case of cyclic dependencies\n\t\t\tearlyExports.push('exports.' + exportAs + ' = ' + name + ';');\n\t\t} else {\n\t\t\tlateExports.push('exports.' + exportAs + ' = ' + name + ';');\n\t\t}\n\t});\n\n\t// Function exports should be exported immediately after 'use strict'\n\tif (earlyExports.length) {\n\t\tbody.trim().prepend(earlyExports.join('\\n') + '\\n\\n');\n\t}\n\n\t// Everything else should be exported at the end\n\tif (lateExports.length) {\n\t\tbody.trim().append('\\n\\n' + lateExports.join('\\n'));\n\t}\n\n\tif (options.intro && options.outro) {\n\t\tbody.indent().prepend(options.intro).trimLines().append(options.outro);\n\t}\n}\n\nfunction deconflict(name, declared) {\n\twhile (hasOwnProp.call(declared, name)) {\n\t\tname = '_' + name;\n\t}\n\n\treturn name;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/utils/transformBody.js.01-babel.map","\n\nexport default amd;\nimport packageResult from '../../../utils/packageResult';\nimport transformBody from './utils/transformBody';\nimport amdIntro from '../../../utils/amd/amdIntro';\nfunction amd(mod, options) {\n\tvar intro = amdIntro({\n\t\tname: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\timports: mod.imports,\n\t\tindentStr: mod.body.getIndentString(),\n\t\thasExports: mod.exports.length,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformBody(mod, mod.body, {\n\t\tintro: intro,\n\t\toutro: '\\n\\n});',\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\treturn packageResult(mod, mod.body, options, 'toAmd');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/amd.js.01-babel.map","\n\nexport default cjs;\nimport packageResult from 'utils/packageResult';\nimport hasOwnProp from 'utils/hasOwnProp';\nimport transformBody from './utils/transformBody';\nimport { req } from 'utils/mappers';\nfunction cjs(mod, options) {\n\tvar seen = {};\n\n\t// Create block of require statements\n\tvar importBlock = mod.imports.map(function (x) {\n\t\tif (!hasOwnProp.call(seen, x.path)) {\n\t\t\tseen[x.path] = true;\n\n\t\t\tif (x.isEmpty) {\n\t\t\t\treturn '' + req(x.path) + ';';\n\t\t\t}\n\n\t\t\treturn 'var ' + x.name + ' = ' + req(x.path) + ';';\n\t\t}\n\t}).filter(Boolean).join('\\n');\n\n\ttransformBody(mod, mod.body, {\n\t\theader: importBlock,\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\tif (options.useStrict !== false) {\n\t\tmod.body.prepend('\\'use strict\\';\\n\\n').trimLines();\n\t}\n\n\treturn packageResult(mod, mod.body, options, 'toCjs');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/cjs.js.01-babel.map","\n\nexport default umd;\nimport packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nimport transformBody from './utils/transformBody';\nfunction umd(mod, options) {\n\trequireName(options);\n\n\tvar intro = umdIntro({\n\t\thasExports: mod.exports.length > 0,\n\t\timports: mod.imports,\n\t\tamdName: options.amdName,\n\t\tabsolutePaths: options.absolutePaths,\n\t\tname: options.name,\n\t\tindentStr: mod.body.getIndentString(),\n\t\tstrict: true,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\ttransformBody(mod, mod.body, {\n\t\tintro: intro,\n\t\toutro: '\\n\\n}));',\n\t\t_evilES3SafeReExports: options._evilES3SafeReExports\n\t});\n\n\treturn packageResult(mod, mod.body, options, 'toUmd');\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/umd.js.01-babel.map","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/strictMode/index.js.01-babel.map","// TODO rewrite with named imports/exports\nimport defaultsMode from './defaultsMode';\nimport strictMode from './strictMode';\n\nexport default {\n\tdefaultsMode: defaultsMode,\n\tstrictMode: strictMode\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/standalone/builders/index.js.01-babel.map","\n\nexport default amd;\nimport packageResult from '../../../utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\nfunction amd(bundle, options) {\n\tvar defaultName = bundle.entryModule.identifierReplacements['default'];\n\tif (defaultName) {\n\t\tbundle.body.append('\\n\\nreturn ' + defaultName + ';');\n\t}\n\n\tvar intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: bundle.externalModules,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tbundle.body.indent().prepend(intro).trimLines().append('\\n\\n});');\n\treturn packageResult(bundle, bundle.body, options, 'toAmd', true);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/defaultsMode/amd.js.01-babel.map","\n\nexport default cjs;\nimport packageResult from 'utils/packageResult';\nimport { req } from 'utils/mappers';\nfunction cjs(bundle, options) {\n\tvar importBlock = bundle.externalModules.map(function (x) {\n\t\treturn 'var ' + x.name + ' = ' + req(x.id) + ';';\n\t}).join('\\n');\n\n\tif (importBlock) {\n\t\tbundle.body.prepend(importBlock + '\\n\\n');\n\t}\n\n\tvar defaultName = bundle.entryModule.identifierReplacements['default'];\n\tif (defaultName) {\n\t\tbundle.body.append('\\n\\nmodule.exports = ' + defaultName + ';');\n\t}\n\n\tif (options.useStrict !== false) {\n\t\tbundle.body.prepend('\\'use strict\\';\\n\\n').trimLines();\n\t}\n\n\treturn packageResult(bundle, bundle.body, options, 'toCjs', true);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/defaultsMode/cjs.js.01-babel.map","\n\nexport default umd;\nimport packageResult from 'utils/packageResult';\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nfunction umd(bundle, options) {\n\trequireName(options);\n\n\tvar entry = bundle.entryModule;\n\n\tvar intro = umdIntro({\n\t\thasExports: entry.exports.length > 0,\n\t\timports: bundle.externalModules,\n\t\tamdName: options.amdName,\n\t\tname: options.name,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tif (entry.defaultExport) {\n\t\tbundle.body.append('\\n\\nreturn ' + entry.identifierReplacements['default'] + ';');\n\t}\n\n\tbundle.body.indent().prepend(intro).trimLines().append('\\n\\n}));');\n\n\treturn packageResult(bundle, bundle.body, options, 'toUmd', true);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/defaultsMode/umd.js.01-babel.map","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/defaultsMode/index.js.01-babel.map","export default getExportBlock;\n\nfunction getExportBlock(entry) {\n\tvar name = entry.identifierReplacements[\"default\"];\n\treturn \"exports['default'] = \" + name + \";\";\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/strictMode/utils/getExportBlock.js.01-babel.map","\n\nexport default amd;\n\nimport packageResult from '../../../utils/packageResult';\nimport amdIntro from '../../../utils/amd/amdIntro';\nimport getExportBlock from './utils/getExportBlock';\nfunction amd(bundle, options) {\n\tvar externalDefaults = bundle.externalModules.filter(needsDefault);\n\tvar entry = bundle.entryModule;\n\n\tif (externalDefaults.length) {\n\t\tvar defaultsBlock = externalDefaults.map(function (x) {\n\t\t\t// Case 1: default is used, and named is not\n\t\t\tif (!x.needsNamed) {\n\t\t\t\treturn '' + x.name + ' = (\\'default\\' in ' + x.name + ' ? ' + x.name + '[\\'default\\'] : ' + x.name + ');';\n\t\t\t}\n\n\t\t\t// Case 2: both default and named are used\n\t\t\treturn 'var ' + x.name + '__default = (\\'default\\' in ' + x.name + ' ? ' + x.name + '[\\'default\\'] : ' + x.name + ');';\n\t\t}).join('\\n');\n\n\t\tbundle.body.prepend(defaultsBlock + '\\n\\n');\n\t}\n\n\tif (entry.defaultExport) {\n\t\tbundle.body.append('\\n\\n' + getExportBlock(entry));\n\t}\n\n\tvar intro = amdIntro({\n\t\tname: options.amdName,\n\t\timports: bundle.externalModules,\n\t\thasExports: entry.exports.length,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tbundle.body.indent().prepend(intro).trimLines().append('\\n\\n});');\n\treturn packageResult(bundle, bundle.body, options, 'toAmd', true);\n}\n\nfunction needsDefault(externalModule) {\n\treturn externalModule.needsDefault;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/strictMode/amd.js.01-babel.map","\n\nexport default cjs;\nimport packageResult from 'utils/packageResult';\nimport getExportBlock from './utils/getExportBlock';\nimport { req } from 'utils/mappers';\nfunction cjs(bundle, options) {\n\tvar entry = bundle.entryModule;\n\n\tvar importBlock = bundle.externalModules.map(function (x) {\n\t\tvar statement = 'var ' + x.name + ' = ' + req(x.id) + ';';\n\n\t\tif (x.needsDefault) {\n\t\t\tstatement += '\\n' + (x.needsNamed ? 'var ' + x.name + '__default' : x.name) + (' = (\\'default\\' in ' + x.name + ' ? ' + x.name + '[\\'default\\'] : ' + x.name + ');');\n\t\t}\n\n\t\treturn statement;\n\t}).join('\\n');\n\n\tif (importBlock) {\n\t\tbundle.body.prepend(importBlock + '\\n\\n');\n\t}\n\n\tif (entry.defaultExport) {\n\t\tbundle.body.append('\\n\\n' + getExportBlock(entry));\n\t}\n\n\tif (options.useStrict !== false) {\n\t\tbundle.body.prepend('\\'use strict\\';\\n\\n').trimLines();\n\t}\n\n\treturn packageResult(bundle, bundle.body, options, 'toCjs', true);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/strictMode/cjs.js.01-babel.map","\n\nexport default umd;\n\nimport umdIntro from 'utils/umd/umdIntro';\nimport requireName from 'utils/umd/requireName';\nimport packageResult from 'utils/packageResult';\nimport getExportBlock from './utils/getExportBlock';\nfunction umd(bundle, options) {\n\trequireName(options);\n\n\tvar entry = bundle.entryModule;\n\n\tvar intro = umdIntro({\n\t\thasExports: entry.exports.length > 0,\n\t\timports: bundle.externalModules,\n\t\texternalDefaults: bundle.externalModules.filter(needsDefault),\n\t\tamdName: options.amdName,\n\t\tname: options.name,\n\t\tindentStr: bundle.body.getIndentString(),\n\t\tstrict: true,\n\t\tuseStrict: options.useStrict !== false\n\t});\n\n\tif (entry.defaultExport) {\n\t\tbundle.body.append('\\n\\n' + getExportBlock(entry));\n\t}\n\n\tbundle.body.indent().prepend(intro).trimLines().append('\\n\\n}));');\n\n\treturn packageResult(bundle, bundle.body, options, 'toUmd', true);\n}\n\nfunction needsDefault(externalModule) {\n\treturn externalModule.needsDefault;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/strictMode/umd.js.01-babel.map","import amd from './amd';\nimport cjs from './cjs';\nimport umd from './umd';\n\nexport default {\n\tamd: amd,\n\tcjs: cjs,\n\tumd: umd\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/strictMode/index.js.01-babel.map","// TODO rewrite with named imports/exports\nimport defaultsMode from './defaultsMode';\nimport strictMode from './strictMode';\n\nexport default {\n\tdefaultsMode: defaultsMode,\n\tstrictMode: strictMode\n};\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/index.js.01-babel.map","\n\nexport default concat;\nimport packageResult from 'utils/packageResult';\nfunction concat(bundle, options) {\n\t// This bundle must be self-contained - no imports or exports\n\tif (bundle.externalModules.length || bundle.entryModule.exports.length) {\n\t\tthrow new Error('bundle.concat() can only be used with bundles that have no imports/exports (imports: [' + bundle.externalModules.map(function (x) {\n\t\t\treturn x.id;\n\t\t}).join(', ') + '], exports: [' + bundle.entryModule.exports.join(', ') + '])');\n\t}\n\n\t// TODO test these options\n\tvar intro = 'intro' in options ? options.intro : '(function () { \\'use strict\\';\\n\\n';\n\tvar outro = 'outro' in options ? options.outro : '\\n\\n})();';\n\tvar indent = undefined;\n\n\tif (!('indent' in options) || options.indent === true) {\n\t\tindent = bundle.body.getIndentString();\n\t} else {\n\t\tindent = options.indent || '';\n\t}\n\n\tbundle.body.trimLines().indent(indent).prepend(intro).append(outro);\n\n\treturn packageResult(bundle, bundle.body, options, 'toString', true);\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/bundler/builders/concat.js.01-babel.map","\n\nexport { bundle };\n\nimport hasNamedImports from 'utils/hasNamedImports';\nimport hasNamedExports from 'utils/hasNamedExports';\nimport getStandaloneModule from 'standalone/getModule';\nimport getBundle from 'bundler/getBundle';\nimport moduleBuilders from 'standalone/builders';\nimport bundleBuilders from 'bundler/builders';\nimport concat from 'bundler/builders/concat';\nimport { getName } from 'utils/mappers';\n\nvar deprecateMessage = 'options.defaultOnly has been deprecated, and is now standard behaviour. To use named imports/exports, pass `strict: true`.';\nvar alreadyWarned = false;\n\nfunction transpileMethod(format) {\n\treturn function (source) {\n\t\tvar options = arguments[1] === undefined ? {} : arguments[1];\n\n\t\tvar mod = getStandaloneModule({\n\t\t\tsource: source,\n\t\t\tgetModuleName: options.getModuleName,\n\t\t\tstrict: options.strict\n\t\t});\n\n\t\tif ('defaultOnly' in options && !alreadyWarned) {\n\t\t\t// TODO link to a wiki page explaining this, or something\n\t\t\tconsole.log(deprecateMessage);\n\t\t\talreadyWarned = true;\n\t\t}\n\n\t\tif (options.absolutePaths && !options.amdName) {\n\t\t\tthrow new Error('You must specify an `amdName` in order to use the `absolutePaths` option');\n\t\t}\n\n\t\tvar builder = undefined;\n\n\t\tif (!options.strict) {\n\t\t\t// ensure there are no named imports/exports. TODO link to a wiki page...\n\t\t\tif (hasNamedImports(mod) || hasNamedExports(mod)) {\n\t\t\t\tthrow new Error('You must be in strict mode (pass `strict: true`) to use named imports or exports');\n\t\t\t}\n\n\t\t\tbuilder = moduleBuilders.defaultsMode[format];\n\t\t} else {\n\t\t\tbuilder = moduleBuilders.strictMode[format];\n\t\t}\n\n\t\treturn builder(mod, options);\n\t};\n}\n\nvar toAmd = transpileMethod('amd');\nexport { toAmd };\nvar toCjs = transpileMethod('cjs');\nexport { toCjs };\nvar toUmd = transpileMethod('umd');export { toUmd };\n\nfunction bundle(options) {\n\treturn getBundle(options).then(function (bundle) {\n\t\treturn {\n\t\t\timports: bundle.externalModules.map(function (mod) {\n\t\t\t\treturn mod.id;\n\t\t\t}),\n\t\t\texports: flattenExports(bundle.entryModule.exports),\n\n\t\t\ttoAmd: function (options) {\n\t\t\t\treturn transpile('amd', options);\n\t\t\t},\n\t\t\ttoCjs: function (options) {\n\t\t\t\treturn transpile('cjs', options);\n\t\t\t},\n\t\t\ttoUmd: function (options) {\n\t\t\t\treturn transpile('umd', options);\n\t\t\t},\n\n\t\t\tconcat: function (options) {\n\t\t\t\treturn concat(bundle, options || {});\n\t\t\t}\n\t\t};\n\n\t\tfunction transpile(format) {\n\t\t\tvar options = arguments[1] === undefined ? {} : arguments[1];\n\n\t\t\tif ('defaultOnly' in options && !alreadyWarned) {\n\t\t\t\t// TODO link to a wiki page explaining this, or something\n\t\t\t\tconsole.log(deprecateMessage);\n\t\t\t\talreadyWarned = true;\n\t\t\t}\n\n\t\t\tvar builder = undefined;\n\n\t\t\tif (!options.strict) {\n\t\t\t\t// ensure there are no named imports/exports\n\t\t\t\tif (hasNamedExports(bundle.entryModule)) {\n\t\t\t\t\tthrow new Error('Entry module can only have named exports in strict mode (pass `strict: true`)');\n\t\t\t\t}\n\n\t\t\t\tbundle.modules.forEach(function (mod) {\n\t\t\t\t\tmod.imports.forEach(function (x) {\n\t\t\t\t\t\tif (x.module.isExternal && (!x.isDefault && !x.isBatch)) {\n\t\t\t\t\t\t\tthrow new Error('You can only have named external imports in strict mode (pass `strict: true`)');\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tbuilder = bundleBuilders.defaultsMode[format];\n\t\t\t} else {\n\t\t\t\tbuilder = bundleBuilders.strictMode[format];\n\t\t\t}\n\n\t\t\treturn builder(bundle, options);\n\t\t}\n\t});\n}\n\nfunction flattenExports(exports) {\n\tvar flattened = [];\n\n\texports.forEach(function (x) {\n\t\tif (x.isDefault) {\n\t\t\tflattened.push('default');\n\t\t} else if (x.name) {\n\t\t\tflattened.push(x.name);\n\t\t} else if (x.specifiers) {\n\t\t\tflattened.push.apply(flattened, x.specifiers.map(getName));\n\t\t}\n\t});\n\n\treturn flattened;\n}\n//# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/01-babel/1/esperanto.js.01-babel.map"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*
2
- esperanto.js v0.6.34 - 2015-05-12
2
+ esperanto.js v0.7.0 - 2015-05-12
3
3
  http://esperantojs.org
4
4
 
5
5
  Released under the MIT License.
@@ -9,118 +9,133 @@
9
9
 
10
10
  var acorn = require('acorn');
11
11
  var MagicString = require('magic-string');
12
+ MagicString = ('default' in MagicString ? MagicString['default'] : MagicString);
12
13
  var _path = require('path');
13
14
  var sander = require('sander');
14
15
 
15
- function hasNamedImports ( mod ) {
16
+ var utils_hasNamedImports = hasNamedImports;
17
+
18
+ function hasNamedImports(mod) {
16
19
  var i = mod.imports.length;
17
20
 
18
- while ( i-- ) {
19
- if ( mod.imports[i].isNamed ) {
21
+ while (i--) {
22
+ if (mod.imports[i].isNamed) {
20
23
  return true;
21
24
  }
22
25
  }
23
26
  }
24
27
 
25
- function hasNamedExports ( mod ) {
28
+ var utils_hasNamedExports = hasNamedExports;
29
+
30
+ function hasNamedExports(mod) {
26
31
  var i = mod.exports.length;
27
32
 
28
- while ( i-- ) {
29
- if ( !mod.exports[i].isDefault ) {
33
+ while (i--) {
34
+ if (!mod.exports[i].isDefault) {
30
35
  return true;
31
36
  }
32
37
  }
33
38
  }
34
39
 
35
- var ast_walk__shouldSkip = void 0;
36
- var ast_walk__shouldAbort = void 0;
40
+ var ast_walk = walk;
37
41
 
38
- function walk ( ast, leave) {var enter = leave.enter, leave = leave.leave;
39
- ast_walk__shouldAbort = false;
40
- visit( ast, null, enter, leave );
42
+ var shouldSkip = undefined;
43
+ var shouldAbort = undefined;
44
+ function walk(ast, _ref) {
45
+ var enter = _ref.enter;
46
+ var leave = _ref.leave;
47
+
48
+ shouldAbort = false;
49
+ visit(ast, null, enter, leave);
41
50
  }
42
51
 
43
- var ast_walk__context = {
44
- skip: function() {return ast_walk__shouldSkip = true},
45
- abort: function() {return ast_walk__shouldAbort = true}
52
+ var context = {
53
+ skip: function () {
54
+ return shouldSkip = true;
55
+ },
56
+ abort: function () {
57
+ return shouldAbort = true;
58
+ }
46
59
  };
47
60
 
48
- var ast_walk__childKeys = {};
61
+ var childKeys = {};
49
62
 
50
- var ast_walk__toString = Object.prototype.toString;
63
+ var toString = Object.prototype.toString;
51
64
 
52
- function isArray ( thing ) {
53
- return ast_walk__toString.call( thing ) === '[object Array]';
65
+ function isArray(thing) {
66
+ return toString.call(thing) === '[object Array]';
54
67
  }
55
68
 
56
- function visit ( node, parent, enter, leave ) {
57
- if ( !node || ast_walk__shouldAbort ) return;
69
+ function visit(node, parent, enter, leave) {
70
+ if (!node || shouldAbort) return;
58
71
 
59
- if ( enter ) {
60
- ast_walk__shouldSkip = false;
61
- enter.call( ast_walk__context, node, parent );
62
- if ( ast_walk__shouldSkip || ast_walk__shouldAbort ) return;
72
+ if (enter) {
73
+ shouldSkip = false;
74
+ enter.call(context, node, parent);
75
+ if (shouldSkip || shouldAbort) return;
63
76
  }
64
77
 
65
- var keys = ast_walk__childKeys[ node.type ] || (
66
- ast_walk__childKeys[ node.type ] = Object.keys( node ).filter( function(key ) {return typeof node[ key ] === 'object'} )
67
- );
78
+ var keys = childKeys[node.type] || (childKeys[node.type] = Object.keys(node).filter(function (key) {
79
+ return typeof node[key] === 'object';
80
+ }));
68
81
 
69
- var key, value, i, j;
82
+ var key = undefined,
83
+ value = undefined,
84
+ i = undefined,
85
+ j = undefined;
70
86
 
71
87
  i = keys.length;
72
- while ( i-- ) {
88
+ while (i--) {
73
89
  key = keys[i];
74
- value = node[ key ];
90
+ value = node[key];
75
91
 
76
- if ( isArray( value ) ) {
92
+ if (isArray(value)) {
77
93
  j = value.length;
78
- while ( j-- ) {
79
- visit( value[j], node, enter, leave );
94
+ while (j--) {
95
+ visit(value[j], node, enter, leave);
80
96
  }
81
- }
82
-
83
- else if ( value && value.type ) {
84
- visit( value, node, enter, leave );
97
+ } else if (value && value.type) {
98
+ visit(value, node, enter, leave);
85
99
  }
86
100
  }
87
101
 
88
- if ( leave && !ast_walk__shouldAbort ) {
89
- leave( node, parent );
102
+ if (leave && !shouldAbort) {
103
+ leave(node, parent);
90
104
  }
91
105
  }
92
106
 
93
- function getId ( m ) {
107
+ function getId(m) {
94
108
  return m.id;
95
109
  }
96
110
 
97
- function getName ( m ) {
111
+ function getName(m) {
98
112
  return m.name;
99
113
  }
100
114
 
101
- function quote ( str ) {
115
+ function quote(str) {
102
116
  return "'" + JSON.stringify(str).slice(1, -1).replace(/'/g, "\\'") + "'";
103
117
  }
104
118
 
105
- function req ( path ) {
106
- return (("require(" + (quote(path))) + ")");
119
+ function req(path) {
120
+ return "require(" + quote(path) + ")";
107
121
  }
108
122
 
109
- function globalify ( name ) {
110
- if ( /^__dep\d+__$/.test( name ) ) {
111
- return 'undefined';
123
+ function globalify(name) {
124
+ if (/^__dep\d+__$/.test(name)) {
125
+ return "undefined";
112
126
  } else {
113
- return ("global." + name);
127
+ return "global." + name;
114
128
  }
115
129
  }
116
130
 
131
+ var annotate = annotateAst;
117
132
  /*
118
133
  This module traverse a module's AST, attaching scope information
119
134
  to nodes as it goes, which is later used to determine which
120
135
  identifiers need to be rewritten to avoid collisions
121
136
  */
122
137
 
123
- function Scope ( options ) {
138
+ function Scope(options) {
124
139
  options = options || {};
125
140
 
126
141
  this.parent = options.parent;
@@ -128,28 +143,29 @@ function Scope ( options ) {
128
143
  }
129
144
 
130
145
  Scope.prototype = {
131
- add: function ( name ) {
132
- this.names.push( name );
146
+ add: function (name) {
147
+ this.names.push(name);
133
148
  },
134
149
 
135
- contains: function ( name, ignoreTopLevel ) {
136
- if ( ignoreTopLevel && !this.parent ) {
150
+ contains: function (name, ignoreTopLevel) {
151
+ if (ignoreTopLevel && !this.parent) {
137
152
  return false;
138
153
  }
139
154
 
140
- if ( ~this.names.indexOf( name ) ) {
155
+ if (~this.names.indexOf(name)) {
141
156
  return true;
142
157
  }
143
158
 
144
- if ( this.parent ) {
145
- return this.parent.contains( name, ignoreTopLevel );
159
+ if (this.parent) {
160
+ return this.parent.contains(name, ignoreTopLevel);
146
161
  }
147
162
 
148
163
  return false;
149
164
  }
150
165
  };
166
+ function annotateAst(ast, options) {
167
+ var trackAssignments = options && options.trackAssignments;
151
168
 
152
- function annotateAst ( ast ) {
153
169
  var scope = new Scope();
154
170
  var blockScope = new Scope();
155
171
  var declared = {};
@@ -158,38 +174,40 @@ function annotateAst ( ast ) {
158
174
 
159
175
  var envDepth = 0;
160
176
 
161
- walk( ast, {
162
- enter: function ( node ) {
163
- if ( node.type === 'ImportDeclaration' || node.type === 'ExportSpecifier' ) {
177
+ ast_walk(ast, {
178
+ enter: function (node) {
179
+ if (node.type === 'ImportDeclaration' || node.type === 'ExportSpecifier') {
164
180
  node._skip = true;
165
181
  }
166
182
 
167
- if ( node._skip ) {
183
+ if (node._skip) {
168
184
  return this.skip();
169
185
  }
170
186
 
171
- switch ( node.type ) {
187
+ switch (node.type) {
172
188
  case 'FunctionExpression':
173
189
  case 'FunctionDeclaration':
174
190
 
175
191
  envDepth += 1;
176
192
 
177
- // fallthrough
193
+ // fallthrough
178
194
 
179
195
  case 'ArrowFunctionExpression':
180
- if ( node.id ) {
181
- addToScope( node );
196
+ if (node.id) {
197
+ addToScope(node);
182
198
 
183
199
  // If this is the root scope, this may need to be
184
200
  // exported early, so we make a note of it
185
- if ( !scope.parent && node.type === 'FunctionDeclaration' ) {
186
- topLevelFunctionNames.push( node.id.name );
201
+ if (!scope.parent && node.type === 'FunctionDeclaration') {
202
+ topLevelFunctionNames.push(node.id.name);
187
203
  }
188
204
  }
189
205
 
190
- var names = node.params.map( getName );
206
+ var names = node.params.map(getName);
191
207
 
192
- names.forEach( function(name ) {return declared[ name ] = true} );
208
+ names.forEach(function (name) {
209
+ return declared[name] = true;
210
+ });
193
211
 
194
212
  scope = node._scope = new Scope({
195
213
  parent: scope,
@@ -206,19 +224,19 @@ function annotateAst ( ast ) {
206
224
  break;
207
225
 
208
226
  case 'VariableDeclaration':
209
- node.declarations.forEach( node.kind === 'let' ? addToBlockScope : addToScope );
227
+ node.declarations.forEach(node.kind === 'let' ? addToBlockScope : addToScope);
210
228
  break;
211
229
 
212
230
  case 'ClassExpression':
213
231
  case 'ClassDeclaration':
214
- addToScope( node );
232
+ addToScope(node);
215
233
  break;
216
234
 
217
235
  case 'MemberExpression':
218
- if ( envDepth === 0 && node.object.type === 'ThisExpression' ) {
236
+ if (envDepth === 0 && node.object.type === 'ThisExpression') {
219
237
  throw new Error('`this` at the top level is undefined');
220
238
  }
221
- !node.computed && ( node.property._skip = true );
239
+ !node.computed && (node.property._skip = true);
222
240
  break;
223
241
 
224
242
  case 'Property':
@@ -226,7 +244,7 @@ function annotateAst ( ast ) {
226
244
  break;
227
245
 
228
246
  case 'TemplateLiteral':
229
- templateLiteralRanges.push([ node.start, node.end ]);
247
+ templateLiteralRanges.push([node.start, node.end]);
230
248
  break;
231
249
 
232
250
  case 'ThisExpression':
@@ -234,16 +252,24 @@ function annotateAst ( ast ) {
234
252
  node._topLevel = true;
235
253
  }
236
254
  break;
255
+
256
+ case 'AssignmentExpression':
257
+ assignTo(node.left);
258
+ break;
259
+
260
+ case 'UpdateExpression':
261
+ assignTo(node.argument);
262
+ break;
237
263
  }
238
264
  },
239
- leave: function ( node ) {
240
- switch ( node.type ) {
265
+ leave: function (node) {
266
+ switch (node.type) {
241
267
  case 'FunctionExpression':
242
268
  case 'FunctionDeclaration':
243
269
 
244
270
  envDepth -= 1;
245
271
 
246
- // fallthrough
272
+ // fallthrough
247
273
 
248
274
  case 'ArrowFunctionExpression':
249
275
 
@@ -258,23 +284,34 @@ function annotateAst ( ast ) {
258
284
  }
259
285
  });
260
286
 
261
- function addToScope ( declarator ) {
287
+ function assignTo(node) {
288
+ if (trackAssignments && node.type === 'Identifier' && node.name === trackAssignments.name) {
289
+ // This is possibly somewhat hacky. Open to alternative approaches...
290
+ // It will yield false positives if `foo` in `export default foo` is shadowed
291
+ (trackAssignments._assignments || (trackAssignments._assignments = [])).push({
292
+ scope: scope,
293
+ node: node
294
+ });
295
+ }
296
+ }
297
+
298
+ function addToScope(declarator) {
262
299
  var name = declarator.id.name;
263
300
 
264
- scope.add( name );
265
- declared[ name ] = true;
301
+ scope.add(name);
302
+ declared[name] = true;
266
303
  }
267
304
 
268
- function addToBlockScope ( declarator ) {
305
+ function addToBlockScope(declarator) {
269
306
  var name = declarator.id.name;
270
307
 
271
- blockScope.add( name );
272
- declared[ name ] = true;
308
+ blockScope.add(name);
309
+ declared[name] = true;
273
310
  }
274
311
 
275
312
  ast._scope = scope;
276
313
  ast._blockScope = blockScope;
277
- ast._topLevelNames = ast._scope.names.concat( ast._blockScope.names );
314
+ ast._topLevelNames = ast._scope.names.concat(ast._blockScope.names);
278
315
  ast._topLevelFunctionNames = topLevelFunctionNames;
279
316
  ast._declared = declared;
280
317
  ast._templateLiteralRanges = templateLiteralRanges;
@@ -282,66 +319,66 @@ function annotateAst ( ast ) {
282
319
 
283
320
  /**
284
321
  * Inspects a module and discovers/categorises import & export declarations
285
- * @param {object} mod - the module object
286
- * @param {string} source - the module's original source code
287
322
  * @param {object} ast - the result of parsing `source` with acorn
288
- * @returns {array} - [ imports, exports ]
323
+ * @param {string} source - the module's original source code
324
+ * @returns {object} - { imports, exports, defaultExport }
289
325
  */
290
- function findImportsAndExports ( mod, source, ast ) {
291
- var imports = [], exports = [], previousDeclaration;
326
+ var ast_findImportsAndExports = findImportsAndExports;
292
327
 
293
- ast.body.forEach( function(node ) {
328
+ function findImportsAndExports(ast, source) {
329
+ var imports = [];
330
+ var exports = [];
331
+ var defaultExport = undefined;
332
+ var previousDeclaration = undefined;
333
+
334
+ ast.body.forEach(function (node) {
294
335
  var passthrough, declaration;
295
336
 
296
- if ( previousDeclaration ) {
337
+ if (previousDeclaration) {
297
338
  previousDeclaration.next = node.start;
298
339
 
299
- if ( node.type !== 'EmptyStatement' ) {
340
+ if (node.type !== 'EmptyStatement') {
300
341
  previousDeclaration = null;
301
342
  }
302
343
  }
303
344
 
304
- if ( node.type === 'ImportDeclaration' ) {
305
- declaration = processImport( node );
306
- imports.push( declaration );
307
- }
308
-
309
- else if ( node.type === 'ExportDefaultDeclaration' ) {
310
- declaration = processDefaultExport( node, source );
311
- exports.push( declaration );
345
+ if (node.type === 'ImportDeclaration') {
346
+ declaration = processImport(node);
347
+ imports.push(declaration);
348
+ } else if (node.type === 'ExportDefaultDeclaration') {
349
+ declaration = processDefaultExport(node, source);
350
+ exports.push(declaration);
312
351
 
313
- if ( mod.defaultExport ) {
314
- throw new Error( 'Duplicate default exports' );
352
+ if (defaultExport) {
353
+ throw new Error('Duplicate default exports');
315
354
  }
316
- mod.defaultExport = declaration;
317
- }
318
-
319
- else if ( node.type === 'ExportNamedDeclaration' ) {
320
- declaration = processExport( node, source );
321
- exports.push( declaration );
355
+ defaultExport = declaration;
356
+ } else if (node.type === 'ExportNamedDeclaration') {
357
+ declaration = processExport(node, source);
358
+ exports.push(declaration);
322
359
 
323
- if ( node.source ) {
360
+ if (node.source) {
324
361
  // it's both an import and an export, e.g.
325
362
  // `export { foo } from './bar';
326
- passthrough = processImport( node, true );
327
- imports.push( passthrough );
363
+ passthrough = processImport(node, true);
364
+ imports.push(passthrough);
328
365
 
329
366
  declaration.passthrough = passthrough;
330
367
  }
331
368
  }
332
369
 
333
- if ( declaration ) {
370
+ if (declaration) {
334
371
  previousDeclaration = declaration;
335
372
  }
336
373
  });
337
374
 
338
375
  // catch any trailing semicolons
339
- if ( previousDeclaration ) {
376
+ if (previousDeclaration) {
340
377
  previousDeclaration.next = source.length;
341
378
  previousDeclaration.isFinal = true;
342
379
  }
343
380
 
344
- return [ imports, exports ];
381
+ return { imports: imports, exports: exports, defaultExport: defaultExport };
345
382
  }
346
383
 
347
384
  /**
@@ -350,7 +387,7 @@ function findImportsAndExports ( mod, source, ast ) {
350
387
  * @param {boolean} passthrough - `true` if this is an `export { foo } from 'bar'`-style declaration
351
388
  * @returns {object}
352
389
  */
353
- function processImport ( node, passthrough ) {
390
+ function processImport(node, passthrough) {
354
391
  var x = {
355
392
  module: null, // used by bundler - filled in later
356
393
  node: node,
@@ -359,38 +396,40 @@ function processImport ( node, passthrough ) {
359
396
  passthrough: !!passthrough,
360
397
 
361
398
  path: node.source.value,
362
- specifiers: node.specifiers.map( function(s ) {
363
- if ( s.type === 'ImportNamespaceSpecifier' ) {
399
+ specifiers: node.specifiers.map(function (s) {
400
+ if (s.type === 'ImportNamespaceSpecifier') {
364
401
  return {
365
402
  isBatch: true,
366
403
  name: s.local.name, // TODO is this line necessary?
367
- as: s.local.name
404
+ as: s.local.name,
405
+ origin: null // filled in later by bundler
368
406
  };
369
407
  }
370
408
 
371
- if ( s.type === 'ImportDefaultSpecifier' ) {
409
+ if (s.type === 'ImportDefaultSpecifier') {
372
410
  return {
373
411
  isDefault: true,
374
412
  name: 'default',
375
- as: s.local.name
413
+ as: s.local.name,
414
+ origin: null
376
415
  };
377
416
  }
378
417
 
379
418
  return {
380
- name: ( !!passthrough ? s.exported : s.imported ).name,
381
- as: s.local.name
419
+ name: (!!passthrough ? s.exported : s.imported).name,
420
+ as: s.local.name,
421
+ origin: null
382
422
  };
383
423
  })
384
424
  };
385
425
 
386
426
  // TODO have different types of imports - batch, default, named
387
- if ( x.specifiers.length === 0 ) {
427
+ if (x.specifiers.length === 0) {
388
428
  x.isEmpty = true;
389
- } else if ( x.specifiers.length === 1 && x.specifiers[0].isDefault ) {
429
+ } else if (x.specifiers.length === 1 && x.specifiers[0].isDefault) {
390
430
  x.isDefault = true;
391
431
  x.as = x.specifiers[0].as;
392
-
393
- } else if ( x.specifiers.length === 1 && x.specifiers[0].isBatch ) {
432
+ } else if (x.specifiers.length === 1 && x.specifiers[0].isBatch) {
394
433
  x.isBatch = true;
395
434
  x.as = x.specifiers[0].name;
396
435
  } else {
@@ -400,50 +439,43 @@ function processImport ( node, passthrough ) {
400
439
  return x;
401
440
  }
402
441
 
403
- function processDefaultExport ( node, source ) {
442
+ function processDefaultExport(node, source) {
443
+ var d = node.declaration;
444
+
404
445
  var result = {
405
- isDefault: true,
406
446
  node: node,
447
+ isDefault: true,
407
448
  start: node.start,
408
- end: node.end
449
+ end: node.end,
450
+ value: source.slice(d.start, d.end),
451
+ valueStart: d.start,
452
+ hasDeclaration: null,
453
+ type: null,
454
+ name: null
409
455
  };
410
456
 
411
- var d = node.declaration;
412
-
413
- if ( d.type === 'FunctionExpression' ) {
414
- // Case 1: `export default function () {...}`
415
- result.hasDeclaration = true; // TODO remove in favour of result.type
416
- result.type = 'anonFunction';
417
- }
418
-
419
- else if ( d.type === 'FunctionDeclaration' ) {
420
- // Case 2: `export default function foo () {...}`
421
- result.hasDeclaration = true; // TODO remove in favour of result.type
422
- result.type = 'namedFunction';
423
- result.name = d.id.name;
424
- }
457
+ // possible declaration types:
458
+ // * FunctionExpression - `export default function () {...}`
459
+ // * FunctionDeclaration - `export default function foo () {...}`
460
+ // * ClassExpression - `export default class {...}`
461
+ // * ClassDeclaration - `export default class Foo {...}`
462
+ var match = /^(Function|Class)(Declaration)?/.exec(d.type);
425
463
 
426
- else if ( d.type === 'ClassExpression' ) {
427
- // Case 3: `export default class {...}`
428
- result.hasDeclaration = true; // TODO remove in favour of result.type
429
- result.type = 'anonClass';
430
- }
464
+ if (match) {
465
+ result.hasDeclaration = true;
466
+ result.type = (match[2] ? 'named' : 'anon') + match[1];
431
467
 
432
- else if ( d.type === 'ClassDeclaration' ) {
433
- // Case 4: `export default class Foo {...}`
434
- result.hasDeclaration = true; // TODO remove in favour of result.type
435
- result.type = 'namedClass';
436
- result.name = d.id.name;
468
+ if (match[2]) {
469
+ result.name = d.id.name;
470
+ }
437
471
  }
438
472
 
473
+ // if no match, we have an expression like `export default whatever`
439
474
  else {
440
475
  result.type = 'expression';
441
476
  result.name = 'default';
442
477
  }
443
478
 
444
- result.value = source.slice( d.start, d.end );
445
- result.valueStart = d.start;
446
-
447
479
  return result;
448
480
  }
449
481
 
@@ -453,36 +485,40 @@ function processDefaultExport ( node, source ) {
453
485
  * @param {string} source - the original source code
454
486
  * @returns {object}
455
487
  */
456
- function processExport ( node, source ) {
457
- var result, d;
458
-
459
- result = {
488
+ function processExport(node, source) {
489
+ var result = {
460
490
  node: node,
461
491
  start: node.start,
462
- end: node.end
492
+ end: node.end,
493
+ value: null,
494
+ valueStart: null,
495
+ hasDeclaration: null,
496
+ type: null,
497
+ name: null,
498
+ specifiers: null
463
499
  };
464
500
 
465
- if ( d = node.declaration ) {
466
- result.value = source.slice( d.start, d.end );
501
+ var d = node.declaration;
502
+
503
+ if (d) {
504
+ result.hasDeclaration = true;
505
+ result.value = source.slice(d.start, d.end);
467
506
  result.valueStart = d.start;
468
507
 
469
508
  // Case 1: `export var foo = 'bar'`
470
- if ( d.type === 'VariableDeclaration' ) {
471
- result.hasDeclaration = true; // TODO remove in favour of result.type
509
+ if (d.type === 'VariableDeclaration') {
472
510
  result.type = 'varDeclaration';
473
511
  result.name = d.declarations[0].id.name;
474
512
  }
475
513
 
476
514
  // Case 2: `export function foo () {...}`
477
- else if ( d.type === 'FunctionDeclaration' ) {
478
- result.hasDeclaration = true; // TODO remove in favour of result.type
515
+ else if (d.type === 'FunctionDeclaration') {
479
516
  result.type = 'namedFunction';
480
517
  result.name = d.id.name;
481
518
  }
482
519
 
483
520
  // Case 3: `export class Foo {...}`
484
- else if ( d.type === 'ClassDeclaration' ) {
485
- result.hasDeclaration = true; // TODO remove in favour of result.type
521
+ else if (d.type === 'ClassDeclaration') {
486
522
  result.type = 'namedClass';
487
523
  result.name = d.id.name;
488
524
  }
@@ -491,8 +527,9 @@ function processExport ( node, source ) {
491
527
  // Case 9: `export { foo, bar };`
492
528
  else {
493
529
  result.type = 'named';
494
- result.specifiers = node.specifiers.map( function(s ) {
530
+ result.specifiers = node.specifiers.map(function (s) {
495
531
  return {
532
+ origin: null, // filled in later by bundler
496
533
  name: s.local.name,
497
534
  as: s.exported.name
498
535
  };
@@ -505,44 +542,44 @@ function processExport ( node, source ) {
505
542
  var hasOwnProp = Object.prototype.hasOwnProperty;
506
543
  var utils_hasOwnProp = hasOwnProp;
507
544
 
508
- function getUnscopedNames ( mod ) {
509
- var unscoped = [], importedNames, scope;
545
+ var ast_getUnscopedNames = getUnscopedNames;
546
+ function getUnscopedNames(mod) {
547
+ var unscoped = [],
548
+ importedNames,
549
+ scope;
510
550
 
511
- function imported ( name ) {
512
- if ( !importedNames ) {
551
+ function imported(name) {
552
+ if (!importedNames) {
513
553
  importedNames = {};
514
- mod.imports.forEach( function(i ) {
515
- !i.passthrough && i.specifiers.forEach( function(s ) {
516
- importedNames[ s.as ] = true;
554
+ mod.imports.forEach(function (i) {
555
+ !i.passthrough && i.specifiers.forEach(function (s) {
556
+ importedNames[s.as] = true;
517
557
  });
518
558
  });
519
559
  }
520
- return utils_hasOwnProp.call( importedNames, name );
560
+ return utils_hasOwnProp.call(importedNames, name);
521
561
  }
522
562
 
523
- walk( mod.ast, {
524
- enter: function ( node ) {
563
+ ast_walk(mod.ast, {
564
+ enter: function (node) {
525
565
  // we're only interested in references, not property names etc
526
- if ( node._skip ) return this.skip();
566
+ if (node._skip) return this.skip();
527
567
 
528
- if ( node._scope ) {
568
+ if (node._scope) {
529
569
  scope = node._scope;
530
570
  }
531
571
 
532
- if ( node.type === 'Identifier' &&
533
- !scope.contains( node.name ) &&
534
- !imported( node.name ) &&
535
- !~unscoped.indexOf( node.name ) ) {
536
- unscoped.push( node.name );
572
+ if (node.type === 'Identifier' && !scope.contains(node.name) && !imported(node.name) && ! ~unscoped.indexOf(node.name)) {
573
+ unscoped.push(node.name);
537
574
  }
538
575
  },
539
576
 
540
- leave: function ( node ) {
541
- if ( node.type === 'Program' ) {
577
+ leave: function (node) {
578
+ if (node.type === 'Program') {
542
579
  return;
543
580
  }
544
581
 
545
- if ( node._scope ) {
582
+ if (node._scope) {
546
583
  scope = scope.parent;
547
584
  }
548
585
  }
@@ -551,62 +588,66 @@ function getUnscopedNames ( mod ) {
551
588
  return unscoped;
552
589
  }
553
590
 
554
- function disallowConflictingImports ( imports ) {
591
+ var utils_disallowConflictingImports = disallowConflictingImports;
592
+ function disallowConflictingImports(imports) {
555
593
  var usedNames = {};
556
594
 
557
- imports.forEach( function(x ) {
558
- if ( x.passthrough ) return;
595
+ imports.forEach(function (x) {
596
+ if (x.passthrough) return;
559
597
 
560
- if ( x.as ) {
561
- checkName( x.as );
598
+ if (x.as) {
599
+ checkName(x.as);
562
600
  } else {
563
- x.specifiers.forEach( checkSpecifier );
601
+ x.specifiers.forEach(checkSpecifier);
564
602
  }
565
603
  });
566
604
 
567
- function checkSpecifier ( s ) {
568
- checkName( s.as );
605
+ function checkSpecifier(s) {
606
+ checkName(s.as);
569
607
  }
570
608
 
571
- function checkName ( name ) {
572
- if ( utils_hasOwnProp.call( usedNames, name ) ) {
573
- throw new SyntaxError( (("Duplicated import ('" + name) + "')") );
609
+ function checkName(name) {
610
+ if (utils_hasOwnProp.call(usedNames, name)) {
611
+ throw new SyntaxError('Duplicated import (\'' + name + '\')');
574
612
  }
575
613
 
576
- usedNames[ name ] = true;
614
+ usedNames[name] = true;
577
615
  }
578
616
  }
579
617
 
580
- var RESERVED = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield'.split( ' ' );
581
- var INVALID_CHAR = /[^a-zA-Z0-9_$]/g;
582
- var INVALID_LEADING_CHAR = /[^a-zA-Z_$]/;
583
-
584
618
  /**
585
619
  * Generates a sanitized (i.e. valid identifier) name from a module ID
586
620
  * @param {string} id - a module ID, or part thereof
587
621
  * @returns {string}
588
622
  */
589
- function sanitize ( name ) {
590
- name = name.replace( INVALID_CHAR, '_' );
623
+ var utils_sanitize = sanitize;
591
624
 
592
- if ( INVALID_LEADING_CHAR.test( name[0] ) || ~RESERVED.indexOf( name ) ) {
593
- name = ("_" + name);
625
+ var RESERVED = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield'.split(' ');
626
+ var INVALID_CHAR = /[^a-zA-Z0-9_$]/g;
627
+ var INVALID_LEADING_CHAR = /[^a-zA-Z_$]/;
628
+ function sanitize(name) {
629
+ name = name.replace(INVALID_CHAR, '_');
630
+
631
+ if (INVALID_LEADING_CHAR.test(name[0]) || ~RESERVED.indexOf(name)) {
632
+ name = '_' + name;
594
633
  }
595
634
 
596
635
  return name;
597
636
  }
598
637
 
599
638
  var pathSplitRE = /\/|\\/;
600
- function splitPath ( path ) {
601
- return path.split( pathSplitRE );
639
+ function splitPath(path) {
640
+ return path.split(pathSplitRE);
602
641
  }
603
642
 
604
- var SOURCEMAPPINGURL_REGEX = /^# sourceMappingURL=/;
643
+ var standalone_getModule = getStandaloneModule;
605
644
 
606
- function getStandaloneModule ( options ) {
607
- var code, ast;
645
+ var SOURCEMAPPINGURL_REGEX = /^# sourceMappingURL=/;
646
+ function getStandaloneModule(options) {
647
+ var code = undefined,
648
+ ast = undefined;
608
649
 
609
- if ( typeof options.source === 'object' ) {
650
+ if (typeof options.source === 'object') {
610
651
  code = options.source.code;
611
652
  ast = options.source.ast;
612
653
  } else {
@@ -616,167 +657,218 @@ function getStandaloneModule ( options ) {
616
657
  var toRemove = [];
617
658
 
618
659
  var mod = {
619
- body: new MagicString( code ),
620
- ast: ast || ( acorn.parse( code, {
660
+ body: new MagicString(code),
661
+ ast: ast || acorn.parse(code, {
621
662
  ecmaVersion: 6,
622
663
  sourceType: 'module',
623
- onComment: function ( block, text, start, end ) {
664
+ onComment: function (block, text, start, end) {
624
665
  // sourceMappingURL comments should be removed
625
- if ( !block && SOURCEMAPPINGURL_REGEX.test( text ) ) {
666
+ if (!block && SOURCEMAPPINGURL_REGEX.test(text)) {
626
667
  toRemove.push({ start: start, end: end });
627
668
  }
628
669
  }
629
- }))
670
+ })
630
671
  };
631
672
 
632
- toRemove.forEach( function(end) {var start = end.start, end = end.end;return mod.body.remove( start, end )} );
673
+ toRemove.forEach(function (_ref) {
674
+ var start = _ref.start;
675
+ var end = _ref.end;
676
+ return mod.body.remove(start, end);
677
+ });
633
678
 
634
- var imports = (exports = findImportsAndExports( mod, code, mod.ast ))[0], exports = exports[1];
679
+ var _findImportsAndExports = ast_findImportsAndExports(mod.ast, code);
635
680
 
636
- disallowConflictingImports( imports );
681
+ var imports = _findImportsAndExports.imports;
682
+ var exports = _findImportsAndExports.exports;
683
+ var defaultExport = _findImportsAndExports.defaultExport;
684
+
685
+ utils_disallowConflictingImports(imports);
637
686
 
638
687
  mod.imports = imports;
639
688
  mod.exports = exports;
689
+ mod.defaultExport = defaultExport;
640
690
 
641
691
  var conflicts = {};
642
692
 
643
- if ( options.strict ) {
644
- annotateAst( mod.ast );
693
+ if (options.strict) {
694
+ annotate(mod.ast, {
695
+ trackAssignments: null
696
+ });
645
697
 
646
698
  // TODO there's probably an easier way to get this array
647
- Object.keys( mod.ast._declared ).concat( getUnscopedNames( mod ) ).forEach( function(n ) {
699
+ Object.keys(mod.ast._declared).concat(ast_getUnscopedNames(mod)).forEach(function (n) {
648
700
  conflicts[n] = true;
649
701
  });
650
702
  }
651
703
 
652
- determineImportNames( imports, options.getModuleName, conflicts );
704
+ determineImportNames(imports, options.getModuleName, conflicts);
653
705
 
654
706
  return mod;
655
707
  }
656
708
 
657
- function determineImportNames ( imports, userFn, usedNames ) {
709
+ function determineImportNames(imports, userFn, usedNames) {
658
710
  var nameById = {};
659
711
  var inferredNames = {};
660
712
 
661
- imports.forEach( function(x ) {
713
+ imports.forEach(function (x) {
662
714
  var moduleId = x.path;
663
- var name;
715
+ var name = undefined;
664
716
 
665
717
  moduleId = x.path;
666
718
 
667
719
  // use existing value
668
- if ( utils_hasOwnProp.call( nameById, moduleId ) ) {
669
- x.name = nameById[ moduleId ];
720
+ if (utils_hasOwnProp.call(nameById, moduleId)) {
721
+ x.name = nameById[moduleId];
670
722
  return;
671
723
  }
672
724
 
673
725
  // if user supplied a function, defer to it
674
- if ( userFn && ( name = userFn( moduleId ) ) ) {
675
- name = sanitize( name );
726
+ if (userFn && (name = userFn(moduleId))) {
727
+ name = utils_sanitize(name);
676
728
 
677
- if ( utils_hasOwnProp.call( usedNames, name ) ) {
729
+ if (utils_hasOwnProp.call(usedNames, name)) {
678
730
  // TODO write a test for this
679
- throw new Error( (("Naming collision: module " + moduleId) + (" cannot be called " + name) + "") );
731
+ throw new Error('Naming collision: module ' + moduleId + ' cannot be called ' + name);
680
732
  }
681
- }
682
-
683
- else {
684
- var parts = splitPath( moduleId );
685
- var i;
733
+ } else {
734
+ var parts = splitPath(moduleId);
735
+ var i = undefined;
686
736
  var prefix = '';
687
- var candidate;
737
+ var candidate = undefined;
688
738
 
689
739
  do {
690
740
  i = parts.length;
691
- while ( i-- > 0 ) {
692
- candidate = prefix + sanitize( parts.slice( i ).join( '__' ) );
741
+ while (i-- > 0) {
742
+ candidate = prefix + utils_sanitize(parts.slice(i).join('__'));
693
743
 
694
- if ( !utils_hasOwnProp.call( usedNames, candidate ) ) {
744
+ if (!utils_hasOwnProp.call(usedNames, candidate)) {
695
745
  name = candidate;
696
746
  break;
697
747
  }
698
748
  }
699
749
 
700
750
  prefix += '_';
701
- } while ( !name );
751
+ } while (!name);
702
752
  }
703
753
 
704
- usedNames[ name ] = true;
705
- nameById[ moduleId ] = name;
754
+ usedNames[name] = true;
755
+ nameById[moduleId] = name;
706
756
 
707
757
  x.name = name;
708
758
  });
709
759
 
710
760
  // use inferred names for default imports, wherever they
711
761
  // don't clash with path-based names
712
- imports.forEach( function(x ) {
713
- if ( x.as && !utils_hasOwnProp.call( usedNames, x.as ) ) {
714
- inferredNames[ x.path ] = x.as;
762
+ imports.forEach(function (x) {
763
+ if (x.as && !utils_hasOwnProp.call(usedNames, x.as)) {
764
+ inferredNames[x.path] = x.as;
715
765
  }
716
766
  });
717
767
 
718
- imports.forEach( function(x ) {
719
- if ( utils_hasOwnProp.call( inferredNames, x.path ) ) {
720
- x.name = inferredNames[ x.path ];
768
+ imports.forEach(function (x) {
769
+ if (utils_hasOwnProp.call(inferredNames, x.path)) {
770
+ x.name = inferredNames[x.path];
721
771
  }
722
772
  });
723
773
  }
724
774
 
725
- function resolveId ( importPath, importerPath ) {
775
+ /**
776
+ * Resolves an importPath relative to the module that is importing it
777
+ * @param {string} importPath - the (possibly relative) path of an imported module
778
+ * @param {string} importerPath - the (relative to `base`) path of the importing module
779
+ * @returns {string}
780
+ */
781
+ var utils_resolveId = resolveId;
782
+
783
+ function resolveId(importPath, importerPath) {
726
784
  var resolved, importerParts, importParts;
727
785
 
728
- if ( importPath[0] !== '.' ) {
786
+ if (importPath[0] !== '.') {
729
787
  resolved = importPath;
730
788
  } else {
731
- importerParts = splitPath( importerPath );
732
- importParts = splitPath( importPath );
789
+ importerParts = splitPath(importerPath);
790
+ importParts = splitPath(importPath);
733
791
 
734
- if ( importParts[0] === '.' ) {
792
+ if (importParts[0] === '.') {
735
793
  importParts.shift();
736
794
  }
737
795
 
738
796
  importerParts.pop(); // get dirname
739
- while ( importParts[0] === '..' ) {
797
+ while (importParts[0] === '..') {
740
798
  importParts.shift();
741
799
  importerParts.pop();
742
800
  }
743
801
 
744
- while ( importParts[0] === '.' ) {
802
+ while (importParts[0] === '.') {
745
803
  importParts.shift();
746
804
  }
747
805
 
748
- resolved = importerParts.concat( importParts ).join( '/' );
806
+ resolved = importerParts.concat(importParts).join('/');
749
807
  }
750
808
 
751
809
  return resolved;
752
810
  }
753
811
 
754
- function resolveAgainst ( importerPath ) {
755
- return function ( importPath ) {
756
- return resolveId( importPath, importerPath );
812
+ function resolveAgainst(importerPath) {
813
+ return function (importPath) {
814
+ return resolveId(importPath, importerPath);
757
815
  };
758
816
  }
759
817
 
760
- function sortModules ( entry ) {
818
+ var utils_promiseSequence = promiseSequence;
819
+ function promiseSequence(arr, callback) {
820
+ var len = arr.length;
821
+ var results = new Array(len);
822
+
823
+ var promise = sander.Promise.resolve();
824
+
825
+ function next(i) {
826
+ return promise.then(function () {
827
+ return callback(arr[i], i);
828
+ }).then(function (result) {
829
+ return results[i] = result;
830
+ });
831
+ }
832
+
833
+ var i = undefined;
834
+
835
+ for (i = 0; i < len; i += 1) {
836
+ promise = next(i);
837
+ }
838
+
839
+ return promise.then(function () {
840
+ return results;
841
+ });
842
+ }
843
+
844
+ /**
845
+ * Sorts an array of modules such that dependencies come before
846
+ their dependents, handling complex cases of cyclical dependencies
847
+ * @param {object} entry - the bundle's 'entry module'
848
+ * @returns {array} - the sorted module list
849
+ */
850
+ var utils_sortModules = sortModules;
851
+
852
+ function sortModules(entry) {
761
853
  var seen = {};
762
854
  var ordered = [];
763
- var hasCycles;
855
+ var hasCycles = undefined;
764
856
 
765
857
  var strongDeps = {};
766
858
  var stronglyDependsOn = {};
767
859
 
768
- function visit ( mod ) {
860
+ function visit(mod) {
769
861
  var id = mod.id;
770
862
 
771
- seen[ id ] = true;
863
+ seen[id] = true;
772
864
 
773
- strongDeps[ id ] = [];
774
- stronglyDependsOn[ id ] = {};
865
+ strongDeps[id] = [];
866
+ stronglyDependsOn[id] = {};
775
867
 
776
- mod.imports.forEach( function(x ) {
868
+ mod.imports.forEach(function (x) {
777
869
  var imported = x.module;
778
870
 
779
- if ( imported.isExternal || imported.isSkipped ) return;
871
+ if (imported.isExternal || imported.isSkipped) return;
780
872
 
781
873
  // if `mod` references a binding from `imported` at the top
782
874
  // level (i.e. outside function bodies), we say that `mod`
@@ -784,55 +876,55 @@ function sortModules ( entry ) {
784
876
  // each other, this helps us order them such that if a
785
877
  // strongly depends on b, and b weakly depends on a, b
786
878
  // goes first
787
- if ( referencesAtTopLevel( mod, imported ) ) {
788
- strongDeps[ id ].push( imported );
879
+ if (referencesAtTopLevel(mod, imported)) {
880
+ strongDeps[id].push(imported);
789
881
  }
790
882
 
791
- if ( utils_hasOwnProp.call( seen, imported.id ) ) {
883
+ if (utils_hasOwnProp.call(seen, imported.id)) {
792
884
  // we need to prevent an infinite loop, and note that
793
885
  // we need to check for strong/weak dependency relationships
794
886
  hasCycles = true;
795
887
  return;
796
888
  }
797
889
 
798
- visit( imported );
890
+ visit(imported);
799
891
  });
800
892
 
801
893
  // add second (and third...) order dependencies
802
- function addStrongDependencies ( dependency ) {
803
- if ( utils_hasOwnProp.call( stronglyDependsOn[ id ], dependency.id ) ) return;
894
+ function addStrongDependencies(dependency) {
895
+ if (utils_hasOwnProp.call(stronglyDependsOn[id], dependency.id)) return;
804
896
 
805
- stronglyDependsOn[ id ][ dependency.id ] = true;
806
- strongDeps[ dependency.id ].forEach( addStrongDependencies );
897
+ stronglyDependsOn[id][dependency.id] = true;
898
+ strongDeps[dependency.id].forEach(addStrongDependencies);
807
899
  }
808
900
 
809
- strongDeps[ id ].forEach( addStrongDependencies );
901
+ strongDeps[id].forEach(addStrongDependencies);
810
902
 
811
- ordered.push( mod );
903
+ ordered.push(mod);
812
904
  }
813
905
 
814
- visit( entry );
906
+ visit(entry);
815
907
 
816
- var unordered;
908
+ var unordered = undefined;
817
909
 
818
- if ( hasCycles ) {
910
+ if (hasCycles) {
819
911
  unordered = ordered;
820
912
  ordered = [];
821
913
 
822
914
  // unordered is actually semi-ordered, as [ fewer dependencies ... more dependencies ]
823
- unordered.forEach( function(x ) {
915
+ unordered.forEach(function (x) {
824
916
  // ensure strong dependencies of x that don't strongly depend on x go first
825
- strongDeps[ x.id ].forEach( place );
917
+ strongDeps[x.id].forEach(place);
826
918
 
827
- function place ( dep ) {
828
- if ( !stronglyDependsOn[ dep.id ][ x.id ] && !~ordered.indexOf( dep ) ) {
829
- strongDeps[ dep.id ].forEach( place );
830
- ordered.push( dep );
919
+ function place(dep) {
920
+ if (!stronglyDependsOn[dep.id][x.id] && ! ~ordered.indexOf(dep)) {
921
+ strongDeps[dep.id].forEach(place);
922
+ ordered.push(dep);
831
923
  }
832
924
  }
833
925
 
834
- if ( !~ordered.indexOf( x ) ) {
835
- ordered.push( x );
926
+ if (! ~ordered.indexOf(x)) {
927
+ ordered.push(x);
836
928
  }
837
929
  });
838
930
  }
@@ -840,27 +932,29 @@ function sortModules ( entry ) {
840
932
  return ordered;
841
933
  }
842
934
 
843
- function referencesAtTopLevel ( a, b ) {
935
+ function referencesAtTopLevel(a, b) {
844
936
  var bindings = [];
845
937
 
846
938
  // find out which bindings a imports from b
847
939
  var i = a.imports.length;
848
- while ( i-- ) {
849
- if ( a.imports[i].module === b ) {
850
- bindings.push.apply( bindings, a.imports[i].specifiers.map( function(x ) {return x.as} ) );
940
+ while (i--) {
941
+ if (a.imports[i].module === b) {
942
+ bindings.push.apply(bindings, a.imports[i].specifiers.map(function (x) {
943
+ return x.as;
944
+ }));
851
945
  }
852
946
  }
853
947
 
854
948
  // see if any of those bindings are referenced at the top level
855
949
  var referencedAtTopLevel = false;
856
950
 
857
- walk( a.ast, {
858
- enter: function ( node ) {
859
- if ( /^Import/.test( node.type ) || ( node._scope && node._scope.parent ) ) {
951
+ ast_walk(a.ast, {
952
+ enter: function (node) {
953
+ if (/^Import/.test(node.type) || node._scope && node._scope.parent) {
860
954
  return this.skip();
861
955
  }
862
956
 
863
- if ( node.type === 'Identifier' && ~bindings.indexOf( node.name ) ) {
957
+ if (node.type === 'Identifier' && ~bindings.indexOf(node.name)) {
864
958
  referencedAtTopLevel = true;
865
959
  this.abort();
866
960
  }
@@ -870,156 +964,184 @@ function referencesAtTopLevel ( a, b ) {
870
964
  return referencedAtTopLevel;
871
965
  }
872
966
 
873
- function resolveChains ( modules, moduleLookup ) {
967
+ /**
968
+ * Discovers 'chains' within a bundle - e.g. `import { foo } from 'foo'`
969
+ may be equivalent to `import { bar } from 'bar'`, if foo.js imports `bar`
970
+ and re-exports it as `foo`. Where applicable, import/export specifiers
971
+ are augmented with an `origin: { module, name }` property
972
+ * @param {array} modules - the bundle's array of modules
973
+ * @param {object} moduleLookup - modules indexed by their ID
974
+ */
975
+ var utils_resolveChains = resolveChains;
976
+
977
+ function resolveChains(modules, moduleLookup) {
874
978
  var chains = {};
875
979
 
876
980
  // First pass - resolving intra-module chains
877
- modules.forEach( function(mod ) {
981
+ modules.forEach(function (mod) {
878
982
  var origin = {};
879
983
 
880
- mod.imports.forEach( function(x ) {
984
+ mod.imports.forEach(function (x) {
881
985
  var imported = x.module;
882
986
 
883
- x.specifiers.forEach( function(s ) {
884
- if ( s.isBatch ) {
987
+ x.specifiers.forEach(function (s) {
988
+ if (s.isBatch) {
885
989
  // tell that module that it needs to export an object full of getters
886
990
  imported._exportsNamespace = true;
887
991
  return; // TODO can batch imports be chained?
888
992
  }
889
993
 
890
- origin[ s.as ] = (("" + (s.name)) + ("@" + (imported.id)) + "");
994
+ origin[s.as] = '' + s.name + '@' + imported.id;
891
995
  });
892
996
  });
893
997
 
894
- mod.exports.forEach( function(x ) {
895
- if ( !x.specifiers ) return;
998
+ mod.exports.forEach(function (x) {
999
+ if (!x.specifiers) return;
896
1000
 
897
- x.specifiers.forEach( function(s ) {
898
- if ( utils_hasOwnProp.call( origin, s.name ) ) {
899
- chains[ (("" + (s.name)) + ("@" + (mod.id)) + "") ] = origin[ s.name ];
1001
+ x.specifiers.forEach(function (s) {
1002
+ if (utils_hasOwnProp.call(origin, s.name)) {
1003
+ chains['' + s.name + '@' + mod.id] = origin[s.name];
900
1004
  }
901
1005
  });
902
1006
  });
903
1007
  });
904
1008
 
905
1009
  // Second pass - assigning origins to specifiers
906
- modules.forEach( function(mod ) {
907
- mod.imports.forEach( function(x ) {
1010
+ modules.forEach(function (mod) {
1011
+ mod.imports.forEach(function (x) {
908
1012
  var imported = x.module;
909
1013
 
910
- x.specifiers.forEach( function(s ) {
911
- if ( s.isBatch ) {
1014
+ x.specifiers.forEach(function (s) {
1015
+ if (s.isBatch) {
912
1016
  return; // TODO can batch imports be chained?
913
1017
  }
914
1018
 
915
- setOrigin( s, (("" + (s.name)) + ("@" + (imported.id)) + ""), chains, moduleLookup );
1019
+ setOrigin(s, '' + s.name + '@' + imported.id, chains, moduleLookup);
916
1020
  });
917
1021
  });
918
1022
 
919
- mod.exports.forEach( function(x ) {
920
- if ( !x.specifiers ) return;
1023
+ mod.exports.forEach(function (x) {
1024
+ if (!x.specifiers) return;
921
1025
 
922
- x.specifiers.forEach( function(s ) {
923
- setOrigin( s, (("" + (s.name)) + ("@" + (mod.id)) + ""), chains, moduleLookup );
1026
+ x.specifiers.forEach(function (s) {
1027
+ setOrigin(s, '' + s.name + '@' + mod.id, chains, moduleLookup);
924
1028
  });
925
1029
  });
926
1030
  });
927
1031
  }
928
1032
 
929
- function setOrigin ( specifier, hash, chains, moduleLookup ) {
930
- var isChained;
1033
+ function setOrigin(specifier, hash, chains, moduleLookup) {
1034
+ var isChained = undefined;
931
1035
 
932
- while ( utils_hasOwnProp.call( chains, hash ) ) {
933
- hash = chains[ hash ];
1036
+ while (utils_hasOwnProp.call(chains, hash)) {
1037
+ hash = chains[hash];
934
1038
  isChained = true;
935
1039
  }
936
1040
 
937
- if ( isChained ) {
938
- var name = (moduleId = hash.split( '@' ))[0], moduleId = moduleId[1];
939
- specifier.origin = { module: moduleLookup[ moduleId ], name: name };
1041
+ if (isChained) {
1042
+ var _hash$split = hash.split('@');
1043
+
1044
+ var _name = _hash$split[0];
1045
+ var moduleId = _hash$split[1];
1046
+
1047
+ specifier.origin = { module: moduleLookup[moduleId], name: _name };
940
1048
  }
941
1049
  }
942
1050
 
943
1051
  // from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects
944
1052
  // we add `exports` to this list, to avoid conflicts
945
- var builtins = 'Array ArrayBuffer DataView Date Error EvalError Float32Array Float64Array Function Generator GeneratorFunction Infinity Int16Array Int32Array Int8Array InternalError Intl Iterator JSON Map Math NaN Number Object ParallelArray Promise Proxy RangeError ReferenceError Reflect RegExp Set StopIteration String Symbol SyntaxError TypeError TypedArray URIError Uint16Array Uint32Array Uint8Array Uint8ClampedArray WeakMap WeakSet decodeURI decodeURIComponent encodeURI encodeURIComponent escape eval exports isFinite isNaN null parseFloat parseInt undefined unescape uneval'.split( ' ' );
1053
+ var builtins = 'Array ArrayBuffer DataView Date Error EvalError Float32Array Float64Array Function Generator GeneratorFunction Infinity Int16Array Int32Array Int8Array InternalError Intl Iterator JSON Map Math NaN Number Object ParallelArray Promise Proxy RangeError ReferenceError Reflect RegExp Set StopIteration String Symbol SyntaxError TypeError TypedArray URIError Uint16Array Uint32Array Uint8Array Uint8ClampedArray WeakMap WeakSet decodeURI decodeURIComponent encodeURI encodeURIComponent escape eval exports isFinite isNaN null parseFloat parseInt undefined unescape uneval'.split(' ');
1054
+
1055
+ var populateModuleNames = getUniqueNames;
1056
+ function getUniqueNames(bundle) {
1057
+ var modules = bundle.modules;
1058
+ var externalModules = bundle.externalModules;
946
1059
 
947
- function getUniqueNames ( bundle ) {
948
- var modules = bundle.modules, externalModules = bundle.externalModules;
949
1060
  var userNames = bundle.names;
950
1061
  var names = {};
951
1062
 
952
- var used = modules.reduce( function( declared, mod ) {
953
- Object.keys( mod.ast._declared ).forEach( function(x ) {return declared[x] = true} );
1063
+ var used = modules.reduce(function (declared, mod) {
1064
+ var defaultExport = mod.defaultExport;
1065
+ var defaultExportName = defaultExport && !defaultExport.unsafe && defaultExport.type === 'expression' && defaultExport.node.declaration && defaultExport.node.declaration.type === 'Identifier' && defaultExport.node.declaration.name;
1066
+
1067
+ Object.keys(mod.ast._declared).forEach(function (x) {
1068
+ // special case - `export default foo`
1069
+ if (x === defaultExportName) return;
1070
+ declared[x] = true;
1071
+ });
954
1072
  return declared;
955
- }, {} );
1073
+ }, {});
956
1074
 
957
1075
  // copy builtins
958
- builtins.forEach( function(n ) {return used[n] = true} );
1076
+ builtins.forEach(function (n) {
1077
+ return used[n] = true;
1078
+ });
959
1079
 
960
1080
  // copy user-specified names
961
- if ( userNames ) {
962
- Object.keys( userNames ).forEach( function(id ) {
963
- names[ id ] = userNames[ id ];
964
- used[ userNames[ id ] ] = true;
1081
+ if (userNames) {
1082
+ Object.keys(userNames).forEach(function (id) {
1083
+ names[id] = userNames[id];
1084
+ used[userNames[id]] = true;
965
1085
  });
966
1086
  }
967
1087
 
968
1088
  // infer names from default imports - e.g. with `import _ from './utils'`,
969
1089
  // use '_' instead of generating a name from 'utils'
970
- function inferName ( x ) {
971
- if ( x.isDefault && !utils_hasOwnProp.call( names, x.module.id ) && !utils_hasOwnProp.call( used, x.as ) ) {
972
- names[ x.module.id ] = x.as;
973
- used[ x.as ] = true;
1090
+ function inferName(x) {
1091
+ if (x.isDefault && !utils_hasOwnProp.call(names, x.module.id) && !utils_hasOwnProp.call(used, x.as)) {
1092
+ names[x.module.id] = x.as;
1093
+ used[x.as] = true;
974
1094
  }
975
1095
  }
976
- modules.forEach( function(mod ) {
977
- mod.imports.forEach( inferName );
1096
+ modules.forEach(function (mod) {
1097
+ mod.imports.forEach(inferName);
978
1098
  });
979
1099
 
980
1100
  // for the rest, make names as compact as possible without
981
1101
  // introducing conflicts
982
- modules.concat( externalModules ).forEach( function(mod ) {
1102
+ modules.concat(externalModules).forEach(function (mod) {
983
1103
  // is this already named?
984
- if ( utils_hasOwnProp.call( names, mod.id ) ) {
985
- mod.name = names[ mod.id ];
1104
+ if (utils_hasOwnProp.call(names, mod.id)) {
1105
+ mod.name = names[mod.id];
986
1106
  return;
987
1107
  }
988
1108
 
989
- var name;
990
- var parts = splitPath( mod.id );
1109
+ var name = undefined;
1110
+ var parts = splitPath(mod.id);
991
1111
  var i = parts.length;
992
1112
 
993
- while ( i-- ) {
994
- name = sanitize( parts.slice( i ).join( '_' ) );
1113
+ while (i--) {
1114
+ name = utils_sanitize(parts.slice(i).join('_'));
995
1115
 
996
- if ( !utils_hasOwnProp.call( used, name ) ) {
1116
+ if (!utils_hasOwnProp.call(used, name)) {
997
1117
  break;
998
1118
  }
999
1119
  }
1000
1120
 
1001
- while ( utils_hasOwnProp.call( used, name ) ) {
1121
+ while (utils_hasOwnProp.call(used, name)) {
1002
1122
  name = '_' + name;
1003
1123
  }
1004
1124
 
1005
- used[ name ] = true;
1125
+ used[name] = true;
1006
1126
  mod.name = name;
1007
1127
  });
1008
1128
 
1009
1129
  return names;
1010
1130
  }
1011
1131
 
1012
- function populateExternalModuleImports ( bundle ) {
1013
- bundle.modules.forEach( function(mod ) {
1014
- mod.imports.forEach( function(x ) {
1132
+ var combine_populateExternalModuleImports = populateExternalModuleImports;
1133
+
1134
+ function populateExternalModuleImports(bundle) {
1135
+ bundle.modules.forEach(function (mod) {
1136
+ mod.imports.forEach(function (x) {
1015
1137
  var externalModule = x.module;
1016
1138
 
1017
- if ( !externalModule.isExternal ) {
1139
+ if (!externalModule.isExternal) {
1018
1140
  return;
1019
1141
  }
1020
1142
 
1021
- x.specifiers.forEach( function(s ) {
1022
- if ( s.isDefault ) {
1143
+ x.specifiers.forEach(function (s) {
1144
+ if (s.isDefault) {
1023
1145
  externalModule.needsDefault = true;
1024
1146
  } else {
1025
1147
  externalModule.needsNamed = true;
@@ -1029,14 +1151,16 @@ function populateExternalModuleImports ( bundle ) {
1029
1151
  });
1030
1152
  }
1031
1153
 
1032
- function getRenamedImports ( mod ) {
1154
+ var combine_getRenamedImports = getRenamedImports;
1155
+
1156
+ function getRenamedImports(mod) {
1033
1157
  var renamed = [];
1034
1158
 
1035
- mod.imports.forEach( function(x ) {
1036
- if ( x.specifiers ) {
1037
- x.specifiers.forEach( function(s ) {
1038
- if ( s.name !== s.as && !~renamed.indexOf( s.name ) ) {
1039
- renamed.push( s.name );
1159
+ mod.imports.forEach(function (x) {
1160
+ if (x.specifiers) {
1161
+ x.specifiers.forEach(function (s) {
1162
+ if (s.name !== s.as && ! ~renamed.indexOf(s.name)) {
1163
+ renamed.push(s.name);
1040
1164
  }
1041
1165
  });
1042
1166
  }
@@ -1045,34 +1169,31 @@ function getRenamedImports ( mod ) {
1045
1169
  return renamed;
1046
1170
  }
1047
1171
 
1048
- function topLevelScopeConflicts ( bundle ) {
1172
+ var combine_topLevelScopeConflicts = topLevelScopeConflicts;
1173
+ function topLevelScopeConflicts(bundle) {
1049
1174
  var conflicts = {};
1050
1175
  var inBundle = {};
1051
- var importNames = bundle.externalModules.map( getName );
1176
+ var importNames = bundle.externalModules.map(getName);
1052
1177
 
1053
- bundle.modules.forEach( function(mod ) {
1178
+ bundle.modules.forEach(function (mod) {
1054
1179
  var names = builtins
1055
1180
 
1056
- // all top defined identifiers are in top scope
1057
- .concat( mod.ast._topLevelNames )
1058
-
1059
- // all unattributed identifiers could collide with top scope
1060
- .concat( getUnscopedNames( mod ) )
1181
+ // all top defined identifiers are in top scope
1182
+ .concat(mod.ast._topLevelNames)
1061
1183
 
1062
- .concat( importNames )
1184
+ // all unattributed identifiers could collide with top scope
1185
+ .concat(ast_getUnscopedNames(mod)).concat(importNames).concat(combine_getRenamedImports(mod));
1063
1186
 
1064
- .concat( getRenamedImports( mod ) );
1065
-
1066
- if ( mod._exportsNamespace ) {
1067
- conflicts[ mod.name ] = true;
1187
+ if (mod._exportsNamespace) {
1188
+ conflicts[mod.name] = true;
1068
1189
  }
1069
1190
 
1070
1191
  // merge this module's top scope with bundle top scope
1071
- names.forEach( function(name ) {
1072
- if ( utils_hasOwnProp.call( inBundle, name ) ) {
1073
- conflicts[ name ] = true;
1192
+ names.forEach(function (name) {
1193
+ if (utils_hasOwnProp.call(inBundle, name)) {
1194
+ conflicts[name] = true;
1074
1195
  } else {
1075
- inBundle[ name ] = true;
1196
+ inBundle[name] = true;
1076
1197
  }
1077
1198
  });
1078
1199
  });
@@ -1080,129 +1201,128 @@ function topLevelScopeConflicts ( bundle ) {
1080
1201
  return conflicts;
1081
1202
  }
1082
1203
 
1083
- function populateIdentifierReplacements ( bundle ) {
1204
+ /**
1205
+ * Figures out which identifiers need to be rewritten within
1206
+ a bundle to avoid conflicts
1207
+ * @param {object} bundle - the bundle
1208
+ * @returns {object}
1209
+ */
1210
+ var combine_populateIdentifierReplacements = populateIdentifierReplacements;
1211
+ function populateIdentifierReplacements(bundle) {
1084
1212
  // first, discover conflicts
1085
- var conflicts = topLevelScopeConflicts( bundle );
1213
+ var conflicts = combine_topLevelScopeConflicts(bundle);
1086
1214
 
1087
1215
  // then figure out what identifiers need to be created
1088
1216
  // for default exports
1089
- bundle.modules.forEach( function(mod ) {
1217
+ bundle.modules.forEach(function (mod) {
1090
1218
  var x = mod.defaultExport;
1091
1219
 
1092
- if ( x ) {
1093
- var result;
1220
+ if (x) {
1221
+ var result = undefined;
1094
1222
 
1095
- if ( x.hasDeclaration && x.name ) {
1096
- result = utils_hasOwnProp.call( conflicts, x.name ) || otherModulesDeclare( mod, x.name ) ?
1097
- (("" + (mod.name)) + ("__" + (x.name)) + "") :
1098
- x.name;
1223
+ if (x.hasDeclaration && x.name) {
1224
+ result = utils_hasOwnProp.call(conflicts, x.name) || otherModulesDeclare(mod, x.name) ? '' + mod.name + '__' + x.name : x.name;
1099
1225
  } else {
1100
- result = utils_hasOwnProp.call( conflicts, mod.name ) || ( x.value !== mod.name && ~mod.ast._topLevelNames.indexOf( mod.name )) || otherModulesDeclare( mod, mod.name ) ?
1101
- (("" + (mod.name)) + "__default") :
1102
- mod.name;
1226
+ result = utils_hasOwnProp.call(conflicts, mod.name) || x.value !== mod.name && ~mod.ast._topLevelNames.indexOf(mod.name) || otherModulesDeclare(mod, mod.name) ? '' + mod.name + '__default' : mod.name;
1103
1227
  }
1104
1228
 
1105
- mod.identifierReplacements.default = result;
1229
+ mod.identifierReplacements['default'] = result;
1106
1230
  }
1107
1231
  });
1108
1232
 
1109
1233
  // then determine which existing identifiers
1110
1234
  // need to be replaced
1111
- bundle.modules.forEach( function(mod ) {
1235
+ bundle.modules.forEach(function (mod) {
1112
1236
  var moduleIdentifiers = mod.identifierReplacements;
1113
1237
 
1114
- mod.ast._topLevelNames.forEach( function(n ) {
1115
- moduleIdentifiers[n] = utils_hasOwnProp.call( conflicts, n ) ?
1116
- (("" + (mod.name)) + ("__" + n) + "") :
1117
- n;
1238
+ mod.ast._topLevelNames.forEach(function (n) {
1239
+ moduleIdentifiers[n] = utils_hasOwnProp.call(conflicts, n) ? '' + mod.name + '__' + n : n;
1118
1240
  });
1119
1241
 
1120
- mod.imports.forEach( function(x ) {
1121
- if ( x.passthrough ) {
1242
+ mod.imports.forEach(function (x) {
1243
+ if (x.passthrough) {
1122
1244
  return;
1123
1245
  }
1124
1246
 
1125
1247
  var imported = x.module;
1126
1248
 
1127
- x.specifiers.forEach( function(s ) {
1128
- var replacement;
1249
+ x.specifiers.forEach(function (s) {
1250
+ var replacement = undefined;
1129
1251
 
1130
- if ( s.isBatch ) {
1252
+ if (s.isBatch) {
1131
1253
  replacement = x.module.name;
1132
- }
1133
-
1134
- else {
1135
- var mod;
1136
- var specifierName;
1254
+ } else {
1255
+ var _mod = undefined;
1256
+ var specifierName = undefined;
1137
1257
 
1138
- if ( s.origin ) {
1258
+ if (s.origin) {
1139
1259
  // chained bindings
1140
- mod = s.origin.module;
1260
+ _mod = s.origin.module;
1141
1261
  specifierName = s.origin.name;
1142
1262
  } else {
1143
- mod = imported;
1263
+ _mod = imported;
1144
1264
  specifierName = s.name;
1145
1265
  }
1146
1266
 
1147
- var moduleName = mod && mod.name;
1267
+ var moduleName = _mod && _mod.name;
1148
1268
 
1149
- if ( specifierName === 'default' ) {
1269
+ if (specifierName === 'default') {
1150
1270
  // if it's an external module, always use __default if the
1151
1271
  // bundle also uses named imports
1152
- if ( imported.isExternal ) {
1153
- replacement = imported.needsNamed ? (("" + moduleName) + "__default") : moduleName;
1272
+ if (imported.isExternal) {
1273
+ replacement = imported.needsNamed ? '' + moduleName + '__default' : moduleName;
1154
1274
  }
1155
1275
 
1156
1276
  // TODO We currently need to check for the existence of `mod`, because modules
1157
1277
  // can be skipped. Would be better to replace skipped modules with dummies
1158
1278
  // - see https://github.com/Rich-Harris/esperanto/issues/32
1159
- else if ( mod && !mod.isSkipped ) {
1160
- replacement = mod.identifierReplacements.default;
1279
+ else if (_mod && !_mod.isSkipped) {
1280
+ replacement = _mod.identifierReplacements['default'];
1161
1281
  }
1162
- } else if ( !imported.isExternal ) {
1163
- replacement = utils_hasOwnProp.call( conflicts, specifierName ) ?
1164
- (("" + moduleName) + ("__" + specifierName) + "") :
1165
- specifierName;
1282
+ } else if (!imported.isExternal) {
1283
+ replacement = utils_hasOwnProp.call(conflicts, specifierName) ? '' + moduleName + '__' + specifierName : specifierName;
1166
1284
  } else {
1167
1285
  replacement = moduleName + '.' + specifierName;
1168
1286
  }
1169
1287
  }
1170
1288
 
1171
- if ( replacement !== s.as ) {
1172
- moduleIdentifiers[ s.as ] = replacement;
1289
+ if (replacement !== s.as) {
1290
+ moduleIdentifiers[s.as] = replacement;
1173
1291
  }
1174
1292
  });
1175
1293
  });
1176
1294
  });
1177
1295
 
1178
- function otherModulesDeclare ( mod, replacement ) {
1296
+ function otherModulesDeclare(mod, replacement) {
1179
1297
  var i, otherMod;
1180
1298
 
1181
1299
  i = bundle.modules.length;
1182
- while ( i-- ) {
1300
+ while (i--) {
1183
1301
  otherMod = bundle.modules[i];
1184
1302
 
1185
- if ( mod === otherMod ) {
1303
+ if (mod === otherMod) {
1186
1304
  continue;
1187
1305
  }
1188
1306
 
1189
- if ( utils_hasOwnProp.call( otherMod.ast._declared, replacement ) ) {
1307
+ if (utils_hasOwnProp.call(otherMod.ast._declared, replacement)) {
1190
1308
  return true;
1191
1309
  }
1192
1310
  }
1193
1311
  }
1194
1312
  }
1195
1313
 
1196
- function resolveExports ( bundle ) {
1314
+ var combine_resolveExports = resolveExports;
1315
+
1316
+ function resolveExports(bundle) {
1197
1317
  var bundleExports = {};
1198
1318
 
1199
- bundle.entryModule.exports.forEach( function(x ) {
1200
- if ( x.specifiers ) {
1201
- x.specifiers.forEach( function(s ) {
1202
- var module;
1203
- var name;
1319
+ bundle.entryModule.exports.forEach(function (x) {
1320
+ if (x.specifiers) {
1321
+ x.specifiers.forEach(function (s) {
1322
+ var module = undefined;
1323
+ var name = undefined;
1204
1324
 
1205
- if ( s.origin ) {
1325
+ if (s.origin) {
1206
1326
  module = s.origin.module;
1207
1327
  name = s.origin.name;
1208
1328
  } else {
@@ -1210,21 +1330,19 @@ function resolveExports ( bundle ) {
1210
1330
  name = s.name;
1211
1331
  }
1212
1332
 
1213
- addExport( module, name, s.name );
1333
+ addExport(module, name, s.name);
1214
1334
  });
1215
- }
1216
-
1217
- else if ( !x.isDefault && x.name ) {
1218
- addExport( bundle.entryModule, x.name, x.name );
1335
+ } else if (!x.isDefault && x.name) {
1336
+ addExport(bundle.entryModule, x.name, x.name);
1219
1337
  }
1220
1338
  });
1221
1339
 
1222
- function addExport ( module, name, as ) {
1223
- if ( !bundleExports[ module.id ] ) {
1224
- bundleExports[ module.id ] = {};
1340
+ function addExport(module, name, as) {
1341
+ if (!bundleExports[module.id]) {
1342
+ bundleExports[module.id] = {};
1225
1343
  }
1226
1344
 
1227
- bundleExports[ module.id ][ name ] = as;
1345
+ bundleExports[module.id][name] = as;
1228
1346
  }
1229
1347
 
1230
1348
  return bundleExports;
@@ -1238,128 +1356,136 @@ function resolveExports ( bundle ) {
1238
1356
  * @param {array} imports - the array of imports
1239
1357
  * @returns {array} [ importedBindings, importedNamespaces ]
1240
1358
  */
1241
- function getReadOnlyIdentifiers ( imports ) {
1242
- var importedBindings = {}, importedNamespaces = {};
1359
+ var utils_getReadOnlyIdentifiers = getReadOnlyIdentifiers;
1243
1360
 
1244
- imports.forEach( function(x ) {
1245
- if ( x.passthrough ) return;
1361
+ function getReadOnlyIdentifiers(imports) {
1362
+ var importedBindings = {},
1363
+ importedNamespaces = {};
1246
1364
 
1247
- x.specifiers.forEach( function(s ) {
1248
- if ( s.isBatch ) {
1249
- importedNamespaces[ s.as ] = true;
1365
+ imports.forEach(function (x) {
1366
+ if (x.passthrough) return;
1367
+
1368
+ x.specifiers.forEach(function (s) {
1369
+ if (s.isBatch) {
1370
+ importedNamespaces[s.as] = true;
1250
1371
  } else {
1251
- importedBindings[ s.as ] = true;
1372
+ importedBindings[s.as] = true;
1252
1373
  }
1253
1374
  });
1254
1375
  });
1255
1376
 
1256
- return [ importedBindings, importedNamespaces ];
1377
+ return [importedBindings, importedNamespaces];
1257
1378
  }
1258
1379
 
1380
+ var ast_disallowIllegalReassignment = disallowIllegalReassignment;
1259
1381
  var bindingMessage = 'Cannot reassign imported binding ',
1260
- namespaceMessage = 'Cannot reassign imported binding of namespace ';
1261
-
1262
- function disallowIllegalReassignment ( node, importedBindings, importedNamespaces, scope ) {
1263
- var assignee, isNamespaceAssignment;
1382
+ namespaceMessage = 'Cannot reassign imported binding of namespace ';
1383
+ function disallowIllegalReassignment(node, importedBindings, importedNamespaces, scope) {
1384
+ var assignee = undefined,
1385
+ isNamespaceAssignment = undefined;
1264
1386
 
1265
- if ( node.type === 'AssignmentExpression' ) {
1387
+ if (node.type === 'AssignmentExpression') {
1266
1388
  assignee = node.left;
1267
- } else if ( node.type === 'UpdateExpression' ) {
1389
+ } else if (node.type === 'UpdateExpression') {
1268
1390
  assignee = node.argument;
1269
1391
  } else {
1270
1392
  return; // not an assignment
1271
1393
  }
1272
1394
 
1273
- if ( assignee.type === 'MemberExpression' ) {
1395
+ if (assignee.type === 'MemberExpression') {
1274
1396
  assignee = assignee.object;
1275
1397
  isNamespaceAssignment = true;
1276
1398
  }
1277
1399
 
1278
- if ( assignee.type !== 'Identifier' ) {
1400
+ if (assignee.type !== 'Identifier') {
1279
1401
  return; // not assigning to a binding
1280
1402
  }
1281
1403
 
1282
1404
  var name = assignee.name;
1283
1405
 
1284
- if ( utils_hasOwnProp.call( isNamespaceAssignment ? importedNamespaces : importedBindings, name ) && !scope.contains( name ) ) {
1285
- throw new Error( ( isNamespaceAssignment ? namespaceMessage : bindingMessage ) + '`' + name + '`' );
1406
+ if (utils_hasOwnProp.call(isNamespaceAssignment ? importedNamespaces : importedBindings, name) && !scope.contains(name)) {
1407
+ throw new Error((isNamespaceAssignment ? namespaceMessage : bindingMessage) + '`' + name + '`');
1286
1408
  }
1287
1409
  }
1288
1410
 
1289
- function replaceIdentifiers ( body, node, identifierReplacements, scope ) {
1411
+ var ast_replaceIdentifiers = replaceIdentifiers;
1412
+ function replaceIdentifiers(body, node, identifierReplacements, scope) {
1290
1413
  var name = node.name;
1291
- var replacement = utils_hasOwnProp.call( identifierReplacements, name ) && identifierReplacements[ name ];
1414
+ var replacement = utils_hasOwnProp.call(identifierReplacements, name) && identifierReplacements[name];
1292
1415
 
1293
1416
  // TODO unchanged identifiers shouldn't have got this far -
1294
1417
  // remove the `replacement !== name` safeguard once that's the case
1295
- if ( replacement && replacement !== name && !scope.contains( name, true ) ) {
1418
+ if (replacement && replacement !== name && !scope.contains(name, true)) {
1296
1419
  // rewrite
1297
- body.replace( node.start, node.end, replacement );
1420
+ body.replace(node.start, node.end, replacement);
1298
1421
  }
1299
1422
  }
1300
1423
 
1301
- function rewriteExportAssignments ( body, node, parent, exports, scope, capturedUpdates ) {
1302
- var assignee;
1424
+ var ast_rewriteExportAssignments = rewriteExportAssignments;
1425
+ function rewriteExportAssignments(body, node, parent, exports, scope, capturedUpdates) {
1426
+ var assignee = undefined;
1303
1427
 
1304
- if ( node.type === 'AssignmentExpression' ) {
1428
+ if (node.type === 'AssignmentExpression') {
1305
1429
  assignee = node.left;
1306
- } else if ( node.type === 'UpdateExpression' ) {
1430
+ } else if (node.type === 'UpdateExpression') {
1307
1431
  assignee = node.argument;
1308
1432
  } else {
1309
1433
  return; // not an assignment
1310
1434
  }
1311
1435
 
1312
- if ( assignee.type !== 'Identifier' ) {
1436
+ if (assignee.type !== 'Identifier') {
1313
1437
  return;
1314
1438
  }
1315
1439
 
1316
1440
  var name = assignee.name;
1317
1441
 
1318
- if ( scope.contains( name, true ) ) {
1442
+ if (scope.contains(name, true)) {
1319
1443
  return; // shadows an export
1320
1444
  }
1321
1445
 
1322
- if ( exports && utils_hasOwnProp.call( exports, name ) ) {
1323
- var exportAs = exports[ name ];
1446
+ if (exports && utils_hasOwnProp.call(exports, name)) {
1447
+ var exportAs = exports[name];
1324
1448
 
1325
- if ( !!capturedUpdates ) {
1449
+ if (!!capturedUpdates) {
1326
1450
  capturedUpdates.push({ name: name, exportAs: exportAs });
1327
1451
  return;
1328
1452
  }
1329
1453
 
1330
1454
  // special case - increment/decrement operators
1331
- if ( node.operator === '++' || node.operator === '--' ) {
1332
- var prefix = ("");
1333
- var suffix = ((", exports." + exportAs) + (" = " + name) + "");
1334
- if ( parent.type !== 'ExpressionStatement' ) {
1335
- if ( !node.prefix ) {
1336
- suffix += ((", " + name) + (" " + (node.operator === '++' ? '-' : '+')) + " 1");
1455
+ if (node.operator === '++' || node.operator === '--') {
1456
+ var prefix = '';
1457
+ var suffix = ', exports.' + exportAs + ' = ' + name;
1458
+ if (parent.type !== 'ExpressionStatement') {
1459
+ if (!node.prefix) {
1460
+ suffix += ', ' + name + ' ' + (node.operator === '++' ? '-' : '+') + ' 1';
1337
1461
  }
1338
- prefix += ("( ");
1339
- suffix += (" )");
1462
+ prefix += '( ';
1463
+ suffix += ' )';
1340
1464
  }
1341
- body.insert( node.start, prefix );
1342
- body.insert( node.end, suffix );
1465
+ body.insert(node.start, prefix);
1466
+ body.insert(node.end, suffix);
1343
1467
  } else {
1344
- body.insert( node.start, (("exports." + exportAs) + " = ") );
1468
+ body.insert(node.start, 'exports.' + exportAs + ' = ');
1345
1469
  }
1346
1470
  }
1347
1471
  }
1348
1472
 
1349
- function traverseAst ( ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames ) {
1473
+ var traverse = traverseAst;
1474
+
1475
+ function traverseAst(ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames) {
1350
1476
  var scope = ast._scope;
1351
1477
  var blockScope = ast._blockScope;
1352
1478
  var capturedUpdates = null;
1353
1479
  var previousCapturedUpdates = null;
1354
1480
 
1355
- walk( ast, {
1356
- enter: function ( node, parent ) {
1481
+ ast_walk(ast, {
1482
+ enter: function (node, parent) {
1357
1483
  // we're only interested in references, not property names etc
1358
- if ( node._skip ) return this.skip();
1484
+ if (node._skip) return this.skip();
1359
1485
 
1360
- if ( node._scope ) {
1486
+ if (node._scope) {
1361
1487
  scope = node._scope;
1362
- } else if ( node._blockScope ) {
1488
+ } else if (node._blockScope) {
1363
1489
  blockScope = node._blockScope;
1364
1490
  }
1365
1491
 
@@ -1369,76 +1495,81 @@ function traverseAst ( ast, body, identifierReplacements, importedBindings, impo
1369
1495
  // normally would) because that would be syntactically invalid. Instead,
1370
1496
  // we capture the change and update the export (and any others) after the
1371
1497
  // variable declaration
1372
- if ( node.type === 'VariableDeclaration' ) {
1498
+ if (node.type === 'VariableDeclaration') {
1373
1499
  previousCapturedUpdates = capturedUpdates;
1374
1500
  capturedUpdates = [];
1375
1501
  return;
1376
1502
  }
1377
1503
 
1378
- disallowIllegalReassignment( node, importedBindings, importedNamespaces, scope );
1504
+ ast_disallowIllegalReassignment(node, importedBindings, importedNamespaces, scope);
1379
1505
 
1380
1506
  // Rewrite assignments to exports inside functions, to keep bindings live.
1381
1507
  // This call may mutate `capturedUpdates`, which is used elsewhere
1382
- if ( scope !== ast._scope ) {
1383
- rewriteExportAssignments( body, node, parent, exportNames, scope, capturedUpdates );
1508
+ if (scope !== ast._scope) {
1509
+ ast_rewriteExportAssignments(body, node, parent, exportNames, scope, capturedUpdates);
1384
1510
  }
1385
1511
 
1386
- if ( node.type === 'Identifier' && parent.type !== 'FunctionExpression' ) {
1387
- replaceIdentifiers( body, node, identifierReplacements, scope );
1512
+ if (node.type === 'Identifier' && parent.type !== 'FunctionExpression') {
1513
+ ast_replaceIdentifiers(body, node, identifierReplacements, scope);
1388
1514
  }
1389
1515
 
1390
1516
  // Replace top-level this with undefined ES6 8.1.1.5.4
1391
- if ( node.type === 'ThisExpression' && node._topLevel ) {
1392
- body.replace( node.start, node.end, 'undefined' );
1517
+ if (node.type === 'ThisExpression' && node._topLevel) {
1518
+ body.replace(node.start, node.end, 'undefined');
1393
1519
  }
1394
1520
  },
1395
1521
 
1396
- leave: function ( node ) {
1522
+ leave: function (node) {
1397
1523
  // Special case - see above
1398
- if ( node.type === 'VariableDeclaration' ) {
1399
- if ( capturedUpdates.length ) {
1400
- body.insert( node.end, capturedUpdates.map( exportCapturedUpdate ).join( '' ) );
1524
+ if (node.type === 'VariableDeclaration') {
1525
+ if (capturedUpdates.length) {
1526
+ body.insert(node.end, capturedUpdates.map(exportCapturedUpdate).join(''));
1401
1527
  }
1402
1528
 
1403
1529
  capturedUpdates = previousCapturedUpdates;
1404
1530
  }
1405
1531
 
1406
- if ( node._scope ) {
1532
+ if (node._scope) {
1407
1533
  scope = scope.parent;
1408
- } else if ( node._blockScope ) {
1534
+ } else if (node._blockScope) {
1409
1535
  blockScope = blockScope.parent;
1410
1536
  }
1411
1537
  }
1412
1538
  });
1413
1539
  }
1414
1540
 
1415
- function exportCapturedUpdate ( c ) {
1416
- return ((" exports." + (c.exportAs)) + (" = " + (c.name)) + ";");
1541
+ function exportCapturedUpdate(c) {
1542
+ return ' exports.' + c.exportAs + ' = ' + c.name + ';';
1417
1543
  }
1418
1544
 
1419
- function combine_transformBody__transformBody ( bundle, mod, body ) {
1545
+ var combine_transformBody = combine_transformBody__transformBody;
1546
+ function combine_transformBody__transformBody(bundle, mod, body) {
1420
1547
  var identifierReplacements = mod.identifierReplacements;
1421
- var importedBindings = (importedNamespaces = getReadOnlyIdentifiers( mod.imports ))[0], importedNamespaces = importedNamespaces[1];
1422
1548
 
1423
- var exportNames = utils_hasOwnProp.call( bundle.exports, mod.id ) && bundle.exports[ mod.id ];
1549
+ var _getReadOnlyIdentifiers = utils_getReadOnlyIdentifiers(mod.imports);
1550
+
1551
+ var importedBindings = _getReadOnlyIdentifiers[0];
1552
+ var importedNamespaces = _getReadOnlyIdentifiers[1];
1553
+
1554
+ var exportNames = utils_hasOwnProp.call(bundle.exports, mod.id) && bundle.exports[mod.id];
1424
1555
 
1425
- traverseAst( mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames );
1556
+ traverse(mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames);
1426
1557
 
1427
1558
  // Remove import statements
1428
- mod.imports.forEach( function(x ) {
1429
- if ( !x.passthrough ) {
1430
- body.remove( x.start, x.next );
1559
+ mod.imports.forEach(function (x) {
1560
+ if (!x.passthrough) {
1561
+ body.remove(x.start, x.next);
1431
1562
  }
1432
1563
  });
1433
1564
 
1434
1565
  var shouldExportEarly = {};
1435
1566
 
1436
1567
  // Remove export statements
1437
- mod.exports.forEach( function(x ) {
1568
+ mod.exports.forEach(function (x) {
1438
1569
  var name;
1439
1570
 
1440
- if ( x.isDefault ) {
1441
- if ( x.type === 'namedFunction' || x.type === 'namedClass' ) {
1571
+ if (x.isDefault) {
1572
+ if (x.type === 'namedFunction' || x.type === 'namedClass') {
1442
1573
  // if you have a default export like
1443
1574
  //
1444
1575
  // export default function foo () {...}
@@ -1451,33 +1582,29 @@ function combine_transformBody__transformBody ( bundle, mod, body ) {
1451
1582
  // as the `foo` reference may be used elsewhere
1452
1583
 
1453
1584
  // remove the `export default `, keep the rest
1454
- body.remove( x.start, x.valueStart );
1455
- }
1456
-
1457
- else if ( x.node.declaration && ( name = x.node.declaration.name ) ) {
1458
- if ( name === identifierReplacements.default ) {
1459
- body.remove( x.start, x.end );
1585
+ body.remove(x.start, x.valueStart);
1586
+ } else if (x.node.declaration && (name = x.node.declaration.name)) {
1587
+ if (name === identifierReplacements['default']) {
1588
+ body.remove(x.start, x.end);
1460
1589
  } else {
1461
- var original = utils_hasOwnProp.call( identifierReplacements, name ) ? identifierReplacements[ name ] : name;
1462
- body.replace( x.start, x.end, (("var " + (identifierReplacements.default)) + (" = " + original) + ";") );
1590
+ var original = utils_hasOwnProp.call(identifierReplacements, name) ? identifierReplacements[name] : name;
1591
+ body.replace(x.start, x.end, 'var ' + identifierReplacements['default'] + ' = ' + original + ';');
1463
1592
  }
1464
- }
1465
-
1466
- else {
1467
- body.replace( x.start, x.valueStart, (("var " + (identifierReplacements.default)) + " = ") );
1593
+ } else {
1594
+ body.replace(x.start, x.valueStart, 'var ' + identifierReplacements['default'] + ' = ');
1468
1595
  }
1469
1596
 
1470
1597
  return;
1471
1598
  }
1472
1599
 
1473
- if ( x.hasDeclaration ) {
1474
- if ( x.type === 'namedFunction' ) {
1475
- shouldExportEarly[ x.name ] = true; // TODO what about `function foo () {}; export { foo }`?
1600
+ if (x.hasDeclaration) {
1601
+ if (x.type === 'namedFunction') {
1602
+ shouldExportEarly[x.name] = true; // TODO what about `function foo () {}; export { foo }`?
1476
1603
  }
1477
1604
 
1478
- body.remove( x.start, x.valueStart );
1605
+ body.remove(x.start, x.valueStart);
1479
1606
  } else {
1480
- body.remove( x.start, x.next );
1607
+ body.remove(x.start, x.next);
1481
1608
  }
1482
1609
  });
1483
1610
 
@@ -1485,127 +1612,164 @@ function combine_transformBody__transformBody ( bundle, mod, body ) {
1485
1612
  // `import * from 'foo'` - then we need to make all this module's
1486
1613
  // exports available, using Object.defineProperty
1487
1614
  var indentStr = body.getIndentString();
1488
- if ( mod._exportsNamespace ) {
1489
- var namespaceExportBlock = (("var " + (mod.name)) + " = {\n"),
1490
- namespaceExports = [];
1491
-
1492
- mod.exports.forEach( function(x ) {
1493
- if ( x.hasDeclaration ) {
1494
- namespaceExports.push( indentStr + (("get " + (x.name)) + (" () { return " + (identifierReplacements[x.name])) + "; }") );
1495
- }
1496
-
1497
- else if ( x.isDefault ) {
1498
- namespaceExports.push( indentStr + (("get default () { return " + (identifierReplacements.default)) + "; }") );
1499
- }
1500
-
1501
- else {
1502
- x.specifiers.forEach( function(s ) {
1503
- namespaceExports.push( indentStr + (("get " + (s.name)) + (" () { return " + (s.name)) + "; }") );
1504
- });
1505
- }
1506
- });
1615
+ if (mod._exportsNamespace) {
1616
+ (function () {
1617
+ var namespaceExportBlock = 'var ' + mod.name + ' = {\n',
1618
+ namespaceExports = [];
1619
+
1620
+ mod.exports.forEach(function (x) {
1621
+ if (x.hasDeclaration) {
1622
+ namespaceExports.push(indentStr + ('get ' + x.name + ' () { return ' + identifierReplacements[x.name] + '; }'));
1623
+ } else if (x.isDefault) {
1624
+ namespaceExports.push(indentStr + ('get default () { return ' + identifierReplacements['default'] + '; }'));
1625
+ } else {
1626
+ x.specifiers.forEach(function (s) {
1627
+ namespaceExports.push(indentStr + ('get ' + s.name + ' () { return ' + s.name + '; }'));
1628
+ });
1629
+ }
1630
+ });
1507
1631
 
1508
- namespaceExportBlock += namespaceExports.join( ',\n' ) + '\n};\n\n';
1632
+ namespaceExportBlock += namespaceExports.join(',\n') + '\n};\n\n';
1509
1633
 
1510
- body.prepend( namespaceExportBlock );
1634
+ body.prepend(namespaceExportBlock);
1635
+ })();
1511
1636
  }
1512
1637
 
1513
1638
  // If this module is responsible for one of the bundle's exports
1514
1639
  // (it doesn't have to be the entry module, which could re-export
1515
1640
  // a binding from another module), we write exports here
1516
- if ( exportNames ) {
1517
- var exportBlock = [];
1641
+ if (exportNames) {
1642
+ (function () {
1643
+ var exportBlock = [];
1518
1644
 
1519
- Object.keys( exportNames ).forEach( function(name ) {
1520
- var exportAs = exportNames[ name ];
1521
- exportBlock.push( (("exports." + exportAs) + (" = " + (identifierReplacements[name])) + ";") );
1522
- });
1645
+ Object.keys(exportNames).forEach(function (name) {
1646
+ var exportAs = exportNames[name];
1647
+ exportBlock.push('exports.' + exportAs + ' = ' + identifierReplacements[name] + ';');
1648
+ });
1523
1649
 
1524
- if ( exportBlock.length ) {
1525
- body.trim().append( '\n\n' + exportBlock.join( '\n' ) );
1526
- }
1650
+ if (exportBlock.length) {
1651
+ body.trim().append('\n\n' + exportBlock.join('\n'));
1652
+ }
1653
+ })();
1527
1654
  }
1528
1655
 
1529
1656
  return body.trim();
1530
1657
  }
1531
1658
 
1532
- function combine ( bundle ) {
1659
+ var bundler_combine = combine;
1660
+ function combine(bundle) {
1533
1661
  bundle.body = new MagicString.Bundle({
1534
1662
  separator: '\n\n'
1535
1663
  });
1536
1664
 
1537
1665
  // give each module in the bundle a unique name
1538
- getUniqueNames( bundle );
1666
+ populateModuleNames(bundle);
1539
1667
 
1540
1668
  // determine which specifiers are imported from
1541
1669
  // external modules
1542
- populateExternalModuleImports( bundle );
1670
+ combine_populateExternalModuleImports(bundle);
1543
1671
 
1544
1672
  // determine which identifiers need to be replaced
1545
1673
  // inside this bundle
1546
- populateIdentifierReplacements( bundle );
1674
+ combine_populateIdentifierReplacements(bundle);
1547
1675
 
1548
- bundle.exports = resolveExports( bundle );
1676
+ bundle.exports = combine_resolveExports(bundle);
1549
1677
 
1550
- bundle.modules.forEach( function(mod ) {
1678
+ bundle.modules.forEach(function (mod) {
1551
1679
  // verify that this module doesn't import non-exported identifiers
1552
- mod.imports.forEach( function(x ) {
1680
+ mod.imports.forEach(function (x) {
1553
1681
  var imported = x.module;
1554
1682
 
1555
- if ( imported.isExternal || imported.isSkipped || x.isBatch ) {
1683
+ if (imported.isExternal || imported.isSkipped || x.isBatch) {
1556
1684
  return;
1557
1685
  }
1558
1686
 
1559
- x.specifiers.forEach( function(s ) {
1560
- if ( !imported.doesExport[ s.name ] ) {
1561
- throw new Error( (("Module '" + (imported.id)) + ("' does not export '" + (s.name)) + ("' (imported by '" + (mod.id)) + "')") );
1687
+ x.specifiers.forEach(function (s) {
1688
+ if (!imported.doesExport[s.name]) {
1689
+ throw new Error('Module \'' + imported.id + '\' does not export \'' + s.name + '\' (imported by \'' + mod.id + '\')');
1562
1690
  }
1563
1691
  });
1564
1692
  });
1565
1693
 
1566
1694
  bundle.body.addSource({
1567
1695
  filename: mod.path,
1568
- content: combine_transformBody__transformBody( bundle, mod, mod.body ),
1696
+ content: combine_transformBody(bundle, mod, mod.body),
1569
1697
  indentExclusionRanges: mod.ast._templateLiteralRanges
1570
1698
  });
1571
1699
  });
1572
1700
  }
1573
1701
 
1574
- function getModule ( mod ) {
1575
- mod.body = new MagicString( mod.code );
1702
+ var bundler_getModule = getModule;
1703
+ function getModule(mod) {
1704
+ mod.body = new MagicString(mod.code);
1576
1705
 
1577
1706
  var toRemove = [];
1578
1707
 
1579
1708
  try {
1580
- mod.ast = mod.ast || ( acorn.parse( mod.code, {
1709
+ mod.ast = mod.ast || acorn.parse(mod.code, {
1581
1710
  ecmaVersion: 6,
1582
1711
  sourceType: 'module',
1583
- onComment: function ( block, text, start, end ) {
1712
+ onComment: function (block, text, start, end) {
1584
1713
  // sourceMappingURL comments should be removed
1585
- if ( !block && /^# sourceMappingURL=/.test( text ) ) {
1714
+ if (!block && /^# sourceMappingURL=/.test(text)) {
1586
1715
  toRemove.push({ start: start, end: end });
1587
1716
  }
1588
1717
  }
1589
- }));
1590
-
1591
- toRemove.forEach( function(end) {var start = end.start, end = end.end;return mod.body.remove( start, end )} );
1592
- annotateAst( mod.ast );
1593
- } catch ( err ) {
1718
+ });
1719
+ } catch (err) {
1594
1720
  // If there's a parse error, attach file info
1595
1721
  // before throwing the error
1596
- if ( err.loc ) {
1722
+ if (err.loc) {
1597
1723
  err.file = mod.path;
1598
1724
  }
1599
1725
 
1600
1726
  throw err;
1601
1727
  }
1602
1728
 
1603
- var imports = (exports = findImportsAndExports( mod, mod.code, mod.ast ))[0], exports = exports[1];
1729
+ // remove sourceMappingURL comments
1730
+ toRemove.forEach(function (_ref) {
1731
+ var start = _ref.start;
1732
+ var end = _ref.end;
1733
+ return mod.body.remove(start, end);
1734
+ });
1735
+
1736
+ var _findImportsAndExports = ast_findImportsAndExports(mod.ast, mod.code);
1737
+
1738
+ var imports = _findImportsAndExports.imports;
1739
+ var exports = _findImportsAndExports.exports;
1740
+ var defaultExport = _findImportsAndExports.defaultExport;
1604
1741
 
1605
- disallowConflictingImports( imports );
1742
+ utils_disallowConflictingImports(imports);
1606
1743
 
1607
1744
  mod.imports = imports;
1608
1745
  mod.exports = exports;
1746
+ mod.defaultExport = defaultExport;
1747
+
1748
+ var defaultExportIdentifier = defaultExport && defaultExport.type === 'expression' && defaultExport.node.declaration && defaultExport.node.declaration.type === 'Identifier' && defaultExport.node.declaration;
1749
+
1750
+ // if the default export is an expression like `export default foo`, we
1751
+ // can *probably* just use `foo` to refer to said export throughout the
1752
+ // bundle. Tracking assignments to `foo` allows us to be sure that that's
1753
+ // the case (i.e. that the module doesn't assign a different value to foo
1754
+ // after it's been exported)
1755
+ annotate(mod.ast, {
1756
+ trackAssignments: defaultExportIdentifier
1757
+ });
1758
+
1759
+ if (defaultExportIdentifier && defaultExportIdentifier._assignments) {
1760
+ var i = defaultExportIdentifier._assignments.length;
1761
+ while (i--) {
1762
+ var assignment = defaultExportIdentifier._assignments[i];
1763
+
1764
+ // if either a) the assignment happens inside a function body, or
1765
+ // b) it happens after the `export default ...`, then it's unsafe to
1766
+ // use the identifier, and we need to essentially do `var _foo = foo`
1767
+ if (assignment.scope.parent || assignment.node.start > defaultExport.start) {
1768
+ defaultExport.unsafe = true; // TODO better property name than 'unsafe'
1769
+ break;
1770
+ }
1771
+ }
1772
+ }
1609
1773
 
1610
1774
  // identifiers to replace within this module
1611
1775
  // (gets filled in later, once bundle is combined)
@@ -1615,58 +1779,56 @@ function getModule ( mod ) {
1615
1779
  // that this module exports a given identifier
1616
1780
  mod.doesExport = {};
1617
1781
 
1618
- exports.forEach( function(x ) {
1619
- if ( x.isDefault ) {
1620
- mod.doesExport.default = true;
1621
- }
1622
-
1623
- else if ( x.name ) {
1624
- mod.doesExport[ x.name ] = true;
1625
- }
1626
-
1627
- else if ( x.specifiers ) {
1628
- x.specifiers.forEach( function(s ) {
1629
- mod.doesExport[ s.name ] = true;
1782
+ exports.forEach(function (x) {
1783
+ if (x.isDefault) {
1784
+ mod.doesExport['default'] = true;
1785
+ } else if (x.name) {
1786
+ mod.doesExport[x.name] = true;
1787
+ } else if (x.specifiers) {
1788
+ x.specifiers.forEach(function (s) {
1789
+ mod.doesExport[s.name] = true;
1630
1790
  });
1631
- }
1632
-
1633
- else {
1634
- throw new Error( 'Unexpected export type' );
1791
+ } else {
1792
+ throw new Error('Unexpected export type');
1635
1793
  }
1636
1794
  });
1637
1795
 
1638
1796
  return mod;
1639
1797
  }
1640
1798
 
1641
- var bundler_getBundle__Promise = sander.Promise;
1799
+ var bundler_getBundle = getBundle;
1642
1800
 
1643
- function getBundle ( options ) {
1644
- var entry = options.entry.replace( /\.js$/, '' );
1801
+ function getBundle(options) {
1802
+ var entry = options.entry.replace(/\.js$/, '');
1645
1803
  var userModules = options.modules || {};
1646
1804
  var modules = [];
1647
1805
  var moduleLookup = {};
1648
1806
  var promiseByPath = {};
1649
1807
  var skip = options.skip;
1650
1808
  var names = options.names;
1651
- var base = ( options.base ? _path.resolve( options.base ) : process.cwd() ) + '/';
1809
+ var base = (options.base ? _path.resolve(options.base) : process.cwd()) + '/';
1652
1810
  var externalModules = [];
1653
1811
  var externalModuleLookup = {};
1654
1812
 
1655
- if ( !entry.indexOf( base ) ) {
1656
- entry = entry.substring( base.length );
1813
+ if (!entry.indexOf(base)) {
1814
+ entry = entry.substring(base.length);
1657
1815
  }
1658
1816
 
1659
1817
  // resolve user module paths
1660
- options.modules && Object.keys( options.modules ).forEach( function(relativePath ) {
1661
- userModules[ _path.resolve( base, relativePath ) ] = options.modules[ relativePath ];
1818
+ options.modules && Object.keys(options.modules).forEach(function (relativePath) {
1819
+ userModules[_path.resolve(base, relativePath)] = options.modules[relativePath];
1662
1820
  });
1663
1821
 
1664
1822
  var cyclicalModules = [];
1665
1823
 
1666
- return resolvePath( base, userModules, entry, null ).then( function(absolutePath ) {
1667
- return fetchModule( entry, absolutePath ).then( function(entryModule ) {
1668
- return bundler_getBundle__Promise.all( cyclicalModules ).then( function() {
1669
- modules = sortModules( entryModule );
1824
+ return resolvePath(base, userModules, entry, null).then(function (absolutePath) {
1825
+ return fetchModule(entry, absolutePath).then(function (entryModule) {
1826
+ return sander.Promise.all(cyclicalModules).then(function () {
1827
+ // if the bundle contains cyclical modules,
1828
+ // we may need to sort it again
1829
+ if (cyclicalModules.length) {
1830
+ modules = utils_sortModules(entryModule);
1831
+ }
1670
1832
 
1671
1833
  var bundle = {
1672
1834
  entryModule: entryModule,
@@ -1675,32 +1837,28 @@ function getBundle ( options ) {
1675
1837
  names: names
1676
1838
  };
1677
1839
 
1678
- resolveChains( modules, moduleLookup );
1679
- combine( bundle );
1840
+ utils_resolveChains(modules, moduleLookup);
1841
+ bundler_combine(bundle);
1680
1842
 
1681
1843
  return bundle;
1682
1844
  });
1683
-
1684
1845
  });
1685
- }, function ( err ) {
1686
- if ( err.code === 'ENOENT' ) {
1687
- throw new Error( 'Could not find entry module (' + entry + ')' );
1846
+ }, function (err) {
1847
+ if (err.code === 'ENOENT') {
1848
+ throw new Error('Could not find entry module (' + entry + ')');
1688
1849
  }
1689
1850
 
1690
1851
  throw err;
1691
1852
  });
1692
1853
 
1693
- function fetchModule ( moduleId, absolutePath ) {
1694
- if ( !utils_hasOwnProp.call( promiseByPath, absolutePath ) ) {
1695
- promiseByPath[ absolutePath ] = (
1696
- utils_hasOwnProp.call( userModules, absolutePath ) ?
1697
- bundler_getBundle__Promise.resolve( userModules[ absolutePath ] ) :
1698
- sander.readFile( absolutePath ).then( String )
1699
- ).then( function ( source ) {
1700
- var code, ast;
1854
+ function fetchModule(moduleId, absolutePath) {
1855
+ if (!utils_hasOwnProp.call(promiseByPath, absolutePath)) {
1856
+ promiseByPath[absolutePath] = (utils_hasOwnProp.call(userModules, absolutePath) ? sander.Promise.resolve(userModules[absolutePath]) : sander.readFile(absolutePath).then(String)).then(function (source) {
1857
+ var code = undefined,
1858
+ ast = undefined;
1701
1859
 
1702
1860
  // normalise
1703
- if ( typeof source === 'object' ) {
1861
+ if (typeof source === 'object') {
1704
1862
  code = source.code;
1705
1863
  ast = source.ast;
1706
1864
  } else {
@@ -1708,37 +1866,32 @@ function getBundle ( options ) {
1708
1866
  ast = null;
1709
1867
  }
1710
1868
 
1711
- if ( options.transform ) {
1712
- code = options.transform( code, absolutePath );
1869
+ if (options.transform) {
1870
+ code = options.transform(code, absolutePath);
1713
1871
 
1714
- if ( typeof code !== 'string' && !isThenable( code ) ) {
1715
- throw new Error( 'transform should return String or Promise' );
1872
+ if (typeof code !== 'string' && !isThenable(code)) {
1873
+ throw new Error('transform should return String or Promise');
1716
1874
  }
1717
1875
  }
1718
1876
 
1719
- var module = getModule({
1877
+ var module = bundler_getModule({
1720
1878
  id: moduleId,
1721
1879
  path: absolutePath,
1722
1880
  code: code,
1723
- ast: ast,
1724
-
1725
- // TODO should not need this
1726
- relativePath: _path.relative( base, absolutePath )
1881
+ ast: ast
1727
1882
  });
1728
1883
 
1729
- modules.push( module );
1730
- moduleLookup[ moduleId ] = module;
1884
+ moduleLookup[moduleId] = module;
1731
1885
 
1732
- var promises = module.imports.map( function(x ) {
1733
- // TODO remove this, use x.module instead. more flexible, no lookups involved
1734
- var id = resolveId( x.path, module.relativePath );
1886
+ return utils_promiseSequence(module.imports, function (x) {
1887
+ var id = utils_resolveId(x.path, module.path).replace(base, '');
1735
1888
 
1736
- if ( id === moduleId ) {
1737
- throw new Error( 'A module (' + moduleId + ') cannot import itself' );
1889
+ if (id === moduleId) {
1890
+ throw new Error('A module (' + moduleId + ') cannot import itself');
1738
1891
  }
1739
1892
 
1740
1893
  // Some modules can be skipped
1741
- if ( skip && ~skip.indexOf( id ) ) {
1894
+ if (skip && ~skip.indexOf(id)) {
1742
1895
  var skippedModule = {
1743
1896
  id: id,
1744
1897
  isSkipped: true
@@ -1748,178 +1901,188 @@ function getBundle ( options ) {
1748
1901
  return skippedModule;
1749
1902
  }
1750
1903
 
1751
- return resolvePath( base, userModules, id, absolutePath, options.resolvePath ).then( function(absolutePath ) {
1752
- var promise = utils_hasOwnProp.call( promiseByPath, absolutePath ) && promiseByPath[ absolutePath ];
1904
+ return resolvePath(base, userModules, id, absolutePath, options.resolvePath).then(function (absolutePath) {
1905
+ var promise = utils_hasOwnProp.call(promiseByPath, absolutePath) && promiseByPath[absolutePath];
1753
1906
  var cyclical = !!promise;
1754
1907
 
1755
- if ( cyclical ) {
1908
+ if (cyclical) {
1756
1909
  // ensure all modules are set before we
1757
1910
  // create the bundle...
1758
- cyclicalModules.push(
1759
- promise.then( function(module ) {return x.module = module} )
1760
- );
1911
+ cyclicalModules.push(promise.then(function (module) {
1912
+ return x.module = module;
1913
+ }));
1761
1914
 
1762
1915
  // ...then short-circuit
1763
1916
  return;
1764
1917
  }
1765
1918
 
1766
- return fetchModule( id, absolutePath ).then( function(module ) {return x.module = module} );
1767
- }, function handleError ( err ) {
1768
- if ( err.code === 'ENOENT' ) {
1919
+ return fetchModule(id, absolutePath).then(function (module) {
1920
+ return x.module = module;
1921
+ });
1922
+ }, function handleError(err) {
1923
+ if (err.code === 'ENOENT') {
1769
1924
  // Most likely an external module
1770
- var externalModule = utils_hasOwnProp.call( externalModuleLookup, id ) && externalModuleLookup[ id ];
1925
+ var externalModule = utils_hasOwnProp.call(externalModuleLookup, id) && externalModuleLookup[id];
1771
1926
 
1772
- if ( !externalModule ) {
1927
+ if (!externalModule) {
1773
1928
  externalModule = {
1774
1929
  id: id,
1775
1930
  isExternal: true
1776
1931
  };
1777
1932
 
1778
- externalModules.push( externalModule );
1779
- externalModuleLookup[ id ] = externalModule;
1933
+ externalModules.push(externalModule);
1934
+ externalModuleLookup[id] = externalModule;
1780
1935
  }
1781
1936
 
1782
1937
  x.module = externalModule;
1783
1938
  } else {
1784
1939
  throw err;
1785
1940
  }
1786
- } );
1941
+ });
1942
+ }).then(function () {
1943
+ return modules.push(module);
1944
+ }).then(function () {
1945
+ return module;
1787
1946
  });
1788
-
1789
- return bundler_getBundle__Promise.all( promises )
1790
- .then( function() {return module} );
1791
1947
  });
1792
1948
  }
1793
1949
 
1794
- return promiseByPath[ absolutePath ];
1950
+ return promiseByPath[absolutePath];
1795
1951
  }
1796
1952
  }
1797
1953
 
1798
- function resolvePath ( base, userModules, moduleId, importerPath, resolver ) {
1799
- var noExt = moduleId.replace( /\.js$/, '' );
1954
+ function resolvePath(base, userModules, moduleId, importerPath, resolver) {
1955
+ var noExt = moduleId.replace(/\.js$/, '');
1800
1956
 
1801
- return tryPath( base, noExt + '.js', userModules )
1802
- .catch( function() {return tryPath( base, noExt + _path.sep + 'index.js', userModules )} )
1803
- .catch( function ( err ) {
1804
- var resolvedPromise = resolver && bundler_getBundle__Promise.resolve( resolver( moduleId, importerPath ) );
1957
+ return tryPath(base, noExt + '.js', userModules)['catch'](function () {
1958
+ return tryPath(base, noExt + _path.sep + 'index.js', userModules);
1959
+ })['catch'](function (err) {
1960
+ var resolvedPromise = resolver && sander.Promise.resolve(resolver(moduleId, importerPath));
1805
1961
 
1806
- if ( resolvedPromise ) {
1807
- return resolvedPromise.then( function(resolvedPath ) {
1808
- if ( !resolvedPath ) {
1809
- // hack but whatevs, it saves handling real ENOENTs differently
1810
- var err = new Error();
1811
- err.code = 'ENOENT';
1812
- throw err;
1813
- }
1962
+ if (resolvedPromise) {
1963
+ return resolvedPromise.then(function (resolvedPath) {
1964
+ if (!resolvedPath) {
1965
+ // hack but whatevs, it saves handling real ENOENTs differently
1966
+ var _err = new Error();
1967
+ _err.code = 'ENOENT';
1968
+ throw _err;
1969
+ }
1814
1970
 
1815
- return sander.stat( resolvedPath ).then( function() {return _path.resolve( base, resolvedPath )} );
1971
+ return sander.stat(resolvedPath).then(function () {
1972
+ return _path.resolve(base, resolvedPath);
1816
1973
  });
1817
- } else {
1818
- throw err;
1819
- }
1820
- });
1974
+ });
1975
+ } else {
1976
+ throw err;
1977
+ }
1978
+ });
1821
1979
  }
1822
1980
 
1823
- function tryPath ( base, filename, userModules ) {
1824
- var absolutePath = _path.resolve( base, filename );
1981
+ function tryPath(base, filename, userModules) {
1982
+ var absolutePath = _path.resolve(base, filename);
1825
1983
 
1826
- if ( utils_hasOwnProp.call( userModules, absolutePath ) ) {
1827
- return bundler_getBundle__Promise.resolve( absolutePath );
1984
+ if (utils_hasOwnProp.call(userModules, absolutePath)) {
1985
+ return sander.Promise.resolve(absolutePath);
1828
1986
  }
1829
- return sander.stat( absolutePath ).then( function() {return absolutePath} );
1987
+ return sander.stat(absolutePath).then(function () {
1988
+ return absolutePath;
1989
+ });
1830
1990
  }
1831
1991
 
1832
- function isThenable ( obj ) {
1992
+ function isThenable(obj) {
1833
1993
  return obj && typeof obj.then === 'function';
1834
1994
  }
1835
1995
 
1836
- function transformExportDeclaration ( declaration, body ) {
1837
- if ( !declaration ) {
1996
+ var utils_transformExportDeclaration = transformExportDeclaration;
1997
+
1998
+ function transformExportDeclaration(declaration, body) {
1999
+ if (!declaration) {
1838
2000
  return;
1839
2001
  }
1840
2002
 
1841
- var exportedValue;
2003
+ var exportedValue = undefined;
1842
2004
 
1843
- switch ( declaration.type ) {
2005
+ switch (declaration.type) {
1844
2006
  case 'namedFunction':
1845
2007
  case 'namedClass':
1846
- body.remove( declaration.start, declaration.valueStart );
2008
+ body.remove(declaration.start, declaration.valueStart);
1847
2009
  exportedValue = declaration.name;
1848
2010
  break;
1849
2011
 
1850
2012
  case 'anonFunction':
1851
2013
  case 'anonClass':
1852
- if ( declaration.isFinal ) {
1853
- body.replace( declaration.start, declaration.valueStart, 'return ' );
2014
+ if (declaration.isFinal) {
2015
+ body.replace(declaration.start, declaration.valueStart, 'return ');
1854
2016
  } else {
1855
- body.replace( declaration.start, declaration.valueStart, 'var __export = ' );
2017
+ body.replace(declaration.start, declaration.valueStart, 'var __export = ');
1856
2018
  exportedValue = '__export';
1857
2019
  }
1858
2020
 
1859
2021
  // add semi-colon, if necessary
1860
2022
  // TODO body.original is an implementation detail of magic-string - there
1861
2023
  // should probably be an API for this sort of thing
1862
- if ( body.original[ declaration.end - 1 ] !== ';' ) {
1863
- body.insert( declaration.end, ';' );
2024
+ if (body.original[declaration.end - 1] !== ';') {
2025
+ body.insert(declaration.end, ';');
1864
2026
  }
1865
2027
 
1866
2028
  break;
1867
2029
 
1868
2030
  case 'expression':
1869
- body.remove( declaration.start, declaration.next );
2031
+ body.remove(declaration.start, declaration.next);
1870
2032
  exportedValue = declaration.value;
1871
2033
  break;
1872
2034
 
1873
2035
  default:
1874
- throw new Error( (("Unexpected export type '" + (declaration.type)) + "'") );
2036
+ throw new Error('Unexpected export type \'' + declaration.type + '\'');
1875
2037
  }
1876
2038
 
1877
- if ( exportedValue ) {
1878
- body.append( (("\nreturn " + exportedValue) + ";") );
2039
+ if (exportedValue) {
2040
+ body.append('\nreturn ' + exportedValue + ';');
1879
2041
  }
1880
2042
  }
1881
2043
 
1882
- var ABSOLUTE_PATH = /^(?:[A-Z]:)?[\/\\]/i;
2044
+ var utils_packageResult = packageResult;
1883
2045
 
1884
- var utils_packageResult__warned = {};
2046
+ var ABSOLUTE_PATH = /^(?:[A-Z]:)?[\/\\]/i;
1885
2047
 
1886
- function packageResult ( bundleOrModule, body, options, methodName, isBundle ) {
2048
+ var warned = {};
2049
+ function packageResult(bundleOrModule, body, options, methodName, isBundle) {
1887
2050
  // wrap output
1888
- if ( options.banner ) body.prepend( options.banner );
1889
- if ( options.footer ) body.append( options.footer );
2051
+ if (options.banner) body.prepend(options.banner);
2052
+ if (options.footer) body.append(options.footer);
1890
2053
 
1891
2054
  var code = body.toString();
1892
- var map;
2055
+ var map = undefined;
1893
2056
 
1894
- if ( !!options.sourceMap ) {
1895
- if ( options.sourceMap !== 'inline' && !options.sourceMapFile ) {
1896
- throw new Error( 'You must provide `sourceMapFile` option' );
2057
+ if (!!options.sourceMap) {
2058
+ if (options.sourceMap !== 'inline' && !options.sourceMapFile) {
2059
+ throw new Error('You must provide `sourceMapFile` option');
1897
2060
  }
1898
2061
 
1899
- if ( !isBundle && !options.sourceMapSource ) {
1900
- throw new Error( 'You must provide `sourceMapSource` option' );
2062
+ if (!isBundle && !options.sourceMapSource) {
2063
+ throw new Error('You must provide `sourceMapSource` option');
1901
2064
  }
1902
2065
 
1903
- var sourceMapFile;
1904
- if ( options.sourceMap === 'inline' ) {
2066
+ var sourceMapFile = undefined;
2067
+ if (options.sourceMap === 'inline') {
1905
2068
  sourceMapFile = null;
1906
2069
  } else {
1907
- sourceMapFile = ABSOLUTE_PATH.test( options.sourceMapFile ) ? options.sourceMapFile : './' + splitPath( options.sourceMapFile ).pop();
2070
+ sourceMapFile = ABSOLUTE_PATH.test(options.sourceMapFile) ? options.sourceMapFile : './' + splitPath(options.sourceMapFile).pop();
1908
2071
  }
1909
2072
 
1910
- if ( isBundle ) {
1911
- markBundleSourcemapLocations( bundleOrModule );
2073
+ if (isBundle) {
2074
+ markBundleSourcemapLocations(bundleOrModule);
1912
2075
  } else {
1913
- markModuleSourcemapLocations( bundleOrModule );
2076
+ markModuleSourcemapLocations(bundleOrModule);
1914
2077
  }
1915
2078
 
1916
2079
  map = body.generateMap({
1917
2080
  includeContent: true,
1918
2081
  file: sourceMapFile,
1919
- source: ( sourceMapFile && !isBundle ) ? getRelativePath( sourceMapFile, options.sourceMapSource ) : null
2082
+ source: sourceMapFile && !isBundle ? getRelativePath(sourceMapFile, options.sourceMapSource) : null
1920
2083
  });
1921
2084
 
1922
- if ( options.sourceMap === 'inline' ) {
2085
+ if (options.sourceMap === 'inline') {
1923
2086
  code += '\n//# sourceMa' + 'ppingURL=' + map.toUrl();
1924
2087
  map = null;
1925
2088
  } else {
@@ -1933,9 +2096,9 @@ function packageResult ( bundleOrModule, body, options, methodName, isBundle ) {
1933
2096
  code: code,
1934
2097
  map: map,
1935
2098
  toString: function () {
1936
- if ( !utils_packageResult__warned[ methodName ] ) {
1937
- console.log( (("Warning: esperanto." + methodName) + "() returns an object with a 'code' property. You should use this instead of using the returned value directly") );
1938
- utils_packageResult__warned[ methodName ] = true;
2099
+ if (!warned[methodName]) {
2100
+ console.log('Warning: esperanto.' + methodName + '() returns an object with a \'code\' property. You should use this instead of using the returned value directly');
2101
+ warned[methodName] = true;
1939
2102
  }
1940
2103
 
1941
2104
  return code;
@@ -1943,122 +2106,140 @@ function packageResult ( bundleOrModule, body, options, methodName, isBundle ) {
1943
2106
  };
1944
2107
  }
1945
2108
 
1946
- function getRelativePath ( from, to ) {
2109
+ function getRelativePath(from, to) {
1947
2110
  var fromParts, toParts, i;
1948
2111
 
1949
- fromParts = splitPath( from );
1950
- toParts = splitPath( to );
2112
+ fromParts = splitPath(from);
2113
+ toParts = splitPath(to);
1951
2114
 
1952
2115
  fromParts.pop(); // get dirname
1953
2116
 
1954
- while ( fromParts[0] === '.' ) {
2117
+ while (fromParts[0] === '.') {
1955
2118
  fromParts.shift();
1956
2119
  }
1957
2120
 
1958
- while ( fromParts[0] === toParts[0] ) {
2121
+ while (fromParts[0] === toParts[0]) {
1959
2122
  fromParts.shift();
1960
2123
  toParts.shift();
1961
2124
  }
1962
2125
 
1963
- if ( fromParts.length ) {
2126
+ if (fromParts.length) {
1964
2127
  i = fromParts.length;
1965
- while ( i-- ) fromParts[i] = '..';
2128
+ while (i--) fromParts[i] = '..';
1966
2129
 
1967
- return fromParts.concat( toParts ).join( '/' );
2130
+ return fromParts.concat(toParts).join('/');
1968
2131
  } else {
1969
- toParts.unshift( '.' );
1970
- return toParts.join( '/' );
2132
+ toParts.unshift('.');
2133
+ return toParts.join('/');
1971
2134
  }
1972
2135
  }
1973
2136
 
1974
- function markBundleSourcemapLocations ( bundle ) {
1975
- bundle.modules.forEach( function(mod ) {
1976
- walk( mod.ast, {
1977
- enter: function(node ) {
1978
- mod.body.addSourcemapLocation( node.start );
2137
+ function markBundleSourcemapLocations(bundle) {
2138
+ bundle.modules.forEach(function (mod) {
2139
+ ast_walk(mod.ast, {
2140
+ enter: function (node) {
2141
+ mod.body.addSourcemapLocation(node.start);
1979
2142
  }
1980
2143
  });
1981
2144
  });
1982
2145
  }
1983
2146
 
1984
- function markModuleSourcemapLocations ( mod ) {
1985
- walk( mod.ast, {
1986
- enter: function(node ) {
1987
- mod.body.addSourcemapLocation( node.start );
2147
+ function markModuleSourcemapLocations(mod) {
2148
+ ast_walk(mod.ast, {
2149
+ enter: function (node) {
2150
+ mod.body.addSourcemapLocation(node.start);
1988
2151
  }
1989
2152
  });
1990
2153
  }
1991
2154
 
1992
- function getImportSummary (name) {var imports = name.imports, absolutePaths = name.absolutePaths, name = name.name;
2155
+ var amd_getImportSummary = getImportSummary;
2156
+ function getImportSummary(_ref) {
2157
+ var imports = _ref.imports;
2158
+ var absolutePaths = _ref.absolutePaths;
2159
+ var name = _ref.name;
2160
+
1993
2161
  var paths = [];
1994
2162
  var names = [];
1995
2163
  var seen = {};
1996
2164
  var placeholders = 0;
1997
2165
 
1998
- imports.forEach( function(x ) {
2166
+ imports.forEach(function (x) {
1999
2167
  var path = x.id || x.path; // TODO unify these
2000
2168
 
2001
- if ( !seen[ path ] ) {
2002
- seen[ path ] = true;
2169
+ if (!seen[path]) {
2170
+ seen[path] = true;
2003
2171
 
2004
- paths.push( path );
2172
+ paths.push(path);
2005
2173
 
2006
2174
  // TODO x could be an external module, or an internal one.
2007
2175
  // they have different shapes, resulting in the confusing
2008
2176
  // code below
2009
- if ( ( x.needsDefault || x.needsNamed ) || ( x.specifiers && x.specifiers.length ) ) {
2010
- while ( placeholders ) {
2011
- names.push( (("__dep" + (names.length)) + "__") );
2177
+ if (x.needsDefault || x.needsNamed || x.specifiers && x.specifiers.length) {
2178
+ while (placeholders) {
2179
+ names.push('__dep' + names.length + '__');
2012
2180
  placeholders--;
2013
2181
  }
2014
- names.push( x.name );
2182
+ names.push(x.name);
2015
2183
  } else {
2016
2184
  placeholders++;
2017
2185
  }
2018
2186
  }
2019
2187
  });
2020
2188
 
2021
- var ids = absolutePaths ? paths.map( function(relativePath ) {return resolveId( relativePath, name )} ) : paths.slice();
2189
+ var ids = absolutePaths ? paths.map(function (relativePath) {
2190
+ return utils_resolveId(relativePath, name);
2191
+ }) : paths.slice();
2022
2192
 
2023
2193
  return { ids: ids, paths: paths, names: names };
2024
2194
  }
2025
2195
 
2026
- function processName ( name ) {
2027
- return name ? quote( name ) + ', ' : '';
2196
+ var amd_processName = processName;
2197
+ function processName(name) {
2198
+ return name ? quote(name) + ', ' : '';
2028
2199
  }
2029
2200
 
2030
- function processIds ( ids ) {
2031
- return ids.length ? '[' + ids.map( quote ).join( ', ' ) + '], ' : '';
2201
+ var amd_processIds = processIds;
2202
+ function processIds(ids) {
2203
+ return ids.length ? '[' + ids.map(quote).join(', ') + '], ' : '';
2032
2204
  }
2033
2205
 
2034
- function amdIntro (useStrict) {var name = useStrict.name, imports = useStrict.imports, hasExports = useStrict.hasExports, indentStr = useStrict.indentStr, absolutePaths = useStrict.absolutePaths, useStrict = useStrict.useStrict;
2035
- var ids = (names = getImportSummary({ name: name, imports: imports, absolutePaths: absolutePaths })).ids, names = names.names;
2206
+ var amd_amdIntro = amdIntro;
2207
+ function amdIntro(_ref) {
2208
+ var name = _ref.name;
2209
+ var imports = _ref.imports;
2210
+ var hasExports = _ref.hasExports;
2211
+ var indentStr = _ref.indentStr;
2212
+ var absolutePaths = _ref.absolutePaths;
2213
+ var useStrict = _ref.useStrict;
2214
+
2215
+ var _getImportSummary = amd_getImportSummary({ name: name, imports: imports, absolutePaths: absolutePaths });
2216
+
2217
+ var ids = _getImportSummary.ids;
2218
+ var names = _getImportSummary.names;
2036
2219
 
2037
- if ( hasExports ) {
2038
- ids.unshift( 'exports' );
2039
- names.unshift( 'exports' );
2220
+ if (hasExports) {
2221
+ ids.unshift('exports');
2222
+ names.unshift('exports');
2040
2223
  }
2041
2224
 
2042
- var intro = (("\
2043
- \ndefine(" + (processName(name))) + ("" + (processIds(ids))) + ("function (" + (names.join( ', ' ))) + ") {\
2044
- \n\
2045
- \n");
2225
+ var intro = '\ndefine(' + amd_processName(name) + '' + amd_processIds(ids) + 'function (' + names.join(', ') + ') {\n\n';
2046
2226
 
2047
- if ( useStrict ) {
2048
- intro += (("" + indentStr) + "'use strict';\n\n");
2227
+ if (useStrict) {
2228
+ intro += '' + indentStr + '\'use strict\';\n\n';
2049
2229
  }
2050
2230
 
2051
2231
  return intro;
2052
2232
  }
2053
2233
 
2054
- function defaultsMode_amd__amd ( mod, options ) {
2055
- mod.imports.forEach( function(x ) {
2056
- mod.body.remove( x.start, x.next );
2234
+ var defaultsMode_amd = defaultsMode_amd__amd;
2235
+ function defaultsMode_amd__amd(mod, options) {
2236
+ mod.imports.forEach(function (x) {
2237
+ mod.body.remove(x.start, x.next);
2057
2238
  });
2058
2239
 
2059
- transformExportDeclaration( mod.exports[0], mod.body );
2240
+ utils_transformExportDeclaration(mod.exports[0], mod.body);
2060
2241
 
2061
- var intro = amdIntro({
2242
+ var intro = amd_amdIntro({
2062
2243
  name: options.amdName,
2063
2244
  imports: mod.imports,
2064
2245
  absolutePaths: options.absolutePaths,
@@ -2066,121 +2247,118 @@ function defaultsMode_amd__amd ( mod, options ) {
2066
2247
  useStrict: options.useStrict !== false
2067
2248
  });
2068
2249
 
2069
- mod.body.trim()
2070
- .indent()
2071
- .prepend( intro )
2072
- .trim()
2073
- .append( '\n\n});' );
2250
+ mod.body.trim().indent().prepend(intro).trim().append('\n\n});');
2074
2251
 
2075
- return packageResult( mod, mod.body, options, 'toAmd' );
2252
+ return utils_packageResult(mod, mod.body, options, 'toAmd');
2076
2253
  }
2077
2254
 
2078
- function defaultsMode_cjs__cjs ( mod, options ) {
2255
+ var defaultsMode_cjs = defaultsMode_cjs__cjs;
2256
+ function defaultsMode_cjs__cjs(mod, options) {
2079
2257
  var seen = {};
2080
2258
 
2081
- mod.imports.forEach( function(x ) {
2082
- if ( !utils_hasOwnProp.call( seen, x.path ) ) {
2083
- var replacement = x.isEmpty ? (("" + (req(x.path))) + ";") : (("var " + (x.as)) + (" = " + (req(x.path))) + ";");
2084
- mod.body.replace( x.start, x.end, replacement );
2259
+ mod.imports.forEach(function (x) {
2260
+ if (!utils_hasOwnProp.call(seen, x.path)) {
2261
+ var replacement = x.isEmpty ? '' + req(x.path) + ';' : 'var ' + x.as + ' = ' + req(x.path) + ';';
2262
+ mod.body.replace(x.start, x.end, replacement);
2085
2263
 
2086
- seen[ x.path ] = true;
2264
+ seen[x.path] = true;
2087
2265
  } else {
2088
- mod.body.remove( x.start, x.next );
2266
+ mod.body.remove(x.start, x.next);
2089
2267
  }
2090
2268
  });
2091
2269
 
2092
2270
  var exportDeclaration = mod.exports[0];
2093
2271
 
2094
- if ( exportDeclaration ) {
2095
- switch ( exportDeclaration.type ) {
2272
+ if (exportDeclaration) {
2273
+ switch (exportDeclaration.type) {
2096
2274
  case 'namedFunction':
2097
2275
  case 'namedClass':
2098
- mod.body.remove( exportDeclaration.start, exportDeclaration.valueStart );
2099
- mod.body.replace( exportDeclaration.end, exportDeclaration.end, (("\nmodule.exports = " + (exportDeclaration.node.declaration.id.name)) + ";") );
2276
+ mod.body.remove(exportDeclaration.start, exportDeclaration.valueStart);
2277
+ mod.body.replace(exportDeclaration.end, exportDeclaration.end, '\nmodule.exports = ' + exportDeclaration.name + ';');
2100
2278
  break;
2101
2279
 
2102
2280
  default:
2103
- mod.body.replace( exportDeclaration.start, exportDeclaration.valueStart, 'module.exports = ' );
2281
+ mod.body.replace(exportDeclaration.start, exportDeclaration.valueStart, 'module.exports = ');
2104
2282
  break;
2105
2283
  }
2106
2284
  }
2107
2285
 
2108
- if ( options.useStrict !== false ) {
2109
- mod.body.prepend( "'use strict';\n\n" ).trimLines();
2286
+ if (options.useStrict !== false) {
2287
+ mod.body.prepend('\'use strict\';\n\n').trimLines();
2110
2288
  }
2111
2289
 
2112
- return packageResult( mod, mod.body, options, 'toCjs' );
2290
+ return utils_packageResult(mod, mod.body, options, 'toCjs');
2113
2291
  }
2114
2292
 
2115
- function umdIntro (useStrict) {var amdName = useStrict.amdName, name = useStrict.name, hasExports = useStrict.hasExports, imports = useStrict.imports, absolutePaths = useStrict.absolutePaths, externalDefaults = useStrict.externalDefaults, indentStr = useStrict.indentStr, strict = useStrict.strict, useStrict = useStrict.useStrict;
2116
- var useStrictPragma = useStrict ? (" 'use strict';") : '';
2117
- var intro;
2293
+ var umd_umdIntro = umdIntro;
2294
+ function umdIntro(_ref) {
2295
+ var amdName = _ref.amdName;
2296
+ var name = _ref.name;
2297
+ var hasExports = _ref.hasExports;
2298
+ var imports = _ref.imports;
2299
+ var absolutePaths = _ref.absolutePaths;
2300
+ var externalDefaults = _ref.externalDefaults;
2301
+ var indentStr = _ref.indentStr;
2302
+ var strict = _ref.strict;
2303
+ var useStrict = _ref.useStrict;
2118
2304
 
2119
- if ( !hasExports && !imports.length ) {
2120
- intro =
2121
- (("(function (factory) {\
2122
- \n !(typeof exports === 'object' && typeof module !== 'undefined') &&\
2123
- \n typeof define === 'function' && define.amd ? define(" + (processName(amdName))) + ("factory) :\
2124
- \n factory()\
2125
- \n }(function () {" + useStrictPragma) + "\
2126
- \n\
2127
- \n ");
2128
- }
2305
+ var useStrictPragma = useStrict ? ' \'use strict\';' : '';
2306
+ var intro = undefined;
2129
2307
 
2130
- else {
2131
- var ids = (names = getImportSummary({ imports: imports, name: amdName, absolutePaths: absolutePaths })).ids, paths = names.paths, names = names.names;
2308
+ if (!hasExports && !imports.length) {
2309
+ intro = '(function (factory) {\n\t\t\t\t!(typeof exports === \'object\' && typeof module !== \'undefined\') &&\n\t\t\t\ttypeof define === \'function\' && define.amd ? define(' + amd_processName(amdName) + 'factory) :\n\t\t\t\tfactory()\n\t\t\t}(function () {' + useStrictPragma + '\n\n\t\t\t';
2310
+ } else {
2311
+ var _getImportSummary = amd_getImportSummary({ imports: imports, name: amdName, absolutePaths: absolutePaths });
2132
2312
 
2133
- var amdExport, cjsExport, globalExport, defaultsBlock;
2313
+ var ids = _getImportSummary.ids;
2314
+ var paths = _getImportSummary.paths;
2315
+ var names = _getImportSummary.names;
2134
2316
 
2135
- if ( strict ) {
2136
- cjsExport = (("factory(" + (( hasExports ? [ 'exports' ] : [] ).concat( paths.map( req ) ).join( ', ' ))) + ")");
2137
- var globalDeps = ( hasExports ? [ (("(global." + name) + " = {})") ] : [] ).concat( names.map( globalify ) ).join( ', ' );
2138
- globalExport = (("factory(" + globalDeps) + ")");
2317
+ var amdExport = undefined,
2318
+ cjsExport = undefined,
2319
+ globalExport = undefined,
2320
+ defaultsBlock = undefined;
2139
2321
 
2140
- if ( hasExports ) {
2141
- ids.unshift( 'exports' );
2142
- names.unshift( 'exports' );
2322
+ if (strict) {
2323
+ cjsExport = 'factory(' + (hasExports ? ['exports'] : []).concat(paths.map(req)).join(', ') + ')';
2324
+ var globalDeps = (hasExports ? ['(global.' + name + ' = {})'] : []).concat(names.map(globalify)).join(', ');
2325
+ globalExport = 'factory(' + globalDeps + ')';
2326
+
2327
+ if (hasExports) {
2328
+ ids.unshift('exports');
2329
+ names.unshift('exports');
2143
2330
  }
2144
2331
 
2145
- amdExport = (("define(" + (processName(amdName))) + ("" + (processIds(ids))) + "factory)");
2332
+ amdExport = 'define(' + amd_processName(amdName) + '' + amd_processIds(ids) + 'factory)';
2146
2333
  defaultsBlock = '';
2147
- if ( externalDefaults && externalDefaults.length > 0 ) {
2148
- defaultsBlock = externalDefaults.map( function(x )
2149
- {return '\t' + ( x.needsNamed ? (("var " + (x.name)) + "__default") : x.name ) +
2150
- ((" = ('default' in " + (x.name)) + (" ? " + (x.name)) + ("['default'] : " + (x.name)) + ");")}
2151
- ).join('\n') + '\n\n';
2334
+ if (externalDefaults && externalDefaults.length > 0) {
2335
+ defaultsBlock = externalDefaults.map(function (x) {
2336
+ return '\t' + (x.needsNamed ? 'var ' + x.name + '__default' : x.name) + (' = (\'default\' in ' + x.name + ' ? ' + x.name + '[\'default\'] : ' + x.name + ');');
2337
+ }).join('\n') + '\n\n';
2152
2338
  }
2153
2339
  } else {
2154
- amdExport = (("define(" + (processName(amdName))) + ("" + (processIds(ids))) + "factory)");
2155
- cjsExport = ( hasExports ? 'module.exports = ' : '' ) + (("factory(" + (paths.map( req ).join( ', ' ))) + ")");
2156
- globalExport = ( hasExports ? (("global." + name) + " = ") : '' ) + (("factory(" + (names.map( globalify ).join( ', ' ))) + ")");
2340
+ amdExport = 'define(' + amd_processName(amdName) + '' + amd_processIds(ids) + 'factory)';
2341
+ cjsExport = (hasExports ? 'module.exports = ' : '') + ('factory(' + paths.map(req).join(', ') + ')');
2342
+ globalExport = (hasExports ? 'global.' + name + ' = ' : '') + ('factory(' + names.map(globalify).join(', ') + ')');
2157
2343
 
2158
2344
  defaultsBlock = '';
2159
2345
  }
2160
2346
 
2161
- intro =
2162
- (("(function (global, factory) {\
2163
- \n typeof exports === 'object' && typeof module !== 'undefined' ? " + cjsExport) + (" :\
2164
- \n typeof define === 'function' && define.amd ? " + amdExport) + (" :\
2165
- \n " + globalExport) + ("\
2166
- \n }(this, function (" + (names.join( ', ' ))) + (") {" + useStrictPragma) + ("\
2167
- \n\
2168
- \n " + defaultsBlock) + "");
2169
-
2347
+ intro = '(function (global, factory) {\n\t\t\t\ttypeof exports === \'object\' && typeof module !== \'undefined\' ? ' + cjsExport + ' :\n\t\t\t\ttypeof define === \'function\' && define.amd ? ' + amdExport + ' :\n\t\t\t\t' + globalExport + '\n\t\t\t}(this, function (' + names.join(', ') + ') {' + useStrictPragma + '\n\n\t\t\t' + defaultsBlock;
2170
2348
  }
2171
2349
 
2172
- return intro.replace( /^\t\t\t/gm, '' ).replace( /\t/g, indentStr );
2350
+ return intro.replace(/^\t\t\t/gm, '').replace(/\t/g, indentStr);
2173
2351
  }
2174
2352
 
2175
- var EsperantoError = function ( message, data ) {
2353
+ var EsperantoError = function (message, data) {
2176
2354
  var prop;
2177
2355
 
2178
2356
  this.message = message;
2179
- this.stack = (new Error()).stack;
2357
+ this.stack = new Error().stack;
2180
2358
 
2181
- for ( prop in data ) {
2182
- if ( data.hasOwnProperty( prop ) ) {
2183
- this[ prop ] = data[ prop ];
2359
+ for (prop in data) {
2360
+ if (data.hasOwnProperty(prop)) {
2361
+ this[prop] = data[prop];
2184
2362
  }
2185
2363
  }
2186
2364
  };
@@ -2191,22 +2369,24 @@ EsperantoError.prototype.name = 'EsperantoError';
2191
2369
 
2192
2370
  var utils_EsperantoError = EsperantoError;
2193
2371
 
2194
- function requireName ( options ) {
2195
- if ( !options.name ) {
2196
- throw new utils_EsperantoError( 'You must supply a `name` option for UMD modules', {
2372
+ var umd_requireName = requireName;
2373
+ function requireName(options) {
2374
+ if (!options.name) {
2375
+ throw new utils_EsperantoError('You must supply a `name` option for UMD modules', {
2197
2376
  code: 'MISSING_NAME'
2198
2377
  });
2199
2378
  }
2200
2379
  }
2201
2380
 
2202
- function defaultsMode_umd__umd ( mod, options ) {
2203
- requireName( options );
2381
+ var defaultsMode_umd = defaultsMode_umd__umd;
2382
+ function defaultsMode_umd__umd(mod, options) {
2383
+ umd_requireName(options);
2204
2384
 
2205
- mod.imports.forEach( function(x ) {
2206
- mod.body.remove( x.start, x.next );
2385
+ mod.imports.forEach(function (x) {
2386
+ mod.body.remove(x.start, x.next);
2207
2387
  });
2208
2388
 
2209
- var intro = umdIntro({
2389
+ var intro = umd_umdIntro({
2210
2390
  hasExports: mod.exports.length > 0,
2211
2391
  imports: mod.imports,
2212
2392
  amdName: options.amdName,
@@ -2216,110 +2396,123 @@ function defaultsMode_umd__umd ( mod, options ) {
2216
2396
  useStrict: options.useStrict !== false
2217
2397
  });
2218
2398
 
2219
- transformExportDeclaration( mod.exports[0], mod.body );
2399
+ utils_transformExportDeclaration(mod.exports[0], mod.body);
2220
2400
 
2221
- mod.body.indent().prepend( intro ).trimLines().append( '\n\n}));' );
2401
+ mod.body.indent().prepend(intro).trimLines().append('\n\n}));');
2222
2402
 
2223
- return packageResult( mod, mod.body, options, 'toUmd' );
2403
+ return utils_packageResult(mod, mod.body, options, 'toUmd');
2224
2404
  }
2225
2405
 
2226
2406
  var defaultsMode = {
2227
- amd: defaultsMode_amd__amd,
2228
- cjs: defaultsMode_cjs__cjs,
2229
- umd: defaultsMode_umd__umd
2407
+ amd: defaultsMode_amd,
2408
+ cjs: defaultsMode_cjs,
2409
+ umd: defaultsMode_umd
2230
2410
  };
2231
2411
 
2232
- function gatherImports ( imports ) {
2412
+ var utils_gatherImports = gatherImports;
2413
+
2414
+ function gatherImports(imports) {
2233
2415
  var chains = {};
2234
2416
  var identifierReplacements = {};
2235
2417
 
2236
- imports.forEach( function(x ) {
2237
- x.specifiers.forEach( function(s ) {
2238
- if ( s.isBatch ) {
2418
+ imports.forEach(function (x) {
2419
+ x.specifiers.forEach(function (s) {
2420
+ if (s.isBatch) {
2239
2421
  return;
2240
2422
  }
2241
2423
 
2242
2424
  var name = s.as;
2243
- var replacement = x.name + ( s.isDefault ? ("['default']") : ("." + (s.name)) );
2425
+ var replacement = x.name + (s.isDefault ? "['default']" : "." + s.name);
2244
2426
 
2245
- if ( !x.passthrough ) {
2246
- identifierReplacements[ name ] = replacement;
2427
+ if (!x.passthrough) {
2428
+ identifierReplacements[name] = replacement;
2247
2429
  }
2248
2430
 
2249
- chains[ name ] = replacement;
2431
+ chains[name] = replacement;
2250
2432
  });
2251
2433
  });
2252
2434
 
2253
- return [ chains, identifierReplacements ];
2435
+ return [chains, identifierReplacements];
2254
2436
  }
2255
2437
 
2256
- function getExportNames ( exports ) {
2438
+ var utils_getExportNames = getExportNames;
2439
+
2440
+ function getExportNames(exports) {
2257
2441
  var result = {};
2258
2442
 
2259
- exports.forEach( function(x ) {
2260
- if ( x.isDefault ) return;
2443
+ exports.forEach(function (x) {
2444
+ if (x.isDefault) return;
2261
2445
 
2262
- if ( x.hasDeclaration ) {
2263
- result[ x.name ] = x.name;
2446
+ if (x.hasDeclaration) {
2447
+ result[x.name] = x.name;
2264
2448
  return;
2265
2449
  }
2266
2450
 
2267
- x.specifiers.forEach( function(s ) {
2268
- result[ s.name ] = s.as;
2451
+ x.specifiers.forEach(function (s) {
2452
+ result[s.name] = s.as;
2269
2453
  });
2270
2454
  });
2271
2455
 
2272
2456
  return result;
2273
2457
  }
2274
2458
 
2275
- function utils_transformBody__transformBody ( mod, body, options ) {
2276
- var chains = (identifierReplacements = gatherImports( mod.imports ))[0], identifierReplacements = identifierReplacements[1];
2277
- var exportNames = getExportNames( mod.exports );
2459
+ var utils_transformBody = utils_transformBody__transformBody;
2460
+
2461
+ function utils_transformBody__transformBody(mod, body, options) {
2462
+ var _gatherImports = utils_gatherImports(mod.imports);
2463
+
2464
+ var chains = _gatherImports[0];
2465
+ var identifierReplacements = _gatherImports[1];
2466
+
2467
+ var exportNames = utils_getExportNames(mod.exports);
2278
2468
 
2279
- var importedBindings = (importedNamespaces = getReadOnlyIdentifiers( mod.imports ))[0], importedNamespaces = importedNamespaces[1];
2469
+ var _getReadOnlyIdentifiers = utils_getReadOnlyIdentifiers(mod.imports);
2470
+
2471
+ var importedBindings = _getReadOnlyIdentifiers[0];
2472
+ var importedNamespaces = _getReadOnlyIdentifiers[1];
2280
2473
 
2281
2474
  // ensure no conflict with `exports`
2282
- identifierReplacements.exports = deconflict( 'exports', mod.ast._declared );
2475
+ identifierReplacements.exports = deconflict('exports', mod.ast._declared);
2283
2476
 
2284
- traverseAst( mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames );
2477
+ traverse(mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames);
2285
2478
 
2286
2479
  // Remove import statements from the body of the module
2287
- mod.imports.forEach( function(x ) {
2288
- body.remove( x.start, x.next );
2480
+ mod.imports.forEach(function (x) {
2481
+ body.remove(x.start, x.next);
2289
2482
  });
2290
2483
 
2291
2484
  // Prepend require() statements (CommonJS output only)
2292
- if ( options.header ) {
2293
- body.prepend( options.header + '\n\n' );
2485
+ if (options.header) {
2486
+ body.prepend(options.header + '\n\n');
2294
2487
  }
2295
2488
 
2296
2489
  // Remove export statements (but keep declarations)
2297
- mod.exports.forEach( function(x ) {
2298
- if ( x.isDefault ) {
2299
- if ( /^named/.test( x.type ) ) {
2490
+ mod.exports.forEach(function (x) {
2491
+ if (x.isDefault) {
2492
+ if (/^named/.test(x.type)) {
2300
2493
  // export default function answer () { return 42; }
2301
- body.remove( x.start, x.valueStart );
2302
- body.insert( x.end, (("\nexports['default'] = " + (x.name)) + ";") );
2494
+ body.remove(x.start, x.valueStart);
2495
+ body.insert(x.end, '\nexports[\'default\'] = ' + x.name + ';');
2303
2496
  } else {
2304
2497
  // everything else
2305
- body.replace( x.start, x.valueStart, 'exports[\'default\'] = ' );
2498
+ body.replace(x.start, x.valueStart, 'exports[\'default\'] = ');
2306
2499
  }
2307
- }
2308
-
2309
- else {
2310
- switch ( x.type ) {
2500
+ } else {
2501
+ switch (x.type) {
2311
2502
  case 'varDeclaration': // export var answer = 42; (or let)
2312
- case 'namedFunction': // export function answer () {...}
2313
- case 'namedClass': // export class answer {...}
2314
- body.remove( x.start, x.valueStart );
2503
+ case 'namedFunction': // export function answer () {...}
2504
+ case 'namedClass':
2505
+ // export class answer {...}
2506
+ body.remove(x.start, x.valueStart);
2315
2507
  break;
2316
2508
 
2317
- case 'named': // export { foo, bar };
2318
- body.remove( x.start, x.next );
2509
+ case 'named':
2510
+ // export { foo, bar };
2511
+ body.remove(x.start, x.next);
2319
2512
  break;
2320
2513
 
2321
2514
  default:
2322
- body.replace( x.start, x.valueStart, 'exports[\'default\'] = ' );
2515
+ body.replace(x.start, x.valueStart, 'exports[\'default\'] = ');
2323
2516
  }
2324
2517
  }
2325
2518
  });
@@ -2328,50 +2521,51 @@ function utils_transformBody__transformBody ( mod, body, options ) {
2328
2521
  var earlyExports = [];
2329
2522
  var lateExports = [];
2330
2523
 
2331
- Object.keys( exportNames ).forEach( function(name ) {
2332
- var exportAs = exportNames[ name ];
2524
+ Object.keys(exportNames).forEach(function (name) {
2525
+ var exportAs = exportNames[name];
2333
2526
 
2334
- if ( chains.hasOwnProperty( name ) ) {
2527
+ if (chains.hasOwnProperty(name)) {
2335
2528
  // special case - a binding from another module
2336
- if ( !options._evilES3SafeReExports ) {
2337
- earlyExports.push( (("Object.defineProperty(exports, '" + exportAs) + ("', { enumerable: true, get: function () { return " + (chains[name])) + "; }});") );
2529
+ if (!options._evilES3SafeReExports) {
2530
+ earlyExports.push('Object.defineProperty(exports, \'' + exportAs + '\', { enumerable: true, get: function () { return ' + chains[name] + '; }});');
2338
2531
  } else {
2339
- lateExports.push( (("exports." + exportAs) + (" = " + (chains[name])) + ";") );
2532
+ lateExports.push('exports.' + exportAs + ' = ' + chains[name] + ';');
2340
2533
  }
2341
- } else if ( ~mod.ast._topLevelFunctionNames.indexOf( name ) ) {
2534
+ } else if (~mod.ast._topLevelFunctionNames.indexOf(name)) {
2342
2535
  // functions should be exported early, in
2343
2536
  // case of cyclic dependencies
2344
- earlyExports.push( (("exports." + exportAs) + (" = " + name) + ";") );
2537
+ earlyExports.push('exports.' + exportAs + ' = ' + name + ';');
2345
2538
  } else {
2346
- lateExports.push( (("exports." + exportAs) + (" = " + name) + ";") );
2539
+ lateExports.push('exports.' + exportAs + ' = ' + name + ';');
2347
2540
  }
2348
2541
  });
2349
2542
 
2350
2543
  // Function exports should be exported immediately after 'use strict'
2351
- if ( earlyExports.length ) {
2352
- body.trim().prepend( earlyExports.join( '\n' ) + '\n\n' );
2544
+ if (earlyExports.length) {
2545
+ body.trim().prepend(earlyExports.join('\n') + '\n\n');
2353
2546
  }
2354
2547
 
2355
2548
  // Everything else should be exported at the end
2356
- if ( lateExports.length ) {
2357
- body.trim().append( '\n\n' + lateExports.join( '\n' ) );
2549
+ if (lateExports.length) {
2550
+ body.trim().append('\n\n' + lateExports.join('\n'));
2358
2551
  }
2359
2552
 
2360
- if ( options.intro && options.outro ) {
2361
- body.indent().prepend( options.intro ).trimLines().append( options.outro );
2553
+ if (options.intro && options.outro) {
2554
+ body.indent().prepend(options.intro).trimLines().append(options.outro);
2362
2555
  }
2363
2556
  }
2364
2557
 
2365
- function deconflict ( name, declared ) {
2366
- while ( utils_hasOwnProp.call( declared, name ) ) {
2558
+ function deconflict(name, declared) {
2559
+ while (utils_hasOwnProp.call(declared, name)) {
2367
2560
  name = '_' + name;
2368
2561
  }
2369
2562
 
2370
2563
  return name;
2371
2564
  }
2372
2565
 
2373
- function strictMode_amd__amd ( mod, options ) {
2374
- var intro = amdIntro({
2566
+ var strictMode_amd = strictMode_amd__amd;
2567
+ function strictMode_amd__amd(mod, options) {
2568
+ var intro = amd_amdIntro({
2375
2569
  name: options.amdName,
2376
2570
  absolutePaths: options.absolutePaths,
2377
2571
  imports: mod.imports,
@@ -2380,47 +2574,49 @@ function strictMode_amd__amd ( mod, options ) {
2380
2574
  useStrict: options.useStrict !== false
2381
2575
  });
2382
2576
 
2383
- utils_transformBody__transformBody( mod, mod.body, {
2577
+ utils_transformBody(mod, mod.body, {
2384
2578
  intro: intro,
2385
2579
  outro: '\n\n});',
2386
2580
  _evilES3SafeReExports: options._evilES3SafeReExports
2387
2581
  });
2388
2582
 
2389
- return packageResult( mod, mod.body, options, 'toAmd' );
2583
+ return utils_packageResult(mod, mod.body, options, 'toAmd');
2390
2584
  }
2391
2585
 
2392
- function strictMode_cjs__cjs ( mod, options ) {
2586
+ var strictMode_cjs = strictMode_cjs__cjs;
2587
+ function strictMode_cjs__cjs(mod, options) {
2393
2588
  var seen = {};
2394
2589
 
2395
2590
  // Create block of require statements
2396
- var importBlock = mod.imports.map( function(x ) {
2397
- if ( !utils_hasOwnProp.call( seen, x.path ) ) {
2398
- seen[ x.path ] = true;
2591
+ var importBlock = mod.imports.map(function (x) {
2592
+ if (!utils_hasOwnProp.call(seen, x.path)) {
2593
+ seen[x.path] = true;
2399
2594
 
2400
- if ( x.isEmpty ) {
2401
- return (("" + (req(x.path))) + ";");
2595
+ if (x.isEmpty) {
2596
+ return '' + req(x.path) + ';';
2402
2597
  }
2403
2598
 
2404
- return (("var " + (x.name)) + (" = " + (req(x.path))) + ";");
2599
+ return 'var ' + x.name + ' = ' + req(x.path) + ';';
2405
2600
  }
2406
- }).filter( Boolean ).join( '\n' );
2601
+ }).filter(Boolean).join('\n');
2407
2602
 
2408
- utils_transformBody__transformBody( mod, mod.body, {
2603
+ utils_transformBody(mod, mod.body, {
2409
2604
  header: importBlock,
2410
2605
  _evilES3SafeReExports: options._evilES3SafeReExports
2411
2606
  });
2412
2607
 
2413
- if ( options.useStrict !== false ) {
2414
- mod.body.prepend( "'use strict';\n\n" ).trimLines();
2608
+ if (options.useStrict !== false) {
2609
+ mod.body.prepend('\'use strict\';\n\n').trimLines();
2415
2610
  }
2416
2611
 
2417
- return packageResult( mod, mod.body, options, 'toCjs' );
2612
+ return utils_packageResult(mod, mod.body, options, 'toCjs');
2418
2613
  }
2419
2614
 
2420
- function strictMode_umd__umd ( mod, options ) {
2421
- requireName( options );
2615
+ var strictMode_umd = strictMode_umd__umd;
2616
+ function strictMode_umd__umd(mod, options) {
2617
+ umd_requireName(options);
2422
2618
 
2423
- var intro = umdIntro({
2619
+ var intro = umd_umdIntro({
2424
2620
  hasExports: mod.exports.length > 0,
2425
2621
  imports: mod.imports,
2426
2622
  amdName: options.amdName,
@@ -2431,19 +2627,19 @@ function strictMode_umd__umd ( mod, options ) {
2431
2627
  useStrict: options.useStrict !== false
2432
2628
  });
2433
2629
 
2434
- utils_transformBody__transformBody( mod, mod.body, {
2630
+ utils_transformBody(mod, mod.body, {
2435
2631
  intro: intro,
2436
2632
  outro: '\n\n}));',
2437
2633
  _evilES3SafeReExports: options._evilES3SafeReExports
2438
2634
  });
2439
2635
 
2440
- return packageResult( mod, mod.body, options, 'toUmd' );
2636
+ return utils_packageResult(mod, mod.body, options, 'toUmd');
2441
2637
  }
2442
2638
 
2443
2639
  var strictMode = {
2444
- amd: strictMode_amd__amd,
2445
- cjs: strictMode_cjs__cjs,
2446
- umd: strictMode_umd__umd
2640
+ amd: strictMode_amd,
2641
+ cjs: strictMode_cjs,
2642
+ umd: strictMode_umd
2447
2643
  };
2448
2644
 
2449
2645
  // TODO rewrite with named imports/exports
@@ -2452,50 +2648,53 @@ var moduleBuilders = {
2452
2648
  strictMode: strictMode
2453
2649
  };
2454
2650
 
2455
- function builders_defaultsMode_amd__amd ( bundle, options ) {
2456
- var defaultName = bundle.entryModule.identifierReplacements.default;
2457
- if ( defaultName ) {
2458
- bundle.body.append( (("\n\nreturn " + defaultName) + ";") );
2651
+ var builders_defaultsMode_amd = builders_defaultsMode_amd__amd;
2652
+ function builders_defaultsMode_amd__amd(bundle, options) {
2653
+ var defaultName = bundle.entryModule.identifierReplacements['default'];
2654
+ if (defaultName) {
2655
+ bundle.body.append('\n\nreturn ' + defaultName + ';');
2459
2656
  }
2460
2657
 
2461
- var intro = amdIntro({
2658
+ var intro = amd_amdIntro({
2462
2659
  name: options.amdName,
2463
2660
  imports: bundle.externalModules,
2464
2661
  indentStr: bundle.body.getIndentString(),
2465
2662
  useStrict: options.useStrict !== false
2466
2663
  });
2467
2664
 
2468
- bundle.body.indent().prepend( intro ).trimLines().append( '\n\n});' );
2469
- return packageResult( bundle, bundle.body, options, 'toAmd', true );
2665
+ bundle.body.indent().prepend(intro).trimLines().append('\n\n});');
2666
+ return utils_packageResult(bundle, bundle.body, options, 'toAmd', true);
2470
2667
  }
2471
2668
 
2472
- function builders_defaultsMode_cjs__cjs ( bundle, options ) {
2473
- var importBlock = bundle.externalModules.map( function(x ) {
2474
- return (("var " + (x.name)) + (" = " + (req(x.id))) + ";");
2475
- }).join( '\n' );
2669
+ var builders_defaultsMode_cjs = builders_defaultsMode_cjs__cjs;
2670
+ function builders_defaultsMode_cjs__cjs(bundle, options) {
2671
+ var importBlock = bundle.externalModules.map(function (x) {
2672
+ return 'var ' + x.name + ' = ' + req(x.id) + ';';
2673
+ }).join('\n');
2476
2674
 
2477
- if ( importBlock ) {
2478
- bundle.body.prepend( importBlock + '\n\n' );
2675
+ if (importBlock) {
2676
+ bundle.body.prepend(importBlock + '\n\n');
2479
2677
  }
2480
2678
 
2481
- var defaultName = bundle.entryModule.identifierReplacements.default;
2482
- if ( defaultName ) {
2483
- bundle.body.append( (("\n\nmodule.exports = " + defaultName) + ";") );
2679
+ var defaultName = bundle.entryModule.identifierReplacements['default'];
2680
+ if (defaultName) {
2681
+ bundle.body.append('\n\nmodule.exports = ' + defaultName + ';');
2484
2682
  }
2485
2683
 
2486
- if ( options.useStrict !== false ) {
2487
- bundle.body.prepend("'use strict';\n\n").trimLines();
2684
+ if (options.useStrict !== false) {
2685
+ bundle.body.prepend('\'use strict\';\n\n').trimLines();
2488
2686
  }
2489
2687
 
2490
- return packageResult( bundle, bundle.body, options, 'toCjs', true );
2688
+ return utils_packageResult(bundle, bundle.body, options, 'toCjs', true);
2491
2689
  }
2492
2690
 
2493
- function builders_defaultsMode_umd__umd ( bundle, options ) {
2494
- requireName( options );
2691
+ var builders_defaultsMode_umd = builders_defaultsMode_umd__umd;
2692
+ function builders_defaultsMode_umd__umd(bundle, options) {
2693
+ umd_requireName(options);
2495
2694
 
2496
2695
  var entry = bundle.entryModule;
2497
2696
 
2498
- var intro = umdIntro({
2697
+ var intro = umd_umdIntro({
2499
2698
  hasExports: entry.exports.length > 0,
2500
2699
  imports: bundle.externalModules,
2501
2700
  amdName: options.amdName,
@@ -2504,49 +2703,53 @@ function builders_defaultsMode_umd__umd ( bundle, options ) {
2504
2703
  useStrict: options.useStrict !== false
2505
2704
  });
2506
2705
 
2507
- if ( entry.defaultExport ) {
2508
- bundle.body.append( (("\n\nreturn " + (entry.identifierReplacements.default)) + ";") );
2706
+ if (entry.defaultExport) {
2707
+ bundle.body.append('\n\nreturn ' + entry.identifierReplacements['default'] + ';');
2509
2708
  }
2510
2709
 
2511
- bundle.body.indent().prepend( intro ).trimLines().append('\n\n}));');
2710
+ bundle.body.indent().prepend(intro).trimLines().append('\n\n}));');
2512
2711
 
2513
- return packageResult( bundle, bundle.body, options, 'toUmd', true );
2712
+ return utils_packageResult(bundle, bundle.body, options, 'toUmd', true);
2514
2713
  }
2515
2714
 
2516
2715
  var builders_defaultsMode = {
2517
- amd: builders_defaultsMode_amd__amd,
2518
- cjs: builders_defaultsMode_cjs__cjs,
2519
- umd: builders_defaultsMode_umd__umd
2716
+ amd: builders_defaultsMode_amd,
2717
+ cjs: builders_defaultsMode_cjs,
2718
+ umd: builders_defaultsMode_umd
2520
2719
  };
2521
2720
 
2522
- function getExportBlock ( entry ) {
2523
- var name = entry.identifierReplacements.default;
2524
- return (("exports['default'] = " + name) + ";");
2721
+ var utils_getExportBlock = getExportBlock;
2722
+
2723
+ function getExportBlock(entry) {
2724
+ var name = entry.identifierReplacements["default"];
2725
+ return "exports['default'] = " + name + ";";
2525
2726
  }
2526
2727
 
2527
- function builders_strictMode_amd__amd ( bundle, options ) {
2528
- var externalDefaults = bundle.externalModules.filter( builders_strictMode_amd__needsDefault );
2728
+ var builders_strictMode_amd = builders_strictMode_amd__amd;
2729
+
2730
+ function builders_strictMode_amd__amd(bundle, options) {
2731
+ var externalDefaults = bundle.externalModules.filter(builders_strictMode_amd__needsDefault);
2529
2732
  var entry = bundle.entryModule;
2530
2733
 
2531
- if ( externalDefaults.length ) {
2532
- var defaultsBlock = externalDefaults.map( function(x ) {
2734
+ if (externalDefaults.length) {
2735
+ var defaultsBlock = externalDefaults.map(function (x) {
2533
2736
  // Case 1: default is used, and named is not
2534
- if ( !x.needsNamed ) {
2535
- return (("" + (x.name)) + (" = ('default' in " + (x.name)) + (" ? " + (x.name)) + ("['default'] : " + (x.name)) + ");");
2737
+ if (!x.needsNamed) {
2738
+ return '' + x.name + ' = (\'default\' in ' + x.name + ' ? ' + x.name + '[\'default\'] : ' + x.name + ');';
2536
2739
  }
2537
2740
 
2538
2741
  // Case 2: both default and named are used
2539
- return (("var " + (x.name)) + ("__default = ('default' in " + (x.name)) + (" ? " + (x.name)) + ("['default'] : " + (x.name)) + ");");
2540
- }).join( '\n' );
2742
+ return 'var ' + x.name + '__default = (\'default\' in ' + x.name + ' ? ' + x.name + '[\'default\'] : ' + x.name + ');';
2743
+ }).join('\n');
2541
2744
 
2542
- bundle.body.prepend( defaultsBlock + '\n\n' );
2745
+ bundle.body.prepend(defaultsBlock + '\n\n');
2543
2746
  }
2544
2747
 
2545
- if ( entry.defaultExport ) {
2546
- bundle.body.append( '\n\n' + getExportBlock( entry ) );
2748
+ if (entry.defaultExport) {
2749
+ bundle.body.append('\n\n' + utils_getExportBlock(entry));
2547
2750
  }
2548
2751
 
2549
- var intro = amdIntro({
2752
+ var intro = amd_amdIntro({
2550
2753
  name: options.amdName,
2551
2754
  imports: bundle.externalModules,
2552
2755
  hasExports: entry.exports.length,
@@ -2554,53 +2757,54 @@ function builders_strictMode_amd__amd ( bundle, options ) {
2554
2757
  useStrict: options.useStrict !== false
2555
2758
  });
2556
2759
 
2557
- bundle.body.indent().prepend( intro ).trimLines().append( '\n\n});' );
2558
- return packageResult( bundle, bundle.body, options, 'toAmd', true );
2760
+ bundle.body.indent().prepend(intro).trimLines().append('\n\n});');
2761
+ return utils_packageResult(bundle, bundle.body, options, 'toAmd', true);
2559
2762
  }
2560
2763
 
2561
- function builders_strictMode_amd__needsDefault ( externalModule ) {
2764
+ function builders_strictMode_amd__needsDefault(externalModule) {
2562
2765
  return externalModule.needsDefault;
2563
2766
  }
2564
2767
 
2565
- function builders_strictMode_cjs__cjs ( bundle, options ) {
2768
+ var builders_strictMode_cjs = builders_strictMode_cjs__cjs;
2769
+ function builders_strictMode_cjs__cjs(bundle, options) {
2566
2770
  var entry = bundle.entryModule;
2567
2771
 
2568
- var importBlock = bundle.externalModules.map( function(x ) {
2569
- var statement = (("var " + (x.name)) + (" = " + (req(x.id))) + ";");
2772
+ var importBlock = bundle.externalModules.map(function (x) {
2773
+ var statement = 'var ' + x.name + ' = ' + req(x.id) + ';';
2570
2774
 
2571
- if ( x.needsDefault ) {
2572
- statement += '\n' +
2573
- ( x.needsNamed ? (("var " + (x.name)) + "__default") : x.name ) +
2574
- ((" = ('default' in " + (x.name)) + (" ? " + (x.name)) + ("['default'] : " + (x.name)) + ");");
2775
+ if (x.needsDefault) {
2776
+ statement += '\n' + (x.needsNamed ? 'var ' + x.name + '__default' : x.name) + (' = (\'default\' in ' + x.name + ' ? ' + x.name + '[\'default\'] : ' + x.name + ');');
2575
2777
  }
2576
2778
 
2577
2779
  return statement;
2578
- }).join( '\n' );
2780
+ }).join('\n');
2579
2781
 
2580
- if ( importBlock ) {
2581
- bundle.body.prepend( importBlock + '\n\n' );
2782
+ if (importBlock) {
2783
+ bundle.body.prepend(importBlock + '\n\n');
2582
2784
  }
2583
2785
 
2584
- if ( entry.defaultExport ) {
2585
- bundle.body.append( '\n\n' + getExportBlock( entry ) );
2786
+ if (entry.defaultExport) {
2787
+ bundle.body.append('\n\n' + utils_getExportBlock(entry));
2586
2788
  }
2587
2789
 
2588
- if ( options.useStrict !== false ) {
2589
- bundle.body.prepend("'use strict';\n\n").trimLines();
2790
+ if (options.useStrict !== false) {
2791
+ bundle.body.prepend('\'use strict\';\n\n').trimLines();
2590
2792
  }
2591
2793
 
2592
- return packageResult( bundle, bundle.body, options, 'toCjs', true );
2794
+ return utils_packageResult(bundle, bundle.body, options, 'toCjs', true);
2593
2795
  }
2594
2796
 
2595
- function builders_strictMode_umd__umd ( bundle, options ) {
2596
- requireName( options );
2797
+ var builders_strictMode_umd = builders_strictMode_umd__umd;
2798
+
2799
+ function builders_strictMode_umd__umd(bundle, options) {
2800
+ umd_requireName(options);
2597
2801
 
2598
2802
  var entry = bundle.entryModule;
2599
2803
 
2600
- var intro = umdIntro({
2804
+ var intro = umd_umdIntro({
2601
2805
  hasExports: entry.exports.length > 0,
2602
2806
  imports: bundle.externalModules,
2603
- externalDefaults: bundle.externalModules.filter( builders_strictMode_umd__needsDefault ),
2807
+ externalDefaults: bundle.externalModules.filter(builders_strictMode_umd__needsDefault),
2604
2808
  amdName: options.amdName,
2605
2809
  name: options.name,
2606
2810
  indentStr: bundle.body.getIndentString(),
@@ -2608,23 +2812,23 @@ function builders_strictMode_umd__umd ( bundle, options ) {
2608
2812
  useStrict: options.useStrict !== false
2609
2813
  });
2610
2814
 
2611
- if ( entry.defaultExport ) {
2612
- bundle.body.append( '\n\n' + getExportBlock( entry ) );
2815
+ if (entry.defaultExport) {
2816
+ bundle.body.append('\n\n' + utils_getExportBlock(entry));
2613
2817
  }
2614
2818
 
2615
- bundle.body.indent().prepend( intro ).trimLines().append('\n\n}));');
2819
+ bundle.body.indent().prepend(intro).trimLines().append('\n\n}));');
2616
2820
 
2617
- return packageResult( bundle, bundle.body, options, 'toUmd', true );
2821
+ return utils_packageResult(bundle, bundle.body, options, 'toUmd', true);
2618
2822
  }
2619
2823
 
2620
- function builders_strictMode_umd__needsDefault ( externalModule ) {
2824
+ function builders_strictMode_umd__needsDefault(externalModule) {
2621
2825
  return externalModule.needsDefault;
2622
2826
  }
2623
2827
 
2624
2828
  var builders_strictMode = {
2625
- amd: builders_strictMode_amd__amd,
2626
- cjs: builders_strictMode_cjs__cjs,
2627
- umd: builders_strictMode_umd__umd
2829
+ amd: builders_strictMode_amd,
2830
+ cjs: builders_strictMode_cjs,
2831
+ umd: builders_strictMode_umd
2628
2832
  };
2629
2833
 
2630
2834
  // TODO rewrite with named imports/exports
@@ -2633,137 +2837,149 @@ var bundleBuilders = {
2633
2837
  strictMode: builders_strictMode
2634
2838
  };
2635
2839
 
2636
- function concat ( bundle, options ) {
2840
+ var builders_concat = concat;
2841
+ function concat(bundle, options) {
2637
2842
  // This bundle must be self-contained - no imports or exports
2638
- if ( bundle.externalModules.length || bundle.entryModule.exports.length ) {
2639
- throw new Error( (("bundle.concat() can only be used with bundles that have no imports/exports (imports: [" + (bundle.externalModules.map(function(x){return x.id}).join(', '))) + ("], exports: [" + (bundle.entryModule.exports.join(', '))) + "])") );
2843
+ if (bundle.externalModules.length || bundle.entryModule.exports.length) {
2844
+ throw new Error('bundle.concat() can only be used with bundles that have no imports/exports (imports: [' + bundle.externalModules.map(function (x) {
2845
+ return x.id;
2846
+ }).join(', ') + '], exports: [' + bundle.entryModule.exports.join(', ') + '])');
2640
2847
  }
2641
2848
 
2642
2849
  // TODO test these options
2643
- var intro = 'intro' in options ? options.intro : ("(function () { 'use strict';\n\n");
2850
+ var intro = 'intro' in options ? options.intro : '(function () { \'use strict\';\n\n';
2644
2851
  var outro = 'outro' in options ? options.outro : '\n\n})();';
2645
- var indent;
2852
+ var indent = undefined;
2646
2853
 
2647
- if ( !( 'indent' in options ) || options.indent === true ) {
2854
+ if (!('indent' in options) || options.indent === true) {
2648
2855
  indent = bundle.body.getIndentString();
2649
2856
  } else {
2650
2857
  indent = options.indent || '';
2651
2858
  }
2652
2859
 
2653
- bundle.body.trimLines().indent( indent ).prepend( intro ).append( outro );
2860
+ bundle.body.trimLines().indent(indent).prepend(intro).append(outro);
2654
2861
 
2655
- return packageResult( bundle, bundle.body, options, 'toString', true );
2862
+ return utils_packageResult(bundle, bundle.body, options, 'toString', true);
2656
2863
  }
2657
2864
 
2658
- var esperanto__deprecateMessage = 'options.defaultOnly has been deprecated, and is now standard behaviour. To use named imports/exports, pass `strict: true`.';
2659
- var esperanto__alreadyWarned = false;
2865
+ var deprecateMessage = 'options.defaultOnly has been deprecated, and is now standard behaviour. To use named imports/exports, pass `strict: true`.';
2866
+ var alreadyWarned = false;
2867
+
2868
+ function transpileMethod(format) {
2869
+ return function (source) {
2870
+ var options = arguments[1] === undefined ? {} : arguments[1];
2660
2871
 
2661
- function transpileMethod ( format ) {
2662
- return function ( source ) {var options = arguments[1];if(options === void 0)options = {};
2663
- var mod = getStandaloneModule({
2872
+ var mod = standalone_getModule({
2664
2873
  source: source,
2665
2874
  getModuleName: options.getModuleName,
2666
2875
  strict: options.strict
2667
2876
  });
2668
2877
 
2669
- if ( 'defaultOnly' in options && !esperanto__alreadyWarned ) {
2878
+ if ('defaultOnly' in options && !alreadyWarned) {
2670
2879
  // TODO link to a wiki page explaining this, or something
2671
- console.log( esperanto__deprecateMessage );
2672
- esperanto__alreadyWarned = true;
2880
+ console.log(deprecateMessage);
2881
+ alreadyWarned = true;
2673
2882
  }
2674
2883
 
2675
- if ( options.absolutePaths && !options.amdName ) {
2676
- throw new Error( 'You must specify an `amdName` in order to use the `absolutePaths` option' );
2884
+ if (options.absolutePaths && !options.amdName) {
2885
+ throw new Error('You must specify an `amdName` in order to use the `absolutePaths` option');
2677
2886
  }
2678
2887
 
2679
- var builder;
2888
+ var builder = undefined;
2680
2889
 
2681
- if ( !options.strict ) {
2890
+ if (!options.strict) {
2682
2891
  // ensure there are no named imports/exports. TODO link to a wiki page...
2683
- if ( hasNamedImports( mod ) || hasNamedExports( mod ) ) {
2684
- throw new Error( 'You must be in strict mode (pass `strict: true`) to use named imports or exports' );
2892
+ if (utils_hasNamedImports(mod) || utils_hasNamedExports(mod)) {
2893
+ throw new Error('You must be in strict mode (pass `strict: true`) to use named imports or exports');
2685
2894
  }
2686
2895
 
2687
- builder = moduleBuilders.defaultsMode[ format ];
2896
+ builder = moduleBuilders.defaultsMode[format];
2688
2897
  } else {
2689
- builder = moduleBuilders.strictMode[ format ];
2898
+ builder = moduleBuilders.strictMode[format];
2690
2899
  }
2691
2900
 
2692
- return builder( mod, options );
2901
+ return builder(mod, options);
2693
2902
  };
2694
2903
  }
2695
2904
 
2696
- var esperanto = {
2697
- toAmd: transpileMethod( 'amd' ),
2698
- toCjs: transpileMethod( 'cjs' ),
2699
- toUmd: transpileMethod( 'umd' ),
2905
+ var toAmd = transpileMethod('amd');
2906
+ var toCjs = transpileMethod('cjs');
2907
+ var toUmd = transpileMethod('umd');function bundle(options) {
2908
+ return bundler_getBundle(options).then(function (bundle) {
2909
+ return {
2910
+ imports: bundle.externalModules.map(function (mod) {
2911
+ return mod.id;
2912
+ }),
2913
+ exports: flattenExports(bundle.entryModule.exports),
2700
2914
 
2701
- bundle: function ( options ) {
2702
- return getBundle( options ).then( function ( bundle ) {
2703
- return {
2704
- imports: bundle.externalModules.map( function(mod ) {return mod.id} ),
2705
- exports: flattenExports( bundle.entryModule.exports ),
2915
+ toAmd: function (options) {
2916
+ return transpile('amd', options);
2917
+ },
2918
+ toCjs: function (options) {
2919
+ return transpile('cjs', options);
2920
+ },
2921
+ toUmd: function (options) {
2922
+ return transpile('umd', options);
2923
+ },
2706
2924
 
2707
- toAmd: function(options ) {return transpile( 'amd', options )},
2708
- toCjs: function(options ) {return transpile( 'cjs', options )},
2709
- toUmd: function(options ) {return transpile( 'umd', options )},
2925
+ concat: function (options) {
2926
+ return builders_concat(bundle, options || {});
2927
+ }
2928
+ };
2710
2929
 
2711
- concat: function(options ) {return concat( bundle, options || {} )}
2712
- };
2930
+ function transpile(format) {
2931
+ var options = arguments[1] === undefined ? {} : arguments[1];
2713
2932
 
2714
- function transpile ( format ) {var options = arguments[1];if(options === void 0)options = {};
2715
- if ( 'defaultOnly' in options && !esperanto__alreadyWarned ) {
2716
- // TODO link to a wiki page explaining this, or something
2717
- console.log( esperanto__deprecateMessage );
2718
- esperanto__alreadyWarned = true;
2719
- }
2933
+ if ('defaultOnly' in options && !alreadyWarned) {
2934
+ // TODO link to a wiki page explaining this, or something
2935
+ console.log(deprecateMessage);
2936
+ alreadyWarned = true;
2937
+ }
2720
2938
 
2721
- var builder;
2939
+ var builder = undefined;
2722
2940
 
2723
- if ( !options.strict ) {
2724
- // ensure there are no named imports/exports
2725
- if ( hasNamedExports( bundle.entryModule ) ) {
2726
- throw new Error( 'Entry module can only have named exports in strict mode (pass `strict: true`)' );
2727
- }
2941
+ if (!options.strict) {
2942
+ // ensure there are no named imports/exports
2943
+ if (utils_hasNamedExports(bundle.entryModule)) {
2944
+ throw new Error('Entry module can only have named exports in strict mode (pass `strict: true`)');
2945
+ }
2728
2946
 
2729
- bundle.modules.forEach( function(mod ) {
2730
- mod.imports.forEach( function(x ) {
2731
- if ( x.module.isExternal && ( !x.isDefault && !x.isBatch ) ) {
2732
- throw new Error( 'You can only have named external imports in strict mode (pass `strict: true`)' );
2733
- }
2734
- });
2947
+ bundle.modules.forEach(function (mod) {
2948
+ mod.imports.forEach(function (x) {
2949
+ if (x.module.isExternal && (!x.isDefault && !x.isBatch)) {
2950
+ throw new Error('You can only have named external imports in strict mode (pass `strict: true`)');
2951
+ }
2735
2952
  });
2953
+ });
2736
2954
 
2737
- builder = bundleBuilders.defaultsMode[ format ];
2738
- } else {
2739
- builder = bundleBuilders.strictMode[ format ];
2740
- }
2741
-
2742
- return builder( bundle, options );
2955
+ builder = bundleBuilders.defaultsMode[format];
2956
+ } else {
2957
+ builder = bundleBuilders.strictMode[format];
2743
2958
  }
2744
- });
2745
- }
2746
- };
2747
2959
 
2748
- function flattenExports ( exports ) {
2749
- var flattened = [];
2750
-
2751
- exports.forEach( function(x ) {
2752
- if ( x.isDefault ) {
2753
- flattened.push( 'default' );
2960
+ return builder(bundle, options);
2754
2961
  }
2962
+ });
2963
+ }
2755
2964
 
2756
- else if ( x.name ) {
2757
- flattened.push( x.name );
2758
- }
2965
+ function flattenExports(exports) {
2966
+ var flattened = [];
2759
2967
 
2760
- else if ( x.specifiers ) {
2761
- flattened.push.apply( flattened, x.specifiers.map( getName ) );
2968
+ exports.forEach(function (x) {
2969
+ if (x.isDefault) {
2970
+ flattened.push('default');
2971
+ } else if (x.name) {
2972
+ flattened.push(x.name);
2973
+ } else if (x.specifiers) {
2974
+ flattened.push.apply(flattened, x.specifiers.map(getName));
2762
2975
  }
2763
2976
  });
2764
2977
 
2765
2978
  return flattened;
2766
2979
  }
2767
2980
 
2768
- module.exports = esperanto;
2769
- //# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/test/.gobble-build/01-esperantoBundle/1/esperanto.js.map
2981
+ exports.bundle = bundle;
2982
+ exports.toAmd = toAmd;
2983
+ exports.toCjs = toCjs;
2984
+ exports.toUmd = toUmd;
2985
+ //# sourceMappingURL=/Users/tricknotes/src/github.com/esperantojs/esperanto/.gobble-build/02-esperantoBundle/1/esperanto.js.map