| 
									
										
										
										
											2014-03-02 03:07:42 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 	MIT License http://www.opensource.org/licenses/mit-license.php
 | 
					
						
							|  |  |  | 	Author Tobias Koppers @sokra | 
					
						
							|  |  |  | */ | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | "use strict"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const Module = require("./Module"); | 
					
						
							| 
									
										
										
										
											2018-03-22 19:05:58 +08:00
										 |  |  | const { OriginalSource, RawSource } = require("webpack-sources"); | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | module.exports = class RawModule extends Module { | 
					
						
							|  |  |  | 	constructor(source, identifier, readableIdentifier) { | 
					
						
							| 
									
										
										
										
											2018-01-31 04:40:44 +08:00
										 |  |  | 		super("javascript/dynamic", null); | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | 		this.sourceStr = source; | 
					
						
							|  |  |  | 		this.identifierStr = identifier || this.sourceStr; | 
					
						
							|  |  |  | 		this.readableIdentifierStr = readableIdentifier || this.identifierStr; | 
					
						
							|  |  |  | 		this.built = false; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	identifier() { | 
					
						
							|  |  |  | 		return this.identifierStr; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	size() { | 
					
						
							|  |  |  | 		return this.sourceStr.length; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	readableIdentifier(requestShortener) { | 
					
						
							|  |  |  | 		return requestShortener.shorten(this.readableIdentifierStr); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	needRebuild() { | 
					
						
							|  |  |  | 		return false; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	build(options, compilations, resolver, fs, callback) { | 
					
						
							| 
									
										
										
										
											2017-11-06 20:02:35 +08:00
										 |  |  | 		this.built = true; | 
					
						
							| 
									
										
										
										
											2017-12-06 19:09:17 +08:00
										 |  |  | 		this.buildMeta = {}; | 
					
						
							|  |  |  | 		this.buildInfo = { | 
					
						
							|  |  |  | 			cacheable: true | 
					
						
							|  |  |  | 		}; | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | 		callback(); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	source() { | 
					
						
							| 
									
										
										
										
											2018-02-25 09:00:20 +08:00
										 |  |  | 		if (this.useSourceMap) | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | 			return new OriginalSource(this.sourceStr, this.identifier()); | 
					
						
							| 
									
										
										
										
											2018-02-25 09:00:20 +08:00
										 |  |  | 		else return new RawSource(this.sourceStr); | 
					
						
							| 
									
										
										
										
											2017-01-06 22:23:29 +08:00
										 |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-19 01:25:03 +08:00
										 |  |  | 	updateHash(hash) { | 
					
						
							|  |  |  | 		hash.update(this.sourceStr); | 
					
						
							|  |  |  | 		super.updateHash(hash); | 
					
						
							|  |  |  | 	} | 
					
						
							| 
									
										
										
										
											2017-01-11 17:51:58 +08:00
										 |  |  | }; |