diff options
Diffstat (limited to 'node_modules/ts-loader/dist/watch-run.js')
-rw-r--r-- | node_modules/ts-loader/dist/watch-run.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/node_modules/ts-loader/dist/watch-run.js b/node_modules/ts-loader/dist/watch-run.js new file mode 100644 index 000000000..7c96d796b --- /dev/null +++ b/node_modules/ts-loader/dist/watch-run.js @@ -0,0 +1,38 @@ +"use strict"; +var path = require("path"); +var utils = require("./utils"); +var constants = require("./constants"); +/** + * Make function which will manually update changed files + */ +function makeWatchRun(instance) { + var lastTimes = {}; + var startTime = null; + return function (watching, cb) { + var watcher = watching.compiler.watchFileSystem.watcher || + watching.compiler.watchFileSystem.wfs.watcher; + if (null === instance.modifiedFiles) { + instance.modifiedFiles = {}; + } + startTime = startTime || watching.startTime; + var times = watcher.getTimes(); + Object.keys(times) + .filter(function (filePath) { + return times[filePath] > (lastTimes[filePath] || startTime) + && !!filePath.match(constants.tsTsxJsJsxRegex); + }) + .forEach(function (filePath) { + lastTimes[filePath] = times[filePath]; + filePath = path.normalize(filePath); + var file = instance.files[filePath]; + if (file) { + file.text = utils.readFile(filePath) || ''; + file.version++; + instance.version++; + instance.modifiedFiles[filePath] = file; + } + }); + cb(); + }; +} +module.exports = makeWatchRun; |