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.
- checksums.yaml +4 -4
- data/lib/esperanto/source/version.rb +1 -1
- data/vendor/esperanto.browser.js +861 -740
- data/vendor/esperanto.browser.js.map +1 -1
- data/vendor/esperanto.js +1319 -1103
- data/vendor/esperanto.js.map +1 -1
- metadata +1 -1
@@ -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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"}
|
data/vendor/esperanto.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
esperanto.js v0.
|
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
|
-
|
16
|
+
var utils_hasNamedImports = hasNamedImports;
|
17
|
+
|
18
|
+
function hasNamedImports(mod) {
|
16
19
|
var i = mod.imports.length;
|
17
20
|
|
18
|
-
while (
|
19
|
-
if (
|
21
|
+
while (i--) {
|
22
|
+
if (mod.imports[i].isNamed) {
|
20
23
|
return true;
|
21
24
|
}
|
22
25
|
}
|
23
26
|
}
|
24
27
|
|
25
|
-
|
28
|
+
var utils_hasNamedExports = hasNamedExports;
|
29
|
+
|
30
|
+
function hasNamedExports(mod) {
|
26
31
|
var i = mod.exports.length;
|
27
32
|
|
28
|
-
while (
|
29
|
-
if (
|
33
|
+
while (i--) {
|
34
|
+
if (!mod.exports[i].isDefault) {
|
30
35
|
return true;
|
31
36
|
}
|
32
37
|
}
|
33
38
|
}
|
34
39
|
|
35
|
-
var
|
36
|
-
var ast_walk__shouldAbort = void 0;
|
40
|
+
var ast_walk = walk;
|
37
41
|
|
38
|
-
|
39
|
-
|
40
|
-
|
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
|
44
|
-
skip: function()
|
45
|
-
|
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
|
61
|
+
var childKeys = {};
|
49
62
|
|
50
|
-
var
|
63
|
+
var toString = Object.prototype.toString;
|
51
64
|
|
52
|
-
function isArray
|
53
|
-
return
|
65
|
+
function isArray(thing) {
|
66
|
+
return toString.call(thing) === '[object Array]';
|
54
67
|
}
|
55
68
|
|
56
|
-
function visit
|
57
|
-
if (
|
69
|
+
function visit(node, parent, enter, leave) {
|
70
|
+
if (!node || shouldAbort) return;
|
58
71
|
|
59
|
-
if (
|
60
|
-
|
61
|
-
enter.call(
|
62
|
-
if (
|
72
|
+
if (enter) {
|
73
|
+
shouldSkip = false;
|
74
|
+
enter.call(context, node, parent);
|
75
|
+
if (shouldSkip || shouldAbort) return;
|
63
76
|
}
|
64
77
|
|
65
|
-
var keys =
|
66
|
-
|
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
|
82
|
+
var key = undefined,
|
83
|
+
value = undefined,
|
84
|
+
i = undefined,
|
85
|
+
j = undefined;
|
70
86
|
|
71
87
|
i = keys.length;
|
72
|
-
while (
|
88
|
+
while (i--) {
|
73
89
|
key = keys[i];
|
74
|
-
value = node[
|
90
|
+
value = node[key];
|
75
91
|
|
76
|
-
if (
|
92
|
+
if (isArray(value)) {
|
77
93
|
j = value.length;
|
78
|
-
while (
|
79
|
-
visit(
|
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 (
|
89
|
-
leave(
|
102
|
+
if (leave && !shouldAbort) {
|
103
|
+
leave(node, parent);
|
90
104
|
}
|
91
105
|
}
|
92
106
|
|
93
|
-
function getId
|
107
|
+
function getId(m) {
|
94
108
|
return m.id;
|
95
109
|
}
|
96
110
|
|
97
|
-
function getName
|
111
|
+
function getName(m) {
|
98
112
|
return m.name;
|
99
113
|
}
|
100
114
|
|
101
|
-
function quote
|
115
|
+
function quote(str) {
|
102
116
|
return "'" + JSON.stringify(str).slice(1, -1).replace(/'/g, "\\'") + "'";
|
103
117
|
}
|
104
118
|
|
105
|
-
function req
|
106
|
-
return
|
119
|
+
function req(path) {
|
120
|
+
return "require(" + quote(path) + ")";
|
107
121
|
}
|
108
122
|
|
109
|
-
function globalify
|
110
|
-
|
111
|
-
return
|
123
|
+
function globalify(name) {
|
124
|
+
if (/^__dep\d+__$/.test(name)) {
|
125
|
+
return "undefined";
|
112
126
|
} else {
|
113
|
-
return
|
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
|
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 (
|
132
|
-
this.names.push(
|
146
|
+
add: function (name) {
|
147
|
+
this.names.push(name);
|
133
148
|
},
|
134
149
|
|
135
|
-
contains: function (
|
136
|
-
if (
|
150
|
+
contains: function (name, ignoreTopLevel) {
|
151
|
+
if (ignoreTopLevel && !this.parent) {
|
137
152
|
return false;
|
138
153
|
}
|
139
154
|
|
140
|
-
if (
|
155
|
+
if (~this.names.indexOf(name)) {
|
141
156
|
return true;
|
142
157
|
}
|
143
158
|
|
144
|
-
if (
|
145
|
-
return this.parent.contains(
|
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
|
-
|
162
|
-
enter: function (
|
163
|
-
if (
|
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 (
|
183
|
+
if (node._skip) {
|
168
184
|
return this.skip();
|
169
185
|
}
|
170
186
|
|
171
|
-
switch (
|
187
|
+
switch (node.type) {
|
172
188
|
case 'FunctionExpression':
|
173
189
|
case 'FunctionDeclaration':
|
174
190
|
|
175
191
|
envDepth += 1;
|
176
192
|
|
177
|
-
|
193
|
+
// fallthrough
|
178
194
|
|
179
195
|
case 'ArrowFunctionExpression':
|
180
|
-
if (
|
181
|
-
addToScope(
|
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 (
|
186
|
-
topLevelFunctionNames.push(
|
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(
|
206
|
+
var names = node.params.map(getName);
|
191
207
|
|
192
|
-
names.forEach(
|
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(
|
227
|
+
node.declarations.forEach(node.kind === 'let' ? addToBlockScope : addToScope);
|
210
228
|
break;
|
211
229
|
|
212
230
|
case 'ClassExpression':
|
213
231
|
case 'ClassDeclaration':
|
214
|
-
addToScope(
|
232
|
+
addToScope(node);
|
215
233
|
break;
|
216
234
|
|
217
235
|
case 'MemberExpression':
|
218
|
-
if (
|
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 && (
|
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([
|
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 (
|
240
|
-
switch (
|
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
|
-
|
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
|
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(
|
265
|
-
declared[
|
301
|
+
scope.add(name);
|
302
|
+
declared[name] = true;
|
266
303
|
}
|
267
304
|
|
268
|
-
function addToBlockScope
|
305
|
+
function addToBlockScope(declarator) {
|
269
306
|
var name = declarator.id.name;
|
270
307
|
|
271
|
-
blockScope.add(
|
272
|
-
declared[
|
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(
|
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
|
-
* @
|
323
|
+
* @param {string} source - the module's original source code
|
324
|
+
* @returns {object} - { imports, exports, defaultExport }
|
289
325
|
*/
|
290
|
-
|
291
|
-
var imports = [], exports = [], previousDeclaration;
|
326
|
+
var ast_findImportsAndExports = findImportsAndExports;
|
292
327
|
|
293
|
-
|
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 (
|
337
|
+
if (previousDeclaration) {
|
297
338
|
previousDeclaration.next = node.start;
|
298
339
|
|
299
|
-
if (
|
340
|
+
if (node.type !== 'EmptyStatement') {
|
300
341
|
previousDeclaration = null;
|
301
342
|
}
|
302
343
|
}
|
303
344
|
|
304
|
-
if (
|
305
|
-
declaration = processImport(
|
306
|
-
imports.push(
|
307
|
-
}
|
308
|
-
|
309
|
-
|
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 (
|
314
|
-
throw new Error(
|
352
|
+
if (defaultExport) {
|
353
|
+
throw new Error('Duplicate default exports');
|
315
354
|
}
|
316
|
-
|
317
|
-
}
|
318
|
-
|
319
|
-
|
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 (
|
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(
|
327
|
-
imports.push(
|
363
|
+
passthrough = processImport(node, true);
|
364
|
+
imports.push(passthrough);
|
328
365
|
|
329
366
|
declaration.passthrough = passthrough;
|
330
367
|
}
|
331
368
|
}
|
332
369
|
|
333
|
-
if (
|
370
|
+
if (declaration) {
|
334
371
|
previousDeclaration = declaration;
|
335
372
|
}
|
336
373
|
});
|
337
374
|
|
338
375
|
// catch any trailing semicolons
|
339
|
-
if (
|
376
|
+
if (previousDeclaration) {
|
340
377
|
previousDeclaration.next = source.length;
|
341
378
|
previousDeclaration.isFinal = true;
|
342
379
|
}
|
343
380
|
|
344
|
-
return
|
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
|
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(
|
363
|
-
if (
|
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 (
|
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: (
|
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 (
|
427
|
+
if (x.specifiers.length === 0) {
|
388
428
|
x.isEmpty = true;
|
389
|
-
} else if (
|
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
|
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
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
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
|
-
|
427
|
-
|
428
|
-
result.
|
429
|
-
result.type = 'anonClass';
|
430
|
-
}
|
464
|
+
if (match) {
|
465
|
+
result.hasDeclaration = true;
|
466
|
+
result.type = (match[2] ? 'named' : 'anon') + match[1];
|
431
467
|
|
432
|
-
|
433
|
-
|
434
|
-
|
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
|
457
|
-
var result
|
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
|
-
|
466
|
-
|
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 (
|
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 (
|
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 (
|
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(
|
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
|
-
|
509
|
-
|
545
|
+
var ast_getUnscopedNames = getUnscopedNames;
|
546
|
+
function getUnscopedNames(mod) {
|
547
|
+
var unscoped = [],
|
548
|
+
importedNames,
|
549
|
+
scope;
|
510
550
|
|
511
|
-
function imported
|
512
|
-
if (
|
551
|
+
function imported(name) {
|
552
|
+
if (!importedNames) {
|
513
553
|
importedNames = {};
|
514
|
-
mod.imports.forEach(
|
515
|
-
!i.passthrough && i.specifiers.forEach(
|
516
|
-
importedNames[
|
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(
|
560
|
+
return utils_hasOwnProp.call(importedNames, name);
|
521
561
|
}
|
522
562
|
|
523
|
-
|
524
|
-
enter: function (
|
563
|
+
ast_walk(mod.ast, {
|
564
|
+
enter: function (node) {
|
525
565
|
// we're only interested in references, not property names etc
|
526
|
-
if (
|
566
|
+
if (node._skip) return this.skip();
|
527
567
|
|
528
|
-
if (
|
568
|
+
if (node._scope) {
|
529
569
|
scope = node._scope;
|
530
570
|
}
|
531
571
|
|
532
|
-
if (
|
533
|
-
|
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 (
|
541
|
-
if (
|
577
|
+
leave: function (node) {
|
578
|
+
if (node.type === 'Program') {
|
542
579
|
return;
|
543
580
|
}
|
544
581
|
|
545
|
-
if (
|
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
|
-
|
591
|
+
var utils_disallowConflictingImports = disallowConflictingImports;
|
592
|
+
function disallowConflictingImports(imports) {
|
555
593
|
var usedNames = {};
|
556
594
|
|
557
|
-
imports.forEach(
|
558
|
-
if (
|
595
|
+
imports.forEach(function (x) {
|
596
|
+
if (x.passthrough) return;
|
559
597
|
|
560
|
-
if (
|
561
|
-
checkName(
|
598
|
+
if (x.as) {
|
599
|
+
checkName(x.as);
|
562
600
|
} else {
|
563
|
-
x.specifiers.forEach(
|
601
|
+
x.specifiers.forEach(checkSpecifier);
|
564
602
|
}
|
565
603
|
});
|
566
604
|
|
567
|
-
function checkSpecifier
|
568
|
-
checkName(
|
605
|
+
function checkSpecifier(s) {
|
606
|
+
checkName(s.as);
|
569
607
|
}
|
570
608
|
|
571
|
-
function checkName
|
572
|
-
if (
|
573
|
-
throw new SyntaxError(
|
609
|
+
function checkName(name) {
|
610
|
+
if (utils_hasOwnProp.call(usedNames, name)) {
|
611
|
+
throw new SyntaxError('Duplicated import (\'' + name + '\')');
|
574
612
|
}
|
575
613
|
|
576
|
-
usedNames[
|
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
|
-
|
590
|
-
name = name.replace( INVALID_CHAR, '_' );
|
623
|
+
var utils_sanitize = sanitize;
|
591
624
|
|
592
|
-
|
593
|
-
|
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
|
601
|
-
return path.split(
|
639
|
+
function splitPath(path) {
|
640
|
+
return path.split(pathSplitRE);
|
602
641
|
}
|
603
642
|
|
604
|
-
var
|
643
|
+
var standalone_getModule = getStandaloneModule;
|
605
644
|
|
606
|
-
|
607
|
-
|
645
|
+
var SOURCEMAPPINGURL_REGEX = /^# sourceMappingURL=/;
|
646
|
+
function getStandaloneModule(options) {
|
647
|
+
var code = undefined,
|
648
|
+
ast = undefined;
|
608
649
|
|
609
|
-
if (
|
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(
|
620
|
-
ast: ast ||
|
660
|
+
body: new MagicString(code),
|
661
|
+
ast: ast || acorn.parse(code, {
|
621
662
|
ecmaVersion: 6,
|
622
663
|
sourceType: 'module',
|
623
|
-
onComment: function (
|
664
|
+
onComment: function (block, text, start, end) {
|
624
665
|
// sourceMappingURL comments should be removed
|
625
|
-
if (
|
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(
|
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
|
679
|
+
var _findImportsAndExports = ast_findImportsAndExports(mod.ast, code);
|
635
680
|
|
636
|
-
|
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 (
|
644
|
-
|
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(
|
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(
|
704
|
+
determineImportNames(imports, options.getModuleName, conflicts);
|
653
705
|
|
654
706
|
return mod;
|
655
707
|
}
|
656
708
|
|
657
|
-
function determineImportNames
|
709
|
+
function determineImportNames(imports, userFn, usedNames) {
|
658
710
|
var nameById = {};
|
659
711
|
var inferredNames = {};
|
660
712
|
|
661
|
-
imports.forEach(
|
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 (
|
669
|
-
x.name = nameById[
|
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 (
|
675
|
-
name =
|
726
|
+
if (userFn && (name = userFn(moduleId))) {
|
727
|
+
name = utils_sanitize(name);
|
676
728
|
|
677
|
-
if (
|
729
|
+
if (utils_hasOwnProp.call(usedNames, name)) {
|
678
730
|
// TODO write a test for this
|
679
|
-
throw new Error(
|
731
|
+
throw new Error('Naming collision: module ' + moduleId + ' cannot be called ' + name);
|
680
732
|
}
|
681
|
-
}
|
682
|
-
|
683
|
-
|
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 (
|
692
|
-
candidate = prefix +
|
741
|
+
while (i-- > 0) {
|
742
|
+
candidate = prefix + utils_sanitize(parts.slice(i).join('__'));
|
693
743
|
|
694
|
-
if (
|
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 (
|
751
|
+
} while (!name);
|
702
752
|
}
|
703
753
|
|
704
|
-
usedNames[
|
705
|
-
nameById[
|
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(
|
713
|
-
if (
|
714
|
-
inferredNames[
|
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(
|
719
|
-
if (
|
720
|
-
x.name = inferredNames[
|
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
|
-
|
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 (
|
786
|
+
if (importPath[0] !== '.') {
|
729
787
|
resolved = importPath;
|
730
788
|
} else {
|
731
|
-
importerParts = splitPath(
|
732
|
-
importParts = splitPath(
|
789
|
+
importerParts = splitPath(importerPath);
|
790
|
+
importParts = splitPath(importPath);
|
733
791
|
|
734
|
-
if (
|
792
|
+
if (importParts[0] === '.') {
|
735
793
|
importParts.shift();
|
736
794
|
}
|
737
795
|
|
738
796
|
importerParts.pop(); // get dirname
|
739
|
-
while (
|
797
|
+
while (importParts[0] === '..') {
|
740
798
|
importParts.shift();
|
741
799
|
importerParts.pop();
|
742
800
|
}
|
743
801
|
|
744
|
-
while (
|
802
|
+
while (importParts[0] === '.') {
|
745
803
|
importParts.shift();
|
746
804
|
}
|
747
805
|
|
748
|
-
resolved = importerParts.concat(
|
806
|
+
resolved = importerParts.concat(importParts).join('/');
|
749
807
|
}
|
750
808
|
|
751
809
|
return resolved;
|
752
810
|
}
|
753
811
|
|
754
|
-
function resolveAgainst
|
755
|
-
return function (
|
756
|
-
return resolveId(
|
812
|
+
function resolveAgainst(importerPath) {
|
813
|
+
return function (importPath) {
|
814
|
+
return resolveId(importPath, importerPath);
|
757
815
|
};
|
758
816
|
}
|
759
817
|
|
760
|
-
|
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
|
860
|
+
function visit(mod) {
|
769
861
|
var id = mod.id;
|
770
862
|
|
771
|
-
seen[
|
863
|
+
seen[id] = true;
|
772
864
|
|
773
|
-
strongDeps[
|
774
|
-
stronglyDependsOn[
|
865
|
+
strongDeps[id] = [];
|
866
|
+
stronglyDependsOn[id] = {};
|
775
867
|
|
776
|
-
mod.imports.forEach(
|
868
|
+
mod.imports.forEach(function (x) {
|
777
869
|
var imported = x.module;
|
778
870
|
|
779
|
-
if (
|
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 (
|
788
|
-
strongDeps[
|
879
|
+
if (referencesAtTopLevel(mod, imported)) {
|
880
|
+
strongDeps[id].push(imported);
|
789
881
|
}
|
790
882
|
|
791
|
-
if (
|
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(
|
890
|
+
visit(imported);
|
799
891
|
});
|
800
892
|
|
801
893
|
// add second (and third...) order dependencies
|
802
|
-
function addStrongDependencies
|
803
|
-
if (
|
894
|
+
function addStrongDependencies(dependency) {
|
895
|
+
if (utils_hasOwnProp.call(stronglyDependsOn[id], dependency.id)) return;
|
804
896
|
|
805
|
-
stronglyDependsOn[
|
806
|
-
strongDeps[
|
897
|
+
stronglyDependsOn[id][dependency.id] = true;
|
898
|
+
strongDeps[dependency.id].forEach(addStrongDependencies);
|
807
899
|
}
|
808
900
|
|
809
|
-
strongDeps[
|
901
|
+
strongDeps[id].forEach(addStrongDependencies);
|
810
902
|
|
811
|
-
ordered.push(
|
903
|
+
ordered.push(mod);
|
812
904
|
}
|
813
905
|
|
814
|
-
visit(
|
906
|
+
visit(entry);
|
815
907
|
|
816
|
-
var unordered;
|
908
|
+
var unordered = undefined;
|
817
909
|
|
818
|
-
if (
|
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(
|
915
|
+
unordered.forEach(function (x) {
|
824
916
|
// ensure strong dependencies of x that don't strongly depend on x go first
|
825
|
-
strongDeps[
|
917
|
+
strongDeps[x.id].forEach(place);
|
826
918
|
|
827
|
-
function place
|
828
|
-
if (
|
829
|
-
strongDeps[
|
830
|
-
ordered.push(
|
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 (
|
835
|
-
ordered.push(
|
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
|
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 (
|
849
|
-
if (
|
850
|
-
bindings.push.apply(
|
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
|
-
|
858
|
-
enter: function (
|
859
|
-
if (
|
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 (
|
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
|
-
|
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(
|
981
|
+
modules.forEach(function (mod) {
|
878
982
|
var origin = {};
|
879
983
|
|
880
|
-
mod.imports.forEach(
|
984
|
+
mod.imports.forEach(function (x) {
|
881
985
|
var imported = x.module;
|
882
986
|
|
883
|
-
x.specifiers.forEach(
|
884
|
-
if (
|
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[
|
994
|
+
origin[s.as] = '' + s.name + '@' + imported.id;
|
891
995
|
});
|
892
996
|
});
|
893
997
|
|
894
|
-
mod.exports.forEach(
|
895
|
-
if (
|
998
|
+
mod.exports.forEach(function (x) {
|
999
|
+
if (!x.specifiers) return;
|
896
1000
|
|
897
|
-
x.specifiers.forEach(
|
898
|
-
if (
|
899
|
-
chains[
|
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(
|
907
|
-
mod.imports.forEach(
|
1010
|
+
modules.forEach(function (mod) {
|
1011
|
+
mod.imports.forEach(function (x) {
|
908
1012
|
var imported = x.module;
|
909
1013
|
|
910
|
-
x.specifiers.forEach(
|
911
|
-
if (
|
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(
|
1019
|
+
setOrigin(s, '' + s.name + '@' + imported.id, chains, moduleLookup);
|
916
1020
|
});
|
917
1021
|
});
|
918
1022
|
|
919
|
-
mod.exports.forEach(
|
920
|
-
if (
|
1023
|
+
mod.exports.forEach(function (x) {
|
1024
|
+
if (!x.specifiers) return;
|
921
1025
|
|
922
|
-
x.specifiers.forEach(
|
923
|
-
setOrigin(
|
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
|
930
|
-
var isChained;
|
1033
|
+
function setOrigin(specifier, hash, chains, moduleLookup) {
|
1034
|
+
var isChained = undefined;
|
931
1035
|
|
932
|
-
while (
|
933
|
-
hash = chains[
|
1036
|
+
while (utils_hasOwnProp.call(chains, hash)) {
|
1037
|
+
hash = chains[hash];
|
934
1038
|
isChained = true;
|
935
1039
|
}
|
936
1040
|
|
937
|
-
if (
|
938
|
-
var
|
939
|
-
|
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(
|
953
|
-
|
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(
|
1076
|
+
builtins.forEach(function (n) {
|
1077
|
+
return used[n] = true;
|
1078
|
+
});
|
959
1079
|
|
960
1080
|
// copy user-specified names
|
961
|
-
if (
|
962
|
-
Object.keys(
|
963
|
-
names[
|
964
|
-
used[
|
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
|
971
|
-
if (
|
972
|
-
names[
|
973
|
-
used[
|
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(
|
977
|
-
mod.imports.forEach(
|
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(
|
1102
|
+
modules.concat(externalModules).forEach(function (mod) {
|
983
1103
|
// is this already named?
|
984
|
-
if (
|
985
|
-
mod.name = names[
|
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(
|
1109
|
+
var name = undefined;
|
1110
|
+
var parts = splitPath(mod.id);
|
991
1111
|
var i = parts.length;
|
992
1112
|
|
993
|
-
while (
|
994
|
-
name =
|
1113
|
+
while (i--) {
|
1114
|
+
name = utils_sanitize(parts.slice(i).join('_'));
|
995
1115
|
|
996
|
-
if (
|
1116
|
+
if (!utils_hasOwnProp.call(used, name)) {
|
997
1117
|
break;
|
998
1118
|
}
|
999
1119
|
}
|
1000
1120
|
|
1001
|
-
while (
|
1121
|
+
while (utils_hasOwnProp.call(used, name)) {
|
1002
1122
|
name = '_' + name;
|
1003
1123
|
}
|
1004
1124
|
|
1005
|
-
used[
|
1125
|
+
used[name] = true;
|
1006
1126
|
mod.name = name;
|
1007
1127
|
});
|
1008
1128
|
|
1009
1129
|
return names;
|
1010
1130
|
}
|
1011
1131
|
|
1012
|
-
|
1013
|
-
|
1014
|
-
|
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 (
|
1139
|
+
if (!externalModule.isExternal) {
|
1018
1140
|
return;
|
1019
1141
|
}
|
1020
1142
|
|
1021
|
-
x.specifiers.forEach(
|
1022
|
-
if (
|
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
|
-
|
1154
|
+
var combine_getRenamedImports = getRenamedImports;
|
1155
|
+
|
1156
|
+
function getRenamedImports(mod) {
|
1033
1157
|
var renamed = [];
|
1034
1158
|
|
1035
|
-
mod.imports.forEach(
|
1036
|
-
if (
|
1037
|
-
x.specifiers.forEach(
|
1038
|
-
if (
|
1039
|
-
renamed.push(
|
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
|
-
|
1172
|
+
var combine_topLevelScopeConflicts = topLevelScopeConflicts;
|
1173
|
+
function topLevelScopeConflicts(bundle) {
|
1049
1174
|
var conflicts = {};
|
1050
1175
|
var inBundle = {};
|
1051
|
-
var importNames = bundle.externalModules.map(
|
1176
|
+
var importNames = bundle.externalModules.map(getName);
|
1052
1177
|
|
1053
|
-
bundle.modules.forEach(
|
1178
|
+
bundle.modules.forEach(function (mod) {
|
1054
1179
|
var names = builtins
|
1055
1180
|
|
1056
|
-
|
1057
|
-
|
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
|
-
|
1184
|
+
// all unattributed identifiers could collide with top scope
|
1185
|
+
.concat(ast_getUnscopedNames(mod)).concat(importNames).concat(combine_getRenamedImports(mod));
|
1063
1186
|
|
1064
|
-
|
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(
|
1072
|
-
if (
|
1073
|
-
conflicts[
|
1192
|
+
names.forEach(function (name) {
|
1193
|
+
if (utils_hasOwnProp.call(inBundle, name)) {
|
1194
|
+
conflicts[name] = true;
|
1074
1195
|
} else {
|
1075
|
-
inBundle[
|
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
|
-
|
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 =
|
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(
|
1217
|
+
bundle.modules.forEach(function (mod) {
|
1090
1218
|
var x = mod.defaultExport;
|
1091
1219
|
|
1092
|
-
if (
|
1093
|
-
var result;
|
1220
|
+
if (x) {
|
1221
|
+
var result = undefined;
|
1094
1222
|
|
1095
|
-
if (
|
1096
|
-
result = utils_hasOwnProp.call(
|
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(
|
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
|
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(
|
1235
|
+
bundle.modules.forEach(function (mod) {
|
1112
1236
|
var moduleIdentifiers = mod.identifierReplacements;
|
1113
1237
|
|
1114
|
-
mod.ast._topLevelNames.forEach(
|
1115
|
-
moduleIdentifiers[n] = utils_hasOwnProp.call(
|
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(
|
1121
|
-
if (
|
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(
|
1128
|
-
var replacement;
|
1249
|
+
x.specifiers.forEach(function (s) {
|
1250
|
+
var replacement = undefined;
|
1129
1251
|
|
1130
|
-
if (
|
1252
|
+
if (s.isBatch) {
|
1131
1253
|
replacement = x.module.name;
|
1132
|
-
}
|
1133
|
-
|
1134
|
-
|
1135
|
-
var mod;
|
1136
|
-
var specifierName;
|
1254
|
+
} else {
|
1255
|
+
var _mod = undefined;
|
1256
|
+
var specifierName = undefined;
|
1137
1257
|
|
1138
|
-
if (
|
1258
|
+
if (s.origin) {
|
1139
1259
|
// chained bindings
|
1140
|
-
|
1260
|
+
_mod = s.origin.module;
|
1141
1261
|
specifierName = s.origin.name;
|
1142
1262
|
} else {
|
1143
|
-
|
1263
|
+
_mod = imported;
|
1144
1264
|
specifierName = s.name;
|
1145
1265
|
}
|
1146
1266
|
|
1147
|
-
var moduleName =
|
1267
|
+
var moduleName = _mod && _mod.name;
|
1148
1268
|
|
1149
|
-
if (
|
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 (
|
1153
|
-
replacement = imported.needsNamed ?
|
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 (
|
1160
|
-
replacement =
|
1279
|
+
else if (_mod && !_mod.isSkipped) {
|
1280
|
+
replacement = _mod.identifierReplacements['default'];
|
1161
1281
|
}
|
1162
|
-
} else if (
|
1163
|
-
replacement = utils_hasOwnProp.call(
|
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 (
|
1172
|
-
moduleIdentifiers[
|
1289
|
+
if (replacement !== s.as) {
|
1290
|
+
moduleIdentifiers[s.as] = replacement;
|
1173
1291
|
}
|
1174
1292
|
});
|
1175
1293
|
});
|
1176
1294
|
});
|
1177
1295
|
|
1178
|
-
function otherModulesDeclare
|
1296
|
+
function otherModulesDeclare(mod, replacement) {
|
1179
1297
|
var i, otherMod;
|
1180
1298
|
|
1181
1299
|
i = bundle.modules.length;
|
1182
|
-
while (
|
1300
|
+
while (i--) {
|
1183
1301
|
otherMod = bundle.modules[i];
|
1184
1302
|
|
1185
|
-
if (
|
1303
|
+
if (mod === otherMod) {
|
1186
1304
|
continue;
|
1187
1305
|
}
|
1188
1306
|
|
1189
|
-
if (
|
1307
|
+
if (utils_hasOwnProp.call(otherMod.ast._declared, replacement)) {
|
1190
1308
|
return true;
|
1191
1309
|
}
|
1192
1310
|
}
|
1193
1311
|
}
|
1194
1312
|
}
|
1195
1313
|
|
1196
|
-
|
1314
|
+
var combine_resolveExports = resolveExports;
|
1315
|
+
|
1316
|
+
function resolveExports(bundle) {
|
1197
1317
|
var bundleExports = {};
|
1198
1318
|
|
1199
|
-
bundle.entryModule.exports.forEach(
|
1200
|
-
if (
|
1201
|
-
x.specifiers.forEach(
|
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 (
|
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(
|
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
|
1223
|
-
if (
|
1224
|
-
bundleExports[
|
1340
|
+
function addExport(module, name, as) {
|
1341
|
+
if (!bundleExports[module.id]) {
|
1342
|
+
bundleExports[module.id] = {};
|
1225
1343
|
}
|
1226
1344
|
|
1227
|
-
bundleExports[
|
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
|
-
|
1242
|
-
var importedBindings = {}, importedNamespaces = {};
|
1359
|
+
var utils_getReadOnlyIdentifiers = getReadOnlyIdentifiers;
|
1243
1360
|
|
1244
|
-
|
1245
|
-
|
1361
|
+
function getReadOnlyIdentifiers(imports) {
|
1362
|
+
var importedBindings = {},
|
1363
|
+
importedNamespaces = {};
|
1246
1364
|
|
1247
|
-
|
1248
|
-
|
1249
|
-
|
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[
|
1372
|
+
importedBindings[s.as] = true;
|
1252
1373
|
}
|
1253
1374
|
});
|
1254
1375
|
});
|
1255
1376
|
|
1256
|
-
return [
|
1377
|
+
return [importedBindings, importedNamespaces];
|
1257
1378
|
}
|
1258
1379
|
|
1380
|
+
var ast_disallowIllegalReassignment = disallowIllegalReassignment;
|
1259
1381
|
var bindingMessage = 'Cannot reassign imported binding ',
|
1260
|
-
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
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 (
|
1387
|
+
if (node.type === 'AssignmentExpression') {
|
1266
1388
|
assignee = node.left;
|
1267
|
-
} else if (
|
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 (
|
1395
|
+
if (assignee.type === 'MemberExpression') {
|
1274
1396
|
assignee = assignee.object;
|
1275
1397
|
isNamespaceAssignment = true;
|
1276
1398
|
}
|
1277
1399
|
|
1278
|
-
if (
|
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 (
|
1285
|
-
throw new Error(
|
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
|
-
|
1411
|
+
var ast_replaceIdentifiers = replaceIdentifiers;
|
1412
|
+
function replaceIdentifiers(body, node, identifierReplacements, scope) {
|
1290
1413
|
var name = node.name;
|
1291
|
-
var replacement = utils_hasOwnProp.call(
|
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 (
|
1418
|
+
if (replacement && replacement !== name && !scope.contains(name, true)) {
|
1296
1419
|
// rewrite
|
1297
|
-
body.replace(
|
1420
|
+
body.replace(node.start, node.end, replacement);
|
1298
1421
|
}
|
1299
1422
|
}
|
1300
1423
|
|
1301
|
-
|
1302
|
-
|
1424
|
+
var ast_rewriteExportAssignments = rewriteExportAssignments;
|
1425
|
+
function rewriteExportAssignments(body, node, parent, exports, scope, capturedUpdates) {
|
1426
|
+
var assignee = undefined;
|
1303
1427
|
|
1304
|
-
if (
|
1428
|
+
if (node.type === 'AssignmentExpression') {
|
1305
1429
|
assignee = node.left;
|
1306
|
-
} else if (
|
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 (
|
1436
|
+
if (assignee.type !== 'Identifier') {
|
1313
1437
|
return;
|
1314
1438
|
}
|
1315
1439
|
|
1316
1440
|
var name = assignee.name;
|
1317
1441
|
|
1318
|
-
if (
|
1442
|
+
if (scope.contains(name, true)) {
|
1319
1443
|
return; // shadows an export
|
1320
1444
|
}
|
1321
1445
|
|
1322
|
-
if (
|
1323
|
-
var exportAs = exports[
|
1446
|
+
if (exports && utils_hasOwnProp.call(exports, name)) {
|
1447
|
+
var exportAs = exports[name];
|
1324
1448
|
|
1325
|
-
if (
|
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 (
|
1332
|
-
var prefix =
|
1333
|
-
var suffix =
|
1334
|
-
if (
|
1335
|
-
if (
|
1336
|
-
suffix +=
|
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(
|
1342
|
-
body.insert(
|
1465
|
+
body.insert(node.start, prefix);
|
1466
|
+
body.insert(node.end, suffix);
|
1343
1467
|
} else {
|
1344
|
-
body.insert(
|
1468
|
+
body.insert(node.start, 'exports.' + exportAs + ' = ');
|
1345
1469
|
}
|
1346
1470
|
}
|
1347
1471
|
}
|
1348
1472
|
|
1349
|
-
|
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
|
-
|
1356
|
-
enter: function (
|
1481
|
+
ast_walk(ast, {
|
1482
|
+
enter: function (node, parent) {
|
1357
1483
|
// we're only interested in references, not property names etc
|
1358
|
-
if (
|
1484
|
+
if (node._skip) return this.skip();
|
1359
1485
|
|
1360
|
-
if (
|
1486
|
+
if (node._scope) {
|
1361
1487
|
scope = node._scope;
|
1362
|
-
} else if (
|
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 (
|
1498
|
+
if (node.type === 'VariableDeclaration') {
|
1373
1499
|
previousCapturedUpdates = capturedUpdates;
|
1374
1500
|
capturedUpdates = [];
|
1375
1501
|
return;
|
1376
1502
|
}
|
1377
1503
|
|
1378
|
-
|
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 (
|
1383
|
-
|
1508
|
+
if (scope !== ast._scope) {
|
1509
|
+
ast_rewriteExportAssignments(body, node, parent, exportNames, scope, capturedUpdates);
|
1384
1510
|
}
|
1385
1511
|
|
1386
|
-
if (
|
1387
|
-
|
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 (
|
1392
|
-
body.replace(
|
1517
|
+
if (node.type === 'ThisExpression' && node._topLevel) {
|
1518
|
+
body.replace(node.start, node.end, 'undefined');
|
1393
1519
|
}
|
1394
1520
|
},
|
1395
1521
|
|
1396
|
-
leave: function (
|
1522
|
+
leave: function (node) {
|
1397
1523
|
// Special case - see above
|
1398
|
-
if (
|
1399
|
-
if (
|
1400
|
-
body.insert(
|
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 (
|
1532
|
+
if (node._scope) {
|
1407
1533
|
scope = scope.parent;
|
1408
|
-
} else if (
|
1534
|
+
} else if (node._blockScope) {
|
1409
1535
|
blockScope = blockScope.parent;
|
1410
1536
|
}
|
1411
1537
|
}
|
1412
1538
|
});
|
1413
1539
|
}
|
1414
1540
|
|
1415
|
-
function exportCapturedUpdate
|
1416
|
-
return
|
1541
|
+
function exportCapturedUpdate(c) {
|
1542
|
+
return ' exports.' + c.exportAs + ' = ' + c.name + ';';
|
1417
1543
|
}
|
1418
1544
|
|
1419
|
-
|
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
|
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
|
-
|
1556
|
+
traverse(mod.ast, body, identifierReplacements, importedBindings, importedNamespaces, exportNames);
|
1426
1557
|
|
1427
1558
|
// Remove import statements
|
1428
|
-
mod.imports.forEach(
|
1429
|
-
if (
|
1430
|
-
body.remove(
|
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(
|
1568
|
+
mod.exports.forEach(function (x) {
|
1438
1569
|
var name;
|
1439
1570
|
|
1440
|
-
if (
|
1441
|
-
if (
|
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(
|
1455
|
-
}
|
1456
|
-
|
1457
|
-
|
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(
|
1462
|
-
body.replace(
|
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 (
|
1474
|
-
if (
|
1475
|
-
shouldExportEarly[
|
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(
|
1605
|
+
body.remove(x.start, x.valueStart);
|
1479
1606
|
} else {
|
1480
|
-
body.remove(
|
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 (
|
1489
|
-
|
1490
|
-
|
1491
|
-
|
1492
|
-
|
1493
|
-
|
1494
|
-
|
1495
|
-
|
1496
|
-
|
1497
|
-
|
1498
|
-
|
1499
|
-
|
1500
|
-
|
1501
|
-
|
1502
|
-
|
1503
|
-
|
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
|
-
|
1632
|
+
namespaceExportBlock += namespaceExports.join(',\n') + '\n};\n\n';
|
1509
1633
|
|
1510
|
-
|
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 (
|
1517
|
-
|
1641
|
+
if (exportNames) {
|
1642
|
+
(function () {
|
1643
|
+
var exportBlock = [];
|
1518
1644
|
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1522
|
-
|
1645
|
+
Object.keys(exportNames).forEach(function (name) {
|
1646
|
+
var exportAs = exportNames[name];
|
1647
|
+
exportBlock.push('exports.' + exportAs + ' = ' + identifierReplacements[name] + ';');
|
1648
|
+
});
|
1523
1649
|
|
1524
|
-
|
1525
|
-
|
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
|
-
|
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
|
-
|
1666
|
+
populateModuleNames(bundle);
|
1539
1667
|
|
1540
1668
|
// determine which specifiers are imported from
|
1541
1669
|
// external modules
|
1542
|
-
|
1670
|
+
combine_populateExternalModuleImports(bundle);
|
1543
1671
|
|
1544
1672
|
// determine which identifiers need to be replaced
|
1545
1673
|
// inside this bundle
|
1546
|
-
|
1674
|
+
combine_populateIdentifierReplacements(bundle);
|
1547
1675
|
|
1548
|
-
bundle.exports =
|
1676
|
+
bundle.exports = combine_resolveExports(bundle);
|
1549
1677
|
|
1550
|
-
bundle.modules.forEach(
|
1678
|
+
bundle.modules.forEach(function (mod) {
|
1551
1679
|
// verify that this module doesn't import non-exported identifiers
|
1552
|
-
mod.imports.forEach(
|
1680
|
+
mod.imports.forEach(function (x) {
|
1553
1681
|
var imported = x.module;
|
1554
1682
|
|
1555
|
-
if (
|
1683
|
+
if (imported.isExternal || imported.isSkipped || x.isBatch) {
|
1556
1684
|
return;
|
1557
1685
|
}
|
1558
1686
|
|
1559
|
-
x.specifiers.forEach(
|
1560
|
-
if (
|
1561
|
-
throw new Error(
|
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:
|
1696
|
+
content: combine_transformBody(bundle, mod, mod.body),
|
1569
1697
|
indentExclusionRanges: mod.ast._templateLiteralRanges
|
1570
1698
|
});
|
1571
1699
|
});
|
1572
1700
|
}
|
1573
1701
|
|
1574
|
-
|
1575
|
-
|
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 ||
|
1709
|
+
mod.ast = mod.ast || acorn.parse(mod.code, {
|
1581
1710
|
ecmaVersion: 6,
|
1582
1711
|
sourceType: 'module',
|
1583
|
-
onComment: function (
|
1712
|
+
onComment: function (block, text, start, end) {
|
1584
1713
|
// sourceMappingURL comments should be removed
|
1585
|
-
if (
|
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 (
|
1722
|
+
if (err.loc) {
|
1597
1723
|
err.file = mod.path;
|
1598
1724
|
}
|
1599
1725
|
|
1600
1726
|
throw err;
|
1601
1727
|
}
|
1602
1728
|
|
1603
|
-
|
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
|
-
|
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(
|
1619
|
-
if (
|
1620
|
-
mod.doesExport
|
1621
|
-
}
|
1622
|
-
|
1623
|
-
else if (
|
1624
|
-
|
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
|
1799
|
+
var bundler_getBundle = getBundle;
|
1642
1800
|
|
1643
|
-
function getBundle
|
1644
|
-
var entry = options.entry.replace(
|
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 = (
|
1809
|
+
var base = (options.base ? _path.resolve(options.base) : process.cwd()) + '/';
|
1652
1810
|
var externalModules = [];
|
1653
1811
|
var externalModuleLookup = {};
|
1654
1812
|
|
1655
|
-
if (
|
1656
|
-
entry = entry.substring(
|
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(
|
1661
|
-
userModules[
|
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(
|
1667
|
-
return fetchModule(
|
1668
|
-
return
|
1669
|
-
|
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
|
-
|
1679
|
-
|
1840
|
+
utils_resolveChains(modules, moduleLookup);
|
1841
|
+
bundler_combine(bundle);
|
1680
1842
|
|
1681
1843
|
return bundle;
|
1682
1844
|
});
|
1683
|
-
|
1684
1845
|
});
|
1685
|
-
}, function (
|
1686
|
-
if (
|
1687
|
-
throw new Error(
|
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
|
1694
|
-
if (
|
1695
|
-
promiseByPath[ absolutePath ]
|
1696
|
-
|
1697
|
-
|
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 (
|
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 (
|
1712
|
-
code = options.transform(
|
1869
|
+
if (options.transform) {
|
1870
|
+
code = options.transform(code, absolutePath);
|
1713
1871
|
|
1714
|
-
if (
|
1715
|
-
throw new Error(
|
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 =
|
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
|
-
|
1730
|
-
moduleLookup[ moduleId ] = module;
|
1884
|
+
moduleLookup[moduleId] = module;
|
1731
1885
|
|
1732
|
-
|
1733
|
-
|
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 (
|
1737
|
-
throw new Error(
|
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 (
|
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(
|
1752
|
-
var promise = utils_hasOwnProp.call(
|
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 (
|
1908
|
+
if (cyclical) {
|
1756
1909
|
// ensure all modules are set before we
|
1757
1910
|
// create the bundle...
|
1758
|
-
cyclicalModules.push(
|
1759
|
-
|
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(
|
1767
|
-
|
1768
|
-
|
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(
|
1925
|
+
var externalModule = utils_hasOwnProp.call(externalModuleLookup, id) && externalModuleLookup[id];
|
1771
1926
|
|
1772
|
-
if (
|
1927
|
+
if (!externalModule) {
|
1773
1928
|
externalModule = {
|
1774
1929
|
id: id,
|
1775
1930
|
isExternal: true
|
1776
1931
|
};
|
1777
1932
|
|
1778
|
-
externalModules.push(
|
1779
|
-
externalModuleLookup[
|
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[
|
1950
|
+
return promiseByPath[absolutePath];
|
1795
1951
|
}
|
1796
1952
|
}
|
1797
1953
|
|
1798
|
-
function resolvePath
|
1799
|
-
var noExt = moduleId.replace(
|
1954
|
+
function resolvePath(base, userModules, moduleId, importerPath, resolver) {
|
1955
|
+
var noExt = moduleId.replace(/\.js$/, '');
|
1800
1956
|
|
1801
|
-
return tryPath(
|
1802
|
-
|
1803
|
-
|
1804
|
-
|
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
|
-
|
1807
|
-
|
1808
|
-
|
1809
|
-
|
1810
|
-
|
1811
|
-
|
1812
|
-
|
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
|
-
|
1971
|
+
return sander.stat(resolvedPath).then(function () {
|
1972
|
+
return _path.resolve(base, resolvedPath);
|
1816
1973
|
});
|
1817
|
-
}
|
1818
|
-
|
1819
|
-
|
1820
|
-
}
|
1974
|
+
});
|
1975
|
+
} else {
|
1976
|
+
throw err;
|
1977
|
+
}
|
1978
|
+
});
|
1821
1979
|
}
|
1822
1980
|
|
1823
|
-
function tryPath
|
1824
|
-
var absolutePath = _path.resolve(
|
1981
|
+
function tryPath(base, filename, userModules) {
|
1982
|
+
var absolutePath = _path.resolve(base, filename);
|
1825
1983
|
|
1826
|
-
if (
|
1827
|
-
return
|
1984
|
+
if (utils_hasOwnProp.call(userModules, absolutePath)) {
|
1985
|
+
return sander.Promise.resolve(absolutePath);
|
1828
1986
|
}
|
1829
|
-
return sander.stat(
|
1987
|
+
return sander.stat(absolutePath).then(function () {
|
1988
|
+
return absolutePath;
|
1989
|
+
});
|
1830
1990
|
}
|
1831
1991
|
|
1832
|
-
function isThenable
|
1992
|
+
function isThenable(obj) {
|
1833
1993
|
return obj && typeof obj.then === 'function';
|
1834
1994
|
}
|
1835
1995
|
|
1836
|
-
|
1837
|
-
|
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 (
|
2005
|
+
switch (declaration.type) {
|
1844
2006
|
case 'namedFunction':
|
1845
2007
|
case 'namedClass':
|
1846
|
-
body.remove(
|
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 (
|
1853
|
-
body.replace(
|
2014
|
+
if (declaration.isFinal) {
|
2015
|
+
body.replace(declaration.start, declaration.valueStart, 'return ');
|
1854
2016
|
} else {
|
1855
|
-
body.replace(
|
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 (
|
1863
|
-
body.insert(
|
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(
|
2031
|
+
body.remove(declaration.start, declaration.next);
|
1870
2032
|
exportedValue = declaration.value;
|
1871
2033
|
break;
|
1872
2034
|
|
1873
2035
|
default:
|
1874
|
-
throw new Error(
|
2036
|
+
throw new Error('Unexpected export type \'' + declaration.type + '\'');
|
1875
2037
|
}
|
1876
2038
|
|
1877
|
-
if (
|
1878
|
-
body.append(
|
2039
|
+
if (exportedValue) {
|
2040
|
+
body.append('\nreturn ' + exportedValue + ';');
|
1879
2041
|
}
|
1880
2042
|
}
|
1881
2043
|
|
1882
|
-
var
|
2044
|
+
var utils_packageResult = packageResult;
|
1883
2045
|
|
1884
|
-
var
|
2046
|
+
var ABSOLUTE_PATH = /^(?:[A-Z]:)?[\/\\]/i;
|
1885
2047
|
|
1886
|
-
|
2048
|
+
var warned = {};
|
2049
|
+
function packageResult(bundleOrModule, body, options, methodName, isBundle) {
|
1887
2050
|
// wrap output
|
1888
|
-
if (
|
1889
|
-
if (
|
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 (
|
1895
|
-
if (
|
1896
|
-
throw new Error(
|
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 (
|
1900
|
-
throw new Error(
|
2062
|
+
if (!isBundle && !options.sourceMapSource) {
|
2063
|
+
throw new Error('You must provide `sourceMapSource` option');
|
1901
2064
|
}
|
1902
2065
|
|
1903
|
-
var sourceMapFile;
|
1904
|
-
if (
|
2066
|
+
var sourceMapFile = undefined;
|
2067
|
+
if (options.sourceMap === 'inline') {
|
1905
2068
|
sourceMapFile = null;
|
1906
2069
|
} else {
|
1907
|
-
sourceMapFile = ABSOLUTE_PATH.test(
|
2070
|
+
sourceMapFile = ABSOLUTE_PATH.test(options.sourceMapFile) ? options.sourceMapFile : './' + splitPath(options.sourceMapFile).pop();
|
1908
2071
|
}
|
1909
2072
|
|
1910
|
-
if (
|
1911
|
-
markBundleSourcemapLocations(
|
2073
|
+
if (isBundle) {
|
2074
|
+
markBundleSourcemapLocations(bundleOrModule);
|
1912
2075
|
} else {
|
1913
|
-
markModuleSourcemapLocations(
|
2076
|
+
markModuleSourcemapLocations(bundleOrModule);
|
1914
2077
|
}
|
1915
2078
|
|
1916
2079
|
map = body.generateMap({
|
1917
2080
|
includeContent: true,
|
1918
2081
|
file: sourceMapFile,
|
1919
|
-
source:
|
2082
|
+
source: sourceMapFile && !isBundle ? getRelativePath(sourceMapFile, options.sourceMapSource) : null
|
1920
2083
|
});
|
1921
2084
|
|
1922
|
-
if (
|
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 (
|
1937
|
-
console.log(
|
1938
|
-
|
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
|
2109
|
+
function getRelativePath(from, to) {
|
1947
2110
|
var fromParts, toParts, i;
|
1948
2111
|
|
1949
|
-
fromParts = splitPath(
|
1950
|
-
toParts = splitPath(
|
2112
|
+
fromParts = splitPath(from);
|
2113
|
+
toParts = splitPath(to);
|
1951
2114
|
|
1952
2115
|
fromParts.pop(); // get dirname
|
1953
2116
|
|
1954
|
-
while (
|
2117
|
+
while (fromParts[0] === '.') {
|
1955
2118
|
fromParts.shift();
|
1956
2119
|
}
|
1957
2120
|
|
1958
|
-
while (
|
2121
|
+
while (fromParts[0] === toParts[0]) {
|
1959
2122
|
fromParts.shift();
|
1960
2123
|
toParts.shift();
|
1961
2124
|
}
|
1962
2125
|
|
1963
|
-
if (
|
2126
|
+
if (fromParts.length) {
|
1964
2127
|
i = fromParts.length;
|
1965
|
-
while (
|
2128
|
+
while (i--) fromParts[i] = '..';
|
1966
2129
|
|
1967
|
-
return fromParts.concat(
|
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
|
1975
|
-
bundle.modules.forEach(
|
1976
|
-
|
1977
|
-
enter: function(node
|
1978
|
-
mod.body.addSourcemapLocation(
|
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
|
1985
|
-
|
1986
|
-
enter: function(node
|
1987
|
-
mod.body.addSourcemapLocation(
|
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
|
-
|
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(
|
2166
|
+
imports.forEach(function (x) {
|
1999
2167
|
var path = x.id || x.path; // TODO unify these
|
2000
2168
|
|
2001
|
-
if (
|
2002
|
-
seen[
|
2169
|
+
if (!seen[path]) {
|
2170
|
+
seen[path] = true;
|
2003
2171
|
|
2004
|
-
paths.push(
|
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 (
|
2010
|
-
while (
|
2011
|
-
names.push(
|
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(
|
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(
|
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
|
-
|
2027
|
-
|
2196
|
+
var amd_processName = processName;
|
2197
|
+
function processName(name) {
|
2198
|
+
return name ? quote(name) + ', ' : '';
|
2028
2199
|
}
|
2029
2200
|
|
2030
|
-
|
2031
|
-
|
2201
|
+
var amd_processIds = processIds;
|
2202
|
+
function processIds(ids) {
|
2203
|
+
return ids.length ? '[' + ids.map(quote).join(', ') + '], ' : '';
|
2032
2204
|
}
|
2033
2205
|
|
2034
|
-
|
2035
|
-
|
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 (
|
2038
|
-
ids.unshift(
|
2039
|
-
names.unshift(
|
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 (
|
2048
|
-
intro +=
|
2227
|
+
if (useStrict) {
|
2228
|
+
intro += '' + indentStr + '\'use strict\';\n\n';
|
2049
2229
|
}
|
2050
2230
|
|
2051
2231
|
return intro;
|
2052
2232
|
}
|
2053
2233
|
|
2054
|
-
|
2055
|
-
|
2056
|
-
|
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
|
-
|
2240
|
+
utils_transformExportDeclaration(mod.exports[0], mod.body);
|
2060
2241
|
|
2061
|
-
var intro =
|
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
|
2252
|
+
return utils_packageResult(mod, mod.body, options, 'toAmd');
|
2076
2253
|
}
|
2077
2254
|
|
2078
|
-
|
2255
|
+
var defaultsMode_cjs = defaultsMode_cjs__cjs;
|
2256
|
+
function defaultsMode_cjs__cjs(mod, options) {
|
2079
2257
|
var seen = {};
|
2080
2258
|
|
2081
|
-
mod.imports.forEach(
|
2082
|
-
if (
|
2083
|
-
var replacement = x.isEmpty ?
|
2084
|
-
mod.body.replace(
|
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[
|
2264
|
+
seen[x.path] = true;
|
2087
2265
|
} else {
|
2088
|
-
mod.body.remove(
|
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 (
|
2095
|
-
switch (
|
2272
|
+
if (exportDeclaration) {
|
2273
|
+
switch (exportDeclaration.type) {
|
2096
2274
|
case 'namedFunction':
|
2097
2275
|
case 'namedClass':
|
2098
|
-
mod.body.remove(
|
2099
|
-
mod.body.replace(
|
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(
|
2281
|
+
mod.body.replace(exportDeclaration.start, exportDeclaration.valueStart, 'module.exports = ');
|
2104
2282
|
break;
|
2105
2283
|
}
|
2106
2284
|
}
|
2107
2285
|
|
2108
|
-
if (
|
2109
|
-
mod.body.prepend(
|
2286
|
+
if (options.useStrict !== false) {
|
2287
|
+
mod.body.prepend('\'use strict\';\n\n').trimLines();
|
2110
2288
|
}
|
2111
2289
|
|
2112
|
-
return
|
2290
|
+
return utils_packageResult(mod, mod.body, options, 'toCjs');
|
2113
2291
|
}
|
2114
2292
|
|
2115
|
-
|
2116
|
-
|
2117
|
-
var
|
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
|
-
|
2120
|
-
|
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
|
-
|
2131
|
-
|
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
|
2313
|
+
var ids = _getImportSummary.ids;
|
2314
|
+
var paths = _getImportSummary.paths;
|
2315
|
+
var names = _getImportSummary.names;
|
2134
2316
|
|
2135
|
-
|
2136
|
-
|
2137
|
-
|
2138
|
-
|
2317
|
+
var amdExport = undefined,
|
2318
|
+
cjsExport = undefined,
|
2319
|
+
globalExport = undefined,
|
2320
|
+
defaultsBlock = undefined;
|
2139
2321
|
|
2140
|
-
|
2141
|
-
|
2142
|
-
|
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 =
|
2332
|
+
amdExport = 'define(' + amd_processName(amdName) + '' + amd_processIds(ids) + 'factory)';
|
2146
2333
|
defaultsBlock = '';
|
2147
|
-
if (
|
2148
|
-
defaultsBlock = externalDefaults.map(
|
2149
|
-
|
2150
|
-
|
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 =
|
2155
|
-
cjsExport = (
|
2156
|
-
globalExport = (
|
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(
|
2350
|
+
return intro.replace(/^\t\t\t/gm, '').replace(/\t/g, indentStr);
|
2173
2351
|
}
|
2174
2352
|
|
2175
|
-
var EsperantoError = function (
|
2353
|
+
var EsperantoError = function (message, data) {
|
2176
2354
|
var prop;
|
2177
2355
|
|
2178
2356
|
this.message = message;
|
2179
|
-
this.stack =
|
2357
|
+
this.stack = new Error().stack;
|
2180
2358
|
|
2181
|
-
for (
|
2182
|
-
if (
|
2183
|
-
this[
|
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
|
-
|
2195
|
-
|
2196
|
-
|
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
|
-
|
2203
|
-
|
2381
|
+
var defaultsMode_umd = defaultsMode_umd__umd;
|
2382
|
+
function defaultsMode_umd__umd(mod, options) {
|
2383
|
+
umd_requireName(options);
|
2204
2384
|
|
2205
|
-
mod.imports.forEach(
|
2206
|
-
mod.body.remove(
|
2385
|
+
mod.imports.forEach(function (x) {
|
2386
|
+
mod.body.remove(x.start, x.next);
|
2207
2387
|
});
|
2208
2388
|
|
2209
|
-
var intro =
|
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
|
-
|
2399
|
+
utils_transformExportDeclaration(mod.exports[0], mod.body);
|
2220
2400
|
|
2221
|
-
mod.body.indent().prepend(
|
2401
|
+
mod.body.indent().prepend(intro).trimLines().append('\n\n}));');
|
2222
2402
|
|
2223
|
-
return
|
2403
|
+
return utils_packageResult(mod, mod.body, options, 'toUmd');
|
2224
2404
|
}
|
2225
2405
|
|
2226
2406
|
var defaultsMode = {
|
2227
|
-
amd:
|
2228
|
-
cjs:
|
2229
|
-
umd:
|
2407
|
+
amd: defaultsMode_amd,
|
2408
|
+
cjs: defaultsMode_cjs,
|
2409
|
+
umd: defaultsMode_umd
|
2230
2410
|
};
|
2231
2411
|
|
2232
|
-
|
2412
|
+
var utils_gatherImports = gatherImports;
|
2413
|
+
|
2414
|
+
function gatherImports(imports) {
|
2233
2415
|
var chains = {};
|
2234
2416
|
var identifierReplacements = {};
|
2235
2417
|
|
2236
|
-
imports.forEach(
|
2237
|
-
x.specifiers.forEach(
|
2238
|
-
if (
|
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 + (
|
2425
|
+
var replacement = x.name + (s.isDefault ? "['default']" : "." + s.name);
|
2244
2426
|
|
2245
|
-
if (
|
2246
|
-
identifierReplacements[
|
2427
|
+
if (!x.passthrough) {
|
2428
|
+
identifierReplacements[name] = replacement;
|
2247
2429
|
}
|
2248
2430
|
|
2249
|
-
chains[
|
2431
|
+
chains[name] = replacement;
|
2250
2432
|
});
|
2251
2433
|
});
|
2252
2434
|
|
2253
|
-
return [
|
2435
|
+
return [chains, identifierReplacements];
|
2254
2436
|
}
|
2255
2437
|
|
2256
|
-
|
2438
|
+
var utils_getExportNames = getExportNames;
|
2439
|
+
|
2440
|
+
function getExportNames(exports) {
|
2257
2441
|
var result = {};
|
2258
2442
|
|
2259
|
-
exports.forEach(
|
2260
|
-
if (
|
2443
|
+
exports.forEach(function (x) {
|
2444
|
+
if (x.isDefault) return;
|
2261
2445
|
|
2262
|
-
if (
|
2263
|
-
result[
|
2446
|
+
if (x.hasDeclaration) {
|
2447
|
+
result[x.name] = x.name;
|
2264
2448
|
return;
|
2265
2449
|
}
|
2266
2450
|
|
2267
|
-
x.specifiers.forEach(
|
2268
|
-
result[
|
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
|
-
|
2276
|
-
|
2277
|
-
|
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
|
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(
|
2475
|
+
identifierReplacements.exports = deconflict('exports', mod.ast._declared);
|
2283
2476
|
|
2284
|
-
|
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(
|
2288
|
-
body.remove(
|
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 (
|
2293
|
-
body.prepend(
|
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(
|
2298
|
-
if (
|
2299
|
-
if (
|
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(
|
2302
|
-
body.insert(
|
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(
|
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':
|
2313
|
-
case 'namedClass':
|
2314
|
-
|
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':
|
2318
|
-
|
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(
|
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(
|
2332
|
-
var exportAs = exportNames[
|
2524
|
+
Object.keys(exportNames).forEach(function (name) {
|
2525
|
+
var exportAs = exportNames[name];
|
2333
2526
|
|
2334
|
-
if (
|
2527
|
+
if (chains.hasOwnProperty(name)) {
|
2335
2528
|
// special case - a binding from another module
|
2336
|
-
if (
|
2337
|
-
earlyExports.push(
|
2529
|
+
if (!options._evilES3SafeReExports) {
|
2530
|
+
earlyExports.push('Object.defineProperty(exports, \'' + exportAs + '\', { enumerable: true, get: function () { return ' + chains[name] + '; }});');
|
2338
2531
|
} else {
|
2339
|
-
lateExports.push(
|
2532
|
+
lateExports.push('exports.' + exportAs + ' = ' + chains[name] + ';');
|
2340
2533
|
}
|
2341
|
-
} else if (
|
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(
|
2537
|
+
earlyExports.push('exports.' + exportAs + ' = ' + name + ';');
|
2345
2538
|
} else {
|
2346
|
-
lateExports.push(
|
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 (
|
2352
|
-
body.trim().prepend(
|
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 (
|
2357
|
-
body.trim().append(
|
2549
|
+
if (lateExports.length) {
|
2550
|
+
body.trim().append('\n\n' + lateExports.join('\n'));
|
2358
2551
|
}
|
2359
2552
|
|
2360
|
-
if (
|
2361
|
-
body.indent().prepend(
|
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
|
2366
|
-
while (
|
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
|
-
|
2374
|
-
|
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
|
-
|
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
|
2583
|
+
return utils_packageResult(mod, mod.body, options, 'toAmd');
|
2390
2584
|
}
|
2391
2585
|
|
2392
|
-
|
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(
|
2397
|
-
if (
|
2398
|
-
seen[
|
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 (
|
2401
|
-
return
|
2595
|
+
if (x.isEmpty) {
|
2596
|
+
return '' + req(x.path) + ';';
|
2402
2597
|
}
|
2403
2598
|
|
2404
|
-
return
|
2599
|
+
return 'var ' + x.name + ' = ' + req(x.path) + ';';
|
2405
2600
|
}
|
2406
|
-
}).filter(
|
2601
|
+
}).filter(Boolean).join('\n');
|
2407
2602
|
|
2408
|
-
|
2603
|
+
utils_transformBody(mod, mod.body, {
|
2409
2604
|
header: importBlock,
|
2410
2605
|
_evilES3SafeReExports: options._evilES3SafeReExports
|
2411
2606
|
});
|
2412
2607
|
|
2413
|
-
if (
|
2414
|
-
mod.body.prepend(
|
2608
|
+
if (options.useStrict !== false) {
|
2609
|
+
mod.body.prepend('\'use strict\';\n\n').trimLines();
|
2415
2610
|
}
|
2416
2611
|
|
2417
|
-
return
|
2612
|
+
return utils_packageResult(mod, mod.body, options, 'toCjs');
|
2418
2613
|
}
|
2419
2614
|
|
2420
|
-
|
2421
|
-
|
2615
|
+
var strictMode_umd = strictMode_umd__umd;
|
2616
|
+
function strictMode_umd__umd(mod, options) {
|
2617
|
+
umd_requireName(options);
|
2422
2618
|
|
2423
|
-
var intro =
|
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
|
-
|
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
|
2636
|
+
return utils_packageResult(mod, mod.body, options, 'toUmd');
|
2441
2637
|
}
|
2442
2638
|
|
2443
2639
|
var strictMode = {
|
2444
|
-
amd:
|
2445
|
-
cjs:
|
2446
|
-
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
|
-
|
2456
|
-
|
2457
|
-
|
2458
|
-
|
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 =
|
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(
|
2469
|
-
return
|
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
|
-
|
2473
|
-
|
2474
|
-
|
2475
|
-
|
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 (
|
2478
|
-
bundle.body.prepend(
|
2675
|
+
if (importBlock) {
|
2676
|
+
bundle.body.prepend(importBlock + '\n\n');
|
2479
2677
|
}
|
2480
2678
|
|
2481
|
-
var defaultName = bundle.entryModule.identifierReplacements
|
2482
|
-
if (
|
2483
|
-
bundle.body.append(
|
2679
|
+
var defaultName = bundle.entryModule.identifierReplacements['default'];
|
2680
|
+
if (defaultName) {
|
2681
|
+
bundle.body.append('\n\nmodule.exports = ' + defaultName + ';');
|
2484
2682
|
}
|
2485
2683
|
|
2486
|
-
if (
|
2487
|
-
bundle.body.prepend(
|
2684
|
+
if (options.useStrict !== false) {
|
2685
|
+
bundle.body.prepend('\'use strict\';\n\n').trimLines();
|
2488
2686
|
}
|
2489
2687
|
|
2490
|
-
return
|
2688
|
+
return utils_packageResult(bundle, bundle.body, options, 'toCjs', true);
|
2491
2689
|
}
|
2492
2690
|
|
2493
|
-
|
2494
|
-
|
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 =
|
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 (
|
2508
|
-
bundle.body.append(
|
2706
|
+
if (entry.defaultExport) {
|
2707
|
+
bundle.body.append('\n\nreturn ' + entry.identifierReplacements['default'] + ';');
|
2509
2708
|
}
|
2510
2709
|
|
2511
|
-
bundle.body.indent().prepend(
|
2710
|
+
bundle.body.indent().prepend(intro).trimLines().append('\n\n}));');
|
2512
2711
|
|
2513
|
-
return
|
2712
|
+
return utils_packageResult(bundle, bundle.body, options, 'toUmd', true);
|
2514
2713
|
}
|
2515
2714
|
|
2516
2715
|
var builders_defaultsMode = {
|
2517
|
-
amd:
|
2518
|
-
cjs:
|
2519
|
-
umd:
|
2716
|
+
amd: builders_defaultsMode_amd,
|
2717
|
+
cjs: builders_defaultsMode_cjs,
|
2718
|
+
umd: builders_defaultsMode_umd
|
2520
2719
|
};
|
2521
2720
|
|
2522
|
-
|
2523
|
-
|
2524
|
-
|
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
|
-
|
2528
|
-
|
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 (
|
2532
|
-
var defaultsBlock = externalDefaults.map(
|
2734
|
+
if (externalDefaults.length) {
|
2735
|
+
var defaultsBlock = externalDefaults.map(function (x) {
|
2533
2736
|
// Case 1: default is used, and named is not
|
2534
|
-
if (
|
2535
|
-
return
|
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
|
2540
|
-
}).join(
|
2742
|
+
return 'var ' + x.name + '__default = (\'default\' in ' + x.name + ' ? ' + x.name + '[\'default\'] : ' + x.name + ');';
|
2743
|
+
}).join('\n');
|
2541
2744
|
|
2542
|
-
bundle.body.prepend(
|
2745
|
+
bundle.body.prepend(defaultsBlock + '\n\n');
|
2543
2746
|
}
|
2544
2747
|
|
2545
|
-
if (
|
2546
|
-
bundle.body.append(
|
2748
|
+
if (entry.defaultExport) {
|
2749
|
+
bundle.body.append('\n\n' + utils_getExportBlock(entry));
|
2547
2750
|
}
|
2548
2751
|
|
2549
|
-
var intro =
|
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(
|
2558
|
-
return
|
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
|
2764
|
+
function builders_strictMode_amd__needsDefault(externalModule) {
|
2562
2765
|
return externalModule.needsDefault;
|
2563
2766
|
}
|
2564
2767
|
|
2565
|
-
|
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(
|
2569
|
-
var statement =
|
2772
|
+
var importBlock = bundle.externalModules.map(function (x) {
|
2773
|
+
var statement = 'var ' + x.name + ' = ' + req(x.id) + ';';
|
2570
2774
|
|
2571
|
-
if (
|
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(
|
2780
|
+
}).join('\n');
|
2579
2781
|
|
2580
|
-
if (
|
2581
|
-
bundle.body.prepend(
|
2782
|
+
if (importBlock) {
|
2783
|
+
bundle.body.prepend(importBlock + '\n\n');
|
2582
2784
|
}
|
2583
2785
|
|
2584
|
-
if (
|
2585
|
-
bundle.body.append(
|
2786
|
+
if (entry.defaultExport) {
|
2787
|
+
bundle.body.append('\n\n' + utils_getExportBlock(entry));
|
2586
2788
|
}
|
2587
2789
|
|
2588
|
-
if (
|
2589
|
-
bundle.body.prepend(
|
2790
|
+
if (options.useStrict !== false) {
|
2791
|
+
bundle.body.prepend('\'use strict\';\n\n').trimLines();
|
2590
2792
|
}
|
2591
2793
|
|
2592
|
-
return
|
2794
|
+
return utils_packageResult(bundle, bundle.body, options, 'toCjs', true);
|
2593
2795
|
}
|
2594
2796
|
|
2595
|
-
|
2596
|
-
|
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 =
|
2804
|
+
var intro = umd_umdIntro({
|
2601
2805
|
hasExports: entry.exports.length > 0,
|
2602
2806
|
imports: bundle.externalModules,
|
2603
|
-
externalDefaults: bundle.externalModules.filter(
|
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 (
|
2612
|
-
bundle.body.append(
|
2815
|
+
if (entry.defaultExport) {
|
2816
|
+
bundle.body.append('\n\n' + utils_getExportBlock(entry));
|
2613
2817
|
}
|
2614
2818
|
|
2615
|
-
bundle.body.indent().prepend(
|
2819
|
+
bundle.body.indent().prepend(intro).trimLines().append('\n\n}));');
|
2616
2820
|
|
2617
|
-
return
|
2821
|
+
return utils_packageResult(bundle, bundle.body, options, 'toUmd', true);
|
2618
2822
|
}
|
2619
2823
|
|
2620
|
-
function builders_strictMode_umd__needsDefault
|
2824
|
+
function builders_strictMode_umd__needsDefault(externalModule) {
|
2621
2825
|
return externalModule.needsDefault;
|
2622
2826
|
}
|
2623
2827
|
|
2624
2828
|
var builders_strictMode = {
|
2625
|
-
amd:
|
2626
|
-
cjs:
|
2627
|
-
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
|
-
|
2840
|
+
var builders_concat = concat;
|
2841
|
+
function concat(bundle, options) {
|
2637
2842
|
// This bundle must be self-contained - no imports or exports
|
2638
|
-
if (
|
2639
|
-
throw new Error(
|
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 : (
|
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 (
|
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(
|
2860
|
+
bundle.body.trimLines().indent(indent).prepend(intro).append(outro);
|
2654
2861
|
|
2655
|
-
return
|
2862
|
+
return utils_packageResult(bundle, bundle.body, options, 'toString', true);
|
2656
2863
|
}
|
2657
2864
|
|
2658
|
-
var
|
2659
|
-
var
|
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
|
-
|
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 (
|
2878
|
+
if ('defaultOnly' in options && !alreadyWarned) {
|
2670
2879
|
// TODO link to a wiki page explaining this, or something
|
2671
|
-
console.log(
|
2672
|
-
|
2880
|
+
console.log(deprecateMessage);
|
2881
|
+
alreadyWarned = true;
|
2673
2882
|
}
|
2674
2883
|
|
2675
|
-
if (
|
2676
|
-
throw new Error(
|
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 (
|
2890
|
+
if (!options.strict) {
|
2682
2891
|
// ensure there are no named imports/exports. TODO link to a wiki page...
|
2683
|
-
if (
|
2684
|
-
throw new Error(
|
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[
|
2896
|
+
builder = moduleBuilders.defaultsMode[format];
|
2688
2897
|
} else {
|
2689
|
-
builder = moduleBuilders.strictMode[
|
2898
|
+
builder = moduleBuilders.strictMode[format];
|
2690
2899
|
}
|
2691
2900
|
|
2692
|
-
return builder(
|
2901
|
+
return builder(mod, options);
|
2693
2902
|
};
|
2694
2903
|
}
|
2695
2904
|
|
2696
|
-
var
|
2697
|
-
|
2698
|
-
|
2699
|
-
|
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
|
-
|
2702
|
-
|
2703
|
-
|
2704
|
-
|
2705
|
-
|
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
|
-
|
2708
|
-
|
2709
|
-
|
2925
|
+
concat: function (options) {
|
2926
|
+
return builders_concat(bundle, options || {});
|
2927
|
+
}
|
2928
|
+
};
|
2710
2929
|
|
2711
|
-
|
2712
|
-
};
|
2930
|
+
function transpile(format) {
|
2931
|
+
var options = arguments[1] === undefined ? {} : arguments[1];
|
2713
2932
|
|
2714
|
-
|
2715
|
-
|
2716
|
-
|
2717
|
-
|
2718
|
-
|
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
|
-
|
2939
|
+
var builder = undefined;
|
2722
2940
|
|
2723
|
-
|
2724
|
-
|
2725
|
-
|
2726
|
-
|
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
|
-
|
2730
|
-
|
2731
|
-
|
2732
|
-
|
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
|
-
|
2738
|
-
|
2739
|
-
|
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
|
-
|
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
|
-
|
2757
|
-
|
2758
|
-
}
|
2965
|
+
function flattenExports(exports) {
|
2966
|
+
var flattened = [];
|
2759
2967
|
|
2760
|
-
|
2761
|
-
|
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
|
-
|
2769
|
-
|
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
|