2013-02-26 19:36:34 +08:00
/ *
MIT License http : //www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @ sokra
* /
var ModuleDependency = require ( "./ModuleDependency" ) ;
function LabeledModuleDependency ( request , range ) {
ModuleDependency . call ( this , request ) ;
this . Class = LabeledModuleDependency ;
this . range = range ;
}
module . exports = LabeledModuleDependency ;
LabeledModuleDependency . prototype = Object . create ( ModuleDependency . prototype ) ;
LabeledModuleDependency . prototype . type = "labeled require" ;
LabeledModuleDependency . Template = function LabeledModuleDependencyTemplate ( ) { } ;
LabeledModuleDependency . Template . prototype . apply = function ( dep , source , outputOptions , requestShortener ) {
var comment = "" ;
if ( outputOptions . pathinfo ) comment = "/*! " + requestShortener . shorten ( dep . request ) + " */ " ;
if ( dep . module && dep . module . meta && dep . module . meta . exports ) {
2014-03-03 21:56:17 +08:00
var content = "var __WEBPACK_LABELED_MODULE__" + dep . module . id + " = __webpack_require__(" + comment + dep . module . id + ")" ;
2013-02-26 19:36:34 +08:00
dep . module . meta . exports . forEach ( function ( e ) {
2013-02-26 20:59:28 +08:00
content += ", " + e + " = __WEBPACK_LABELED_MODULE__" + dep . module . id + "." + e ;
2013-02-26 19:36:34 +08:00
} ) ;
content += ";"
} else if ( dep . module ) {
2014-01-24 20:14:59 +08:00
var content = "!(function webpackMissingModuleMetaInfo() { throw new Error(" + JSON . stringify ( "Module cannot be imported because no meta info about exports is availible \"" + dep . request + "\"" ) + "); }())" ;
2013-02-26 19:36:34 +08:00
} else {
2014-01-24 20:14:59 +08:00
var content = "!(function webpackMissingModule() { throw new Error(" + JSON . stringify ( "Cannot find module \"" + dep . request + "\"" ) + "); }())" ;
2013-02-26 19:36:34 +08:00
}
source . replace ( dep . range [ 0 ] , dep . range [ 1 ] - 1 , content ) ;
} ;