browser-sync
Advanced tools
Comparing version 0.7.0 to 0.7.1
@@ -8,3 +8,4 @@ var browserSync = require("./lib/index"); | ||
baseDir: "test/fixtures" | ||
} | ||
}, | ||
open: false | ||
}; | ||
@@ -11,0 +12,0 @@ |
"use strict"; | ||
var serverModule = require("./server"); | ||
var services = require("./services"); | ||
var socket = require("./sockets"); | ||
var logger = require("./logger"); | ||
var config = require("./config"); | ||
var utils = require("./utils").utils; | ||
var fileWatcher = require("./file-watcher"); | ||
var serverModule = require("./server"); | ||
var services = require("./services"); | ||
var socket = require("./sockets"); | ||
var logger = require("./logger"); | ||
var config = require("./config"); | ||
var utils = require("./utils").utils; | ||
var fileWatcher = require("./file-watcher"); | ||
var bsClient = require("browser-sync-client"); | ||
var _ = require("lodash"); | ||
var filePath = require("path"); | ||
var events = require("events"); | ||
var bsControlPanel = require("browser-sync-control-panel"); | ||
var bsClient = require("browser-sync-client"); | ||
var _ = require("lodash"); | ||
var filePath = require("path"); | ||
var events = require("events"); | ||
@@ -20,3 +21,4 @@ var defaultPlugins = { | ||
"plugin:socket": socket.plugin(), | ||
"plugin:logger": logger.plugin() | ||
"plugin:logger": logger.plugin(), | ||
"plugin:controlpanel": bsControlPanel.plugin() | ||
}; | ||
@@ -80,4 +82,3 @@ | ||
BrowserSync.prototype.getPlugin = function (name) { | ||
var plugin = this.plugins["plugin:" + name]; | ||
return this.plugins["plugin:" + name]; | ||
return this.plugins["plugin:" + name] || false; | ||
}; | ||
@@ -84,0 +85,0 @@ |
@@ -22,3 +22,3 @@ "use strict"; | ||
*/ | ||
_getDefaultConfigFile: function () { | ||
getDefaultConfigFile: function () { | ||
var defaultPath = process.cwd() + config.configFile; | ||
@@ -25,0 +25,0 @@ return this._getConfigFile(defaultPath); |
@@ -60,14 +60,46 @@ "use strict"; | ||
/** | ||
* Handle command-line usage with 'start' | ||
* @param args | ||
* @param cb | ||
*/ | ||
module.exports.startFromCommandLine = function (args, cb) { | ||
var options = {}; | ||
var userConfig; | ||
// First look for provided --config option | ||
if (args.config) { | ||
userConfig = info._getConfigFile(args.config); | ||
} else { | ||
userConfig = info.getDefaultConfigFile(); | ||
} | ||
if (userConfig) { | ||
options = _.merge(defaultConfig, userConfig); | ||
options = mergeOptions(defaultConfig, options, allowedOptions); | ||
} else { | ||
options = mergeOptions(defaultConfig, args, allowedOptions); | ||
options.files = cliOptions._mergeFilesOption(args.files, options.exclude); | ||
} | ||
cb(null, { | ||
files: options.files || [], | ||
config: options | ||
}); | ||
}; | ||
/** | ||
* @param {String} version | ||
* @param {Object} args | ||
* @param {Object} args - optimist object | ||
* @param {Object} argv - process.argv | ||
* @param {Function} cb | ||
*/ | ||
module.exports.parse = function (version, args, cb) { | ||
module.exports.parse = function (version, args, argv, cb) { | ||
program | ||
.version(version) | ||
.option("--files", "File paths to watch") | ||
.option("--server", "Run a Local server (uses your cwd as the web root)") | ||
.option("--proxy", "Proxy an existing server") | ||
.option("--files", "File paths to watch") | ||
.option("--no-comments", "Don't add comments to the config file") | ||
.option("--config", "Specify a path to a bs-config.js file") | ||
.option("--host", "Specify a hostname to use"); | ||
@@ -85,24 +117,6 @@ | ||
.description("Start Browser Sync") | ||
.action(function() { | ||
.action(exports.startFromCommandLine.bind(null, args, cb)); | ||
var options; | ||
var userConfig = info._getDefaultConfigFile(); | ||
if (userConfig) { | ||
options = _.merge(defaultConfig, userConfig); | ||
options = mergeOptions(defaultConfig, options, allowedOptions); | ||
} else { | ||
options = mergeOptions(defaultConfig, args, allowedOptions); | ||
options.files = cliOptions._mergeFilesOption(args.files, options.exclude); | ||
} | ||
cb(null, { | ||
files: options.files, | ||
config: options | ||
}); | ||
}); | ||
program.parse(process.argv); | ||
program.parse(argv); | ||
}; | ||
@@ -5,3 +5,2 @@ "use strict"; | ||
var config = require("./config"); | ||
var snippetUtils = require("./snippet").utils; | ||
@@ -13,8 +12,8 @@ var connect = require("connect"); | ||
* Launch the server for serving the client JS plus static files | ||
* @param {String} scriptTags | ||
* @param {Object} options | ||
* @param {Function} scripts | ||
* @param {{middleware: Function, baseDir: String}} controlPanel | ||
* @returns {http.Server} | ||
*/ | ||
module.exports.launchControlPanel = function (scriptTags, options, scripts) { | ||
module.exports.launchControlPanel = function (options, scripts, controlPanel) { | ||
@@ -26,7 +25,10 @@ var clientScripts = messages.clientScript(options, true); | ||
.use(clientScripts.versioned, scripts) | ||
.use(clientScripts.path, scripts) | ||
.use(snippetUtils.getSnippetMiddleware(scriptTags)) | ||
.use(connect.static(config.controlPanel.baseDir)); | ||
.use(clientScripts.path, scripts); | ||
if (controlPanel) { | ||
app.use(controlPanel.middleware); | ||
app.use(connect.static(controlPanel.baseDir)); | ||
} | ||
return http.createServer(app); | ||
}; | ||
}; |
@@ -13,3 +13,5 @@ #! /usr/bin/env node | ||
var argv = require("optimist").argv; | ||
var args = require("optimist").argv; | ||
var argv = process.argv; | ||
var _ = require("lodash"); | ||
@@ -33,3 +35,3 @@ | ||
if (require.main === module) { | ||
init.parse(pjson.version, argv, function (err, data) { | ||
init.parse(pjson.version, args, argv, function (err, data) { | ||
if (err) { | ||
@@ -36,0 +38,0 @@ utils.fail(err, {}, true); |
@@ -109,5 +109,7 @@ "use strict"; | ||
var template = "<script src='{: socket :}'></script>\n"; | ||
template += "<script>{: connector :}</script>\n"; | ||
template += "<script src='{: custom :}'></script>\n"; | ||
var template = [ | ||
"<script src='{: socket :}'></script>", | ||
"<script>{: connector :}</script>", | ||
"<script src='{: custom :}'></script>" | ||
]; | ||
@@ -117,4 +119,4 @@ var socket = this._makeUrl(hostIp, ports.socket) + config.socketIoScript; | ||
if (env && env === "controlPanel") { | ||
custom = this._makeUrl(hostIp, ports.controlPanel) + config.controlPanel.jsFile; | ||
if (env === "controlPanel") { | ||
template.pop(); | ||
} | ||
@@ -128,3 +130,3 @@ | ||
return compile(template, params); | ||
return compile(template.join("\n") + "\n", params); | ||
}, | ||
@@ -131,0 +133,0 @@ host: { |
@@ -127,3 +127,3 @@ "use strict"; | ||
if (res.statusCode === 302) { | ||
res.headers.location = res.headers.location.replace(proxyOptions.host, host + ":" + ports.proxy); | ||
res.headers.location = utils.handleRedirect(res.url, options, host, ports.proxy) | ||
} | ||
@@ -130,0 +130,0 @@ utils.removeHeaders(res.headers, ["content-length", "content-encoding"]); |
@@ -7,2 +7,3 @@ "use strict"; | ||
var utils = require("./utils").utils; | ||
var snippetUtils = require("./snippet").utils; | ||
@@ -14,3 +15,2 @@ module.exports.init = function (context) { | ||
var servers; | ||
var msg; | ||
@@ -35,5 +35,15 @@ this.io = this.getPlugin("socket")(ports.socket, this.clientEvents, options, this.events); | ||
// Always Launch the control panel | ||
var scriptTags = messages.scriptTags(options.host, ports, options, "controlPanel"); | ||
controlPanel.launchControlPanel(scriptTags, options, this.getPlugin("client:script")).listen(ports.controlPanel); | ||
var snippet = messages.scriptTags(options.host, ports, options, "controlPanel"); | ||
var cpPlugin = this.getPlugin("controlpanel"); | ||
var cp; | ||
if (cpPlugin) { | ||
cp = cpPlugin(options, snippet, this); | ||
} | ||
controlPanel | ||
.launchControlPanel(options, this.getPlugin("client:script"), cp) | ||
.listen(ports.controlPanel); | ||
this.options = options; | ||
@@ -40,0 +50,0 @@ |
{ | ||
"name": "browser-sync", | ||
"description": "Live CSS Reload & Browser Syncing", | ||
"version": "0.7.0", | ||
"version": "0.7.1", | ||
"homepage": "https://github.com/shakyshane/browser-sync", | ||
@@ -45,3 +45,4 @@ "author": { | ||
"browser-sync-client": "0.0.3", | ||
"commander": "~2.1.0" | ||
"commander": "~2.1.0", | ||
"browser-sync-control-panel": "0.0.1" | ||
}, | ||
@@ -48,0 +49,0 @@ "devDependencies": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
1049635
91
2074
4
17
+ Addedbrowser-sync-control-panel@0.0.1(transitive)