前端代码
This commit is contained in:
110
node_modules/browser-sync/dist/internal-events.js
generated
vendored
Normal file
110
node_modules/browser-sync/dist/internal-events.js
generated
vendored
Normal file
@ -0,0 +1,110 @@
|
||||
"use strict";
|
||||
var utils = require("./utils");
|
||||
var fileUtils = require("./file-utils");
|
||||
var Rx = require("rx");
|
||||
var fromEvent = Rx.Observable.fromEvent;
|
||||
var fileHandler = require("./file-event-handler");
|
||||
module.exports = function (bs) {
|
||||
var events = {
|
||||
/**
|
||||
* File reloads
|
||||
* @param data
|
||||
*/
|
||||
"file:reload": function (data) {
|
||||
bs.io.sockets.emit("file:reload", data);
|
||||
},
|
||||
/**
|
||||
* Browser Reloads
|
||||
*/
|
||||
"browser:reload": function () {
|
||||
bs.io.sockets.emit("browser:reload");
|
||||
},
|
||||
/**
|
||||
* Browser Notify
|
||||
* @param data
|
||||
*/
|
||||
"browser:notify": function (data) {
|
||||
bs.io.sockets.emit("browser:notify", data);
|
||||
},
|
||||
/**
|
||||
* Things that happened after the service is running
|
||||
* @param data
|
||||
*/
|
||||
"service:running": function (data) {
|
||||
var mode = bs.options.get("mode");
|
||||
var open = bs.options.get("open");
|
||||
if (mode === "proxy" ||
|
||||
mode === "server" ||
|
||||
open === "ui" ||
|
||||
open === "ui-external") {
|
||||
utils.openBrowser(data.url, bs.options, bs);
|
||||
}
|
||||
// log about any file watching
|
||||
if (bs.watchers) {
|
||||
bs.events.emit("file:watching", bs.watchers);
|
||||
}
|
||||
},
|
||||
/**
|
||||
* Option setting
|
||||
* @param data
|
||||
*/
|
||||
"options:set": function (data) {
|
||||
if (bs.io) {
|
||||
bs.io.sockets.emit("options:set", data);
|
||||
}
|
||||
},
|
||||
/**
|
||||
* Plugin configuration setting
|
||||
* @param data
|
||||
*/
|
||||
"plugins:configure": function (data) {
|
||||
if (data.active) {
|
||||
bs.pluginManager.enablePlugin(data.name);
|
||||
}
|
||||
else {
|
||||
bs.pluginManager.disablePlugin(data.name);
|
||||
}
|
||||
bs.setOption("userPlugins", bs.getUserPlugins());
|
||||
},
|
||||
"plugins:opts": function (data) {
|
||||
if (bs.pluginManager.pluginOptions[data.name]) {
|
||||
bs.pluginManager.pluginOptions[data.name] = data.opts;
|
||||
bs.setOption("userPlugins", bs.getUserPlugins());
|
||||
}
|
||||
}
|
||||
};
|
||||
Object.keys(events).forEach(function (event) {
|
||||
bs.events.on(event, events[event]);
|
||||
});
|
||||
var reloader = fileHandler
|
||||
.applyReloadOperators(fromEvent(bs.events, "_browser:reload"), bs.options)
|
||||
.subscribe(function () {
|
||||
bs.events.emit("browser:reload");
|
||||
});
|
||||
var coreNamespacedWatchers = fromEvent(bs.events, "file:changed")
|
||||
.filter(function () {
|
||||
return bs.options.get("codeSync");
|
||||
})
|
||||
.filter(function (x) {
|
||||
return x.namespace === "core";
|
||||
});
|
||||
var handler = fileHandler
|
||||
.fileChanges(coreNamespacedWatchers, bs.options)
|
||||
.subscribe(function (x) {
|
||||
if (x.type === "reload") {
|
||||
bs.events.emit("browser:reload", x);
|
||||
}
|
||||
if (x.type === "inject") {
|
||||
x.files.forEach(function (data) {
|
||||
if (!bs.paused && data.namespace === "core") {
|
||||
bs.events.emit("file:reload", fileUtils.getFileInfo(data, bs.options));
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
bs.registerCleanupTask(function () {
|
||||
handler.dispose();
|
||||
reloader.dispose();
|
||||
});
|
||||
};
|
||||
//# sourceMappingURL=internal-events.js.map
|
Reference in New Issue
Block a user