watch-files.js 728 B

12345678910111213141516171819202122232425
  1. // Copyright (c) Jupyter Development Team.
  2. // Distributed under the terms of the Modified BSD License.
  3. var fs = require('fs-extra');
  4. var path = require('path');
  5. var watch = require('watch');
  6. fs.ensureDirSync('lib');
  7. function handleChanged(f, curr, prev) {
  8. var name = path.basename(f);
  9. var package = f.split(path.sep)[1];
  10. var target = path.join('..', package, 'lib', name);
  11. target = path.resolve(target);
  12. fs.copySync(f, target);
  13. }
  14. watch.createMonitor('lib', function (monitor) {
  15. monitor.on("created", function (f, curr, prev) {
  16. watch.createMonitor(f, function (submonitor) {
  17. submonitor.on("changed", handleChanged);
  18. });
  19. });
  20. monitor.on("changed", handleChanged);
  21. })