123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- "use strict";
- var _ = require("./lodash.custom");
- var Immutable = require("immutable");
- var snippetUtils = require("./snippet").utils;
- module.exports = {
- /**
- *
- * @this {BrowserSync}
- * @returns {String}
- */
- "client:js": function (hooks, data) {
- var js = snippetUtils.getClientJs(data.port, data.options);
- return hooks.reduce(function (acc, hook) {
- if (typeof hook === "function") {
- return acc.concat(hook);
- }
- return acc.concat(String(hook));
- }, [js]);
- },
- /**
- * @this {BrowserSync}
- * @returns {Array}
- */
- "client:events": function (hooks, clientEvents) {
- hooks.forEach(function (hook) {
- var result = hook(this);
- if (Array.isArray(result)) {
- clientEvents = _.union(clientEvents, result);
- }
- else {
- clientEvents.push(result);
- }
- }, this);
- return clientEvents;
- },
- /**
- * @returns {Array}
- */
- "server:middleware": function (hooks, initial) {
- initial = initial || [];
- _.each(hooks, function (hook) {
- var result = hook(this);
- if (Array.isArray(result)) {
- result.forEach(function (res) {
- if (_.isFunction(res)) {
- initial = initial.push(res);
- }
- });
- }
- else {
- if (_.isFunction(result)) {
- initial = initial.push(result);
- }
- }
- }, this);
- return initial;
- },
- /**
- * @param {Array} hooks
- * @param {Map|List} initial
- * @param pluginOptions
- * @returns {any}
- */
- "files:watch": function (hooks, initial, pluginOptions) {
- var opts;
- if (pluginOptions) {
- opts = Immutable.fromJS(pluginOptions);
- opts.forEach(function (value, key) {
- if (!value) {
- return;
- }
- var files = value.get("files");
- if (files) {
- var fileArg = require("./cli/cli-options").makeFilesArg(files);
- if (fileArg) {
- initial = initial.set(key, Immutable.fromJS(fileArg));
- }
- }
- });
- }
- return initial;
- }
- };
- //# sourceMappingURL=hooks.js.map
|