/* MIT License http://www.opensource.org/licenses/mit-license.php Author Haijie Xie @hai-x */ "use strict"; const RuntimeGlobals = require("../RuntimeGlobals"); const Template = require("../Template"); /** * @param {string} type unique identifier used for HMR runtime properties * @returns {string} HMR runtime code */ const generateJavascriptHMR = type => Template.getFunctionContent( require("../hmr/JavascriptHotModuleReplacement.runtime") ) .replace(/\$key\$/g, type) .replace(/\$installedChunks\$/g, "installedChunks") .replace(/\$loadUpdateChunk\$/g, "loadUpdateChunk") .replace(/\$moduleCache\$/g, RuntimeGlobals.moduleCache) .replace(/\$moduleFactories\$/g, RuntimeGlobals.moduleFactories) .replace(/\$ensureChunkHandlers\$/g, RuntimeGlobals.ensureChunkHandlers) .replace(/\$hasOwnProperty\$/g, RuntimeGlobals.hasOwnProperty) .replace(/\$hmrModuleData\$/g, RuntimeGlobals.hmrModuleData) .replace( /\$hmrDownloadUpdateHandlers\$/g, RuntimeGlobals.hmrDownloadUpdateHandlers ) .replace( /\$hmrInvalidateModuleHandlers\$/g, RuntimeGlobals.hmrInvalidateModuleHandlers ); module.exports.generateJavascriptHMR = generateJavascriptHMR;