mirror of
https://github.com/twbs/bootstrap.git
synced 2025-02-19 16:54:24 +01:00
Update dependencies.
This commit is contained in:
parent
62a4796268
commit
d35020cee8
4
Gemfile
4
Gemfile
@ -1,9 +1,9 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
group :development, :test do
|
||||
gem 'jekyll', '~> 3.4.3'
|
||||
gem 'jekyll', '~> 3.4.5'
|
||||
gem 'jekyll-redirect-from', '~> 0.12.1'
|
||||
gem 'jekyll-sitemap', '~> 1.1.1'
|
||||
gem 'jekyll-toc', '~> 0.3.0.pre1'
|
||||
gem 'scss_lint', '~> 0.53.0'
|
||||
gem 'scss_lint', '~> 0.54.0'
|
||||
end
|
||||
|
28
Gemfile.lock
28
Gemfile.lock
@ -7,7 +7,7 @@ GEM
|
||||
ffi (1.9.18)
|
||||
ffi (1.9.18-x64-mingw32)
|
||||
forwardable-extended (2.6.0)
|
||||
jekyll (3.4.3)
|
||||
jekyll (3.4.5)
|
||||
addressable (~> 2.4)
|
||||
colorator (~> 1.0)
|
||||
jekyll-sass-converter (~> 1.0)
|
||||
@ -28,26 +28,28 @@ GEM
|
||||
nokogiri (~> 1.6)
|
||||
jekyll-watch (1.5.0)
|
||||
listen (~> 3.0, < 3.1)
|
||||
kramdown (1.13.2)
|
||||
kramdown (1.14.0)
|
||||
liquid (3.0.6)
|
||||
listen (3.0.8)
|
||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||
rb-inotify (~> 0.9, >= 0.9.7)
|
||||
mercenary (0.3.6)
|
||||
mini_portile2 (2.1.0)
|
||||
nokogiri (1.7.2)
|
||||
mini_portile2 (~> 2.1.0)
|
||||
mini_portile2 (2.2.0)
|
||||
nokogiri (1.8.0)
|
||||
mini_portile2 (~> 2.2.0)
|
||||
nokogiri (1.8.0-x64-mingw32)
|
||||
mini_portile2 (~> 2.2.0)
|
||||
pathutil (0.14.0)
|
||||
forwardable-extended (~> 2.6)
|
||||
public_suffix (2.0.5)
|
||||
rake (12.0.0)
|
||||
rb-fsevent (0.9.8)
|
||||
rb-inotify (0.9.8)
|
||||
ffi (>= 0.5.0)
|
||||
rb-fsevent (0.10.2)
|
||||
rb-inotify (0.9.10)
|
||||
ffi (>= 0.5.0, < 2)
|
||||
rouge (1.11.1)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.24)
|
||||
scss_lint (0.53.0)
|
||||
sass (3.4.25)
|
||||
scss_lint (0.54.0)
|
||||
rake (>= 0.9, < 13)
|
||||
sass (~> 3.4.20)
|
||||
|
||||
@ -56,11 +58,11 @@ PLATFORMS
|
||||
x64-mingw32
|
||||
|
||||
DEPENDENCIES
|
||||
jekyll (~> 3.4.3)
|
||||
jekyll (~> 3.4.5)
|
||||
jekyll-redirect-from (~> 0.12.1)
|
||||
jekyll-sitemap (~> 1.1.1)
|
||||
jekyll-toc (~> 0.3.0.pre1)
|
||||
scss_lint (~> 0.53.0)
|
||||
scss_lint (~> 0.54.0)
|
||||
|
||||
BUNDLED WITH
|
||||
1.15.0
|
||||
1.15.1
|
||||
|
6
assets/js/vendor/anchor.min.js
vendored
6
assets/js/vendor/anchor.min.js
vendored
File diff suppressed because one or more lines are too long
4
assets/js/vendor/clipboard.min.js
vendored
4
assets/js/vendor/clipboard.min.js
vendored
File diff suppressed because one or more lines are too long
8164
assets/js/vendor/jquery-slim.min.js
vendored
8164
assets/js/vendor/jquery-slim.min.js
vendored
File diff suppressed because one or more lines are too long
6
js/tests/vendor/qunit.css
vendored
6
js/tests/vendor/qunit.css
vendored
@ -1,12 +1,12 @@
|
||||
/*!
|
||||
* QUnit 2.3.3
|
||||
* QUnit 2.4.0
|
||||
* https://qunitjs.com/
|
||||
*
|
||||
* Copyright jQuery Foundation and other contributors
|
||||
* Released under the MIT license
|
||||
* https://jquery.org/license
|
||||
*
|
||||
* Date: 2017-06-02T14:07Z
|
||||
* Date: 2017-07-08T15:20Z
|
||||
*/
|
||||
|
||||
/** Font Family and Sizes */
|
||||
@ -433,4 +433,4 @@
|
||||
left: -10000px;
|
||||
width: 1000px;
|
||||
height: 1000px;
|
||||
}
|
||||
}
|
||||
|
312
js/tests/vendor/qunit.js
vendored
312
js/tests/vendor/qunit.js
vendored
@ -1,17 +1,17 @@
|
||||
/*!
|
||||
* QUnit 2.3.3
|
||||
* QUnit 2.4.0
|
||||
* https://qunitjs.com/
|
||||
*
|
||||
* Copyright jQuery Foundation and other contributors
|
||||
* Released under the MIT license
|
||||
* https://jquery.org/license
|
||||
*
|
||||
* Date: 2017-06-02T14:07Z
|
||||
* Date: 2017-07-08T15:20Z
|
||||
*/
|
||||
(function (global$1) {
|
||||
'use strict';
|
||||
|
||||
global$1 = 'default' in global$1 ? global$1['default'] : global$1;
|
||||
global$1 = global$1 && 'default' in global$1 ? global$1['default'] : global$1;
|
||||
|
||||
var window = global$1.window;
|
||||
var self$1 = global$1.self;
|
||||
@ -227,10 +227,8 @@
|
||||
case "Function":
|
||||
case "Symbol":
|
||||
return type.toLowerCase();
|
||||
}
|
||||
|
||||
if ((typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object") {
|
||||
return "object";
|
||||
default:
|
||||
return typeof obj === "undefined" ? "undefined" : _typeof(obj);
|
||||
}
|
||||
}
|
||||
|
||||
@ -588,7 +586,13 @@
|
||||
return arguments.length === 2 || innerEquiv.apply(this, [].slice.call(arguments, 1));
|
||||
}
|
||||
|
||||
return innerEquiv;
|
||||
return function () {
|
||||
var result = innerEquiv.apply(undefined, arguments);
|
||||
|
||||
// Release any retained objects
|
||||
pairs.length = 0;
|
||||
return result;
|
||||
};
|
||||
})();
|
||||
|
||||
/**
|
||||
@ -636,7 +640,13 @@
|
||||
tests: [],
|
||||
childModules: [],
|
||||
testsRun: 0,
|
||||
unskippedTestsRun: 0
|
||||
unskippedTestsRun: 0,
|
||||
hooks: {
|
||||
before: [],
|
||||
beforeEach: [],
|
||||
afterEach: [],
|
||||
after: []
|
||||
}
|
||||
},
|
||||
|
||||
callbacks: {},
|
||||
@ -1317,7 +1327,7 @@
|
||||
return TestReport;
|
||||
}();
|
||||
|
||||
var focused = false;
|
||||
var focused$1 = false;
|
||||
|
||||
function Test(settings) {
|
||||
var i, l;
|
||||
@ -1325,12 +1335,30 @@
|
||||
++Test.count;
|
||||
|
||||
this.expected = null;
|
||||
extend(this, settings);
|
||||
this.assertions = [];
|
||||
this.semaphore = 0;
|
||||
this.module = config.currentModule;
|
||||
this.stack = sourceFromStacktrace(3);
|
||||
this.steps = [];
|
||||
this.timeout = undefined;
|
||||
|
||||
// If a module is skipped, all its tests and the tests of the child suites
|
||||
// should be treated as skipped even if they are defined as `only` or `todo`.
|
||||
// As for `todo` module, all its tests will be treated as `todo` except for
|
||||
// tests defined as `skip` which will be left intact.
|
||||
//
|
||||
// So, if a test is defined as `todo` and is inside a skipped module, we should
|
||||
// then treat that test as if was defined as `skip`.
|
||||
if (this.module.skip) {
|
||||
settings.skip = true;
|
||||
settings.todo = false;
|
||||
|
||||
// Skipped tests should be left intact
|
||||
} else if (this.module.todo && !settings.skip) {
|
||||
settings.todo = true;
|
||||
}
|
||||
|
||||
extend(this, settings);
|
||||
|
||||
this.testReport = new TestReport(settings.testName, this.module.suiteReport, {
|
||||
todo: settings.todo,
|
||||
@ -1442,6 +1470,12 @@
|
||||
function runTest(test) {
|
||||
promise = test.callback.call(test.testEnvironment, test.assert);
|
||||
test.resolvePromise(promise);
|
||||
|
||||
// If the test has a "lock" on it, but the timeout is 0, then we push a
|
||||
// failure as the test should be synchronous.
|
||||
if (test.timeout === 0 && test.semaphore !== 0) {
|
||||
pushFailure("Test did not finish synchronously even though assert.timeout( 0 ) was used.", sourceFromStacktrace(2));
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@ -1450,22 +1484,27 @@
|
||||
},
|
||||
|
||||
queueHook: function queueHook(hook, hookName, hookOwner) {
|
||||
var promise,
|
||||
test = this;
|
||||
return function runHook() {
|
||||
var _this = this;
|
||||
|
||||
var callHook = function callHook() {
|
||||
var promise = hook.call(_this.testEnvironment, _this.assert);
|
||||
_this.resolvePromise(promise, hookName);
|
||||
};
|
||||
|
||||
var runHook = function runHook() {
|
||||
if (hookName === "before") {
|
||||
if (hookOwner.unskippedTestsRun !== 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
test.preserveEnvironment = true;
|
||||
_this.preserveEnvironment = true;
|
||||
}
|
||||
|
||||
if (hookName === "after" && hookOwner.unskippedTestsRun !== numberOfUnskippedTests(hookOwner) - 1 && config.queue.length > 2) {
|
||||
return;
|
||||
}
|
||||
|
||||
config.current = test;
|
||||
config.current = _this;
|
||||
if (config.notrycatch) {
|
||||
callHook();
|
||||
return;
|
||||
@ -1473,16 +1512,14 @@
|
||||
try {
|
||||
callHook();
|
||||
} catch (error) {
|
||||
test.pushFailure(hookName + " failed on " + test.testName + ": " + (error.message || error), extractStacktrace(error, 0));
|
||||
}
|
||||
|
||||
function callHook() {
|
||||
promise = hook.call(test.testEnvironment, test.assert);
|
||||
test.resolvePromise(promise, hookName);
|
||||
_this.pushFailure(hookName + " failed on " + _this.testName + ": " + (error.message || error), extractStacktrace(error, 0));
|
||||
}
|
||||
};
|
||||
|
||||
return runHook;
|
||||
},
|
||||
|
||||
|
||||
// Currently only used for module level hooks, can be used to add global level ones
|
||||
hooks: function hooks(handler) {
|
||||
var hooks = [];
|
||||
@ -1491,8 +1528,11 @@
|
||||
if (module.parentModule) {
|
||||
processHooks(test, module.parentModule);
|
||||
}
|
||||
if (module.hooks && objectType(module.hooks[handler]) === "function") {
|
||||
hooks.push(test.queueHook(module.hooks[handler], handler, module));
|
||||
|
||||
if (module.hooks[handler].length) {
|
||||
for (var i = 0; i < module.hooks[handler].length; i++) {
|
||||
hooks.push(test.queueHook(module.hooks[handler][i], handler, module));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1500,9 +1540,11 @@
|
||||
if (!this.skip) {
|
||||
processHooks(this, this.module);
|
||||
}
|
||||
|
||||
return hooks;
|
||||
},
|
||||
|
||||
|
||||
finish: function finish() {
|
||||
config.current = this;
|
||||
if (config.requireExpects && this.expected === null) {
|
||||
@ -1860,7 +1902,7 @@
|
||||
|
||||
// Will be exposed as QUnit.test
|
||||
function test(testName, callback) {
|
||||
if (focused) {
|
||||
if (focused$1) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1873,7 +1915,7 @@
|
||||
}
|
||||
|
||||
function todo(testName, callback) {
|
||||
if (focused) {
|
||||
if (focused$1) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1888,7 +1930,7 @@
|
||||
|
||||
// Will be exposed as QUnit.skip
|
||||
function skip(testName) {
|
||||
if (focused) {
|
||||
if (focused$1) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1902,12 +1944,12 @@
|
||||
|
||||
// Will be exposed as QUnit.only
|
||||
function only(testName, callback) {
|
||||
if (focused) {
|
||||
if (focused$1) {
|
||||
return;
|
||||
}
|
||||
|
||||
config.queue.length = 0;
|
||||
focused = true;
|
||||
focused$1 = true;
|
||||
|
||||
var newTest = new Test({
|
||||
testName: testName,
|
||||
@ -1919,20 +1961,29 @@
|
||||
|
||||
// Put a hold on processing and return a function that will release it.
|
||||
function internalStop(test) {
|
||||
var released = false;
|
||||
|
||||
test.semaphore += 1;
|
||||
config.blocking = true;
|
||||
|
||||
// Set a recovery timeout, if so configured.
|
||||
if (config.testTimeout && defined.setTimeout) {
|
||||
clearTimeout(config.timeout);
|
||||
config.timeout = setTimeout(function () {
|
||||
pushFailure("Test timed out", sourceFromStacktrace(2));
|
||||
internalRecover(test);
|
||||
}, config.testTimeout);
|
||||
if (defined.setTimeout) {
|
||||
var timeoutDuration = void 0;
|
||||
|
||||
if (typeof test.timeout === "number") {
|
||||
timeoutDuration = test.timeout;
|
||||
} else if (typeof config.testTimeout === "number") {
|
||||
timeoutDuration = config.testTimeout;
|
||||
}
|
||||
|
||||
if (typeof timeoutDuration === "number" && timeoutDuration > 0) {
|
||||
clearTimeout(config.timeout);
|
||||
config.timeout = setTimeout(function () {
|
||||
pushFailure("Test took longer than " + timeoutDuration + "ms; test timed out.", sourceFromStacktrace(2));
|
||||
internalRecover(test);
|
||||
}, timeoutDuration);
|
||||
}
|
||||
}
|
||||
|
||||
var released = false;
|
||||
return function resume() {
|
||||
if (released) {
|
||||
return;
|
||||
@ -2059,10 +2110,19 @@
|
||||
|
||||
// Assert helpers
|
||||
|
||||
// Documents a "step", which is a string value, in a test as a passing assertion
|
||||
|
||||
|
||||
createClass(Assert, [{
|
||||
key: "timeout",
|
||||
value: function timeout(duration) {
|
||||
if (typeof duration !== "number") {
|
||||
throw new Error("You must pass a number as the duration to assert.timeout");
|
||||
}
|
||||
|
||||
this.test.timeout = duration;
|
||||
}
|
||||
|
||||
// Documents a "step", which is a string value, in a test as a passing assertion
|
||||
|
||||
}, {
|
||||
key: "step",
|
||||
value: function step(message) {
|
||||
var result = !!message;
|
||||
@ -2138,7 +2198,7 @@
|
||||
}, {
|
||||
key: "push",
|
||||
value: function push(result, actual, expected, message, negative) {
|
||||
Logger.warn("assert.push is deprecated and will be removed in QUnit 3.0." + " Please use assert.pushResult instead (http://api.qunitjs.com/pushResult/).");
|
||||
Logger.warn("assert.push is deprecated and will be removed in QUnit 3.0." + " Please use assert.pushResult instead (https://api.qunitjs.com/assert/pushResult).");
|
||||
|
||||
var currentAssert = this instanceof Assert ? this : config.current.assert;
|
||||
return currentAssert.pushResult({
|
||||
@ -2573,6 +2633,7 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
var focused = false;
|
||||
var QUnit = {};
|
||||
var globalSuite = new SuiteReport();
|
||||
|
||||
@ -2589,13 +2650,16 @@
|
||||
QUnit.isLocal = !(defined.document && window.location.protocol !== "file:");
|
||||
|
||||
// Expose the current QUnit version
|
||||
QUnit.version = "2.3.3";
|
||||
QUnit.version = "2.4.0";
|
||||
|
||||
function createModule(name, testEnvironment) {
|
||||
function createModule(name, testEnvironment, modifiers) {
|
||||
var parentModule = moduleStack.length ? moduleStack.slice(-1)[0] : null;
|
||||
var moduleName = parentModule !== null ? [parentModule.name, name].join(" > ") : name;
|
||||
var parentSuite = parentModule ? parentModule.suiteReport : globalSuite;
|
||||
|
||||
var skip$$1 = parentModule !== null && parentModule.skip || modifiers.skip;
|
||||
var todo$$1 = parentModule !== null && parentModule.todo || modifiers.todo;
|
||||
|
||||
var module = {
|
||||
name: moduleName,
|
||||
parentModule: parentModule,
|
||||
@ -2604,7 +2668,14 @@
|
||||
testsRun: 0,
|
||||
unskippedTestsRun: 0,
|
||||
childModules: [],
|
||||
suiteReport: new SuiteReport(name, parentSuite)
|
||||
suiteReport: new SuiteReport(name, parentSuite),
|
||||
|
||||
// Pass along `skip` and `todo` properties from parent module, in case
|
||||
// there is one, to childs. And use own otherwise.
|
||||
// This property will be used to mark own tests and tests of child suites
|
||||
// as either `skipped` or `todo`.
|
||||
skip: skip$$1,
|
||||
todo: skip$$1 ? false : todo$$1
|
||||
};
|
||||
|
||||
var env = {};
|
||||
@ -2619,53 +2690,108 @@
|
||||
return module;
|
||||
}
|
||||
|
||||
function processModule(name, options, executeNow) {
|
||||
var modifiers = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
||||
|
||||
var module = createModule(name, options, modifiers);
|
||||
|
||||
// Move any hooks to a 'hooks' object
|
||||
var testEnvironment = module.testEnvironment;
|
||||
var hooks = module.hooks = {};
|
||||
|
||||
setHookFromEnvironment(hooks, testEnvironment, "before");
|
||||
setHookFromEnvironment(hooks, testEnvironment, "beforeEach");
|
||||
setHookFromEnvironment(hooks, testEnvironment, "afterEach");
|
||||
setHookFromEnvironment(hooks, testEnvironment, "after");
|
||||
|
||||
function setHookFromEnvironment(hooks, environment, name) {
|
||||
var potentialHook = environment[name];
|
||||
hooks[name] = typeof potentialHook === "function" ? [potentialHook] : [];
|
||||
delete environment[name];
|
||||
}
|
||||
|
||||
var moduleFns = {
|
||||
before: setHookFunction(module, "before"),
|
||||
beforeEach: setHookFunction(module, "beforeEach"),
|
||||
afterEach: setHookFunction(module, "afterEach"),
|
||||
after: setHookFunction(module, "after")
|
||||
};
|
||||
|
||||
var currentModule = config.currentModule;
|
||||
if (objectType(executeNow) === "function") {
|
||||
moduleStack.push(module);
|
||||
config.currentModule = module;
|
||||
executeNow.call(module.testEnvironment, moduleFns);
|
||||
moduleStack.pop();
|
||||
module = module.parentModule || currentModule;
|
||||
}
|
||||
|
||||
config.currentModule = module;
|
||||
}
|
||||
|
||||
// TODO: extract this to a new file alongside its related functions
|
||||
function module$1(name, options, executeNow) {
|
||||
if (focused) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (arguments.length === 2) {
|
||||
if (objectType(options) === "function") {
|
||||
executeNow = options;
|
||||
options = undefined;
|
||||
}
|
||||
}
|
||||
|
||||
processModule(name, options, executeNow);
|
||||
}
|
||||
|
||||
module$1.only = function () {
|
||||
if (focused) {
|
||||
return;
|
||||
}
|
||||
|
||||
config.modules.length = 0;
|
||||
config.queue.length = 0;
|
||||
|
||||
module$1.apply(undefined, arguments);
|
||||
|
||||
focused = true;
|
||||
};
|
||||
|
||||
module$1.skip = function (name, options, executeNow) {
|
||||
if (focused) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (arguments.length === 2) {
|
||||
if (objectType(options) === "function") {
|
||||
executeNow = options;
|
||||
options = undefined;
|
||||
}
|
||||
}
|
||||
|
||||
processModule(name, options, executeNow, { skip: true });
|
||||
};
|
||||
|
||||
module$1.todo = function (name, options, executeNow) {
|
||||
if (focused) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (arguments.length === 2) {
|
||||
if (objectType(options) === "function") {
|
||||
executeNow = options;
|
||||
options = undefined;
|
||||
}
|
||||
}
|
||||
|
||||
processModule(name, options, executeNow, { todo: true });
|
||||
};
|
||||
|
||||
extend(QUnit, {
|
||||
on: on,
|
||||
|
||||
// Call on start of module test to prepend name to all tests
|
||||
module: function module(name, testEnvironment, executeNow) {
|
||||
if (arguments.length === 2) {
|
||||
if (objectType(testEnvironment) === "function") {
|
||||
executeNow = testEnvironment;
|
||||
testEnvironment = undefined;
|
||||
}
|
||||
}
|
||||
|
||||
var module = createModule(name, testEnvironment);
|
||||
|
||||
// Move any hooks to a 'hooks' object
|
||||
if (module.testEnvironment) {
|
||||
module.hooks = {
|
||||
before: module.testEnvironment.before,
|
||||
beforeEach: module.testEnvironment.beforeEach,
|
||||
afterEach: module.testEnvironment.afterEach,
|
||||
after: module.testEnvironment.after
|
||||
};
|
||||
|
||||
delete module.testEnvironment.before;
|
||||
delete module.testEnvironment.beforeEach;
|
||||
delete module.testEnvironment.afterEach;
|
||||
delete module.testEnvironment.after;
|
||||
}
|
||||
|
||||
var moduleFns = {
|
||||
before: setHook(module, "before"),
|
||||
beforeEach: setHook(module, "beforeEach"),
|
||||
afterEach: setHook(module, "afterEach"),
|
||||
after: setHook(module, "after")
|
||||
};
|
||||
|
||||
var currentModule = config.currentModule;
|
||||
if (objectType(executeNow) === "function") {
|
||||
moduleStack.push(module);
|
||||
config.currentModule = module;
|
||||
executeNow.call(module.testEnvironment, moduleFns);
|
||||
moduleStack.pop();
|
||||
module = module.parentModule || currentModule;
|
||||
}
|
||||
|
||||
config.currentModule = module;
|
||||
},
|
||||
module: module$1,
|
||||
|
||||
test: test,
|
||||
|
||||
@ -2802,13 +2928,9 @@
|
||||
ProcessingQueue.advance();
|
||||
}
|
||||
|
||||
function setHook(module, hookName) {
|
||||
if (!module.hooks) {
|
||||
module.hooks = {};
|
||||
}
|
||||
|
||||
return function (callback) {
|
||||
module.hooks[hookName] = callback;
|
||||
function setHookFunction(module, hookName) {
|
||||
return function setHook(callback) {
|
||||
module.hooks[hookName].push(callback);
|
||||
};
|
||||
}
|
||||
|
||||
|
14
package.json
14
package.json
@ -71,13 +71,13 @@
|
||||
"popper.js": "^1.10.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^7.1.1",
|
||||
"autoprefixer": "^7.1.2",
|
||||
"babel-cli": "^6.24.1",
|
||||
"babel-eslint": "^7.2.3",
|
||||
"babel-plugin-transform-es2015-modules-strip": "^0.1.1",
|
||||
"babel-preset-es2015": "^6.24.1",
|
||||
"clean-css-cli": "^4.1.3",
|
||||
"eslint": "^3.19.0",
|
||||
"clean-css-cli": "^4.1.6",
|
||||
"eslint": "^4.2.0",
|
||||
"grunt": "^1.0.1",
|
||||
"grunt-cli": "^1.2.0",
|
||||
"grunt-saucelabs": "^9.0.0",
|
||||
@ -86,12 +86,12 @@
|
||||
"nodemon": "^1.11.0",
|
||||
"npm-run-all": "^4.0.2",
|
||||
"phantomjs-prebuilt": "^2.1.14",
|
||||
"postcss-cli": "^4.0.0",
|
||||
"postcss-cli": "^4.1.0",
|
||||
"qunit-phantomjs-runner": "^2.3.0",
|
||||
"qunitjs": "^2.3.2",
|
||||
"shelljs": "^0.7.7",
|
||||
"qunitjs": "^2.4.0",
|
||||
"shelljs": "^0.7.8",
|
||||
"shx": "^0.2.2",
|
||||
"uglify-js": "^3.0.13"
|
||||
"uglify-js": "^3.0.24"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
|
Loading…
x
Reference in New Issue
Block a user