public-utils.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. "use strict";
  2. var _ = require("../lodash.custom");
  3. module.exports = {
  4. /**
  5. * Emit the internal `file:change` event
  6. * @param {EventEmitter} emitter
  7. * @param {string} path
  8. * @param {boolean} [log]
  9. */
  10. emitChangeEvent: function emitChangeEvent(emitter, path, log) {
  11. emitter.emit("file:changed", {
  12. path: path,
  13. log: log,
  14. namespace: "core",
  15. event: "change"
  16. });
  17. },
  18. /**
  19. * Emit the internal `browser:reload` event
  20. * @param {EventEmitter} emitter
  21. */
  22. emitBrowserReload: function emitChangeEvent(emitter) {
  23. emitter.emit("_browser:reload");
  24. },
  25. /**
  26. * Emit the internal `stream:changed` event
  27. * @param {EventEmitter} emitter
  28. * @param {Array} changed
  29. */
  30. emitStreamChangedEvent: function (emitter, changed) {
  31. emitter.emit("stream:changed", { changed: changed });
  32. },
  33. /**
  34. * This code handles the switch between .reload & .stream
  35. * since 2.6.0
  36. * @param name
  37. * @param args
  38. * @returns {boolean}
  39. */
  40. isStreamArg: function (name, args) {
  41. if (name === "stream") {
  42. return true;
  43. }
  44. if (name !== "reload") {
  45. return false;
  46. }
  47. var firstArg = args[0];
  48. /**
  49. * If here, it's reload with args
  50. */
  51. if (_.isObject(firstArg)) {
  52. if (!Array.isArray(firstArg) && Object.keys(firstArg).length) {
  53. return firstArg.stream === true;
  54. }
  55. }
  56. return false;
  57. }
  58. };
  59. //# sourceMappingURL=public-utils.js.map