diff --git a/README.md b/README.md
index f56111d..b4b83fa 100644
--- a/README.md
+++ b/README.md
@@ -10,7 +10,7 @@ Pure JavaScript/CSS library for validating DOM input fields
[JSFiddle](https://jsfiddle.net/AntonLapshin/hjwg8a89/)
-
+
## Install
@@ -23,45 +23,114 @@ Read [API](#API)
HTML
```html
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
```
-JavaScript
+JS
+
+Initialization
+
+* Track all the input fields inside of the ``
```js
validation.init();
+```
+
+* Track all the input fields inside of a DOM container or a `
-
+
diff --git a/bin/validation.css b/bin/validation.css
deleted file mode 100644
index 3549dfe..0000000
--- a/bin/validation.css
+++ /dev/null
@@ -1,29 +0,0 @@
-.validate-error {
- border-color: #d10000 !important; }
-
-.validate-popup {
- transition: opacity ease 400ms;
- cursor: pointer;
- position: absolute;
- background-color: #d10000;
- color: white;
- font-size: 12px;
- line-height: 1;
- padding: 8px 12px;
- z-index: -1;
- opacity: 0; }
- .validate-popup.active {
- z-index: 99999;
- opacity: 1; }
- .validate-popup:after {
- position: absolute;
- bottom: 0;
- left: 0;
- content: '';
- width: 0;
- height: 0;
- border-style: solid;
- border-width: 5px 5px 0 5px;
- border-color: #d10000 transparent transparent transparent;
- margin-left: 8px;
- margin-bottom: -5px; }
diff --git a/bin/validation.es6.js b/bin/validation.es6.js
index 1be84f3..edc18dc 100644
--- a/bin/validation.es6.js
+++ b/bin/validation.es6.js
@@ -4,7 +4,11 @@
(global.validation = factory());
}(this, (function () { 'use strict';
-const Rules = {
+const regex = {
+ email: /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
+};
+
+var rules = {
required: {
message: "Required",
method: el => {
@@ -22,217 +26,292 @@ const Rules = {
},
email: {
message: "E-mail is wrong",
- method: el => {
- return (
- el.value === "" ||
- /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(
- el.value
- )
- );
- }
+ method: el => el.value === "" || regex.email.test(el.value.trim())
+ },
+ emails: {
+ message: "E-mail is wrong",
+ method: el =>
+ el.value === "" ||
+ el.value.split(/;|,/).every(v => regex.email.test(v.trim()))
}
};
-const VALIDATE = "validate";
-const VALIDATE_POPUP = "validate-popup";
-const DATA_VALIDATE = "data-validate";
-const VALIDATE_ERROR = "validate-error";
-const ACTIVE = "active";
-const Events = ["change", "paste", "blur", "keyup"];
-
-const getMessage = el => {
- const types = el.getAttribute(DATA_VALIDATE).split(",").map(type => {
- return type.trim();
- });
- return types
- .filter(type => {
- return !Rules[type].method(el);
- })
- .map(type => {
- return Rules[type].message;
- })
- .join(", ");
+const _customSelectors = [];
+const doc = window.document;
+const OPTIONS = {
+ events: ['change', 'paste', 'blur', 'keyup']
+ };
+const CUSTOM_CLASS_STYLES = `
+ {0}:before, {0}:after{
+ opacity: 1;
+ }
+ {0} {
+ border-color: #D10000 !important;
+ }
+ {0}-ready:before {
+ content: '{1}';
+ }`;
+
+const throttle = (fn, threshhold = 250, scope) => {
+ let last, deferTimer;
+ return () => {
+ const now = +new Date(),
+ args = arguments;
+ if (last && now < last + threshhold) {
+ clearTimeout(deferTimer);
+ deferTimer = setTimeout(() => {
+ last = now;
+ fn.apply(scope, args);
+ }, threshhold);
+ } else {
+ last = now;
+ fn.apply(scope, args);
+ }
+ };
};
-const onAction = e => {
- const el = e.target;
- if (!el.matches("." + VALIDATE)) {
- return;
- }
- const message = getMessage(el);
-
- el.classList.toggle(VALIDATE_ERROR, !!message);
- let popup = el.previousElementSibling;
- if (message) {
- if (!popup || !popup.matches("." + VALIDATE_POPUP)) {
- popup = document.createElement("div");
- popup.classList.add(VALIDATE_POPUP);
- const wrap = document.createElement("div");
- wrap.appendChild(popup.cloneNode(true));
- el.insertAdjacentHTML("beforebegin", wrap.innerHTML);
- popup = el.previousElementSibling;
+const getMessage = input =>
+ input
+ .getAttribute('data-validate')
+ .split(',')
+ .map(type => type.trim())
+ .filter(type => !rules[type].method(input))
+ .map(type => rules[type].message)
+ .join(', ');
+
+const createPopup = el => (
+ el.insertAdjacentHTML('beforebegin', ``),
+ el.previousElementSibling
+);
+
+const addClass = (el, className) => (el.className += ' ' + className);
+const delClass = (el, className) =>
+ (el.className = el.className.replace(className, ''));
+
+const changeClass = (
+ el,
+ className,
+ value,
+ contains = ~el.className.indexOf(className)
+) =>
+ (value && !contains && addClass(el, className)) ||
+ (contains && !value && delClass(el, className));
+
+const show = (el, message) => {
+ el = getEl(el);
+ if (el.offsetWidth === 0 && el.offsetHeight === 0) {
+ return;
+ }
+
+ changeClass(el, 'validate-error', true);
+ let popup = el.previousElementSibling;
+
+ if (!popup || !popup.matches('.validate-popup')) {
+ popup = createPopup(el);
}
popup.innerHTML = message;
window.setTimeout(() => {
- const left =
- el.clientWidth < popup.clientWidth
- ? el.offsetLeft + el.offsetWidth / 2 - 14
- : el.offsetLeft + el.clientWidth - popup.clientWidth + 1;
- const top = el.offsetTop;
- popup.style.left = left + "px";
- popup.style.top = top + "px";
- popup.style.marginTop = -(popup.clientHeight + 8) + "px";
- popup.classList.toggle(ACTIVE, true);
+ const left =
+ el.clientWidth < popup.clientWidth
+ ? ~~(el.offsetLeft + el.offsetWidth / 2 - 14) + 1
+ : el.offsetLeft + el.clientWidth - popup.clientWidth + 1;
+ popup.style.left = left + 'px';
+ popup.style.top = el.offsetTop + 'px';
+ popup.style.marginTop = -(popup.clientHeight + 8) + 'px';
+ changeClass(popup, 'active', true);
+ changeClass(popup, 'short-version', el.clientWidth < popup.clientWidth);
}, 0);
- } else {
- if (el.type === "radio"){
- const name = el.name;
- const rbs = document.querySelectorAll(`input[name="${name}"]`);
- Array.prototype.forEach.call(rbs, el => {
- const popup = el.previousElementSibling;
- if (popup && popup.matches("." + VALIDATE_POPUP)){
- popup.classList.toggle(ACTIVE, false);
- }
- });
- } else if (popup && popup.matches("." + VALIDATE_POPUP)) {
- popup.classList.toggle(ACTIVE, false);
- }
- }
};
-const getEl = (el = "body") =>
- typeof el === "string" ? document.querySelector(el) : el;
+const hide = el => {
+ el = getEl(el);
+ changeClass(el, 'validate-error', false);
+ const popup = el.previousElementSibling;
+ popup &&
+ popup.matches('.validate-popup') &&
+ changeClass(popup, 'active', false);
+};
-const onClick = e => {
- const el = e.target;
- if (!el.matches("." + VALIDATE_POPUP)) {
- return;
- }
- const next = el.nextElementSibling;
- if (next.matches("." + VALIDATE)) {
- next.classList.toggle(VALIDATE_ERROR, false);
- }
- el.classList.toggle(ACTIVE, false);
+const toggle = (el, message) => (message ? show(el, message) : hide(el));
+
+const onAction = e => {
+ const input = e.target;
+ if (!input.matches('.validate')) {
+ return;
+ }
+ const message = getMessage(input);
+
+ if (input.type === 'radio') {
+ const name = input.name;
+ const rbs = doc.querySelectorAll(`input[name="${name}"]`);
+ [].forEach.call(rbs, rb => toggle(rb, message));
+ } else {
+ toggle(input, message);
+ }
};
+const getEl = (el = 'body') =>
+ typeof el === 'string' ? doc.querySelector(el) || doc.body : el;
+
+const getValidateEls = el => el.querySelectorAll('.validate');
+
+const onClick = e =>
+ e.target.matches('.validate-popup') && hide(e.target.nextElementSibling);
+
const onSubmit = e => {
- const isValid = validation.validate(e.target);
- if (isValid) {
- return true;
- }
- e.preventDefault();
- return false;
+ const isValid = validation.validate(e.target);
+ !isValid && e.preventDefault();
+ return isValid;
};
+const onResize = throttle(
+ () =>
+ [].forEach.call(doc.querySelectorAll('.validate-popup'), popup =>
+ changeClass(popup, 'active', false)
+ ),
+ 1000
+);
+
const setupEventHandlers = (el, setup) => {
- el = getEl(el);
- const action = setup ? "addEventListener" : "removeEventListener";
- const els = el.querySelectorAll("." + VALIDATE);
- Array.prototype.forEach.call(els, el => {
- Events.forEach(e => {
- el[action](e, onAction);
- });
- });
-
- document[action]("click", onClick);
-
- if (el.nodeName === "FORM") {
- el[action]("submit", onSubmit);
- }
+ el = getEl(el);
+ const action = setup ? 'addEventListener' : 'removeEventListener';
+ const inputs = getValidateEls(el);
+ [].forEach.call(inputs, input =>
+ OPTIONS.events.forEach(e => input[action](e, onAction))
+ );
+
+ el.nodeName === 'FORM' && el[action]('submit', onSubmit);
+ doc[action]('click', onClick);
+ window[action]('resize', onResize);
};
const validation = {
- /**
- * Initialize the validation fields
- *
- * @param {Element|string} Container or specific form
- */
- init: el => {
- setupEventHandlers(el, true);
- },
+ /**
+ * Initialize the validation fields
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @param {object} options [Optional] Set of the properties
+ * - events: [string]
+ * @returns {object} validation instance (chain call)
+ */
+ init: (el, options) => (
+ Object.assign({}, OPTIONS, options),
+ setupEventHandlers(el, true),
+ validation
+ ),
- /**
- * Deactivate the validation fields
- *
- * @param {Element|string} Container or specific form
- */
- destroy: el => {
- validation.hide(el);
- setupEventHandlers(el, false);
- },
+ /**
+ * Predefined set of the rules
+ */
+ rules,
- /**
- * Hide all opened popups inside of the containers
- *
- * @param {Element|string} Container or specific form
- */
- hide: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE_POPUP);
- Array.prototype.forEach.call(els, el => {
- el.classList.toggle(ACTIVE, false);
- const next = el.nextElementSibling;
- if (next.matches("." + VALIDATE)) {
- next.classList.toggle(VALIDATE_ERROR, false);
- }
- });
- },
+ /**
+ * Show a message for an input field
+ *
+ * @param {Element|string} el dom element or selector
+ * @param {string} message Popup message
+ * @returns {object} validation instance (chain call)
+ */
+ show: (el, message) => (show(el, message), validation),
- /**
- * Show error popups inside of the container
- *
- * @param {Element} el Container
- */
- highlight: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE);
- Array.prototype.forEach.call(els, el => {
- const event = document.createEvent("HTMLEvents");
- event.initEvent("blur", true, false);
- el.dispatchEvent(event);
- });
- },
+ /**
+ * Hide a popup message for an input field
+ *
+ * @param {Element|string} el dom element or selector
+ * @returns {object} validation instance (chain call)
+ */
+ hide: el => (hide(el), validation),
- /**
- * Check if all input fields inside of the container are valid
- *
- * @param {Element} el Container
- * @returns {boolean} True if all input fields inside of the container are valid
- */
- isValid: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE);
- const isValid = Array.prototype.every.call(els, el => {
- return !getMessage(el);
- });
- return isValid;
- },
+ /**
+ * Deactivate the validation fields
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ destroy: el => (
+ validation.hideAll(el), setupEventHandlers(el, false), validation
+ ),
- /**
- * Validate all input fields in the DOM container
- *
- * @param {Element} el Container
- * @returns {boolean} True if all input fields inside of the container are valid
- */
- validate: el => {
- validation.highlight(el);
- return validation.isValid(el);
- },
+ /**
+ * Hide all opened popups inside of the container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ hideAll: el => (
+ [].forEach.call(getValidateEls(getEl(el)), input => hide(input)),
+ validation
+ ),
- /**
- * Returns the set of the predefined rules
- *
- * @returns {object} Rules
- *
- * ruleName: {
- * message: "Message when element didn't pass the rule",
- * method: el => boolean
- * }
- *
- */
- getRules: () => {
- return Rules;
- }
+ /**
+ * Show error popups inside of the container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ highlight: el => (
+ [].forEach.call(getValidateEls(getEl(el)), input =>
+ onAction({ target: input })
+ ),
+ validation
+ ),
+
+ /**
+ * Check if all input fields inside of the container are valid
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {boolean} True if all input fields inside of the container are valid
+ */
+ isValid: el =>
+ (_customSelectors.length === 0 ||
+ getEl(el).querySelectorAll(_customSelectors.join(',')).length ===
+ 0) &&
+ [].every.call(getValidateEls(getEl(el)), input => !getMessage(input)),
+
+ /**
+ * Validate all input fields in the DOM container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {boolean} True if all input fields inside of the container are valid
+ */
+ validate: el => (validation.highlight(el), validation.isValid(el)),
+
+ /**
+ * Add class validation. For external libraries that can
+ * set/remove className of the element
+ *
+ * For instance, braintree-hosted-fields-invalid class is
+ * set by braintree client library when iframe with the
+ * input fieldan error detects an error, More info here:
+ * https://developers.braintreepayments.com/guides/hosted-fields/styling/javascript/v2
+ *
+ * @param {string} target Selector of the target element
+ * @param {string} selector Selector that indicates that the field is invalid
+ * @param {string} Optional: message. "Invalid" by default
+ * @returns {object} validation instance (chain call)
+ */
+ addClassValidation: (target, selector, msg = 'Invalid') => {
+ const styleTag = doc.createElement('style');
+ styleTag.innerHTML = selector
+ .split(',')
+ .map(s =>
+ CUSTOM_CLASS_STYLES.replace(/\{0\}/gi, s).replace(
+ /\{1\}/gi,
+ msg
+ )
+ )
+ .join('');
+ doc.head.appendChild(styleTag);
+ _customSelectors.push(selector);
+ [].forEach.call(
+ doc.querySelectorAll(target),
+ el =>
+ (el.className += ` validate-class ${selector.substring(
+ 1
+ )}-ready`)
+ );
+ return validation;
+ }
};
return validation;
diff --git a/bin/validation.min.css b/bin/validation.min.css
new file mode 100644
index 0000000..767d091
--- /dev/null
+++ b/bin/validation.min.css
@@ -0,0 +1 @@
+.validate-error{border-color:#d10000 !important}.validate-popup{transition:all ease 300ms;cursor:pointer;position:absolute;background-color:#d10000;color:white;font-size:12px;line-height:1;padding:8px 12px;z-index:-1;opacity:0}.validate-popup.active{z-index:99999;opacity:1}.validate-popup:after{position:absolute;bottom:0;right:0;content:'';width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:#d10000 transparent transparent transparent;margin-right:8px;margin-bottom:-5px}.validate-popup.short-version:after{left:0;margin-left:8px}.validate-class{position:relative}.validate-class:before,.validate-class:after{content:'';opacity:0;transition:opacity ease 300ms;position:absolute;right:0;top:-36px}.validate-class:before{background-color:#d10000;color:white;font-size:12px;line-height:1;padding:8px 12px;white-space:nowrap}.validate-class:after{width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:#d10000 transparent transparent transparent;margin-top:28px;margin-right:10px}
diff --git a/bin/validation.min.js b/bin/validation.min.js
index d15daa9..76bbfc5 100644
--- a/bin/validation.min.js
+++ b/bin/validation.min.js
@@ -1 +1 @@
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.validation=t()}(this,function(){"use strict";var e={required:{message:"Required",method:function(e){if("checkbox"===e.type)return e.checked;if("radio"===e.type){var t=e.name;return e.parentNode.querySelectorAll("input[name="+t+"]:checked").length>0}return""!==e.value}},email:{message:"E-mail is wrong",method:function(e){return""===e.value||/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e.value)}}},t=["change","paste","blur","keyup"],i=function(t){return t.getAttribute("data-validate").split(",").map(function(e){return e.trim()}).filter(function(i){return!e[i].method(t)}).map(function(t){return e[t].message}).join(", ")},n=function(e){var t=e.target;if(t.matches(".validate")){var n=i(t);t.classList.toggle("validate-error",!!n);var a=t.previousElementSibling;if(n){if(!a||!a.matches(".validate-popup")){(a=document.createElement("div")).classList.add("validate-popup");var r=document.createElement("div");r.appendChild(a.cloneNode(!0)),t.insertAdjacentHTML("beforebegin",r.innerHTML),a=t.previousElementSibling}a.innerHTML=n,window.setTimeout(function(){var e=t.clientWidth0&&void 0!==arguments[0]?arguments[0]:"body";return"string"==typeof e?document.querySelector(e):e},r=function(e){var t=e.target;if(t.matches(".validate-popup")){var i=t.nextElementSibling;i.matches(".validate")&&i.classList.toggle("validate-error",!1),t.classList.toggle("active",!1)}},o=function(e){return!!c.validate(e.target)||(e.preventDefault(),!1)},l=function(e,i){e=a(e);var l=i?"addEventListener":"removeEventListener",c=e.querySelectorAll(".validate");Array.prototype.forEach.call(c,function(e){t.forEach(function(t){e[l](t,n)})}),document[l]("click",r),"FORM"===e.nodeName&&e[l]("submit",o)},c={init:function(e){l(e,!0)},destroy:function(e){c.hide(e),l(e,!1)},hide:function(e){var t=(e=a(e)).querySelectorAll(".validate-popup");Array.prototype.forEach.call(t,function(e){e.classList.toggle("active",!1);var t=e.nextElementSibling;t.matches(".validate")&&t.classList.toggle("validate-error",!1)})},highlight:function(e){var t=(e=a(e)).querySelectorAll(".validate");Array.prototype.forEach.call(t,function(e){var t=document.createEvent("HTMLEvents");t.initEvent("blur",!0,!1),e.dispatchEvent(t)})},isValid:function(e){var t=(e=a(e)).querySelectorAll(".validate"),n=Array.prototype.every.call(t,function(e){return!i(e)});return n},validate:function(e){return c.highlight(e),c.isValid(e)},getRules:function(){return e}};return c});
+!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.validation=t()}(this,function(){"use strict";"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),r=1;r()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/},t={required:{message:"Required",method:function(e){if("checkbox"===e.type)return e.checked;if("radio"===e.type){var t=e.name;return e.parentNode.querySelectorAll("input[name="+t+"]:checked").length>0}return""!==e.value}},email:{message:"E-mail is wrong",method:function(t){return""===t.value||e.email.test(t.value.trim())}},emails:{message:"E-mail is wrong",method:function(t){return""===t.value||t.value.split(/;|,/).every(function(t){return e.email.test(t.trim())})}}},n=arguments,r=[],i=window.document,o={events:["change","paste","blur","keyup"]},a=function(e){return e.getAttribute("data-validate").split(",").map(function(e){return e.trim()}).filter(function(n){return!t[n].method(e)}).map(function(e){return t[e].message}).join(", ")},l=function(e){return e.insertAdjacentHTML("beforebegin",''),e.previousElementSibling},u=function(e,t){return e.className+=" "+t},c=function(e,t){return e.className=e.className.replace(t,"")},f=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:~e.className.indexOf(t);return n&&!r&&u(e,t)||r&&!n&&c(e,t)},s=function(e,t){if(0!==(e=h(e)).offsetWidth||0!==e.offsetHeight){f(e,"validate-error",!0);var n=e.previousElementSibling;n&&n.matches(".validate-popup")||(n=l(e)),n.innerHTML=t,window.setTimeout(function(){var t=e.clientWidth0&&void 0!==arguments[0]?arguments[0]:"body";return"string"==typeof e?i.querySelector(e)||i.body:e},m=function(e){return e.querySelectorAll(".validate")},g=function(e){return e.target.matches(".validate-popup")&&d(e.target.nextElementSibling)},y=function(e){var t=w.validate(e.target);return!t&&e.preventDefault(),t},b=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:250,r=arguments[2],i=void 0,o=void 0;return function(){var a=+new Date,l=n;i&&a2&&void 0!==arguments[2]?arguments[2]:"Invalid",o=i.createElement("style");return o.innerHTML=t.split(",").map(function(e){return"\n {0}:before, {0}:after{\n opacity: 1;\n } \n {0} {\n border-color: #D10000 !important;\n }\n {0}-ready:before {\n content: '{1}';\n }".replace(/\{0\}/gi,e).replace(/\{1\}/gi,n)}).join(""),i.head.appendChild(o),r.push(t),[].forEach.call(i.querySelectorAll(e),function(e){return e.className+=" validate-class "+t.substring(1)+"-ready"}),w}};return w});
diff --git a/package-lock.json b/package-lock.json
index c2060ad..39ef287 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,7 +1,8 @@
{
"name": "popup-validation",
- "version": "1.1.0",
+ "version": "3.0.3",
"lockfileVersion": 1,
+ "requires": true,
"dependencies": {
"abbrev": {
"version": "1.0.9",
@@ -20,6 +21,9 @@
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
"integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
"dev": true,
+ "requires": {
+ "acorn": "3.3.0"
+ },
"dependencies": {
"acorn": {
"version": "3.3.0",
@@ -33,7 +37,11 @@
"version": "4.11.8",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
"integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "co": "4.6.0",
+ "json-stable-stringify": "1.0.1"
+ }
},
"ajv-keywords": {
"version": "1.5.1",
@@ -45,7 +53,12 @@
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
"integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "kind-of": "3.2.2",
+ "longest": "1.0.1",
+ "repeat-string": "1.6.1"
+ }
},
"amdefine": {
"version": "1.0.1",
@@ -57,7 +70,21 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-3.0.0.tgz",
"integrity": "sha1-HBg5S2r5t2/5pjUJ+kl2af0s5T4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"ansi-escapes": {
"version": "1.4.0",
@@ -81,19 +108,20 @@
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz",
"integrity": "sha1-o+Uvo5FoyCX/V7AkgSbOWo/5VQc=",
- "dev": true
- },
- "app-usage-stats": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/app-usage-stats/-/app-usage-stats-0.5.1.tgz",
- "integrity": "sha1-ZUfF25urCqX1ssVg6syK8g0KsTs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "arrify": "1.0.1",
+ "micromatch": "2.3.11"
+ }
},
"append-transform": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz",
"integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "default-require-extensions": "1.0.0"
+ }
},
"aproba": {
"version": "1.1.2",
@@ -105,19 +133,29 @@
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
"integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "delegates": "1.0.0",
+ "readable-stream": "2.3.3"
+ }
},
"argparse": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz",
"integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "sprintf-js": "1.0.3"
+ }
},
"arr-diff": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
"integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "arr-flatten": "1.1.0"
+ }
},
"arr-flatten": {
"version": "1.1.0",
@@ -126,10 +164,13 @@
"dev": true
},
"array-back": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
- "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
- "dev": true
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
+ "integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
},
"array-find-index": {
"version": "1.0.2",
@@ -141,7 +182,10 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
"integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-uniq": "1.0.3"
+ }
},
"array-uniq": {
"version": "1.0.3",
@@ -216,172 +260,562 @@
"dev": true
},
"babel-cli": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.24.1.tgz",
- "integrity": "sha1-IHzXBbumFImy6kG1MSNBz2rKIoM=",
- "dev": true
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz",
+ "integrity": "sha1-UCq1SHTX24itALiHoGODzgPQAvE=",
+ "dev": true,
+ "requires": {
+ "babel-core": "6.26.3",
+ "babel-polyfill": "6.26.0",
+ "babel-register": "6.26.0",
+ "babel-runtime": "6.26.0",
+ "chokidar": "1.7.0",
+ "commander": "2.11.0",
+ "convert-source-map": "1.5.0",
+ "fs-readdir-recursive": "1.1.0",
+ "glob": "7.1.2",
+ "lodash": "4.17.4",
+ "output-file-sync": "1.1.2",
+ "path-is-absolute": "1.0.1",
+ "slash": "1.0.0",
+ "source-map": "0.5.6",
+ "v8flags": "2.1.1"
+ },
+ "dependencies": {
+ "babel-polyfill": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
+ "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.26.0",
+ "core-js": "2.5.6",
+ "regenerator-runtime": "0.10.5"
+ }
+ },
+ "babel-runtime": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
+ "dev": true,
+ "requires": {
+ "core-js": "2.5.6",
+ "regenerator-runtime": "0.11.1"
+ },
+ "dependencies": {
+ "regenerator-runtime": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
+ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
+ "dev": true
+ }
+ }
+ },
+ "core-js": {
+ "version": "2.5.6",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.6.tgz",
+ "integrity": "sha512-lQUVfQi0aLix2xpyjrrJEvfuYCqPc/HwmTKsC/VNf8q0zsjX7SQZtp4+oRONN5Tsur9GDETPjj+Ub2iDiGZfSQ==",
+ "dev": true
+ }
+ }
},
"babel-code-frame": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.22.0.tgz",
"integrity": "sha1-AnYgvuVnqIwyVhV05/0IAdMxGOQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "chalk": "1.1.3",
+ "esutils": "2.0.2",
+ "js-tokens": "3.0.2"
+ }
},
"babel-core": {
- "version": "6.25.0",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.25.0.tgz",
- "integrity": "sha1-fdQrBGPHQunVKW3rPsZ6kyLa1yk=",
- "dev": true
+ "version": "6.26.3",
+ "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
+ "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "6.26.0",
+ "babel-generator": "6.26.1",
+ "babel-helpers": "6.24.1",
+ "babel-messages": "6.23.0",
+ "babel-register": "6.26.0",
+ "babel-runtime": "6.26.0",
+ "babel-template": "6.26.0",
+ "babel-traverse": "6.26.0",
+ "babel-types": "6.26.0",
+ "babylon": "6.18.0",
+ "convert-source-map": "1.5.1",
+ "debug": "2.6.9",
+ "json5": "0.5.1",
+ "lodash": "4.17.4",
+ "minimatch": "3.0.4",
+ "path-is-absolute": "1.0.1",
+ "private": "0.1.8",
+ "slash": "1.0.0",
+ "source-map": "0.5.7"
+ },
+ "dependencies": {
+ "babel-code-frame": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
+ "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
+ "dev": true,
+ "requires": {
+ "chalk": "1.1.3",
+ "esutils": "2.0.2",
+ "js-tokens": "3.0.2"
+ }
+ },
+ "babel-generator": {
+ "version": "6.26.1",
+ "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
+ "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
+ "dev": true,
+ "requires": {
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.26.0",
+ "babel-types": "6.26.0",
+ "detect-indent": "4.0.0",
+ "jsesc": "1.3.0",
+ "lodash": "4.17.4",
+ "source-map": "0.5.7",
+ "trim-right": "1.0.1"
+ }
+ },
+ "babel-runtime": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
+ "dev": true,
+ "requires": {
+ "core-js": "2.4.1",
+ "regenerator-runtime": "0.11.1"
+ }
+ },
+ "babel-template": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
+ "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.26.0",
+ "babel-traverse": "6.26.0",
+ "babel-types": "6.26.0",
+ "babylon": "6.18.0",
+ "lodash": "4.17.4"
+ }
+ },
+ "babel-traverse": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
+ "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "6.26.0",
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.26.0",
+ "babel-types": "6.26.0",
+ "babylon": "6.18.0",
+ "debug": "2.6.9",
+ "globals": "9.18.0",
+ "invariant": "2.2.2",
+ "lodash": "4.17.4"
+ }
+ },
+ "babel-types": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
+ "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.26.0",
+ "esutils": "2.0.2",
+ "lodash": "4.17.4",
+ "to-fast-properties": "1.0.3"
+ }
+ },
+ "babylon": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
+ "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
+ "dev": true
+ },
+ "convert-source-map": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz",
+ "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=",
+ "dev": true
+ },
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "private": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
+ "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
+ "dev": true
+ },
+ "regenerator-runtime": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
+ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true
+ }
+ }
},
"babel-eslint": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-6.1.2.tgz",
"integrity": "sha1-UpNBn+NnLWZZjTJ9qWlFZ7pqXy8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0",
+ "babylon": "6.17.4",
+ "lodash.assign": "4.2.0",
+ "lodash.pickby": "4.6.0"
+ }
},
"babel-generator": {
"version": "6.25.0",
"resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.25.0.tgz",
"integrity": "sha1-M6GvcNXyiQrrRlpKd5PB32qeqfw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0",
+ "detect-indent": "4.0.0",
+ "jsesc": "1.3.0",
+ "lodash": "4.17.4",
+ "source-map": "0.5.6",
+ "trim-right": "1.0.1"
+ }
},
"babel-helper-builder-binary-assignment-operator-visitor": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
"integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-explode-assignable-expression": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-call-delegate": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
"integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-hoist-variables": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-define-map": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz",
"integrity": "sha1-epdH8ljYlH0y1RX2qhx70CIEoIA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0",
+ "lodash": "4.17.4"
+ }
},
"babel-helper-explode-assignable-expression": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
"integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-function-name": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
"integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-get-function-arity": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-get-function-arity": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
"integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-hoist-variables": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
"integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-optimise-call-expression": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
"integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-regex": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz",
"integrity": "sha1-024i+rEAjXnYhkjjIRaGgShFbOg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0",
+ "lodash": "4.17.4"
+ }
},
"babel-helper-remap-async-to-generator": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
"integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helper-replace-supers": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
"integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-optimise-call-expression": "6.24.1",
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-helpers": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
"integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0"
+ }
},
"babel-messages": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
"integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-check-es2015-constants": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
"integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-external-helpers": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz",
"integrity": "sha1-IoX0iwK9Xe3oUXXK+MYuhq3M76E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-proxy": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/babel-plugin-proxy/-/babel-plugin-proxy-1.1.0.tgz",
"integrity": "sha1-t90zbw9KATzNkf86cis+ed1QzXg=",
"dev": true,
+ "requires": {
+ "babel-cli": "6.3.17",
+ "babel-core": "6.3.26",
+ "babel-preset-es2015": "6.3.13",
+ "babel-traverse": "6.3.26",
+ "babylon": "6.3.26"
+ },
"dependencies": {
"babel-cli": {
"version": "6.3.17",
"resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.3.17.tgz",
"integrity": "sha1-O3Yw1rRI4ELvHKodQ0CVa+y3X9s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-core": "6.3.26",
+ "babel-polyfill": "6.23.0",
+ "babel-register": "6.26.0",
+ "babel-runtime": "5.8.38",
+ "bin-version-check": "2.1.0",
+ "chalk": "1.1.1",
+ "chokidar": "1.7.0",
+ "commander": "2.11.0",
+ "convert-source-map": "1.5.0",
+ "fs-readdir-recursive": "0.1.2",
+ "glob": "5.0.15",
+ "lodash": "3.10.1",
+ "log-symbols": "1.0.2",
+ "output-file-sync": "1.1.2",
+ "path-exists": "1.0.0",
+ "path-is-absolute": "1.0.1",
+ "request": "2.81.0",
+ "slash": "1.0.0",
+ "source-map": "0.5.6",
+ "v8flags": "2.1.1"
+ }
},
"babel-core": {
"version": "6.3.26",
"resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.3.26.tgz",
"integrity": "sha1-HsnoGlOp4+JlUiW9/2Lyj2xeIks=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "6.22.0",
+ "babel-generator": "6.25.0",
+ "babel-helpers": "6.24.1",
+ "babel-messages": "6.23.0",
+ "babel-register": "6.26.0",
+ "babel-runtime": "5.8.38",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.3.26",
+ "babel-types": "6.25.0",
+ "babylon": "6.3.26",
+ "convert-source-map": "1.5.0",
+ "debug": "2.6.8",
+ "json5": "0.4.0",
+ "lodash": "3.10.1",
+ "minimatch": "2.0.10",
+ "path-exists": "1.0.0",
+ "path-is-absolute": "1.0.1",
+ "private": "0.1.7",
+ "shebang-regex": "1.0.0",
+ "slash": "1.0.0",
+ "source-map": "0.5.6"
+ }
},
"babel-preset-es2015": {
"version": "6.3.13",
"resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.3.13.tgz",
"integrity": "sha1-l9zn7ykuGMubK3VF2AxZPCjZUX8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-check-es2015-constants": "6.22.0",
+ "babel-plugin-transform-es2015-arrow-functions": "6.22.0",
+ "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0",
+ "babel-plugin-transform-es2015-block-scoping": "6.24.1",
+ "babel-plugin-transform-es2015-classes": "6.24.1",
+ "babel-plugin-transform-es2015-computed-properties": "6.24.1",
+ "babel-plugin-transform-es2015-destructuring": "6.23.0",
+ "babel-plugin-transform-es2015-for-of": "6.23.0",
+ "babel-plugin-transform-es2015-function-name": "6.24.1",
+ "babel-plugin-transform-es2015-literals": "6.22.0",
+ "babel-plugin-transform-es2015-modules-commonjs": "6.24.1",
+ "babel-plugin-transform-es2015-object-super": "6.24.1",
+ "babel-plugin-transform-es2015-parameters": "6.24.1",
+ "babel-plugin-transform-es2015-shorthand-properties": "6.24.1",
+ "babel-plugin-transform-es2015-spread": "6.22.0",
+ "babel-plugin-transform-es2015-sticky-regex": "6.24.1",
+ "babel-plugin-transform-es2015-template-literals": "6.22.0",
+ "babel-plugin-transform-es2015-typeof-symbol": "6.23.0",
+ "babel-plugin-transform-es2015-unicode-regex": "6.24.1",
+ "babel-plugin-transform-regenerator": "6.24.1"
+ }
},
"babel-runtime": {
"version": "5.8.38",
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz",
"integrity": "sha1-HAsC62MxL18If/IEUIJ7QlydTBk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "core-js": "1.2.7"
+ }
},
"babel-traverse": {
"version": "6.3.26",
"resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.3.26.tgz",
"integrity": "sha1-e5xis2vfz4CsBsMn0zhPTg4EYEc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "6.22.0",
+ "babel-messages": "6.23.0",
+ "babel-runtime": "5.8.38",
+ "babel-types": "6.25.0",
+ "babylon": "6.3.26",
+ "debug": "2.6.8",
+ "globals": "8.18.0",
+ "invariant": "2.2.2",
+ "lodash": "3.10.1",
+ "repeating": "1.1.3"
+ }
},
"babylon": {
"version": "6.3.26",
"resolved": "https://registry.npmjs.org/babylon/-/babylon-6.3.26.tgz",
"integrity": "sha1-Qc5Gp+mCACnLL3x80Z15KZyUNXM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "5.8.38"
+ }
},
"chalk": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.1.tgz",
"integrity": "sha1-UJr7ZwZudJn36zU1x3RFdyri0Bk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-styles": "2.2.1",
+ "escape-string-regexp": "1.0.5",
+ "has-ansi": "2.0.0",
+ "strip-ansi": "3.0.1",
+ "supports-color": "2.0.0"
+ }
},
"core-js": {
"version": "1.2.7",
@@ -399,7 +833,14 @@
"version": "5.0.15",
"resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
"integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "2.0.10",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
},
"globals": {
"version": "8.18.0",
@@ -423,13 +864,19 @@
"version": "2.0.10",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
"integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "brace-expansion": "1.1.8"
+ }
},
"repeating": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz",
"integrity": "sha1-PUEUIYh3U3SU+X93+Xhfq4EPpKw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-finite": "1.0.2"
+ }
}
}
},
@@ -455,217 +902,440 @@
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
"integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-remap-async-to-generator": "6.24.1",
+ "babel-plugin-syntax-async-functions": "6.13.0",
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-arrow-functions": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
"integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-block-scoped-functions": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
"integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-block-scoping": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz",
"integrity": "sha1-dsKV3DpHQbFmWt/TFnIV3P8ypXY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0",
+ "lodash": "4.17.4"
+ }
},
"babel-plugin-transform-es2015-classes": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
"integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-define-map": "6.24.1",
+ "babel-helper-function-name": "6.24.1",
+ "babel-helper-optimise-call-expression": "6.24.1",
+ "babel-helper-replace-supers": "6.24.1",
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-computed-properties": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
"integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-destructuring": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
"integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-duplicate-keys": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
"integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-for-of": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
"integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-function-name": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
"integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-literals": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
"integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-modules-amd": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
"integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-es2015-modules-commonjs": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-modules-commonjs": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz",
"integrity": "sha1-0+MQtA72ZKNmIiAAl8bUQCmPK/4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-strict-mode": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-modules-systemjs": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
"integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-hoist-variables": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-modules-umd": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
"integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-es2015-modules-amd": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-object-super": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
"integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-replace-supers": "6.24.1",
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-parameters": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
"integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-call-delegate": "6.24.1",
+ "babel-helper-get-function-arity": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-shorthand-properties": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
"integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-spread": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
"integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-sticky-regex": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
"integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-regex": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-plugin-transform-es2015-template-literals": {
"version": "6.22.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
"integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-typeof-symbol": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
"integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-es2015-unicode-regex": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
"integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-regex": "6.24.1",
+ "babel-runtime": "6.23.0",
+ "regexpu-core": "2.0.0"
+ }
},
"babel-plugin-transform-exponentiation-operator": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
"integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1",
+ "babel-plugin-syntax-exponentiation-operator": "6.13.0",
+ "babel-runtime": "6.23.0"
+ }
},
"babel-plugin-transform-regenerator": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz",
"integrity": "sha1-uNowWtQ8PJm0hI5P5AN7dw0jxBg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "regenerator-transform": "0.9.11"
+ }
},
"babel-plugin-transform-strict-mode": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
"integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0"
+ }
},
"babel-polyfill": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.23.0.tgz",
"integrity": "sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "core-js": "2.4.1",
+ "regenerator-runtime": "0.10.5"
+ }
},
"babel-preset-es2015": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz",
"integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-check-es2015-constants": "6.22.0",
+ "babel-plugin-transform-es2015-arrow-functions": "6.22.0",
+ "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0",
+ "babel-plugin-transform-es2015-block-scoping": "6.24.1",
+ "babel-plugin-transform-es2015-classes": "6.24.1",
+ "babel-plugin-transform-es2015-computed-properties": "6.24.1",
+ "babel-plugin-transform-es2015-destructuring": "6.23.0",
+ "babel-plugin-transform-es2015-duplicate-keys": "6.24.1",
+ "babel-plugin-transform-es2015-for-of": "6.23.0",
+ "babel-plugin-transform-es2015-function-name": "6.24.1",
+ "babel-plugin-transform-es2015-literals": "6.22.0",
+ "babel-plugin-transform-es2015-modules-amd": "6.24.1",
+ "babel-plugin-transform-es2015-modules-commonjs": "6.24.1",
+ "babel-plugin-transform-es2015-modules-systemjs": "6.24.1",
+ "babel-plugin-transform-es2015-modules-umd": "6.24.1",
+ "babel-plugin-transform-es2015-object-super": "6.24.1",
+ "babel-plugin-transform-es2015-parameters": "6.24.1",
+ "babel-plugin-transform-es2015-shorthand-properties": "6.24.1",
+ "babel-plugin-transform-es2015-spread": "6.22.0",
+ "babel-plugin-transform-es2015-sticky-regex": "6.24.1",
+ "babel-plugin-transform-es2015-template-literals": "6.22.0",
+ "babel-plugin-transform-es2015-typeof-symbol": "6.23.0",
+ "babel-plugin-transform-es2015-unicode-regex": "6.24.1",
+ "babel-plugin-transform-regenerator": "6.24.1"
+ }
},
"babel-preset-es2016": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-preset-es2016/-/babel-preset-es2016-6.24.1.tgz",
"integrity": "sha1-+QC/k+LrwNJ235uKtZck6/2Vn4s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-exponentiation-operator": "6.24.1"
+ }
},
"babel-preset-es2017": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-preset-es2017/-/babel-preset-es2017-6.24.1.tgz",
"integrity": "sha1-WXvq37n38gi8/YoS6bKym4svFNE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-trailing-function-commas": "6.22.0",
+ "babel-plugin-transform-async-to-generator": "6.24.1"
+ }
},
"babel-preset-latest": {
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/babel-preset-latest/-/babel-preset-latest-6.24.1.tgz",
"integrity": "sha1-Z33gaRVKdIXC0lxXfAL2JLhbheg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-preset-es2015": "6.24.1",
+ "babel-preset-es2016": "6.24.1",
+ "babel-preset-es2017": "6.24.1"
+ }
},
"babel-register": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.24.1.tgz",
- "integrity": "sha1-fhDhOi9xBlvfrVoXh7pFvKbe118=",
- "dev": true
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
+ "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
+ "dev": true,
+ "requires": {
+ "babel-core": "6.26.3",
+ "babel-runtime": "6.26.0",
+ "core-js": "2.5.6",
+ "home-or-tmp": "2.0.0",
+ "lodash": "4.17.4",
+ "mkdirp": "0.5.1",
+ "source-map-support": "0.4.15"
+ },
+ "dependencies": {
+ "babel-runtime": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
+ "dev": true,
+ "requires": {
+ "core-js": "2.5.6",
+ "regenerator-runtime": "0.11.1"
+ }
+ },
+ "core-js": {
+ "version": "2.5.6",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.6.tgz",
+ "integrity": "sha512-lQUVfQi0aLix2xpyjrrJEvfuYCqPc/HwmTKsC/VNf8q0zsjX7SQZtp4+oRONN5Tsur9GDETPjj+Ub2iDiGZfSQ==",
+ "dev": true
+ },
+ "regenerator-runtime": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
+ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
+ "dev": true
+ }
+ }
},
"babel-runtime": {
"version": "6.23.0",
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.23.0.tgz",
"integrity": "sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "core-js": "2.4.1",
+ "regenerator-runtime": "0.10.5"
+ }
},
"babel-template": {
"version": "6.25.0",
"resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.25.0.tgz",
"integrity": "sha1-ZlJBFmt8KqTGGdceGSlpVSsQwHE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0",
+ "babylon": "6.17.4",
+ "lodash": "4.17.4"
+ }
},
"babel-traverse": {
"version": "6.25.0",
"resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.25.0.tgz",
"integrity": "sha1-IldJfi/NGbie3BPEyROB+VEklvE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "6.22.0",
+ "babel-messages": "6.23.0",
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0",
+ "babylon": "6.17.4",
+ "debug": "2.6.8",
+ "globals": "9.18.0",
+ "invariant": "2.2.2",
+ "lodash": "4.17.4"
+ }
},
"babel-types": {
"version": "6.25.0",
"resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.25.0.tgz",
"integrity": "sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "esutils": "2.0.2",
+ "lodash": "4.17.4",
+ "to-fast-properties": "1.0.3"
+ }
},
"babylon": {
"version": "6.17.4",
@@ -690,19 +1360,31 @@
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
"integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "tweetnacl": "0.14.5"
+ }
},
"bin-version": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/bin-version/-/bin-version-1.0.4.tgz",
"integrity": "sha1-nrSY7m/Xb3q5p8FgQ2+JV5Q1144=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "find-versions": "1.2.1"
+ }
},
"bin-version-check": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-2.1.0.tgz",
"integrity": "sha1-5OXfKQuQaffRETJAMe/BP90RpbA=",
"dev": true,
+ "requires": {
+ "bin-version": "1.0.4",
+ "minimist": "1.2.0",
+ "semver": "4.3.6",
+ "semver-truncate": "1.1.2"
+ },
"dependencies": {
"minimist": {
"version": "1.2.0",
@@ -721,50 +1403,53 @@
"bindings": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz",
- "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE="
+ "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=",
+ "dev": true,
+ "optional": true
},
"block-stream": {
"version": "0.0.9",
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.3"
+ }
},
"bluebird": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz",
- "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=",
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
+ "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
"dev": true
},
"boom": {
"version": "2.10.1",
"resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "hoek": "2.16.3"
+ }
},
"brace-expansion": {
"version": "1.1.8",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
"integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "balanced-match": "1.0.0",
+ "concat-map": "0.0.1"
+ }
},
"braces": {
"version": "1.8.5",
"resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
"integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
- "dev": true
- },
- "browser-resolve": {
- "version": "1.11.2",
- "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz",
- "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=",
"dev": true,
- "dependencies": {
- "resolve": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
- "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
- "dev": true
- }
+ "requires": {
+ "expand-range": "1.8.2",
+ "preserve": "0.2.0",
+ "repeat-element": "1.1.2"
}
},
"browser-stdout": {
@@ -780,22 +1465,33 @@
"dev": true
},
"cache-point": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/cache-point/-/cache-point-0.4.0.tgz",
- "integrity": "sha1-J5f2gFWXB1fIfom0ZJeOdOEQR7A=",
- "dev": true
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/cache-point/-/cache-point-0.4.1.tgz",
+ "integrity": "sha512-4TgWfe9SF+bUy5cCql8gWHqKNrviufNwSYxLjf2utB0pY4+bdcuFwMmY1hDB+67Gz/L1vmhFNhePAjJTFBtV+Q==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "fs-then-native": "2.0.0",
+ "mkdirp2": "1.0.3"
+ }
},
"cachedir": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/cachedir/-/cachedir-1.1.1.tgz",
"integrity": "sha1-4TYwdeogahJ2fZK7cRyKL3ahD2I=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-homedir": "1.0.2"
+ }
},
"caller-path": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
"integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "callsites": "0.2.0"
+ }
},
"callsites": {
"version": "0.2.0",
@@ -813,7 +1509,11 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "camelcase": "2.1.1",
+ "map-obj": "1.0.1"
+ }
},
"caseless": {
"version": "0.12.0",
@@ -825,26 +1525,51 @@
"version": "0.8.9",
"resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz",
"integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "underscore-contrib": "0.3.0"
+ }
},
"center-align": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
"integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "align-text": "0.1.4",
+ "lazy-cache": "1.0.4"
+ }
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-styles": "2.2.1",
+ "escape-string-regexp": "1.0.5",
+ "has-ansi": "2.0.0",
+ "strip-ansi": "3.0.1",
+ "supports-color": "2.0.0"
+ }
},
"chokidar": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
"integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "anymatch": "1.3.0",
+ "async-each": "1.0.1",
+ "fsevents": "1.1.2",
+ "glob-parent": "2.0.0",
+ "inherits": "2.0.3",
+ "is-binary-path": "1.0.1",
+ "is-glob": "2.0.1",
+ "path-is-absolute": "1.0.1",
+ "readdirp": "2.1.0"
+ }
},
"circular-json": {
"version": "0.3.1",
@@ -856,7 +1581,10 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "restore-cursor": "1.0.1"
+ }
},
"cli-width": {
"version": "2.1.0",
@@ -870,6 +1598,11 @@
"integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
"dev": true,
"optional": true,
+ "requires": {
+ "center-align": "0.1.3",
+ "right-align": "0.1.3",
+ "wordwrap": "0.0.2"
+ },
"dependencies": {
"wordwrap": {
"version": "0.0.2",
@@ -896,31 +1629,84 @@
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/collect-all/-/collect-all-1.0.3.tgz",
"integrity": "sha512-0y0rBgoX8IzIjBAUnO73SEtSb4Mhk3IoceWJq5zZSxb9mWORhWH8xLYo4EDSOE1jRBk1LhmfjqWFFt10h/+MEA==",
+ "dev": true,
+ "requires": {
+ "stream-connect": "1.0.2",
+ "stream-via": "1.0.4"
+ }
+ },
+ "colors": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz",
+ "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=",
"dev": true
},
"combined-stream": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
"integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "delayed-stream": "1.0.0"
+ }
},
"command-line-args": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-4.0.6.tgz",
- "integrity": "sha1-D/h6HdFZiQ3K6yoAWr2uceVQWfw=",
- "dev": true
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-4.0.7.tgz",
+ "integrity": "sha512-aUdPvQRAyBvQd2n7jXcsMDz68ckBJELXNzBybCHOibUWEg0mWTnaYCSRU8h9R+aNRSvDihJtssSRCiDRpLaezA==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "find-replace": "1.0.3",
+ "typical": "2.6.1"
+ }
},
"command-line-tool": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/command-line-tool/-/command-line-tool-0.7.0.tgz",
"integrity": "sha1-yoB5KuIGnPfKpWLAy8LNEYERIqA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-escape-sequences": "3.0.0",
+ "array-back": "1.0.4",
+ "command-line-args": "4.0.7",
+ "command-line-usage": "4.1.0",
+ "typical": "2.6.1"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"command-line-usage": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-4.0.0.tgz",
- "integrity": "sha1-gWsyeItY+f66RNHm2sYPyuspteo=",
- "dev": true
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-4.1.0.tgz",
+ "integrity": "sha512-MxS8Ad995KpdAC0Jopo/ovGIroV/m0KHwzKfXxKag6FHOkGsH8/lv5yjgablcRxCJJC0oJeUMuO/gmaq+Wq46g==",
+ "dev": true,
+ "requires": {
+ "ansi-escape-sequences": "4.0.0",
+ "array-back": "2.0.0",
+ "table-layout": "0.4.3",
+ "typical": "2.6.1"
+ },
+ "dependencies": {
+ "ansi-escape-sequences": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-4.0.0.tgz",
+ "integrity": "sha512-v+0wW9Wezwsyb0uF4aBVCjmSqit3Ru7PZFziGF0o2KwTvN2zWfTi3BRLq9EkJFdg3eBbyERXGTntVpBxH1J68Q==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0"
+ }
+ }
+ }
},
"commander": {
"version": "2.11.0",
@@ -933,18 +1719,51 @@
"resolved": "https://registry.npmjs.org/commitizen/-/commitizen-2.9.6.tgz",
"integrity": "sha1-wNAFNe8mTaf2Nzft/aQiiYP6IpE=",
"dev": true,
+ "requires": {
+ "cachedir": "1.1.1",
+ "chalk": "1.1.3",
+ "cz-conventional-changelog": "1.2.0",
+ "dedent": "0.6.0",
+ "detect-indent": "4.0.0",
+ "find-node-modules": "1.0.4",
+ "find-root": "1.0.0",
+ "fs-extra": "1.0.0",
+ "glob": "7.1.1",
+ "inquirer": "1.2.3",
+ "lodash": "4.17.2",
+ "minimist": "1.2.0",
+ "path-exists": "2.1.0",
+ "shelljs": "0.7.6",
+ "strip-json-comments": "2.0.1"
+ },
"dependencies": {
"cz-conventional-changelog": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-1.2.0.tgz",
"integrity": "sha1-K8oElkyJGbI/P9aonvXmAIsxs/g=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "conventional-commit-types": "2.2.0",
+ "lodash.map": "4.6.0",
+ "longest": "1.0.1",
+ "pad-right": "0.2.2",
+ "right-pad": "1.0.1",
+ "word-wrap": "1.2.3"
+ }
},
"glob": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz",
"integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "fs.realpath": "1.0.0",
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
},
"lodash": {
"version": "4.17.2",
@@ -962,7 +1781,10 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "2.0.1"
+ }
}
}
},
@@ -982,13 +1804,29 @@
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
"integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.3",
+ "readable-stream": "2.3.3",
+ "typedarray": "0.0.6"
+ }
},
"config-master": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/config-master/-/config-master-3.1.0.tgz",
"integrity": "sha1-ZnZjWQUFooO/JqSE1oSJ10xUhdo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "walk-back": "2.0.1"
+ },
+ "dependencies": {
+ "walk-back": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-2.0.1.tgz",
+ "integrity": "sha1-VU4qnYdPrEeoywBr9EwvDEmYoKQ=",
+ "dev": true
+ }
+ }
},
"console-control-strings": {
"version": "1.1.0",
@@ -1020,11 +1858,24 @@
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
"dev": true
},
+ "corser": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/corser/-/corser-2.0.1.tgz",
+ "integrity": "sha1-jtolLsqrWEDc2XXOuQ2TcMgZ/4c=",
+ "dev": true
+ },
"coveralls": {
- "version": "2.13.1",
- "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-2.13.1.tgz",
- "integrity": "sha1-1wu5rMGDXsTwY/+drFQjwXsR8Xg=",
+ "version": "2.13.3",
+ "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-2.13.3.tgz",
+ "integrity": "sha512-iiAmn+l1XqRwNLXhW8Rs5qHZRFMYp9ZIPjEOVRpC/c4so6Y/f4/lFi0FfR5B9cCqgyhkJ5cZmbvcVRfP8MHchw==",
"dev": true,
+ "requires": {
+ "js-yaml": "3.6.1",
+ "lcov-parse": "0.0.10",
+ "log-driver": "1.2.5",
+ "minimist": "1.2.0",
+ "request": "2.79.0"
+ },
"dependencies": {
"caseless": {
"version": "0.11.0",
@@ -1036,7 +1887,13 @@
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
"integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "chalk": "1.1.3",
+ "commander": "2.11.0",
+ "is-my-json-valid": "2.16.0",
+ "pinkie-promise": "2.0.1"
+ }
},
"minimist": {
"version": "1.2.0",
@@ -1054,7 +1911,29 @@
"version": "2.79.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
"integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "aws-sign2": "0.6.0",
+ "aws4": "1.6.0",
+ "caseless": "0.11.0",
+ "combined-stream": "1.0.5",
+ "extend": "3.0.1",
+ "forever-agent": "0.6.1",
+ "form-data": "2.1.4",
+ "har-validator": "2.0.6",
+ "hawk": "3.1.3",
+ "http-signature": "1.1.1",
+ "is-typedarray": "1.0.0",
+ "isstream": "0.1.2",
+ "json-stringify-safe": "5.0.1",
+ "mime-types": "2.1.15",
+ "oauth-sign": "0.8.2",
+ "qs": "6.3.2",
+ "stringstream": "0.0.5",
+ "tough-cookie": "2.3.2",
+ "tunnel-agent": "0.4.3",
+ "uuid": "3.1.0"
+ }
},
"tunnel-agent": {
"version": "0.4.3",
@@ -1068,37 +1947,60 @@
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
"integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lru-cache": "4.1.1",
+ "which": "1.2.14"
+ }
},
"cryptiles": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
"integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "boom": "2.10.1"
+ }
},
"currently-unhandled": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
"integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-find-index": "1.0.2"
+ }
},
"cz-conventional-changelog": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-2.0.0.tgz",
- "integrity": "sha1-Val5r9/pXnAkh50qD1kkYwFwtTM=",
- "dev": true
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-2.1.0.tgz",
+ "integrity": "sha1-L0vHOQ4yROTfKT5ro1Hkx0Cnx2Q=",
+ "dev": true,
+ "requires": {
+ "conventional-commit-types": "2.2.0",
+ "lodash.map": "4.6.0",
+ "longest": "1.0.1",
+ "right-pad": "1.0.1",
+ "word-wrap": "1.2.3"
+ }
},
"d": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz",
"integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "es5-ext": "0.10.24"
+ }
},
"dashdash": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"dev": true,
+ "requires": {
+ "assert-plus": "1.0.0"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -1112,7 +2014,10 @@
"version": "2.6.8",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
"integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
},
"decamelize": {
"version": "1.2.0",
@@ -1127,9 +2032,9 @@
"dev": true
},
"deep-extend": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
- "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz",
+ "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==",
"dev": true
},
"deep-is": {
@@ -1142,19 +2047,25 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz",
"integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=",
- "dev": true
- },
- "defer-promise": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/defer-promise/-/defer-promise-1.0.1.tgz",
- "integrity": "sha1-HKb/7dvO8XFd16riXHYW+a4iky8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "strip-bom": "2.0.0"
+ }
},
"del": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
"integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "globby": "5.0.0",
+ "is-path-cwd": "1.0.0",
+ "is-path-in-cwd": "1.0.0",
+ "object-assign": "4.1.1",
+ "pify": "2.3.0",
+ "pinkie-promise": "2.0.1",
+ "rimraf": "2.6.1"
+ }
},
"delayed-stream": {
"version": "1.0.0",
@@ -1172,13 +2083,19 @@
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz",
"integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "fs-exists-sync": "0.1.0"
+ }
},
"detect-indent": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
"integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "repeating": "2.0.1"
+ }
},
"diff": {
"version": "3.2.0",
@@ -1187,58 +2104,55 @@
"dev": true
},
"dmd": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/dmd/-/dmd-3.0.6.tgz",
- "integrity": "sha1-lMDg+4jRy2uCg3WVBT3nkZx1PCU=",
+ "version": "3.0.12",
+ "resolved": "https://registry.npmjs.org/dmd/-/dmd-3.0.12.tgz",
+ "integrity": "sha512-79w644JdsB2TthYpVl2bDurX7i9Abaegg2E7X46Ajc135aASTMXxrHzJ9mOa5X5nbmnXwlBYiF68K+1baX+BzQ==",
"dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "cache-point": "0.4.1",
+ "common-sequence": "1.0.2",
+ "file-set": "2.0.0",
+ "handlebars": "4.0.11",
+ "marked": "0.3.19",
+ "object-get": "2.1.0",
+ "reduce-flatten": "1.0.1",
+ "reduce-unique": "1.0.0",
+ "reduce-without": "1.0.1",
+ "test-value": "3.0.0",
+ "walk-back": "3.0.0"
+ },
"dependencies": {
- "async": {
- "version": "0.2.10",
- "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
- "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
- "dev": true,
- "optional": true
- },
"handlebars": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-3.0.3.tgz",
- "integrity": "sha1-DgllGi8Ps8lJFgWDcQ1VH5Lm0q0=",
- "dev": true
+ "version": "4.0.11",
+ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
+ "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
+ "dev": true,
+ "requires": {
+ "async": "1.5.2",
+ "optimist": "0.6.1",
+ "source-map": "0.4.4",
+ "uglify-js": "2.8.29"
+ }
},
"source-map": {
- "version": "0.1.43",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
- "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
- "dev": true
- },
- "uglify-js": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz",
- "integrity": "sha1-+gmEdwtCi3qbKoBY9GNV0U/vIRo=",
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"dev": true,
- "optional": true,
- "dependencies": {
- "optimist": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz",
- "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=",
- "dev": true,
- "optional": true
- }
+ "requires": {
+ "amdefine": "1.0.1"
}
},
- "walk-back": {
+ "test-value": {
"version": "3.0.0",
- "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-3.0.0.tgz",
- "integrity": "sha1-I1h4ejXakQMtrV6S+AsSNw2HlcU=",
- "dev": true
- },
- "wordwrap": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
- "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
+ "resolved": "https://registry.npmjs.org/test-value/-/test-value-3.0.0.tgz",
+ "integrity": "sha512-sVACdAWcZkSU9x7AOmJo5TqE+GyNJknHaHsMrR6ZnhjVlVN9Yx6FjHrsKZ3BjIpPCT68zYesPWkakrNupwfOTQ==",
"dev": true,
- "optional": true
+ "requires": {
+ "array-back": "2.0.0",
+ "typical": "2.6.1"
+ }
}
}
},
@@ -1246,56 +2160,120 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz",
"integrity": "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "esutils": "2.0.2",
+ "isarray": "1.0.0"
+ }
},
"ecc-jsbn": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
"integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "jsbn": "0.1.1"
+ }
+ },
+ "ecstatic": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ecstatic/-/ecstatic-2.2.1.tgz",
+ "integrity": "sha512-ztE4WqheoWLh3wv+HQwy7dACnvNY620coWpa+XqY6R2cVWgaAT2lUISU1Uf7JpdLLJCURktJOaA9av2AOzsyYQ==",
+ "dev": true,
+ "requires": {
+ "he": "1.1.1",
+ "mime": "1.6.0",
+ "minimist": "1.2.0",
+ "url-join": "2.0.5"
+ },
+ "dependencies": {
+ "minimist": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
+ "dev": true
+ }
+ }
},
"error-ex": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
"integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-arrayish": "0.2.1"
+ }
},
"es5-ext": {
"version": "0.10.24",
"resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.24.tgz",
"integrity": "sha1-pVh3yZJLwMjZvTwsvhdJWsFwmxQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "es6-iterator": "2.0.1",
+ "es6-symbol": "3.1.1"
+ }
},
"es6-iterator": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.1.tgz",
"integrity": "sha1-jjGcnwRTv1ddN0lAplWSDlnKVRI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24",
+ "es6-symbol": "3.1.1"
+ }
},
"es6-map": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz",
"integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24",
+ "es6-iterator": "2.0.1",
+ "es6-set": "0.1.5",
+ "es6-symbol": "3.1.1",
+ "event-emitter": "0.3.5"
+ }
},
"es6-set": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz",
"integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24",
+ "es6-iterator": "2.0.1",
+ "es6-symbol": "3.1.1",
+ "event-emitter": "0.3.5"
+ }
},
"es6-symbol": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz",
"integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24"
+ }
},
"es6-weak-map": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz",
"integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24",
+ "es6-iterator": "2.0.1",
+ "es6-symbol": "3.1.1"
+ }
},
"escape-string-regexp": {
"version": "1.0.5",
@@ -1307,25 +2285,86 @@
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz",
"integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "es6-map": "0.1.5",
+ "es6-weak-map": "2.0.2",
+ "esrecurse": "4.2.0",
+ "estraverse": "4.2.0"
+ }
},
"eslint": {
"version": "3.19.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz",
"integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=",
"dev": true,
+ "requires": {
+ "babel-code-frame": "6.22.0",
+ "chalk": "1.1.3",
+ "concat-stream": "1.6.0",
+ "debug": "2.6.8",
+ "doctrine": "2.0.0",
+ "escope": "3.6.0",
+ "espree": "3.4.3",
+ "esquery": "1.0.0",
+ "estraverse": "4.2.0",
+ "esutils": "2.0.2",
+ "file-entry-cache": "2.0.0",
+ "glob": "7.1.2",
+ "globals": "9.18.0",
+ "ignore": "3.3.3",
+ "imurmurhash": "0.1.4",
+ "inquirer": "0.12.0",
+ "is-my-json-valid": "2.16.0",
+ "is-resolvable": "1.0.0",
+ "js-yaml": "3.6.1",
+ "json-stable-stringify": "1.0.1",
+ "levn": "0.3.0",
+ "lodash": "4.17.4",
+ "mkdirp": "0.5.1",
+ "natural-compare": "1.4.0",
+ "optionator": "0.8.2",
+ "path-is-inside": "1.0.2",
+ "pluralize": "1.2.1",
+ "progress": "1.1.8",
+ "require-uncached": "1.0.3",
+ "shelljs": "0.7.6",
+ "strip-bom": "3.0.0",
+ "strip-json-comments": "2.0.1",
+ "table": "3.8.3",
+ "text-table": "0.2.0",
+ "user-home": "2.0.0"
+ },
"dependencies": {
"inquirer": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz",
"integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "1.4.0",
+ "ansi-regex": "2.1.1",
+ "chalk": "1.1.3",
+ "cli-cursor": "1.0.2",
+ "cli-width": "2.1.0",
+ "figures": "1.7.0",
+ "lodash": "4.17.4",
+ "readline2": "1.0.1",
+ "run-async": "0.1.0",
+ "rx-lite": "3.1.2",
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1",
+ "through": "2.3.8"
+ }
},
"run-async": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz",
"integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "once": "1.4.0"
+ }
},
"strip-bom": {
"version": "3.0.0",
@@ -1337,7 +2376,10 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz",
"integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-homedir": "1.0.2"
+ }
}
}
},
@@ -1345,7 +2387,11 @@
"version": "3.4.3",
"resolved": "https://registry.npmjs.org/espree/-/espree-3.4.3.tgz",
"integrity": "sha1-KRC1zNSc6JPC//+qtP2LOjG4I3Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "acorn": "5.1.1",
+ "acorn-jsx": "3.0.1"
+ }
},
"esprima": {
"version": "2.7.3",
@@ -1357,13 +2403,20 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz",
"integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "estraverse": "4.2.0"
+ }
},
"esrecurse": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz",
"integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "estraverse": "4.2.0",
+ "object-assign": "4.1.1"
+ }
},
"estraverse": {
"version": "4.2.0",
@@ -1387,6 +2440,16 @@
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
"integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
+ "dev": true,
+ "requires": {
+ "d": "1.0.0",
+ "es5-ext": "0.10.24"
+ }
+ },
+ "eventemitter3": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz",
+ "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==",
"dev": true
},
"exit-hook": {
@@ -1399,19 +2462,28 @@
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
"integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "0.1.1"
+ }
},
"expand-range": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
"integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "fill-range": "2.2.3"
+ }
},
"expand-tilde": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz",
"integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-homedir": "1.0.2"
+ }
},
"extend": {
"version": "3.0.1",
@@ -1423,13 +2495,21 @@
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz",
"integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "extend": "3.0.1",
+ "spawn-sync": "1.0.15",
+ "tmp": "0.0.29"
+ }
},
"extglob": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
"integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
},
"extsprintf": {
"version": "1.0.2",
@@ -1443,29 +2523,35 @@
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
"dev": true
},
- "feature-detect-es6": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/feature-detect-es6/-/feature-detect-es6-1.3.1.tgz",
- "integrity": "sha1-+IhzavnLDJH1VmO/pHYuuW7nBH8=",
- "dev": true
- },
"figures": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
"integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "1.0.5",
+ "object-assign": "4.1.1"
+ }
},
"file-entry-cache": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz",
"integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "flat-cache": "1.2.2",
+ "object-assign": "4.1.1"
+ }
},
"file-set": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/file-set/-/file-set-1.1.1.tgz",
- "integrity": "sha1-0+xwwIDsjxjyBLod4QZ4DJBWkms=",
- "dev": true
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/file-set/-/file-set-2.0.0.tgz",
+ "integrity": "sha512-cCWXfw+nrYoIoUVmEF7Xsw91lGWuObtSnTEZ7AmdvZou1A/6Xx237HfxdQyC/ayKRvQSMbNOBwg62OjN5JxbXw==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "glob": "7.1.2"
+ }
},
"filename-regex": {
"version": "2.0.1",
@@ -1477,25 +2563,55 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz",
"integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2",
+ "minimatch": "3.0.4"
+ }
},
"fill-range": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
"integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-number": "2.1.0",
+ "isobject": "2.1.0",
+ "randomatic": "1.1.7",
+ "repeat-element": "1.1.2",
+ "repeat-string": "1.6.1"
+ }
},
"find-node-modules": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-1.0.4.tgz",
"integrity": "sha1-tt6zzMtpnIcDdne87eLF9YYrJVA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "findup-sync": "0.4.2",
+ "merge": "1.2.0"
+ }
},
"find-replace": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/find-replace/-/find-replace-1.0.3.tgz",
"integrity": "sha1-uI5zZNLZyVlVnziMZmcNYTBEH6A=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "test-value": "2.1.0"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"find-root": {
"version": "1.0.0",
@@ -1508,12 +2624,19 @@
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
"integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
"dev": true,
+ "requires": {
+ "path-exists": "2.1.0",
+ "pinkie-promise": "2.0.1"
+ },
"dependencies": {
"path-exists": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "2.0.1"
+ }
}
}
},
@@ -1521,19 +2644,57 @@
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz",
"integrity": "sha1-y96fEuOFdaCvG+G5osXV/Y8Ya2I=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-uniq": "1.0.3",
+ "get-stdin": "4.0.1",
+ "meow": "3.7.0",
+ "semver-regex": "1.0.0"
+ }
},
"findup-sync": {
"version": "0.4.2",
"resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.2.tgz",
"integrity": "sha1-qBF9D3MST1pFRoOVef5S1xKfteU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "detect-file": "0.1.0",
+ "is-glob": "2.0.1",
+ "micromatch": "2.3.11",
+ "resolve-dir": "0.1.1"
+ }
},
"flat-cache": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.2.2.tgz",
"integrity": "sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "circular-json": "0.3.1",
+ "del": "2.2.2",
+ "graceful-fs": "4.1.11",
+ "write": "0.2.1"
+ }
+ },
+ "follow-redirects": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.4.1.tgz",
+ "integrity": "sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==",
+ "dev": true,
+ "requires": {
+ "debug": "3.1.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
+ }
},
"for-in": {
"version": "1.0.2",
@@ -1545,7 +2706,10 @@
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
"integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "for-in": "1.0.2"
+ }
},
"forever-agent": {
"version": "0.6.1",
@@ -1557,7 +2721,12 @@
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
"integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "asynckit": "0.4.0",
+ "combined-stream": "1.0.5",
+ "mime-types": "2.1.15"
+ }
},
"fs-exists-sync": {
"version": "0.1.0",
@@ -1569,12 +2738,17 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz",
"integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "jsonfile": "2.4.0",
+ "klaw": "1.3.1"
+ }
},
"fs-readdir-recursive": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz",
- "integrity": "sha1-jNF0XItPiinIyuw5JHaSG6GV9WA=",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz",
+ "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==",
"dev": true
},
"fs-then-native": {
@@ -1595,6 +2769,10 @@
"integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==",
"dev": true,
"optional": true,
+ "requires": {
+ "nan": "2.6.2",
+ "node-pre-gyp": "0.6.36"
+ },
"dependencies": {
"abbrev": {
"version": "1.1.0",
@@ -1606,7 +2784,11 @@
"version": "4.11.8",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "co": "4.6.0",
+ "json-stable-stringify": "1.0.1"
+ }
},
"ansi-regex": {
"version": "2.1.1",
@@ -1623,7 +2805,11 @@
"version": "1.1.4",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "delegates": "1.0.0",
+ "readable-stream": "2.2.9"
+ }
},
"asn1": {
"version": "0.2.3",
@@ -1664,22 +2850,35 @@
"version": "1.0.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "tweetnacl": "0.14.5"
+ }
},
"block-stream": {
"version": "0.0.9",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.3"
+ }
},
"boom": {
"version": "2.10.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "hoek": "2.16.3"
+ }
},
"brace-expansion": {
"version": "1.1.7",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "balanced-match": "0.4.2",
+ "concat-map": "0.0.1"
+ }
},
"buffer-shims": {
"version": "1.0.0",
@@ -1706,7 +2905,10 @@
"combined-stream": {
"version": "1.0.5",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "delayed-stream": "1.0.0"
+ }
},
"concat-map": {
"version": "0.0.1",
@@ -1727,13 +2929,19 @@
"version": "2.0.5",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "boom": "2.10.1"
+ }
},
"dashdash": {
"version": "1.14.1",
"bundled": true,
"dev": true,
"optional": true,
+ "requires": {
+ "assert-plus": "1.0.0"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -1747,7 +2955,10 @@
"version": "2.6.8",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
},
"deep-extend": {
"version": "0.4.2",
@@ -1770,7 +2981,10 @@
"version": "0.1.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "jsbn": "0.1.1"
+ }
},
"extend": {
"version": "3.0.1",
@@ -1793,7 +3007,12 @@
"version": "2.1.4",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "asynckit": "0.4.0",
+ "combined-stream": "1.0.5",
+ "mime-types": "2.1.15"
+ }
},
"fs.realpath": {
"version": "1.0.0",
@@ -1803,25 +3022,49 @@
"fstream": {
"version": "1.0.11",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "inherits": "2.0.3",
+ "mkdirp": "0.5.1",
+ "rimraf": "2.6.1"
+ }
},
"fstream-ignore": {
"version": "1.0.5",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "fstream": "1.0.11",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4"
+ }
},
"gauge": {
"version": "2.7.4",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "aproba": "1.1.1",
+ "console-control-strings": "1.1.0",
+ "has-unicode": "2.0.1",
+ "object-assign": "4.1.1",
+ "signal-exit": "3.0.2",
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1",
+ "wide-align": "1.1.2"
+ }
},
"getpass": {
"version": "0.1.7",
"bundled": true,
"dev": true,
"optional": true,
+ "requires": {
+ "assert-plus": "1.0.0"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -1834,7 +3077,15 @@
"glob": {
"version": "7.1.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "fs.realpath": "1.0.0",
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
},
"graceful-fs": {
"version": "4.1.11",
@@ -1851,7 +3102,11 @@
"version": "4.2.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "ajv": "4.11.8",
+ "har-schema": "1.0.5"
+ }
},
"has-unicode": {
"version": "2.0.1",
@@ -1863,7 +3118,13 @@
"version": "3.1.3",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "boom": "2.10.1",
+ "cryptiles": "2.0.5",
+ "hoek": "2.16.3",
+ "sntp": "1.0.9"
+ }
},
"hoek": {
"version": "2.16.3",
@@ -1874,12 +3135,21 @@
"version": "1.1.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "assert-plus": "0.2.0",
+ "jsprim": "1.4.0",
+ "sshpk": "1.13.0"
+ }
},
"inflight": {
"version": "1.0.6",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "once": "1.4.0",
+ "wrappy": "1.0.2"
+ }
},
"inherits": {
"version": "2.0.3",
@@ -1895,7 +3165,10 @@
"is-fullwidth-code-point": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "number-is-nan": "1.0.1"
+ }
},
"is-typedarray": {
"version": "1.0.0",
@@ -1918,7 +3191,10 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "jsbn": "0.1.1"
+ }
},
"jsbn": {
"version": "0.1.1",
@@ -1936,7 +3212,10 @@
"version": "1.0.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "jsonify": "0.0.0"
+ }
},
"json-stringify-safe": {
"version": "5.0.1",
@@ -1955,6 +3234,12 @@
"bundled": true,
"dev": true,
"optional": true,
+ "requires": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.0.2",
+ "json-schema": "0.2.3",
+ "verror": "1.3.6"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -1972,12 +3257,18 @@
"mime-types": {
"version": "2.1.15",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "mime-db": "1.27.0"
+ }
},
"minimatch": {
"version": "3.0.4",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "brace-expansion": "1.1.7"
+ }
},
"minimist": {
"version": "0.0.8",
@@ -1987,7 +3278,10 @@
"mkdirp": {
"version": "0.5.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "minimist": "0.0.8"
+ }
},
"ms": {
"version": "2.0.0",
@@ -1999,19 +3293,40 @@
"version": "0.6.36",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "mkdirp": "0.5.1",
+ "nopt": "4.0.1",
+ "npmlog": "4.1.0",
+ "rc": "1.2.1",
+ "request": "2.81.0",
+ "rimraf": "2.6.1",
+ "semver": "5.3.0",
+ "tar": "2.2.1",
+ "tar-pack": "3.4.0"
+ }
},
"nopt": {
"version": "4.0.1",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "abbrev": "1.1.0",
+ "osenv": "0.1.4"
+ }
},
"npmlog": {
"version": "4.1.0",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "are-we-there-yet": "1.1.4",
+ "console-control-strings": "1.1.0",
+ "gauge": "2.7.4",
+ "set-blocking": "2.0.0"
+ }
},
"number-is-nan": {
"version": "1.0.1",
@@ -2033,7 +3348,10 @@
"once": {
"version": "1.4.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "wrappy": "1.0.2"
+ }
},
"os-homedir": {
"version": "1.0.2",
@@ -2051,7 +3369,11 @@
"version": "0.1.4",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
+ }
},
"path-is-absolute": {
"version": "1.0.1",
@@ -2086,6 +3408,12 @@
"bundled": true,
"dev": true,
"optional": true,
+ "requires": {
+ "deep-extend": "0.4.2",
+ "ini": "1.3.4",
+ "minimist": "1.2.0",
+ "strip-json-comments": "2.0.1"
+ },
"dependencies": {
"minimist": {
"version": "1.2.0",
@@ -2098,18 +3426,54 @@
"readable-stream": {
"version": "2.2.9",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "buffer-shims": "1.0.0",
+ "core-util-is": "1.0.2",
+ "inherits": "2.0.3",
+ "isarray": "1.0.0",
+ "process-nextick-args": "1.0.7",
+ "string_decoder": "1.0.1",
+ "util-deprecate": "1.0.2"
+ }
},
"request": {
"version": "2.81.0",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "aws-sign2": "0.6.0",
+ "aws4": "1.6.0",
+ "caseless": "0.12.0",
+ "combined-stream": "1.0.5",
+ "extend": "3.0.1",
+ "forever-agent": "0.6.1",
+ "form-data": "2.1.4",
+ "har-validator": "4.2.1",
+ "hawk": "3.1.3",
+ "http-signature": "1.1.1",
+ "is-typedarray": "1.0.0",
+ "isstream": "0.1.2",
+ "json-stringify-safe": "5.0.1",
+ "mime-types": "2.1.15",
+ "oauth-sign": "0.8.2",
+ "performance-now": "0.2.0",
+ "qs": "6.4.0",
+ "safe-buffer": "5.0.1",
+ "stringstream": "0.0.5",
+ "tough-cookie": "2.3.2",
+ "tunnel-agent": "0.6.0",
+ "uuid": "3.0.1"
+ }
},
"rimraf": {
"version": "2.6.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2"
+ }
},
"safe-buffer": {
"version": "5.0.1",
@@ -2138,13 +3502,27 @@
"version": "1.0.9",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "hoek": "2.16.3"
+ }
},
"sshpk": {
"version": "1.13.0",
"bundled": true,
"dev": true,
"optional": true,
+ "requires": {
+ "asn1": "0.2.3",
+ "assert-plus": "1.0.0",
+ "bcrypt-pbkdf": "1.0.1",
+ "dashdash": "1.14.1",
+ "ecc-jsbn": "0.1.1",
+ "getpass": "0.1.7",
+ "jodid25519": "1.0.2",
+ "jsbn": "0.1.1",
+ "tweetnacl": "0.14.5"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -2154,15 +3532,23 @@
}
}
},
- "string_decoder": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true
- },
"string-width": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "code-point-at": "1.1.0",
+ "is-fullwidth-code-point": "1.0.0",
+ "strip-ansi": "3.0.1"
+ }
+ },
+ "string_decoder": {
+ "version": "1.0.1",
+ "bundled": true,
+ "dev": true,
+ "requires": {
+ "safe-buffer": "5.0.1"
+ }
},
"stringstream": {
"version": "0.0.5",
@@ -2173,7 +3559,10 @@
"strip-ansi": {
"version": "3.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-regex": "2.1.1"
+ }
},
"strip-json-comments": {
"version": "2.0.1",
@@ -2184,25 +3573,46 @@
"tar": {
"version": "2.2.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "requires": {
+ "block-stream": "0.0.9",
+ "fstream": "1.0.11",
+ "inherits": "2.0.3"
+ }
},
"tar-pack": {
"version": "3.4.0",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "debug": "2.6.8",
+ "fstream": "1.0.11",
+ "fstream-ignore": "1.0.5",
+ "once": "1.4.0",
+ "readable-stream": "2.2.9",
+ "rimraf": "2.6.1",
+ "tar": "2.2.1",
+ "uid-number": "0.0.6"
+ }
},
"tough-cookie": {
"version": "2.3.2",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "punycode": "1.4.1"
+ }
},
"tunnel-agent": {
"version": "0.6.0",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "safe-buffer": "5.0.1"
+ }
},
"tweetnacl": {
"version": "0.14.5",
@@ -2231,13 +3641,19 @@
"version": "1.3.6",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "extsprintf": "1.0.2"
+ }
},
"wide-align": {
"version": "1.1.2",
"bundled": true,
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "string-width": "1.0.2"
+ }
},
"wrappy": {
"version": "1.0.2",
@@ -2250,19 +3666,38 @@
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "inherits": "2.0.3",
+ "mkdirp": "0.5.1",
+ "rimraf": "2.6.1"
+ }
},
"gauge": {
"version": "2.7.4",
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "aproba": "1.1.2",
+ "console-control-strings": "1.1.0",
+ "has-unicode": "2.0.1",
+ "object-assign": "4.1.1",
+ "signal-exit": "3.0.2",
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1",
+ "wide-align": "1.1.2"
+ }
},
"gaze": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
"integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "globule": "1.2.0"
+ }
},
"generate-function": {
"version": "2.0.0",
@@ -2274,7 +3709,10 @@
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
"integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-property": "1.0.2"
+ }
},
"get-caller-file": {
"version": "1.0.2",
@@ -2293,6 +3731,9 @@
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"dev": true,
+ "requires": {
+ "assert-plus": "1.0.0"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -2303,40 +3744,70 @@
}
},
"gh-pages": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-1.0.0.tgz",
- "integrity": "sha1-Skb0wlQ596K35oNVBNSknpSfBMo=",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-1.1.0.tgz",
+ "integrity": "sha512-ZpDkeOVmIrN5mz+sBWDz5zmTqcbNJzI/updCwEv/7rrSdpTNlj1B5GhBqG7f4Q8p5sJOdnBV0SIqxJrxtZQ9FA==",
"dev": true,
+ "requires": {
+ "async": "2.6.0",
+ "base64url": "2.0.0",
+ "commander": "2.11.0",
+ "fs-extra": "4.0.3",
+ "globby": "6.1.0",
+ "graceful-fs": "4.1.11",
+ "rimraf": "2.6.2"
+ },
"dependencies": {
"async": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/async/-/async-2.1.4.tgz",
- "integrity": "sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=",
- "dev": true
- },
- "commander": {
- "version": "2.9.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
- "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
- "dev": true
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
+ "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
+ "dev": true,
+ "requires": {
+ "lodash": "4.17.4"
+ }
},
"fs-extra": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz",
- "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=",
- "dev": true
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
+ "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "jsonfile": "4.0.0",
+ "universalify": "0.1.1"
+ }
},
"globby": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
"integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-union": "1.0.2",
+ "glob": "7.1.2",
+ "object-assign": "4.1.1",
+ "pify": "2.3.0",
+ "pinkie-promise": "2.0.1"
+ }
},
"jsonfile": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz",
- "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=",
- "dev": true
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11"
+ }
+ },
+ "rimraf": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
+ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2"
+ }
}
}
},
@@ -2344,31 +3815,56 @@
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "fs.realpath": "1.0.0",
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
},
"glob-base": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
"integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob-parent": "2.0.0",
+ "is-glob": "2.0.1"
+ }
},
"glob-parent": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
"integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-glob": "2.0.1"
+ }
},
"global-modules": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz",
"integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "global-prefix": "0.1.5",
+ "is-windows": "0.2.0"
+ }
},
"global-prefix": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz",
"integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "1.0.1",
+ "ini": "1.3.4",
+ "is-windows": "0.2.0",
+ "which": "1.2.14"
+ }
},
"globals": {
"version": "9.18.0",
@@ -2380,13 +3876,26 @@
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
"integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-union": "1.0.2",
+ "arrify": "1.0.1",
+ "glob": "7.1.2",
+ "object-assign": "4.1.1",
+ "pify": "2.3.0",
+ "pinkie-promise": "2.0.1"
+ }
},
"globule": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
"integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2",
+ "lodash": "4.17.4",
+ "minimatch": "3.0.4"
+ }
},
"graceful-fs": {
"version": "4.1.11",
@@ -2411,12 +3920,21 @@
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.10.tgz",
"integrity": "sha1-PTDHGLCaPZbyPqTMH0A8TTup/08=",
"dev": true,
+ "requires": {
+ "async": "1.5.2",
+ "optimist": "0.6.1",
+ "source-map": "0.4.4",
+ "uglify-js": "2.8.29"
+ },
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "amdefine": "1.0.1"
+ }
}
}
},
@@ -2430,13 +3948,20 @@
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
"integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ajv": "4.11.8",
+ "har-schema": "1.0.5"
+ }
},
"has-ansi": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
"integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-regex": "2.1.1"
+ }
},
"has-flag": {
"version": "1.0.0",
@@ -2454,6 +3979,18 @@
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
"integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
+ "dev": true,
+ "requires": {
+ "boom": "2.10.1",
+ "cryptiles": "2.0.5",
+ "hoek": "2.16.3",
+ "sntp": "1.0.9"
+ }
+ },
+ "he": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz",
+ "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=",
"dev": true
},
"hoek": {
@@ -2466,19 +4003,20 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
"integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
- "dev": true
- },
- "home-path": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/home-path/-/home-path-1.0.5.tgz",
- "integrity": "sha1-eIspgVsS1Tus9XVkhHbm+QQdEz8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
+ }
},
"homedir-polyfill": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz",
"integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "parse-passwd": "1.0.0"
+ }
},
"hosted-git-info": {
"version": "2.5.0",
@@ -2486,11 +4024,43 @@
"integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==",
"dev": true
},
+ "http-proxy": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz",
+ "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==",
+ "dev": true,
+ "requires": {
+ "eventemitter3": "3.1.0",
+ "follow-redirects": "1.4.1",
+ "requires-port": "1.0.0"
+ }
+ },
+ "http-serve": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/http-serve/-/http-serve-1.0.1.tgz",
+ "integrity": "sha1-u4JL+P7SCS6RlYN7C/eztvo8ovg=",
+ "dev": true,
+ "requires": {
+ "colors": "1.0.3",
+ "corser": "2.0.1",
+ "ecstatic": "2.2.1",
+ "http-proxy": "1.17.0",
+ "opener": "1.4.3",
+ "optimist": "0.6.1",
+ "portfinder": "0.4.0",
+ "union": "0.4.6"
+ }
+ },
"http-signature": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
"integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "assert-plus": "0.2.0",
+ "jsprim": "1.4.0",
+ "sshpk": "1.13.1"
+ }
},
"ignore": {
"version": "3.3.3",
@@ -2514,13 +4084,20 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
"integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "repeating": "2.0.1"
+ }
},
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "once": "1.4.0",
+ "wrappy": "1.0.2"
+ }
},
"inherits": {
"version": "2.0.3",
@@ -2538,7 +4115,23 @@
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-1.2.3.tgz",
"integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "1.4.0",
+ "chalk": "1.1.3",
+ "cli-cursor": "1.0.2",
+ "cli-width": "2.1.0",
+ "external-editor": "1.1.1",
+ "figures": "1.7.0",
+ "lodash": "4.17.4",
+ "mute-stream": "0.0.6",
+ "pinkie-promise": "2.0.1",
+ "run-async": "2.3.0",
+ "rx": "4.1.0",
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1",
+ "through": "2.3.8"
+ }
},
"interpret": {
"version": "1.0.3",
@@ -2550,7 +4143,10 @@
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz",
"integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "loose-envify": "1.3.1"
+ }
},
"invert-kv": {
"version": "1.0.0",
@@ -2568,7 +4164,10 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
"integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "binary-extensions": "1.8.0"
+ }
},
"is-buffer": {
"version": "1.1.5",
@@ -2580,7 +4179,10 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "builtin-modules": "1.1.1"
+ }
},
"is-dotfile": {
"version": "1.0.3",
@@ -2592,7 +4194,10 @@
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
"integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-primitive": "2.0.0"
+ }
},
"is-extendable": {
"version": "0.1.1",
@@ -2610,19 +4215,28 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
"integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "number-is-nan": "1.0.1"
+ }
},
"is-fullwidth-code-point": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "number-is-nan": "1.0.1"
+ }
},
"is-glob": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
},
"is-module": {
"version": "1.0.0",
@@ -2634,13 +4248,22 @@
"version": "2.16.0",
"resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz",
"integrity": "sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "generate-function": "2.0.0",
+ "generate-object-property": "1.2.0",
+ "jsonpointer": "4.0.1",
+ "xtend": "4.0.1"
+ }
},
"is-number": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
"integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "kind-of": "3.2.2"
+ }
},
"is-path-cwd": {
"version": "1.0.0",
@@ -2652,13 +4275,19 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz",
"integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-path-inside": "1.0.0"
+ }
},
"is-path-inside": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz",
"integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "path-is-inside": "1.0.2"
+ }
},
"is-posix-bracket": {
"version": "0.1.1",
@@ -2688,7 +4317,10 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz",
"integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "tryit": "1.0.3"
+ }
},
"is-typedarray": {
"version": "1.0.0",
@@ -2724,7 +4356,10 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
"integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "isarray": "1.0.0"
+ }
},
"isstream": {
"version": "0.1.2",
@@ -2736,19 +4371,45 @@
"version": "1.0.0-alpha.2",
"resolved": "https://registry.npmjs.org/istanbul/-/istanbul-1.0.0-alpha.2.tgz",
"integrity": "sha1-BglrwI6Yuq10Sq5Gli2N+frGPQg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "abbrev": "1.0.9",
+ "async": "1.5.2",
+ "istanbul-api": "1.1.11",
+ "js-yaml": "3.6.1",
+ "mkdirp": "0.5.1",
+ "nopt": "3.0.6",
+ "which": "1.2.14",
+ "wordwrap": "1.0.0"
+ }
},
"istanbul-api": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.1.11.tgz",
"integrity": "sha1-/MC0YeKzvaceMFFVE4I4doJX2d4=",
"dev": true,
+ "requires": {
+ "async": "2.5.0",
+ "fileset": "2.0.3",
+ "istanbul-lib-coverage": "1.1.1",
+ "istanbul-lib-hook": "1.0.7",
+ "istanbul-lib-instrument": "1.7.4",
+ "istanbul-lib-report": "1.1.1",
+ "istanbul-lib-source-maps": "1.2.1",
+ "istanbul-reports": "1.1.1",
+ "js-yaml": "3.9.0",
+ "mkdirp": "0.5.1",
+ "once": "1.4.0"
+ },
"dependencies": {
"async": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz",
"integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lodash": "4.17.4"
+ }
},
"esprima": {
"version": "4.0.0",
@@ -2760,7 +4421,11 @@
"version": "3.9.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.0.tgz",
"integrity": "sha512-0LoUNELX4S+iofCT8f4uEHIiRBR+c2AINyC8qRWfC6QNruLtxVZRJaPcu/xwMgFIgDxF25tGHaDjvxzJCNE9yw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "argparse": "1.0.9",
+ "esprima": "4.0.0"
+ }
}
}
},
@@ -2774,13 +4439,25 @@
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.0.7.tgz",
"integrity": "sha512-3U2HB9y1ZV9UmFlE12Fx+nPtFqIymzrqCksrXujm3NVbAZIJg/RfYgO1XiIa0mbmxTjWpVEVlkIZJ25xVIAfkQ==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "append-transform": "0.4.0"
+ }
},
"istanbul-lib-instrument": {
"version": "1.7.4",
"resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.4.tgz",
"integrity": "sha1-6f2SDkdn89Ge3HZeLWs/XMvQ7qg=",
"dev": true,
+ "requires": {
+ "babel-generator": "6.25.0",
+ "babel-template": "6.25.0",
+ "babel-traverse": "6.25.0",
+ "babel-types": "6.25.0",
+ "babylon": "6.17.4",
+ "istanbul-lib-coverage": "1.1.1",
+ "semver": "5.3.0"
+ },
"dependencies": {
"semver": {
"version": "5.3.0",
@@ -2795,12 +4472,21 @@
"resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz",
"integrity": "sha512-tvF+YmCmH4thnez6JFX06ujIA19WPa9YUiwjc1uALF2cv5dmE3It8b5I8Ob7FHJ70H9Y5yF+TDkVa/mcADuw1Q==",
"dev": true,
+ "requires": {
+ "istanbul-lib-coverage": "1.1.1",
+ "mkdirp": "0.5.1",
+ "path-parse": "1.0.5",
+ "supports-color": "3.2.3"
+ },
"dependencies": {
"supports-color": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
"integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "has-flag": "1.0.0"
+ }
}
}
},
@@ -2808,13 +4494,23 @@
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.1.tgz",
"integrity": "sha512-mukVvSXCn9JQvdJl8wP/iPhqig0MRtuWuD4ZNKo6vB2Ik//AmhAKe3QnPN02dmkRe3lTudFk3rzoHhwU4hb94w==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "debug": "2.6.8",
+ "istanbul-lib-coverage": "1.1.1",
+ "mkdirp": "0.5.1",
+ "rimraf": "2.6.1",
+ "source-map": "0.5.6"
+ }
},
"istanbul-reports": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.1.1.tgz",
"integrity": "sha512-P8G873A0kW24XRlxHVGhMJBhQ8gWAec+dae7ZxOBzxT4w+a9ATSPvRVK3LB1RAJ9S8bg2tOyWHAGW40Zd2dKfw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "handlebars": "4.0.10"
+ }
},
"js-base64": {
"version": "2.1.9",
@@ -2832,13 +4528,20 @@
"version": "3.6.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz",
"integrity": "sha1-bl/mfYsgXOTSL60Ft3geja3MSzA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "argparse": "1.0.9",
+ "esprima": "2.7.3"
+ }
},
"js2xmlparser": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz",
"integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "xmlcreate": "1.0.2"
+ }
},
"jsbn": {
"version": "0.1.1",
@@ -2848,22 +4551,39 @@
"optional": true
},
"jsdoc": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.3.tgz",
- "integrity": "sha512-K9mjBmCm2P62kqJ5UU6Zj7zZnJoLxZBzgLm2yVv98tqLHYSpIvxUkM+dGBua+yUsvOhXsAh232a/joE+86D4CQ==",
+ "version": "3.5.5",
+ "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz",
+ "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==",
"dev": true,
+ "requires": {
+ "babylon": "7.0.0-beta.19",
+ "bluebird": "3.5.1",
+ "catharsis": "0.8.9",
+ "escape-string-regexp": "1.0.5",
+ "js2xmlparser": "3.0.0",
+ "klaw": "2.0.0",
+ "marked": "0.3.19",
+ "mkdirp": "0.5.1",
+ "requizzle": "0.2.1",
+ "strip-json-comments": "2.0.1",
+ "taffydb": "2.6.2",
+ "underscore": "1.8.3"
+ },
"dependencies": {
"babylon": {
- "version": "7.0.0-beta.16",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.16.tgz",
- "integrity": "sha1-RIzu3uwKXvVrYoEuNVa/NsW7l4E=",
+ "version": "7.0.0-beta.19",
+ "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz",
+ "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==",
"dev": true
},
"klaw": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz",
"integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11"
+ }
}
}
},
@@ -2872,6 +4592,17 @@
"resolved": "https://registry.npmjs.org/jsdoc-api/-/jsdoc-api-3.0.0.tgz",
"integrity": "sha1-DVJwAjX4Zb1Ki61evB77Vi/IrSo=",
"dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "cache-point": "0.4.1",
+ "collect-all": "1.0.3",
+ "file-set": "1.1.1",
+ "fs-then-native": "2.0.0",
+ "jsdoc-75lb": "3.6.0",
+ "object-to-spawn-args": "1.1.1",
+ "temp-path": "1.0.0",
+ "walk-back": "2.0.1"
+ },
"dependencies": {
"acorn": {
"version": "3.3.0",
@@ -2879,6 +4610,15 @@
"integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
"dev": true
},
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ },
"bluebird": {
"version": "3.4.7",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz",
@@ -2889,7 +4629,21 @@
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/espree/-/espree-3.1.7.tgz",
"integrity": "sha1-/V3ux2qXpRIKnNOnyxF3oJI7EdI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "acorn": "3.3.0",
+ "acorn-jsx": "3.0.1"
+ }
+ },
+ "file-set": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/file-set/-/file-set-1.1.1.tgz",
+ "integrity": "sha1-0+xwwIDsjxjyBLod4QZ4DJBWkms=",
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "glob": "7.1.2"
+ }
},
"js2xmlparser": {
"version": "1.0.0",
@@ -2901,27 +4655,70 @@
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/jsdoc-75lb/-/jsdoc-75lb-3.6.0.tgz",
"integrity": "sha1-qAcRlSi0AJzLyrSbdSL2P+xs0L0=",
+ "dev": true,
+ "requires": {
+ "bluebird": "3.4.7",
+ "catharsis": "0.8.9",
+ "escape-string-regexp": "1.0.5",
+ "espree": "3.1.7",
+ "js2xmlparser": "1.0.0",
+ "klaw": "1.3.1",
+ "marked": "0.3.19",
+ "mkdirp": "0.5.1",
+ "requizzle": "0.2.1",
+ "strip-json-comments": "2.0.1",
+ "taffydb": "2.6.2",
+ "underscore": "1.8.3"
+ }
+ },
+ "walk-back": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-2.0.1.tgz",
+ "integrity": "sha1-VU4qnYdPrEeoywBr9EwvDEmYoKQ=",
"dev": true
}
}
},
"jsdoc-parse": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/jsdoc-parse/-/jsdoc-parse-3.0.0.tgz",
- "integrity": "sha1-JxUx2I8Z3yUgsWMqf2yYlEGof94=",
- "dev": true
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/jsdoc-parse/-/jsdoc-parse-3.0.1.tgz",
+ "integrity": "sha512-btZLp4wYl90vcAfgk4hoGQbO17iBVrhh3LJRMKZNtZgniO3F8H2CjxXld0owBIB1XxN+j3bAcWZnZKMnSj3iMA==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "lodash.omit": "4.5.0",
+ "lodash.pick": "4.4.0",
+ "reduce-extract": "1.0.0",
+ "sort-array": "2.0.0",
+ "test-value": "3.0.0"
+ },
+ "dependencies": {
+ "test-value": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/test-value/-/test-value-3.0.0.tgz",
+ "integrity": "sha512-sVACdAWcZkSU9x7AOmJo5TqE+GyNJknHaHsMrR6ZnhjVlVN9Yx6FjHrsKZ3BjIpPCT68zYesPWkakrNupwfOTQ==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"jsdoc-to-markdown": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/jsdoc-to-markdown/-/jsdoc-to-markdown-3.0.0.tgz",
- "integrity": "sha1-zIqU8fQSrB2kusFldHWwl17oFho=",
- "dev": true
- },
- "jsdoc2md-stats": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/jsdoc2md-stats/-/jsdoc2md-stats-2.0.1.tgz",
- "integrity": "sha1-vYNDc0z+aeqAUKF5MSUSk/DZBHs=",
- "dev": true
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/jsdoc-to-markdown/-/jsdoc-to-markdown-3.0.4.tgz",
+ "integrity": "sha512-NDD+dpLiF9SYJXFcYPutKi/K8pRtIHHmVyQJzUArYQCoVhNISKeIVK5Pe78mi7K5s16/Nk7EviN2xxlJJ+S5Bw==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "command-line-tool": "0.7.0",
+ "config-master": "3.1.0",
+ "dmd": "3.0.12",
+ "jsdoc-api": "3.0.0",
+ "jsdoc-parse": "3.0.1",
+ "walk-back": "3.0.0"
+ }
},
"jsesc": {
"version": "1.3.0",
@@ -2939,7 +4736,10 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
"integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "jsonify": "0.0.0"
+ }
},
"json-stringify-safe": {
"version": "5.0.1",
@@ -2963,7 +4763,10 @@
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
"integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11"
+ }
},
"jsonify": {
"version": "0.0.0",
@@ -2982,6 +4785,12 @@
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.0.tgz",
"integrity": "sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg=",
"dev": true,
+ "requires": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.0.2",
+ "json-schema": "0.2.3",
+ "verror": "1.3.6"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -2995,13 +4804,19 @@
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-buffer": "1.1.5"
+ }
},
"klaw": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz",
"integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11"
+ }
},
"lazy-cache": {
"version": "1.0.4",
@@ -3014,7 +4829,10 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
"integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "invert-kv": "1.0.0"
+ }
},
"lcov-parse": {
"version": "0.0.10",
@@ -3026,13 +4844,24 @@
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
"integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "prelude-ls": "1.1.2",
+ "type-check": "0.3.2"
+ }
},
"load-json-file": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "parse-json": "2.2.0",
+ "pify": "2.3.0",
+ "pinkie-promise": "2.0.1",
+ "strip-bom": "2.0.0"
+ }
},
"lodash": {
"version": "4.17.4",
@@ -3044,7 +4873,11 @@
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz",
"integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lodash._basecopy": "3.0.1",
+ "lodash.keys": "3.1.2"
+ }
},
"lodash._basecopy": {
"version": "3.0.1",
@@ -3086,7 +4919,12 @@
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz",
"integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lodash._baseassign": "3.2.0",
+ "lodash._basecreate": "3.0.3",
+ "lodash._isiterateecall": "3.0.9"
+ }
},
"lodash.isarguments": {
"version": "3.1.0",
@@ -3104,7 +4942,12 @@
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
"integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lodash._getnative": "3.9.1",
+ "lodash.isarguments": "3.1.0",
+ "lodash.isarray": "3.0.4"
+ }
},
"lodash.map": {
"version": "4.6.0",
@@ -3152,7 +4995,10 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz",
"integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "chalk": "1.1.3"
+ }
},
"longest": {
"version": "1.0.1",
@@ -3164,19 +5010,39 @@
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
"integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "js-tokens": "3.0.2"
+ }
},
"loud-rejection": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
"integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "currently-unhandled": "0.4.1",
+ "signal-exit": "3.0.2"
+ }
},
"lru-cache": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
"integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "pseudomap": "1.0.2",
+ "yallist": "2.1.2"
+ }
+ },
+ "magic-string": {
+ "version": "0.22.5",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz",
+ "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==",
+ "dev": true,
+ "requires": {
+ "vlq": "0.2.3"
+ }
},
"map-obj": {
"version": "1.0.1",
@@ -3185,9 +5051,9 @@
"dev": true
},
"marked": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.6.tgz",
- "integrity": "sha1-ssbGGPzOzk74bE/Gy4p8v1rtqNc=",
+ "version": "0.3.19",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz",
+ "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==",
"dev": true
},
"meow": {
@@ -3195,6 +5061,18 @@
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"dev": true,
+ "requires": {
+ "camelcase-keys": "2.1.0",
+ "decamelize": "1.2.0",
+ "loud-rejection": "1.6.0",
+ "map-obj": "1.0.1",
+ "minimist": "1.2.0",
+ "normalize-package-data": "2.4.0",
+ "object-assign": "4.1.1",
+ "read-pkg-up": "1.0.1",
+ "redent": "1.0.0",
+ "trim-newlines": "1.0.0"
+ },
"dependencies": {
"minimist": {
"version": "1.2.0",
@@ -3214,6 +5092,27 @@
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
"integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "2.0.0",
+ "array-unique": "0.2.1",
+ "braces": "1.8.5",
+ "expand-brackets": "0.1.5",
+ "extglob": "0.3.2",
+ "filename-regex": "2.0.1",
+ "is-extglob": "1.0.0",
+ "is-glob": "2.0.1",
+ "kind-of": "3.2.2",
+ "normalize-path": "2.1.1",
+ "object.omit": "2.0.1",
+ "parse-glob": "3.0.4",
+ "regex-cache": "0.4.3"
+ }
+ },
+ "mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
"dev": true
},
"mime-db": {
@@ -3226,13 +5125,19 @@
"version": "2.1.15",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz",
"integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "mime-db": "1.27.0"
+ }
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "brace-expansion": "1.1.8"
+ }
},
"minimist": {
"version": "0.0.8",
@@ -3244,7 +5149,10 @@
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "minimist": "0.0.8"
+ }
},
"mkdirp2": {
"version": "1.0.3",
@@ -3253,40 +5161,56 @@
"dev": true
},
"mocha": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.4.2.tgz",
- "integrity": "sha1-0O9NMyEm2/GNDWQMmzgt1IvpdZQ=",
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz",
+ "integrity": "sha512-/6na001MJWEtYxHOV1WLfsmR4YIynkUEhBwzsb+fk2qmQ3iqsi258l/Q2MWHJMImAcNpZ8DEdYAK72NHoIQ9Eg==",
"dev": true,
+ "requires": {
+ "browser-stdout": "1.3.0",
+ "commander": "2.9.0",
+ "debug": "2.6.8",
+ "diff": "3.2.0",
+ "escape-string-regexp": "1.0.5",
+ "glob": "7.1.1",
+ "growl": "1.9.2",
+ "he": "1.1.1",
+ "json3": "3.3.2",
+ "lodash.create": "3.1.1",
+ "mkdirp": "0.5.1",
+ "supports-color": "3.1.2"
+ },
"dependencies": {
"commander": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
"integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
- "dev": true
- },
- "debug": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.0.tgz",
- "integrity": "sha1-vFlryr52F/Edn6FTYe3tVgi4SZs=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-readlink": "1.0.1"
+ }
},
"glob": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz",
"integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=",
- "dev": true
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "fs.realpath": "1.0.0",
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
},
"supports-color": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz",
"integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "has-flag": "1.0.0"
+ }
}
}
},
@@ -3319,6 +5243,21 @@
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
"integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
"dev": true,
+ "requires": {
+ "fstream": "1.0.11",
+ "glob": "7.1.2",
+ "graceful-fs": "4.1.11",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.1",
+ "nopt": "3.0.6",
+ "npmlog": "4.1.2",
+ "osenv": "0.1.4",
+ "request": "2.81.0",
+ "rimraf": "2.6.1",
+ "semver": "5.3.0",
+ "tar": "2.2.1",
+ "which": "1.2.14"
+ },
"dependencies": {
"semver": {
"version": "5.3.0",
@@ -3332,31 +5271,69 @@
"version": "4.5.3",
"resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz",
"integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "async-foreach": "0.1.3",
+ "chalk": "1.1.3",
+ "cross-spawn": "3.0.1",
+ "gaze": "1.1.2",
+ "get-stdin": "4.0.1",
+ "glob": "7.1.2",
+ "in-publish": "2.0.0",
+ "lodash.assign": "4.2.0",
+ "lodash.clonedeep": "4.5.0",
+ "lodash.mergewith": "4.6.0",
+ "meow": "3.7.0",
+ "mkdirp": "0.5.1",
+ "nan": "2.6.2",
+ "node-gyp": "3.6.2",
+ "npmlog": "4.1.2",
+ "request": "2.81.0",
+ "sass-graph": "2.2.4",
+ "stdout-stream": "1.4.0"
+ }
},
"nopt": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "abbrev": "1.0.9"
+ }
},
"normalize-package-data": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "hosted-git-info": "2.5.0",
+ "is-builtin-module": "1.0.0",
+ "semver": "4.3.6",
+ "validate-npm-package-license": "3.0.1"
+ }
},
"normalize-path": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
"integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "remove-trailing-separator": "1.0.2"
+ }
},
"npmlog": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "are-we-there-yet": "1.1.4",
+ "console-control-strings": "1.1.0",
+ "gauge": "2.7.4",
+ "set-blocking": "2.0.0"
+ }
},
"number-is-nan": {
"version": "1.0.1",
@@ -3392,13 +5369,20 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
"integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "for-own": "0.1.5",
+ "is-extendable": "0.1.1"
+ }
},
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "wrappy": "1.0.2"
+ }
},
"onetime": {
"version": "1.1.0",
@@ -3406,11 +5390,21 @@
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
"dev": true
},
+ "opener": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/opener/-/opener-1.4.3.tgz",
+ "integrity": "sha1-XG2ixdflgx6P+jlklQ+NZnSskLg=",
+ "dev": true
+ },
"optimist": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
"integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
"dev": true,
+ "requires": {
+ "minimist": "0.0.8",
+ "wordwrap": "0.0.3"
+ },
"dependencies": {
"wordwrap": {
"version": "0.0.3",
@@ -3424,7 +5418,15 @@
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
"integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "deep-is": "0.1.3",
+ "fast-levenshtein": "2.0.6",
+ "levn": "0.3.0",
+ "prelude-ls": "1.1.2",
+ "type-check": "0.3.2",
+ "wordwrap": "1.0.0"
+ }
},
"os-homedir": {
"version": "1.0.2",
@@ -3436,7 +5438,10 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "lcid": "1.0.0"
+ }
},
"os-shim": {
"version": "0.1.3",
@@ -3454,31 +5459,52 @@
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz",
"integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
+ }
},
"output-file-sync": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz",
"integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "mkdirp": "0.5.1",
+ "object-assign": "4.1.1"
+ }
},
"pad-right": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/pad-right/-/pad-right-0.2.2.tgz",
"integrity": "sha1-b7ySQEXSRPKiokRQMGDTv8YAl3Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "repeat-string": "1.6.1"
+ }
},
"parse-glob": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
"integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob-base": "0.3.0",
+ "is-dotfile": "1.0.3",
+ "is-extglob": "1.0.0",
+ "is-glob": "2.0.1"
+ }
},
"parse-json": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
"integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "error-ex": "1.3.1"
+ }
},
"parse-passwd": {
"version": "1.0.0",
@@ -3514,7 +5540,12 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
"integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "pify": "2.3.0",
+ "pinkie-promise": "2.0.1"
+ }
},
"performance-now": {
"version": "0.2.0",
@@ -3538,7 +5569,10 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
"integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "pinkie": "2.0.4"
+ }
},
"pluralize": {
"version": "1.2.1",
@@ -3546,6 +5580,24 @@
"integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=",
"dev": true
},
+ "portfinder": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-0.4.0.tgz",
+ "integrity": "sha1-o/+t/6/k+5jgYBqF7aJ8J86Eyh4=",
+ "dev": true,
+ "requires": {
+ "async": "0.9.0",
+ "mkdirp": "0.5.1"
+ },
+ "dependencies": {
+ "async": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/async/-/async-0.9.0.tgz",
+ "integrity": "sha1-rDYTsdqb7RtHUQu0ZRuJMeRxRsc=",
+ "dev": true
+ }
+ }
+ },
"prelude-ls": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
@@ -3599,18 +5651,28 @@
"resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz",
"integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==",
"dev": true,
+ "requires": {
+ "is-number": "3.0.0",
+ "kind-of": "4.0.0"
+ },
"dependencies": {
"is-number": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
"integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"dev": true,
+ "requires": {
+ "kind-of": "3.2.2"
+ },
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-buffer": "1.1.5"
+ }
}
}
},
@@ -3618,7 +5680,10 @@
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
"integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-buffer": "1.1.5"
+ }
}
}
},
@@ -3626,31 +5691,60 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
"integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "load-json-file": "1.1.0",
+ "normalize-package-data": "2.4.0",
+ "path-type": "1.1.0"
+ }
},
"read-pkg-up": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
"integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "find-up": "1.1.2",
+ "read-pkg": "1.1.0"
+ }
},
"readable-stream": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
"integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "core-util-is": "1.0.2",
+ "inherits": "2.0.3",
+ "isarray": "1.0.0",
+ "process-nextick-args": "1.0.7",
+ "safe-buffer": "5.1.1",
+ "string_decoder": "1.0.3",
+ "util-deprecate": "1.0.2"
+ }
},
"readdirp": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
"integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-fs": "4.1.11",
+ "minimatch": "3.0.4",
+ "readable-stream": "2.3.3",
+ "set-immediate-shim": "1.0.1"
+ }
},
"readline2": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz",
"integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=",
"dev": true,
+ "requires": {
+ "code-point-at": "1.1.0",
+ "is-fullwidth-code-point": "1.0.0",
+ "mute-stream": "0.0.5"
+ },
"dependencies": {
"mute-stream": {
"version": "0.0.5",
@@ -3664,25 +5758,48 @@
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
"integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "resolve": "1.3.3"
+ }
},
"redent": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
"integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "indent-string": "2.1.0",
+ "strip-indent": "1.0.1"
+ }
},
"reduce-extract": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/reduce-extract/-/reduce-extract-1.0.0.tgz",
"integrity": "sha1-Z/I4W+2mUGG19fQxJmLosIDKFSU=",
"dev": true,
+ "requires": {
+ "test-value": "1.1.0"
+ },
"dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ },
"test-value": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/test-value/-/test-value-1.1.0.tgz",
"integrity": "sha1-oJE29y7AQ9J8iTcHwrFZv6196T8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "typical": "2.6.1"
+ }
}
}
},
@@ -3702,7 +5819,10 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/reduce-without/-/reduce-without-1.0.1.tgz",
"integrity": "sha1-aK0OrRGFXJo31OglbBW7+Hly/Iw=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "test-value": "2.1.0"
+ }
},
"regenerate": {
"version": "1.3.2",
@@ -3720,19 +5840,33 @@
"version": "0.9.11",
"resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.9.11.tgz",
"integrity": "sha1-On0GdSDLe3F2dp61/4aGkb7+EoM=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-runtime": "6.23.0",
+ "babel-types": "6.25.0",
+ "private": "0.1.7"
+ }
},
"regex-cache": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz",
"integrity": "sha1-mxpsNdTQ3871cRrmUejp09cRQUU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-equal-shallow": "0.1.3",
+ "is-primitive": "2.0.0"
+ }
},
"regexpu-core": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
"integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "regenerate": "1.3.2",
+ "regjsgen": "0.2.0",
+ "regjsparser": "0.1.5"
+ }
},
"regjsgen": {
"version": "0.2.0",
@@ -3745,6 +5879,9 @@
"resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
"integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
"dev": true,
+ "requires": {
+ "jsesc": "0.5.0"
+ },
"dependencies": {
"jsesc": {
"version": "0.5.0",
@@ -3776,27 +5913,40 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
"integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
- "dev": true
- },
- "req-then": {
- "version": "0.6.4",
- "resolved": "https://registry.npmjs.org/req-then/-/req-then-0.6.4.tgz",
- "integrity": "sha512-Uf7xsK1qPqPUetESHemNQ7nGtgOxngSFtlcAOOkx0lDAo+XRZpEA9QDrGBdyOfGq4b+a0z/D5gR2VJ+pp/dzBA==",
"dev": true,
- "dependencies": {
- "array-back": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
- "integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
- "dev": true
- }
+ "requires": {
+ "is-finite": "1.0.2"
}
},
"request": {
"version": "2.81.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
"integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "aws-sign2": "0.6.0",
+ "aws4": "1.6.0",
+ "caseless": "0.12.0",
+ "combined-stream": "1.0.5",
+ "extend": "3.0.1",
+ "forever-agent": "0.6.1",
+ "form-data": "2.1.4",
+ "har-validator": "4.2.1",
+ "hawk": "3.1.3",
+ "http-signature": "1.1.1",
+ "is-typedarray": "1.0.0",
+ "isstream": "0.1.2",
+ "json-stringify-safe": "5.0.1",
+ "mime-types": "2.1.15",
+ "oauth-sign": "0.8.2",
+ "performance-now": "0.2.0",
+ "qs": "6.4.0",
+ "safe-buffer": "5.1.1",
+ "stringstream": "0.0.5",
+ "tough-cookie": "2.3.2",
+ "tunnel-agent": "0.6.0",
+ "uuid": "3.1.0"
+ }
},
"require-directory": {
"version": "2.1.1",
@@ -3814,6 +5964,16 @@
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
"integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=",
+ "dev": true,
+ "requires": {
+ "caller-path": "0.1.0",
+ "resolve-from": "1.0.1"
+ }
+ },
+ "requires-port": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
+ "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
"dev": true
},
"requizzle": {
@@ -3821,6 +5981,9 @@
"resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz",
"integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=",
"dev": true,
+ "requires": {
+ "underscore": "1.6.0"
+ },
"dependencies": {
"underscore": {
"version": "1.6.0",
@@ -3834,13 +5997,20 @@
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.3.3.tgz",
"integrity": "sha1-ZVkHw0aahoDcLeOidaj91paR8OU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "path-parse": "1.0.5"
+ }
},
"resolve-dir": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz",
"integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "expand-tilde": "1.2.2",
+ "global-modules": "0.2.3"
+ }
},
"resolve-from": {
"version": "1.0.1",
@@ -3852,14 +6022,21 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "exit-hook": "1.1.1",
+ "onetime": "1.1.0"
+ }
},
"right-align": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
"integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "align-text": "0.1.4"
+ }
},
"right-pad": {
"version": "1.0.1",
@@ -3871,49 +6048,98 @@
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
"integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2"
+ }
},
"rollup": {
"version": "0.43.1",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-0.43.1.tgz",
"integrity": "sha512-Y/7r6bE1sSpvBoMNZpSWKGHM2q67YxzBADbsfVqMf+nM6SbsQnU7BPMdrE3m/GiT46BQMN8BwFGhjukQP8Yy0A==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "source-map-support": "0.4.15",
+ "weak": "1.0.1"
+ }
},
"rollup-plugin-babel": {
"version": "2.7.1",
"resolved": "https://registry.npmjs.org/rollup-plugin-babel/-/rollup-plugin-babel-2.7.1.tgz",
"integrity": "sha1-FlKBl7D5OKFTb0RoPHqT1XMYL1c=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "babel-core": "6.26.3",
+ "babel-plugin-transform-es2015-classes": "6.24.1",
+ "object-assign": "4.1.1",
+ "rollup-pluginutils": "1.5.2"
+ }
},
"rollup-plugin-node-resolve": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.0.tgz",
- "integrity": "sha1-i4l8TDAw1QASd7BRSyXSygloPuA=",
- "dev": true
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz",
+ "integrity": "sha512-9zHGr3oUJq6G+X0oRMYlzid9fXicBdiydhwGChdyeNRGPcN/majtegApRKHLR5drboUvEWU+QeUmGTyEZQs3WA==",
+ "dev": true,
+ "requires": {
+ "builtin-modules": "2.0.0",
+ "is-module": "1.0.0",
+ "resolve": "1.3.3"
+ },
+ "dependencies": {
+ "builtin-modules": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-2.0.0.tgz",
+ "integrity": "sha512-3U5kUA5VPsRUA3nofm/BXX7GVHKfxz0hOBAPxXrIvHzlDRkQVqEn6yi8QJegxl4LzOHLdvb7XF5dVawa/VVYBg==",
+ "dev": true
+ }
+ }
+ },
+ "rollup-plugin-polyfill": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/rollup-plugin-polyfill/-/rollup-plugin-polyfill-2.0.1.tgz",
+ "integrity": "sha512-K8lf4oXQrNXjDbL1Nx/BuiaCPwaSdxrNE6mO5OCFeZtY+CDUTX5JoXwjLmBTh3ykl8wK8tkhw6DInxqsppqdZA==",
+ "dev": true,
+ "requires": {
+ "magic-string": "0.22.5"
+ }
},
"rollup-plugin-scss": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-scss/-/rollup-plugin-scss-0.3.0.tgz",
"integrity": "sha1-rpEFH53LTFqcddu83F2ZSwrvuf0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "node-sass": "4.5.3",
+ "rollup-pluginutils": "1.5.2"
+ }
},
"rollup-plugin-uglify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/rollup-plugin-uglify/-/rollup-plugin-uglify-2.0.1.tgz",
"integrity": "sha1-Z7N60e/a+9g69MNrQMGJ7khmyWk=",
"dev": true,
+ "requires": {
+ "uglify-js": "3.0.25"
+ },
"dependencies": {
"commander": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
"integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "graceful-readlink": "1.0.1"
+ }
},
"uglify-js": {
"version": "3.0.25",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.25.tgz",
"integrity": "sha512-JO1XE0WZ9m6UpDkN7WCyPNAWI6EN3K0g40ekcoJKejViYmryJ0BaLxXjvra1IsAeIlJfq72scTbhl0jknsT2GA==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "commander": "2.9.0",
+ "source-map": "0.5.6"
+ }
}
}
},
@@ -3921,13 +6147,20 @@
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz",
"integrity": "sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "estree-walker": "0.2.1",
+ "minimatch": "3.0.4"
+ }
},
"run-async": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
"integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-promise": "2.1.0"
+ }
},
"rx": {
"version": "4.1.0",
@@ -3952,6 +6185,12 @@
"resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
"integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
"dev": true,
+ "requires": {
+ "glob": "7.1.2",
+ "lodash": "4.17.4",
+ "scss-tokenizer": "0.2.3",
+ "yargs": "7.1.0"
+ },
"dependencies": {
"camelcase": {
"version": "3.0.0",
@@ -3963,13 +6202,33 @@
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
"integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1",
+ "wrap-ansi": "2.1.0"
+ }
},
"yargs": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
"integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "camelcase": "3.0.0",
+ "cliui": "3.2.0",
+ "decamelize": "1.2.0",
+ "get-caller-file": "1.0.2",
+ "os-locale": "1.4.0",
+ "read-pkg-up": "1.0.1",
+ "require-directory": "2.1.1",
+ "require-main-filename": "1.0.1",
+ "set-blocking": "2.0.0",
+ "string-width": "1.0.2",
+ "which-module": "1.0.0",
+ "y18n": "3.2.1",
+ "yargs-parser": "5.0.0"
+ }
}
}
},
@@ -3978,12 +6237,19 @@
"resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
"integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
"dev": true,
+ "requires": {
+ "js-base64": "2.1.9",
+ "source-map": "0.4.4"
+ },
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "amdefine": "1.0.1"
+ }
}
}
},
@@ -4004,6 +6270,9 @@
"resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz",
"integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=",
"dev": true,
+ "requires": {
+ "semver": "5.3.0"
+ },
"dependencies": {
"semver": {
"version": "5.3.0",
@@ -4035,25 +6304,44 @@
"version": "0.7.6",
"resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.6.tgz",
"integrity": "sha1-N5zM+1a5HIYB5HkzVutTgpJN6a0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "glob": "7.1.2",
+ "interpret": "1.0.3",
+ "rechoir": "0.6.2"
+ }
},
"should": {
"version": "11.2.1",
"resolved": "https://registry.npmjs.org/should/-/should-11.2.1.tgz",
"integrity": "sha1-kPVRRVUtAc/CAGZuToGKHJZw7aI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "should-equal": "1.0.1",
+ "should-format": "3.0.3",
+ "should-type": "1.4.0",
+ "should-type-adaptors": "1.0.1",
+ "should-util": "1.0.0"
+ }
},
"should-equal": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/should-equal/-/should-equal-1.0.1.tgz",
"integrity": "sha1-C26VFvJgGp+wuy3MNpr6HH4gCvc=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "should-type": "1.4.0"
+ }
},
"should-format": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz",
"integrity": "sha1-m/yPdPo5IFxT04w01xcwPidxJPE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "should-type": "1.4.0",
+ "should-type-adaptors": "1.0.1"
+ }
},
"should-type": {
"version": "1.4.0",
@@ -4065,7 +6353,11 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.0.1.tgz",
"integrity": "sha1-7+VVPN9oz/ZuXF9RtxLcNRx3vqo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "should-type": "1.4.0",
+ "should-util": "1.0.0"
+ }
},
"should-util": {
"version": "1.0.0",
@@ -4095,13 +6387,32 @@
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
"integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "hoek": "2.16.3"
+ }
},
"sort-array": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sort-array/-/sort-array-1.1.2.tgz",
- "integrity": "sha1-uImGBTwBcKf53mPxiknsecJMPmQ=",
- "dev": true
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/sort-array/-/sort-array-2.0.0.tgz",
+ "integrity": "sha1-OKnG2if9fRR7QuYFVPKBGHtN9HI=",
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "object-get": "2.1.0",
+ "typical": "2.6.1"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"source-map": {
"version": "0.5.6",
@@ -4113,19 +6424,29 @@
"version": "0.4.15",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.15.tgz",
"integrity": "sha1-AyAt9lwG0r2MfsI2KhkwVv7407E=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "source-map": "0.5.6"
+ }
},
"spawn-sync": {
"version": "1.0.15",
"resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz",
"integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "concat-stream": "1.6.0",
+ "os-shim": "0.1.3"
+ }
},
"spdx-correct": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz",
"integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "spdx-license-ids": "1.2.2"
+ }
},
"spdx-expression-parse": {
"version": "1.0.4",
@@ -4150,6 +6471,16 @@
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
"integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
"dev": true,
+ "requires": {
+ "asn1": "0.2.3",
+ "assert-plus": "1.0.0",
+ "bcrypt-pbkdf": "1.0.1",
+ "dashdash": "1.14.1",
+ "ecc-jsbn": "0.1.1",
+ "getpass": "0.1.7",
+ "jsbn": "0.1.1",
+ "tweetnacl": "0.14.5"
+ },
"dependencies": {
"assert-plus": {
"version": "1.0.0",
@@ -4163,19 +6494,30 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
"integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "readable-stream": "2.3.3"
+ }
},
"stream-connect": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/stream-connect/-/stream-connect-1.0.2.tgz",
"integrity": "sha1-GLyB8u2zW4tdmoAJIAqYUxRCipc=",
- "dev": true
- },
- "stream-read-all": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/stream-read-all/-/stream-read-all-0.1.1.tgz",
- "integrity": "sha512-1bjIXLwe3idAFSWfIyGbChKt0G/pCJDsbKVMeuRseU/anV9VdF2Aq47LpKUzrWV5+60PJJ1Xljo8ea/9X7NFtw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"stream-via": {
"version": "1.0.4",
@@ -4183,17 +6525,25 @@
"integrity": "sha512-DBp0lSvX5G9KGRDTkR/R+a29H+Wk2xItOF+MpZLLNDWbEV9tGPnqLPxHEYjmiz8xGtJHRIqmI+hCjmNzqoA4nQ==",
"dev": true
},
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true
- },
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "code-point-at": "1.1.0",
+ "is-fullwidth-code-point": "1.0.0",
+ "strip-ansi": "3.0.1"
+ }
+ },
+ "string_decoder": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
+ "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "5.1.1"
+ }
},
"stringstream": {
"version": "0.0.5",
@@ -4205,19 +6555,28 @@
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-regex": "2.1.1"
+ }
},
"strip-bom": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-utf8": "0.2.1"
+ }
},
"strip-indent": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
"integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "get-stdin": "4.0.1"
+ }
},
"strip-json-comments": {
"version": "2.0.1",
@@ -4236,6 +6595,14 @@
"resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz",
"integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=",
"dev": true,
+ "requires": {
+ "ajv": "4.11.8",
+ "ajv-keywords": "1.5.1",
+ "chalk": "1.1.3",
+ "lodash": "4.17.4",
+ "slice-ansi": "0.0.4",
+ "string-width": "2.1.1"
+ },
"dependencies": {
"ansi-regex": {
"version": "3.0.0",
@@ -4253,21 +6620,35 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "is-fullwidth-code-point": "2.0.0",
+ "strip-ansi": "4.0.0"
+ }
},
"strip-ansi": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "ansi-regex": "3.0.0"
+ }
}
}
},
"table-layout": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-0.4.0.tgz",
- "integrity": "sha1-xw/wRV2a3WO5H3wVp3kmKVwODn0=",
- "dev": true
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-0.4.3.tgz",
+ "integrity": "sha512-MIhflPM38ejKrFwWwC3P9x3eHvMo5G5AmNo29Qtz2HpBl5KD2GCcmOErjgNtUQLv/qaqVDagfJY3rJLPDvEgLg==",
+ "dev": true,
+ "requires": {
+ "array-back": "2.0.0",
+ "deep-extend": "0.5.1",
+ "lodash.padend": "4.6.1",
+ "typical": "2.6.1",
+ "wordwrapjs": "3.0.0"
+ }
},
"taffydb": {
"version": "2.6.2",
@@ -4279,7 +6660,12 @@
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "block-stream": "0.0.9",
+ "fstream": "1.0.11",
+ "inherits": "2.0.3"
+ }
},
"temp-path": {
"version": "1.0.0",
@@ -4287,17 +6673,26 @@
"integrity": "sha1-JLFUOXOrRCiW2a02fdnL2/r+kYs=",
"dev": true
},
- "test-runner": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/test-runner/-/test-runner-0.4.0.tgz",
- "integrity": "sha512-9mYw9ccaZs6X+31KarOdblFsqclqQjHJnltE0IfuwLqtPg9Fx4kSQkpFCyiOf3+xpSocDfpRmO6fPvai0/HLRQ==",
- "dev": true
- },
"test-value": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/test-value/-/test-value-2.1.0.tgz",
"integrity": "sha1-Edpv9nDzRxpztiXKTz/c97t0gpE=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "array-back": "1.0.4",
+ "typical": "2.6.1"
+ },
+ "dependencies": {
+ "array-back": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
+ "integrity": "sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs=",
+ "dev": true,
+ "requires": {
+ "typical": "2.6.1"
+ }
+ }
+ }
},
"text-table": {
"version": "0.2.0",
@@ -4315,7 +6710,10 @@
"version": "0.0.29",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz",
"integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "os-tmpdir": "1.0.2"
+ }
},
"to-fast-properties": {
"version": "1.0.3",
@@ -4327,7 +6725,10 @@
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
"integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "punycode": "1.4.1"
+ }
},
"trim-newlines": {
"version": "1.0.0",
@@ -4351,7 +6752,10 @@
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "safe-buffer": "5.1.1"
+ }
},
"tweetnacl": {
"version": "0.14.5",
@@ -4364,7 +6768,10 @@
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
"integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "prelude-ls": "1.1.2"
+ }
},
"typedarray": {
"version": "0.0.6",
@@ -4383,7 +6790,12 @@
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
"dev": true,
- "optional": true
+ "optional": true,
+ "requires": {
+ "source-map": "0.5.6",
+ "uglify-to-browserify": "1.0.2",
+ "yargs": "3.10.0"
+ }
},
"uglify-to-browserify": {
"version": "1.0.2",
@@ -4403,6 +6815,9 @@
"resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz",
"integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=",
"dev": true,
+ "requires": {
+ "underscore": "1.6.0"
+ },
"dependencies": {
"underscore": {
"version": "1.6.0",
@@ -4412,26 +6827,35 @@
}
}
},
- "universalify": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.0.tgz",
- "integrity": "sha1-nrHEZR3rzGcMyU8adXYjMruWd3g=",
- "dev": true
- },
- "usage-stats": {
- "version": "0.9.4",
- "resolved": "https://registry.npmjs.org/usage-stats/-/usage-stats-0.9.4.tgz",
- "integrity": "sha512-u94pT+UDv+ZcjA5PT4KuMR67JL6VqeaQU6RN83Gf7yTqGrD/WqgCwhaj1DAKETR/KrteWXL0XZwlkDJuLJdtkg==",
+ "union": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/union/-/union-0.4.6.tgz",
+ "integrity": "sha1-GY+9rrolTniLDvy2MLwR8kopWeA=",
"dev": true,
+ "requires": {
+ "qs": "2.3.3"
+ },
"dependencies": {
- "array-back": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
- "integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
+ "qs": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz",
+ "integrity": "sha1-6eha2+ddoLvkyOBHaghikPhjtAQ=",
"dev": true
}
}
},
+ "universalify": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz",
+ "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=",
+ "dev": true
+ },
+ "url-join": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/url-join/-/url-join-2.0.5.tgz",
+ "integrity": "sha1-WvIvGMBSoACkjXuCxenC4v7tpyg=",
+ "dev": true
+ },
"user-home": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
@@ -4454,36 +6878,61 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
"integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "user-home": "1.1.1"
+ }
},
"validate-npm-package-license": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz",
"integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "spdx-correct": "1.0.2",
+ "spdx-expression-parse": "1.0.4"
+ }
},
"verror": {
"version": "1.3.6",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz",
"integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=",
+ "dev": true,
+ "requires": {
+ "extsprintf": "1.0.2"
+ }
+ },
+ "vlq": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz",
+ "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==",
"dev": true
},
"walk-back": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-2.0.1.tgz",
- "integrity": "sha1-VU4qnYdPrEeoywBr9EwvDEmYoKQ=",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-3.0.0.tgz",
+ "integrity": "sha1-I1h4ejXakQMtrV6S+AsSNw2HlcU=",
"dev": true
},
"weak": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/weak/-/weak-1.0.1.tgz",
- "integrity": "sha1-q5mqswcGlZqgIAy4z1RbucszuZ4="
+ "integrity": "sha1-q5mqswcGlZqgIAy4z1RbucszuZ4=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "bindings": "1.2.1",
+ "nan": "2.6.2"
+ }
},
"which": {
"version": "1.2.14",
"resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz",
"integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "isexe": "2.0.0"
+ }
},
"which-module": {
"version": "1.0.0",
@@ -4495,7 +6944,10 @@
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
"integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
- "dev": true
+ "dev": true,
+ "requires": {
+ "string-width": "1.0.2"
+ }
},
"window-size": {
"version": "0.1.0",
@@ -4517,16 +6969,24 @@
"dev": true
},
"wordwrapjs": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-2.0.0.tgz",
- "integrity": "sha1-q1X2leYRjak4WP3XDAU9HF4BrCA=",
- "dev": true
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-3.0.0.tgz",
+ "integrity": "sha512-mO8XtqyPvykVCsrwj5MlOVWvSnCdT+C+QVbm6blradR7JExAhbkZ7hZ9A+9NUtwzSqrlUo9a67ws0EiILrvRpw==",
+ "dev": true,
+ "requires": {
+ "reduce-flatten": "1.0.1",
+ "typical": "2.6.1"
+ }
},
"wrap-ansi": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "string-width": "1.0.2",
+ "strip-ansi": "3.0.1"
+ }
},
"wrappy": {
"version": "1.0.2",
@@ -4538,7 +6998,10 @@
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
"integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=",
- "dev": true
+ "dev": true,
+ "requires": {
+ "mkdirp": "0.5.1"
+ }
},
"xmlcreate": {
"version": "1.0.2",
@@ -4570,6 +7033,12 @@
"integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
"dev": true,
"optional": true,
+ "requires": {
+ "camelcase": "1.2.1",
+ "cliui": "2.1.0",
+ "decamelize": "1.2.0",
+ "window-size": "0.1.0"
+ },
"dependencies": {
"camelcase": {
"version": "1.2.1",
@@ -4585,6 +7054,9 @@
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
"integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
"dev": true,
+ "requires": {
+ "camelcase": "3.0.0"
+ },
"dependencies": {
"camelcase": {
"version": "3.0.0",
diff --git a/package.json b/package.json
index 97bbb1d..487824e 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "popup-validation",
- "version": "1.1.2",
+ "version": "3.0.3",
"description": "Pure JavaScript/CSS library for validating DOM input fields",
"main": "index.js",
"scripts": {
@@ -10,9 +10,10 @@
"jsdoc2md": "./node_modules/.bin/jsdoc2md src/*.js > api.md",
"commit": "./node_modules/.bin/git-cz",
"build-es6": "./node_modules/.bin/rollup -c rollup.es6.config.js",
- "build-prod": "./node_modules/.bin/rollup -c rollup.config.js",
- "build": "npm run build-es6 && npm run build-prod",
- "deploy": "./node_modules/.bin/gh-pages -d bin"
+ "build-es5": "./node_modules/.bin/rollup -c rollup.es5.config.js",
+ "build": "npm run build-es6 && npm run build-es5",
+ "deploy": "./node_modules/.bin/gh-pages -d bin",
+ "serve": "./node_modules/.bin/http-serve bin"
},
"repository": {
"type": "git",
@@ -20,6 +21,8 @@
},
"keywords": [
"validate",
+ "tooltip",
+ "popup",
"validation",
"input",
"validator",
@@ -27,30 +30,34 @@
"error",
"email",
"popups",
- "tooltip"
+ "tooltip",
+ "class validation",
+ "custom class"
],
"devDependencies": {
"babel": "^6.23.0",
- "babel-cli": "^6.24.1",
- "babel-core": "^6.25.0",
+ "babel-cli": "^6.26.0",
+ "babel-core": "^6.26.3",
"babel-eslint": "^6.1.2",
"babel-plugin-external-helpers": "^6.22.0",
"babel-plugin-proxy": "^1.1.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-latest": "^6.24.1",
- "babel-register": "^6.24.1",
+ "babel-register": "^6.26.0",
"commitizen": "^2.9.6",
- "coveralls": "^2.13.1",
- "cz-conventional-changelog": "^2.0.0",
+ "coveralls": "^2.13.3",
+ "cz-conventional-changelog": "^2.1.0",
"eslint": "^3.19.0",
- "gh-pages": "^1.0.0",
+ "gh-pages": "^1.1.0",
+ "http-serve": "^1.0.1",
"istanbul": "^1.0.0-alpha.2",
- "jsdoc": "^3.4.3",
- "jsdoc-to-markdown": "^3.0.0",
- "mocha": "^3.4.2",
+ "jsdoc": "^3.5.5",
+ "jsdoc-to-markdown": "^3.0.4",
+ "mocha": "^3.5.3",
"rollup": "^0.43.0",
"rollup-plugin-babel": "^2.7.1",
- "rollup-plugin-node-resolve": "^3.0.0",
+ "rollup-plugin-node-resolve": "^3.3.0",
+ "rollup-plugin-polyfill": "^2.0.1",
"rollup-plugin-scss": "^0.3.0",
"rollup-plugin-uglify": "^2.0.1",
"should": "^11.2.1"
diff --git a/rollup.config.js b/rollup.es5.config.js
similarity index 82%
rename from rollup.config.js
rename to rollup.es5.config.js
index 3ced5cb..0af741d 100644
--- a/rollup.config.js
+++ b/rollup.es5.config.js
@@ -2,6 +2,7 @@ import resolve from "rollup-plugin-node-resolve";
import scss from "rollup-plugin-scss";
import babel from "rollup-plugin-babel";
import uglify from "rollup-plugin-uglify";
+import polyfill from "rollup-plugin-polyfill";
export default {
entry: "src/index.js",
@@ -10,8 +11,10 @@ export default {
plugins: [
resolve(),
scss({
- output: "bin/validation.css"
+ output: "bin/validation.min.css",
+ outputStyle: "compressed"
}),
+ polyfill("index.js", ["./polyfills/assign.js", "./polyfills/matches.js"]),
babel({
babelrc: false,
presets: [
diff --git a/rollup.es6.config.js b/rollup.es6.config.js
index 5e1df42..5acf1b8 100644
--- a/rollup.es6.config.js
+++ b/rollup.es6.config.js
@@ -8,7 +8,8 @@ export default {
plugins: [
resolve(),
scss({
- output: "bin/validation.css"
+ output: "bin/validation.min.css",
+ outputStyle: "compressed"
})
],
dest: "bin/validation.es6.js"
diff --git a/src/index.js b/src/index.js
index d9f00c8..7769010 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,207 +1,282 @@
-import "./style.scss";
-
-const VALIDATE = "validate";
-const VALIDATE_POPUP = "validate-popup";
-const DATA_VALIDATE = "data-validate";
-const VALIDATE_ERROR = "validate-error";
-const ACTIVE = "active";
-const Events = ["change", "paste", "blur", "keyup"];
-
-import { Rules } from "./rules";
-
-const getMessage = el => {
- const types = el.getAttribute(DATA_VALIDATE).split(",").map(type => {
- return type.trim();
- });
- return types
- .filter(type => {
- return !Rules[type].method(el);
- })
- .map(type => {
- return Rules[type].message;
- })
- .join(", ");
+import './style.scss';
+import rules from './rules';
+
+const _customSelectors = [],
+ doc = window.document,
+ OPTIONS = {
+ events: ['change', 'paste', 'blur', 'keyup']
+ },
+ CUSTOM_CLASS_STYLES = `
+ {0}:before, {0}:after{
+ opacity: 1;
+ }
+ {0} {
+ border-color: #D10000 !important;
+ }
+ {0}-ready:before {
+ content: '{1}';
+ }`;
+
+const throttle = (fn, threshhold = 250, scope) => {
+ let last, deferTimer;
+ return () => {
+ const now = +new Date(),
+ args = arguments;
+ if (last && now < last + threshhold) {
+ clearTimeout(deferTimer);
+ deferTimer = setTimeout(() => {
+ last = now;
+ fn.apply(scope, args);
+ }, threshhold);
+ } else {
+ last = now;
+ fn.apply(scope, args);
+ }
+ };
};
-const onAction = e => {
- const el = e.target;
- if (!el.matches("." + VALIDATE)) {
- return;
- }
- const message = getMessage(el);
-
- el.classList.toggle(VALIDATE_ERROR, !!message);
- let popup = el.previousElementSibling;
- if (message) {
- if (!popup || !popup.matches("." + VALIDATE_POPUP)) {
- popup = document.createElement("div");
- popup.classList.add(VALIDATE_POPUP);
- const wrap = document.createElement("div");
- wrap.appendChild(popup.cloneNode(true));
- el.insertAdjacentHTML("beforebegin", wrap.innerHTML);
- popup = el.previousElementSibling;
+const getMessage = input =>
+ input
+ .getAttribute('data-validate')
+ .split(',')
+ .map(type => type.trim())
+ .filter(type => !rules[type].method(input))
+ .map(type => rules[type].message)
+ .join(', ');
+
+const createPopup = el => (
+ el.insertAdjacentHTML('beforebegin', ``),
+ el.previousElementSibling
+);
+
+const addClass = (el, className) => (el.className += ' ' + className);
+const delClass = (el, className) =>
+ (el.className = el.className.replace(className, ''));
+
+const changeClass = (
+ el,
+ className,
+ value,
+ contains = ~el.className.indexOf(className)
+) =>
+ (value && !contains && addClass(el, className)) ||
+ (contains && !value && delClass(el, className));
+
+const show = (el, message) => {
+ el = getEl(el);
+ if (el.offsetWidth === 0 && el.offsetHeight === 0) {
+ return;
+ }
+
+ changeClass(el, 'validate-error', true);
+ let popup = el.previousElementSibling;
+
+ if (!popup || !popup.matches('.validate-popup')) {
+ popup = createPopup(el);
}
popup.innerHTML = message;
window.setTimeout(() => {
- const left =
- el.clientWidth < popup.clientWidth
- ? el.offsetLeft + el.offsetWidth / 2 - 14
- : el.offsetLeft + el.clientWidth - popup.clientWidth + 1;
- const top = el.offsetTop;
- popup.style.left = left + "px";
- popup.style.top = top + "px";
- popup.style.marginTop = -(popup.clientHeight + 8) + "px";
- popup.classList.toggle(ACTIVE, true);
+ const left =
+ el.clientWidth < popup.clientWidth
+ ? ~~(el.offsetLeft + el.offsetWidth / 2 - 14) + 1
+ : el.offsetLeft + el.clientWidth - popup.clientWidth + 1;
+ popup.style.left = left + 'px';
+ popup.style.top = el.offsetTop + 'px';
+ popup.style.marginTop = -(popup.clientHeight + 8) + 'px';
+ changeClass(popup, 'active', true);
+ changeClass(popup, 'short-version', el.clientWidth < popup.clientWidth);
}, 0);
- } else {
- if (el.type === "radio"){
- const name = el.name;
- const rbs = document.querySelectorAll(`input[name="${name}"]`);
- Array.prototype.forEach.call(rbs, el => {
- const popup = el.previousElementSibling;
- if (popup && popup.matches("." + VALIDATE_POPUP)){
- popup.classList.toggle(ACTIVE, false);
- }
- });
- } else if (popup && popup.matches("." + VALIDATE_POPUP)) {
- popup.classList.toggle(ACTIVE, false);
- }
- }
};
-const getEl = (el = "body") =>
- typeof el === "string" ? document.querySelector(el) : el;
-
-const onClick = e => {
- const el = e.target;
- if (!el.matches("." + VALIDATE_POPUP)) {
- return;
- }
- const next = el.nextElementSibling;
- if (next.matches("." + VALIDATE)) {
- next.classList.toggle(VALIDATE_ERROR, false);
- }
- el.classList.toggle(ACTIVE, false);
+const hide = el => {
+ el = getEl(el);
+ changeClass(el, 'validate-error', false);
+ const popup = el.previousElementSibling;
+ popup &&
+ popup.matches('.validate-popup') &&
+ changeClass(popup, 'active', false);
+};
+
+const toggle = (el, message) => (message ? show(el, message) : hide(el));
+
+const onAction = e => {
+ const input = e.target;
+ if (!input.matches('.validate')) {
+ return;
+ }
+ const message = getMessage(input);
+
+ if (input.type === 'radio') {
+ const name = input.name;
+ const rbs = doc.querySelectorAll(`input[name="${name}"]`);
+ [].forEach.call(rbs, rb => toggle(rb, message));
+ } else {
+ toggle(input, message);
+ }
};
+const getEl = (el = 'body') =>
+ typeof el === 'string' ? doc.querySelector(el) || doc.body : el;
+
+const getValidateEls = el => el.querySelectorAll('.validate');
+
+const onClick = e =>
+ e.target.matches('.validate-popup') && hide(e.target.nextElementSibling);
+
const onSubmit = e => {
- const isValid = validation.validate(e.target);
- if (isValid) {
- return true;
- }
- e.preventDefault();
- return false;
+ const isValid = validation.validate(e.target);
+ !isValid && e.preventDefault();
+ return isValid;
};
+const onResize = throttle(
+ () =>
+ [].forEach.call(doc.querySelectorAll('.validate-popup'), popup =>
+ changeClass(popup, 'active', false)
+ ),
+ 1000
+);
+
const setupEventHandlers = (el, setup) => {
- el = getEl(el);
- const action = setup ? "addEventListener" : "removeEventListener";
- const els = el.querySelectorAll("." + VALIDATE);
- Array.prototype.forEach.call(els, el => {
- Events.forEach(e => {
- el[action](e, onAction);
- });
- });
-
- document[action]("click", onClick);
-
- if (el.nodeName === "FORM") {
- el[action]("submit", onSubmit);
- }
+ el = getEl(el);
+ const action = setup ? 'addEventListener' : 'removeEventListener';
+ const inputs = getValidateEls(el);
+ [].forEach.call(inputs, input =>
+ OPTIONS.events.forEach(e => input[action](e, onAction))
+ );
+
+ el.nodeName === 'FORM' && el[action]('submit', onSubmit);
+ doc[action]('click', onClick);
+ window[action]('resize', onResize);
};
const validation = {
- /**
- * Initialize the validation fields
- *
- * @param {Element|string} Container or specific form
- */
- init: el => {
- setupEventHandlers(el, true);
- },
-
- /**
- * Deactivate the validation fields
- *
- * @param {Element|string} Container or specific form
- */
- destroy: el => {
- validation.hide(el);
- setupEventHandlers(el, false);
- },
-
- /**
- * Hide all opened popups inside of the containers
- *
- * @param {Element|string} Container or specific form
- */
- hide: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE_POPUP);
- Array.prototype.forEach.call(els, el => {
- el.classList.toggle(ACTIVE, false);
- const next = el.nextElementSibling;
- if (next.matches("." + VALIDATE)) {
- next.classList.toggle(VALIDATE_ERROR, false);
- }
- });
- },
-
- /**
- * Show error popups inside of the container
- *
- * @param {Element} el Container
- */
- highlight: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE);
- Array.prototype.forEach.call(els, el => {
- const event = document.createEvent("HTMLEvents");
- event.initEvent("blur", true, false);
- el.dispatchEvent(event);
- });
- },
-
- /**
- * Check if all input fields inside of the container are valid
- *
- * @param {Element} el Container
- * @returns {boolean} True if all input fields inside of the container are valid
- */
- isValid: el => {
- el = getEl(el);
- const els = el.querySelectorAll("." + VALIDATE);
- const isValid = Array.prototype.every.call(els, el => {
- return !getMessage(el);
- });
- return isValid;
- },
-
- /**
- * Validate all input fields in the DOM container
- *
- * @param {Element} el Container
- * @returns {boolean} True if all input fields inside of the container are valid
- */
- validate: el => {
- validation.highlight(el);
- return validation.isValid(el);
- },
-
- /**
- * Returns the set of the predefined rules
- *
- * @returns {object} Rules
- *
- * ruleName: {
- * message: "Message when element didn't pass the rule",
- * method: el => boolean
- * }
- *
- */
- getRules: () => {
- return Rules;
- }
+ /**
+ * Initialize the validation fields
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @param {object} options [Optional] Set of the properties
+ * - events: [string]
+ * @returns {object} validation instance (chain call)
+ */
+ init: (el, options) => (
+ Object.assign({}, OPTIONS, options),
+ setupEventHandlers(el, true),
+ validation
+ ),
+
+ /**
+ * Predefined set of the rules
+ */
+ rules,
+
+ /**
+ * Show a message for an input field
+ *
+ * @param {Element|string} el dom element or selector
+ * @param {string} message Popup message
+ * @returns {object} validation instance (chain call)
+ */
+ show: (el, message) => (show(el, message), validation),
+
+ /**
+ * Hide a popup message for an input field
+ *
+ * @param {Element|string} el dom element or selector
+ * @returns {object} validation instance (chain call)
+ */
+ hide: el => (hide(el), validation),
+
+ /**
+ * Deactivate the validation fields
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ destroy: el => (
+ validation.hideAll(el), setupEventHandlers(el, false), validation
+ ),
+
+ /**
+ * Hide all opened popups inside of the container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ hideAll: el => (
+ [].forEach.call(getValidateEls(getEl(el)), input => hide(input)),
+ validation
+ ),
+
+ /**
+ * Show error popups inside of the container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {object} validation instance (chain call)
+ */
+ highlight: el => (
+ [].forEach.call(getValidateEls(getEl(el)), input =>
+ onAction({ target: input })
+ ),
+ validation
+ ),
+
+ /**
+ * Check if all input fields inside of the container are valid
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {boolean} True if all input fields inside of the container are valid
+ */
+ isValid: el =>
+ (_customSelectors.length === 0 ||
+ getEl(el).querySelectorAll(_customSelectors.join(',')).length ===
+ 0) &&
+ [].every.call(getValidateEls(getEl(el)), input => !getMessage(input)),
+
+ /**
+ * Validate all input fields in the DOM container
+ *
+ * @param {Element|string} el Container (dom element or selector)
+ * @returns {boolean} True if all input fields inside of the container are valid
+ */
+ validate: el => (validation.highlight(el), validation.isValid(el)),
+
+ /**
+ * Add class validation. For external libraries that can
+ * set/remove className of the element
+ *
+ * For instance, braintree-hosted-fields-invalid class is
+ * set by braintree client library when iframe with the
+ * input fieldan error detects an error, More info here:
+ * https://developers.braintreepayments.com/guides/hosted-fields/styling/javascript/v2
+ *
+ * @param {string} target Selector of the target element
+ * @param {string} selector Selector that indicates that the field is invalid
+ * @param {string} Optional: message. "Invalid" by default
+ * @returns {object} validation instance (chain call)
+ */
+ addClassValidation: (target, selector, msg = 'Invalid') => {
+ const styleTag = doc.createElement('style');
+ styleTag.innerHTML = selector
+ .split(',')
+ .map(s =>
+ CUSTOM_CLASS_STYLES.replace(/\{0\}/gi, s).replace(
+ /\{1\}/gi,
+ msg
+ )
+ )
+ .join('');
+ doc.head.appendChild(styleTag);
+ _customSelectors.push(selector);
+ [].forEach.call(
+ doc.querySelectorAll(target),
+ el =>
+ (el.className += ` validate-class ${selector.substring(
+ 1
+ )}-ready`)
+ );
+ return validation;
+ }
};
export default validation;
diff --git a/src/polyfills/assign.js b/src/polyfills/assign.js
new file mode 100644
index 0000000..d5cbc7d
--- /dev/null
+++ b/src/polyfills/assign.js
@@ -0,0 +1,29 @@
+if (typeof Object.assign != 'function') {
+ // Must be writable: true, enumerable: false, configurable: true
+ Object.defineProperty(Object, "assign", {
+ value: function assign(target, varArgs) { // .length of function is 2
+ 'use strict';
+ if (target == null) { // TypeError if undefined or null
+ throw new TypeError('Cannot convert undefined or null to object');
+ }
+
+ var to = Object(target);
+
+ for (var index = 1; index < arguments.length; index++) {
+ var nextSource = arguments[index];
+
+ if (nextSource != null) { // Skip over if undefined or null
+ for (var nextKey in nextSource) {
+ // Avoid bugs when hasOwnProperty is shadowed
+ if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
+ to[nextKey] = nextSource[nextKey];
+ }
+ }
+ }
+ }
+ return to;
+ },
+ writable: true,
+ configurable: true
+ });
+}
\ No newline at end of file
diff --git a/src/polyfills/matches.js b/src/polyfills/matches.js
new file mode 100644
index 0000000..18b59e4
--- /dev/null
+++ b/src/polyfills/matches.js
@@ -0,0 +1,3 @@
+if (!Element.prototype.matches) {
+ Element.prototype.matches = Element.prototype.msMatchesSelector;
+}
\ No newline at end of file
diff --git a/src/rules.js b/src/rules.js
index 27d0b2a..2728ea6 100644
--- a/src/rules.js
+++ b/src/rules.js
@@ -1,4 +1,8 @@
-export const Rules = {
+const regex = {
+ email: /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
+};
+
+export default {
required: {
message: "Required",
method: el => {
@@ -16,13 +20,12 @@ export const Rules = {
},
email: {
message: "E-mail is wrong",
- method: el => {
- return (
- el.value === "" ||
- /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(
- el.value
- )
- );
- }
+ method: el => el.value === "" || regex.email.test(el.value.trim())
+ },
+ emails: {
+ message: "E-mail is wrong",
+ method: el =>
+ el.value === "" ||
+ el.value.split(/;|,/).every(v => regex.email.test(v.trim()))
}
-};
\ No newline at end of file
+};
diff --git a/src/style.scss b/src/style.scss
index d947448..00486d5 100644
--- a/src/style.scss
+++ b/src/style.scss
@@ -5,7 +5,7 @@ $bgcolor: #d10000;
}
.validate-popup {
- transition: opacity ease 400ms;
+ transition: all ease 300ms;
cursor: pointer;
position: absolute;
background-color: $bgcolor;
@@ -22,14 +22,58 @@ $bgcolor: #d10000;
&:after {
position: absolute;
bottom: 0;
- left: 0;
+ right: 0;
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 5px 5px 0 5px;
border-color: $bgcolor transparent transparent transparent;
- margin-left: 8px;
+ margin-right: 8px;
margin-bottom: -5px;
}
+
+ &.short-version {
+ &:after {
+ left: 0;
+ margin-left: 8px;
+ }
+ }
+}
+
+/**
+ * Validation based on className, for iframe solutions
+ */
+
+.validate-class {
+ position: relative;
+}
+
+.validate-class:before,
+.validate-class:after {
+ content: '';
+ opacity: 0;
+ transition: opacity ease 300ms;
+ position: absolute;
+ right: 0;
+ top: -36px;
+}
+
+.validate-class:before {
+ background-color: $bgcolor;
+ color: white;
+ font-size: 12px;
+ line-height: 1;
+ padding: 8px 12px;
+ white-space: nowrap;
+}
+
+.validate-class:after {
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 5px 5px 0 5px;
+ border-color: $bgcolor transparent transparent transparent;
+ margin-top: 28px;
+ margin-right: 10px;
}