aboutsummaryrefslogtreecommitdiff
path: root/node_modules/webpack/lib/node/NodeMainTemplateAsync.runtime.js
blob: 673cfafd06d78f3f19b1953f4ddfd11ee04bd1d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
	MIT License http://www.opensource.org/licenses/mit-license.php
	Author Tobias Koppers @sokra
*/
/*global installedChunks $hotChunkFilename$ $require$ hotAddUpdateChunk $hotMainFilename$ */
module.exports = function() {
	function hotDownloadUpdateChunk(chunkId) { // eslint-disable-line no-unused-vars
		var filename = require("path").join(__dirname, $hotChunkFilename$);
		require("fs").readFile(filename, "utf-8", function(err, content) {
			if(err) {
				if($require$.onError)
					return $require$.oe(err);
				else
					throw err;
			}
			var chunk = {};
			require("vm").runInThisContext("(function(exports) {" + content + "\n})", filename)(chunk);
			hotAddUpdateChunk(chunk.id, chunk.modules);
		});
	}

	function hotDownloadManifest() { // eslint-disable-line no-unused-vars
		var filename = require("path").join(__dirname, $hotMainFilename$);
		return new Promise(function(resolve, reject) {
			require("fs").readFile(filename, "utf-8", function(err, content) {
				if(err) return resolve();
				try {
					var update = JSON.parse(content);
				} catch(e) {
					return reject(e);
				}
				resolve(update);
			});
		});
	}

	function hotDisposeChunk(chunkId) { //eslint-disable-line no-unused-vars
		delete installedChunks[chunkId];
	}
};