2
0

dev.js 853 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. const debug = require('debug')('crowi:crowi:dev');
  2. const path = require('path');
  3. const webpack = require('webpack');
  4. const helpers = require('./helpers')
  5. class CrowiDev {
  6. /**
  7. * Creates an instance of CrowiDev.
  8. * @param {Crowi} crowi
  9. * @param {any} server http server
  10. * @param {any} app express
  11. *
  12. * @memberOf CrowiDev
  13. */
  14. constructor(crowi, server, app) {
  15. this.crowi = crowi;
  16. this.server = server;
  17. this.app = app;
  18. }
  19. setupTools() {
  20. this.setupEasyLiveReload();
  21. }
  22. setupEasyLiveReload() {
  23. const livereload = require('easy-livereload');
  24. this.app.use(livereload({
  25. watchDirs: [
  26. path.join(this.crowi.viewsDir),
  27. path.join(this.crowi.publicDir),
  28. ],
  29. checkFunc: function(x) {
  30. return /\.(html|css|js)$/.test(x);
  31. },
  32. }));
  33. }
  34. }
  35. module.exports = CrowiDev