From 7caad84379f5d049938c0d9f37086bff51b0d0d1 Mon Sep 17 00:00:00 2001 From: Jer Date: Tue, 27 Jun 2017 21:11:14 -0500 Subject: [PATCH 01/18] Remove deprecation warnings as per @RodCardenas --- package.json | 3 +- src/modalFactory.js | 340 ++++++++++++++++++++++---------------------- 2 files changed, 172 insertions(+), 171 deletions(-) diff --git a/package.json b/package.json index 280a480..39e22ec 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,8 @@ "domkit": "^0.0.1" }, "peerDependencies": { - "react": ">=0.14.0" + "react": ">=0.14.0", + "prop-types":">=15.0" }, "devDependencies": { "react-dom": ">=0.14.0", diff --git a/src/modalFactory.js b/src/modalFactory.js index 95e3134..3d96d66 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -1,189 +1,189 @@ var React = require('react'); var transitionEvents = require('domkit/transitionEvents'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); +var PropTypes = require('prop-types'); module.exports = function(animation){ - return React.createClass({ - propTypes: { - className: React.PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. - keyboard: React.PropTypes.bool, - onShow: React.PropTypes.func, - onHide: React.PropTypes.func, - animation: React.PropTypes.object, - backdrop: React.PropTypes.bool, - closeOnClick: React.PropTypes.bool, - modalStyle: React.PropTypes.object, - backdropStyle: React.PropTypes.object, - contentStyle: React.PropTypes.object, - }, - - getDefaultProps: function() { - return { - className: "", - onShow: function(){}, - onHide: function(){}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {}, - }; - }, - - getInitialState: function(){ - return { - willHidden: false, - hidden: true - }; - }, - - hasHidden: function(){ - return this.state.hidden; - }, - - addTransitionListener: function(node, handle){ - if (node) { - var endListener = function(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } - }, + class Factory extends React.Component { + constructor(props) { + super(props); + this.state = { + willHidden: false, + hidden: true + }; + + this.hasHidden = this.hasHidden.bind(this); + this.handleBackdropClick = this.handleBackdropClick.bind(this); + this.leave = this.leave.bind(this); + this.enter = this.enter.bind(this); + this.show = this.show.bind(this); + this.hide = this.hide.bind(this); + this.toggle = this.toggle.bind(this); + this.listenKeyboard = this.listenKeyboard.bind(this); + }; + + hasHidden() { + return this.state.hidden; + }; + + addTransitionListener(node, handle){ + if (node) { + var endListener = function(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); + } + }; - handleBackdropClick: function() { - if (this.props.closeOnClick) { - this.hide("backdrop"); - } - }, - - render: function() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; - } + handleBackdropClick() { + if (this.props.closeOnClick) { + this.hide(); + } + }; + + render() { + + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; } + } - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; - } + if (this.props.backdropStyle) { + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (var style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; } + } - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; - } + if (this.props.contentStyle) { + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (var style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; } + } - var backdrop = this.props.backdrop?
: undefined; + var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; - if(willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); - } + if(willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } - return ( -
- {sharp} -
- {this.props.children} -
-
- {backdrop} -
) - ; - }, - - leave: function(){ - this.setState({ - hidden: true - }); - this.props.onHide(this.state.hideSource); - }, - - enter: function(){ - this.props.onShow(); - }, - - show: function(){ - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function(){ - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - }, - - hide: function(source){ - if (this.hasHidden()) return; - - if (!source) { - source = "hide"; - } + return (React.createElement("span", null, + React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, + sharp, + React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, + this.props.children + ) + ), + backdrop + )) + ; + }; + + leave() { + this.setState({ + hidden: true + }); + this.props.onHide(); + }; + + enter() { + this.props.onShow(); + }; + + show() { + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function(){ + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + }; + + hide() { + if (this.hasHidden()) return; + + this.setState({ + willHidden: true + }); + }; + + toggle() { + if (this.hasHidden()) + this.show(); + else + this.hide(); + }; + + listenKeyboard(event) { + if (this.props.keyboard && + (event.key === "Escape" || + event.keyCode === 27)) { + this.hide(); + } + }; - this.setState({ - hideSource: source, - willHidden: true - }); - }, - - toggle: function(){ - if (this.hasHidden()) - this.show(); - else - this.hide("toggle"); - }, - - listenKeyboard: function(event) { - (typeof(this.props.keyboard)=="function") - ?this.props.keyboard(event) - :this.closeOnEsc(event); - }, - - closeOnEsc: function(event){ - if (this.props.keyboard && - (event.key === "Escape" || - event.keyCode === 27)) { - this.hide("keyboard"); - } - }, + componentDidMount() { + window.addEventListener("keydown", this.listenKeyboard, true); + }; + + componentWillUnmount() { + window.removeEventListener("keydown", this.listenKeyboard, true); + }; +}; - componentDidMount: function(){ - window.addEventListener("keydown", this.listenKeyboard, true); - }, +Factory.propTypes = { + className: PropTypes.string, + // Close the modal when esc is pressed? Defaults to true. + keyboard: PropTypes.bool, + onShow: PropTypes.func, + onHide: PropTypes.func, + animation: PropTypes.object, + backdrop: PropTypes.bool, + closeOnClick: PropTypes.bool, + modalStyle: PropTypes.object, + backdropStyle: PropTypes.object, + contentStyle: PropTypes.object +}; - componentWillUnmount: function() { - window.removeEventListener("keydown", this.listenKeyboard, true); - } - }); +Factory.defaultProps = { + className: "", + onShow: function(){}, + onHide: function(){}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {} }; + +return Factory; +}; \ No newline at end of file From e706739c0f29a14941c0bbf2abf5cf1e17466f61 Mon Sep 17 00:00:00 2001 From: Jer Date: Tue, 27 Jun 2017 21:14:12 -0500 Subject: [PATCH 02/18] For now lets just stick with es5 --- src/modalFactory.js | 341 ++++++++++++++++++++++---------------------- 1 file changed, 171 insertions(+), 170 deletions(-) diff --git a/src/modalFactory.js b/src/modalFactory.js index 3d96d66..5219c62 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -1,189 +1,190 @@ var React = require('react'); var transitionEvents = require('domkit/transitionEvents'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); -var PropTypes = require('prop-types'); +var PropTypes = require('prop-types') module.exports = function(animation){ - class Factory extends React.Component { - constructor(props) { - super(props); - this.state = { - willHidden: false, - hidden: true - }; - - this.hasHidden = this.hasHidden.bind(this); - this.handleBackdropClick = this.handleBackdropClick.bind(this); - this.leave = this.leave.bind(this); - this.enter = this.enter.bind(this); - this.show = this.show.bind(this); - this.hide = this.hide.bind(this); - this.toggle = this.toggle.bind(this); - this.listenKeyboard = this.listenKeyboard.bind(this); - }; - - hasHidden() { - return this.state.hidden; - }; - - addTransitionListener(node, handle){ - if (node) { - var endListener = function(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } - }; - - handleBackdropClick() { - if (this.props.closeOnClick) { - this.hide(); - } - }; - - render() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; + return React.createClass({ + propTypes: { + className: PropTypes.string, + // Close the modal when esc is pressed? Defaults to true. + keyboard: PropTypes.bool, + onShow: PropTypes.func, + onHide: PropTypes.func, + animation: PropTypes.object, + backdrop: PropTypes.bool, + closeOnClick: PropTypes.bool, + modalStyle: PropTypes.object, + backdropStyle: PropTypes.object, + contentStyle: PropTypes.object, + }, + + getDefaultProps: function() { + return { + className: "", + onShow: function(){}, + onHide: function(){}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {}, + }; + }, + + getInitialState: function(){ + return { + willHidden: false, + hidden: true + }; + }, + + hasHidden: function(){ + return this.state.hidden; + }, + + addTransitionListener: function(node, handle){ + if (node) { + var endListener = function(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); } - } + }, - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; + handleBackdropClick: function() { + if (this.props.closeOnClick) { + this.hide("backdrop"); + } + }, + + render: function() { + + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; + } } - } - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; + if (this.props.backdropStyle) { + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (var style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; + } } - } - var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; + if (this.props.contentStyle) { + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (var style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; + } + } - if(willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); - } + var backdrop = this.props.backdrop?
: undefined; - return (React.createElement("span", null, - React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, - sharp, - React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, - this.props.children - ) - ), - backdrop - )) - ; - }; - - leave() { - this.setState({ - hidden: true - }); - this.props.onHide(); - }; - - enter() { - this.props.onShow(); - }; - - show() { - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function(){ - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - }; - - hide() { - if (this.hasHidden()) return; - - this.setState({ - willHidden: true - }); - }; - - toggle() { - if (this.hasHidden()) - this.show(); - else - this.hide(); - }; - - listenKeyboard(event) { - if (this.props.keyboard && - (event.key === "Escape" || - event.keyCode === 27)) { - this.hide(); - } - }; + if(willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } - componentDidMount() { - window.addEventListener("keydown", this.listenKeyboard, true); - }; + return ( +
+ {sharp} +
+ {this.props.children} +
+
+ {backdrop} +
) + ; + }, + + leave: function(){ + this.setState({ + hidden: true + }); + this.props.onHide(this.state.hideSource); + }, + + enter: function(){ + this.props.onShow(); + }, + + show: function(){ + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function(){ + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + }, + + hide: function(source){ + if (this.hasHidden()) return; + + if (!source) { + source = "hide"; + } - componentWillUnmount() { - window.removeEventListener("keydown", this.listenKeyboard, true); - }; -}; + this.setState({ + hideSource: source, + willHidden: true + }); + }, + + toggle: function(){ + if (this.hasHidden()) + this.show(); + else + this.hide("toggle"); + }, + + listenKeyboard: function(event) { + (typeof(this.props.keyboard)=="function") + ?this.props.keyboard(event) + :this.closeOnEsc(event); + }, + + closeOnEsc: function(event){ + if (this.props.keyboard && + (event.key === "Escape" || + event.keyCode === 27)) { + this.hide("keyboard"); + } + }, -Factory.propTypes = { - className: PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. - keyboard: PropTypes.bool, - onShow: PropTypes.func, - onHide: PropTypes.func, - animation: PropTypes.object, - backdrop: PropTypes.bool, - closeOnClick: PropTypes.bool, - modalStyle: PropTypes.object, - backdropStyle: PropTypes.object, - contentStyle: PropTypes.object -}; + componentDidMount: function(){ + window.addEventListener("keydown", this.listenKeyboard, true); + }, -Factory.defaultProps = { - className: "", - onShow: function(){}, - onHide: function(){}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {} + componentWillUnmount: function() { + window.removeEventListener("keydown", this.listenKeyboard, true); + } + }); }; - -return Factory; -}; \ No newline at end of file From 9951595756f31b5e321416212db2150d6cb6f6bb Mon Sep 17 00:00:00 2001 From: Jeremy Ayerst Date: Tue, 27 Jun 2017 21:24:28 -0500 Subject: [PATCH 03/18] Update package.json --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 39e22ec..644e956 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,13 @@ { "name": "boron", - "version": "0.2.4", + "version": "0.2.5", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Yuanyan Cao", "license": "MIT", "repository": { "type": "git", - "url": "https://github.com/yuanyan/boron.git" + "url": "https://github.com/jerairrest/boron.git" }, "dependencies": { "domkit": "^0.0.1" From 507498f71db954649bd695e289d98477b45b7df2 Mon Sep 17 00:00:00 2001 From: Jer Date: Tue, 27 Jun 2017 21:28:31 -0500 Subject: [PATCH 04/18] apparently I need to build this --- Boron.js | 8 + DropModal.js | 133 ++ FadeModal.js | 97 ++ FlyModal.js | 112 ++ OutlineModal.js | 146 ++ ScaleModal.js | 100 ++ WaveModal.js | 242 +++ modalFactory.js | 190 +++ yarn.lock | 3862 +++++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 4890 insertions(+) create mode 100644 Boron.js create mode 100644 DropModal.js create mode 100644 FadeModal.js create mode 100644 FlyModal.js create mode 100644 OutlineModal.js create mode 100644 ScaleModal.js create mode 100644 WaveModal.js create mode 100644 modalFactory.js create mode 100644 yarn.lock diff --git a/Boron.js b/Boron.js new file mode 100644 index 0000000..6613611 --- /dev/null +++ b/Boron.js @@ -0,0 +1,8 @@ +module.exports = { + DropModal: require('./DropModal'), + WaveModal: require('./WaveModal'), + FlyModal: require('./FlyModal'), + FadeModal: require('./FadeModal'), + ScaleModal: require('./ScaleModal'), + OutlineModal: require('./OutlineModal'), +} diff --git a/DropModal.js b/DropModal.js new file mode 100644 index 0000000..f271777 --- /dev/null +++ b/DropModal.js @@ -0,0 +1,133 @@ +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' + }, + + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' + }, + + showModalAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate(-50%, -300px)' + }, + '100%': { + opacity: 1, + transform: 'translate(-50%, -50%)' + } + }), + + hideModalAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate(-50%, -50%)' + }, + '100%': { + opacity: 0, + transform: 'translate(-50%, 100px)' + } + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }), + + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate(0, -20px)' + }, + '100%': { + opacity: 1, + transform: 'translate(0, 0)' + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate(0, 0)' + }, + '100%': { + opacity: 0, + transform: 'translate(0, 50px)' + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showModalAnimation = animation.showModalAnimation; +var hideModalAnimation = animation.hideModalAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'modal'; + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + width: "500px", + transform: "translate(-50%, -50%)", + top: "50%", + left: "50%", + backgroundColor: "white", + zIndex: 1050, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideModalAnimation : showModalAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + opacity: 0, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationDelay: '0.25s', + animationName: showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/FadeModal.js b/FadeModal.js new file mode 100644 index 0000000..02099d8 --- /dev/null +++ b/FadeModal.js @@ -0,0 +1,97 @@ +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 1 + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0 + } + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + }, + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'content'; + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/FlyModal.js b/FlyModal.js new file mode 100644 index 0000000..a0225c9 --- /dev/null +++ b/FlyModal.js @@ -0,0 +1,112 @@ +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out' + }, + hide: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate3d(calc(-100vw - 50%), 0, 0)' + }, + '50%': { + opacity: 1, + transform: 'translate3d(100px, 0, 0)' + }, + '100%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)' + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)' + }, + '50%': { + opacity: 1, + transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)' + }, + '100%': { + opacity: 0, + transform: 'translate3d(calc(100vw + 50%), 0, 0)' + }, + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + }, + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '90%': { + opactiy: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'content'; + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/OutlineModal.js b/OutlineModal.js new file mode 100644 index 0000000..db27527 --- /dev/null +++ b/OutlineModal.js @@ -0,0 +1,146 @@ +var React = require('react'); +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.8s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + }, + '40%':{ + opacity: 0 + }, + '100%': { + opacity: 1, + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + } + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + }, + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'content'; + }, + getSharp: function(willHidden) { + var strokeDashLength = 1680; + + var showSharpAnimation = insertKeyframesRule({ + '0%': { + 'stroke-dashoffset': strokeDashLength + }, + '100%': { + 'stroke-dashoffset': 0 + }, + }); + + + var sharpStyle = { + position: 'absolute', + width: 'calc(100%)', + height: 'calc(100%)', + zIndex: '-1' + }; + + var rectStyle = appendVendorPrefix({ + animationDuration: willHidden? '0.4s' :'0.8s', + animationFillMode: 'forwards', + animationName: willHidden? hideContentAnimation: showSharpAnimation, + stroke: '#ffffff', + strokeWidth: '2px', + strokeDasharray: strokeDashLength + }); + + return React.createElement("div", {style: sharpStyle}, + React.createElement("svg", { + xmlns: "http://www.w3.org/2000/svg", + width: "100%", + height: "100%", + viewBox: "0 0 496 136", + preserveAspectRatio: "none"}, + React.createElement("rect", {style: rectStyle, + x: "2", + y: "2", + fill: "none", + width: "492", + height: "132"}) + ) + ) + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/ScaleModal.js b/ScaleModal.js new file mode 100644 index 0000000..b945b5f --- /dev/null +++ b/ScaleModal.js @@ -0,0 +1,100 @@ +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'scale3d(0, 0, 1)' + }, + '100%': { + opacity: 1, + transform: 'scale3d(1, 1, 1)' + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.5, 0.5, 1)' + } + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + }, + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'content'; + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/WaveModal.js b/WaveModal.js new file mode 100644 index 0000000..987b9c5 --- /dev/null +++ b/WaveModal.js @@ -0,0 +1,242 @@ +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '1s', + animationTimingFunction: 'linear' + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '2.083333%': { + transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '4.166667%': { + transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '6.25%': { + transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '8.333333%': { + transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '10.416667%': { + transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '12.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '14.583333%': { + transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '16.666667%': { + transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '18.75%': { + transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '20.833333%': { + transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '22.916667%': { + transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '25%': { + transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '27.083333%': { + transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '29.166667%': { + transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '31.25%': { + transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '33.333333%': { + transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '35.416667%': { + transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '37.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '39.583333%': { + transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '41.666667%': { + transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '43.75%': { + transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '45.833333%': { + transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '47.916667%': { + transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '50%': { + opacity: 1, + transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '52.083333%': { + transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '54.166667%': { + transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '56.25%': { + transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '58.333333%': { + transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '60.416667%': { + transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '62.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '64.583333%': { + transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '66.666667%': { + transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '68.75%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '70.833333%': { + transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '72.916667%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '75%': { + transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '77.083333%': { + transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '79.166667%': { + transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '81.25%': { + transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '83.333333%': { + transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '85.416667%': { + transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '87.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '89.583333%': { + transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '91.666667%': { + transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '93.75%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '95.833333%': { + transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '97.916667%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '100%': { + opacity: 1, + transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.8, 0.8, 1)' + }, + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + }, + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function(willHidden) { + return 'content'; + }, + getModalStyle: function(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }) + }, + getBackdropStyle: function(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }) + } +}); diff --git a/modalFactory.js b/modalFactory.js new file mode 100644 index 0000000..2c2c410 --- /dev/null +++ b/modalFactory.js @@ -0,0 +1,190 @@ +var React = require('react'); +var transitionEvents = require('domkit/transitionEvents'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); +var PropTypes = require('prop-types') + +module.exports = function(animation){ + + return React.createClass({ + propTypes: { + className: PropTypes.string, + // Close the modal when esc is pressed? Defaults to true. + keyboard: PropTypes.bool, + onShow: PropTypes.func, + onHide: PropTypes.func, + animation: PropTypes.object, + backdrop: PropTypes.bool, + closeOnClick: PropTypes.bool, + modalStyle: PropTypes.object, + backdropStyle: PropTypes.object, + contentStyle: PropTypes.object, + }, + + getDefaultProps: function() { + return { + className: "", + onShow: function(){}, + onHide: function(){}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {}, + }; + }, + + getInitialState: function(){ + return { + willHidden: false, + hidden: true + }; + }, + + hasHidden: function(){ + return this.state.hidden; + }, + + addTransitionListener: function(node, handle){ + if (node) { + var endListener = function(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); + } + }, + + handleBackdropClick: function() { + if (this.props.closeOnClick) { + this.hide("backdrop"); + } + }, + + render: function() { + + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; + } + } + + if (this.props.backdropStyle) { + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (var style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; + } + } + + if (this.props.contentStyle) { + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (var style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; + } + } + + var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; + + if(willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } + + return (React.createElement("span", null, + React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, + sharp, + React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, + this.props.children + ) + ), + backdrop + )) + ; + }, + + leave: function(){ + this.setState({ + hidden: true + }); + this.props.onHide(this.state.hideSource); + }, + + enter: function(){ + this.props.onShow(); + }, + + show: function(){ + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function(){ + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + }, + + hide: function(source){ + if (this.hasHidden()) return; + + if (!source) { + source = "hide"; + } + + this.setState({ + hideSource: source, + willHidden: true + }); + }, + + toggle: function(){ + if (this.hasHidden()) + this.show(); + else + this.hide("toggle"); + }, + + listenKeyboard: function(event) { + (typeof(this.props.keyboard)=="function") + ?this.props.keyboard(event) + :this.closeOnEsc(event); + }, + + closeOnEsc: function(event){ + if (this.props.keyboard && + (event.key === "Escape" || + event.keyCode === 27)) { + this.hide("keyboard"); + } + }, + + componentDidMount: function(){ + window.addEventListener("keydown", this.listenKeyboard, true); + }, + + componentWillUnmount: function() { + window.removeEventListener("keydown", this.listenKeyboard, true); + } + }); +}; diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..1c48426 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,3862 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +Base64@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028" + +JSONStream@^1.0.3: + version "1.3.1" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a" + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +JSONStream@~0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.10.0.tgz#74349d0d89522b71f30f0a03ff9bd20ca6f12ac0" + dependencies: + jsonparse "0.0.5" + through ">=2.2.7 <3" + +JSONStream@~0.8.3, JSONStream@~0.8.4: + version "0.8.4" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.8.4.tgz#91657dfe6ff857483066132b4618b62e8f4887bd" + dependencies: + jsonparse "0.0.5" + through ">=2.2.7 <3" + +accepts@~1.2.12, accepts@~1.2.13: + version "1.2.13" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.2.13.tgz#e5f1f3928c6d95fd96558c36ec3d9d0de4a6ecea" + dependencies: + mime-types "~2.1.6" + negotiator "0.5.3" + +accepts@~1.3.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" + dependencies: + mime-types "~2.1.11" + negotiator "0.6.1" + +accessory@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/accessory/-/accessory-1.1.0.tgz#7833e9839a32ded76d26021f36a41707a520f593" + dependencies: + ap "~0.2.0" + balanced-match "~0.2.0" + dot-parts "~1.0.0" + +acorn@^4.0.3: + version "4.0.13" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" + +align-text@^0.1.1, align-text@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" + dependencies: + kind-of "^3.0.2" + longest "^1.0.1" + repeat-string "^1.5.2" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + +ansi-regex@^0.2.0, ansi-regex@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-styles@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +any-shell-escape@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/any-shell-escape/-/any-shell-escape-0.1.1.tgz#d55ab972244c71a9a5e1ab0879f30bf110806959" + +ap@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/ap/-/ap-0.2.0.tgz#ae0942600b29912f0d2b14ec60c45e8f330b6110" + +archy@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + +arr-flatten@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.3.tgz#a274ed85ac08849b6bd7847c4580745dc51adfb1" + +array-differ@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-0.1.0.tgz#12e2c9b706bed47c8b483b57e487473fb0861f3a" + +array-differ@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" + +array-each@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + +array-slice@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.0.0.tgz#e73034f00dcc1f40876008fd20feae77bd4b7c2f" + +array-union@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-0.1.0.tgz#ede98088330665e699e1ebf0227cbc6034e627db" + dependencies: + array-uniq "^0.1.0" + +array-uniq@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-0.1.1.tgz#5861f3ed4e4bb6175597a4e078e8aa78ebe958c7" + +array-uniq@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + +asap@~2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" + +asn1.js@^4.0.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@0.1.11: + version "0.1.11" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.1.11.tgz#559be18376d08a4ec4dbe80877d27818639b2df7" + +assert-plus@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.1.5.tgz#ee74009413002d84cec7219c6ac811812e723160" + +assert@~1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.1.2.tgz#adaa04c46bb58c6dd1f294da3eb26e6228eb6e44" + dependencies: + util "0.10.3" + +assert@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.3.0.tgz#03939a622582a812cc202320a0b9a56c9b815849" + dependencies: + util "0.10.3" + +ast-types@0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" + +astw@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917" + dependencies: + acorn "^4.0.3" + +async-each@~0.1.5: + version "0.1.6" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-0.1.6.tgz#b67e99edcddf96541e44af56290cd7d5c6e70439" + +async@^0.9.0, async@~0.9.0: + version "0.9.2" + resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" + +async@~0.2.6: + version "0.2.10" + resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" + +aws-sign2@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.5.0.tgz#c57103f7a17fc037f02d7c2e64b602ea223f7d63" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + +balanced-match@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.2.1.tgz#7bc658b4bed61eee424ad74f75f5c3e2c4df3cc7" + +base62@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/base62/-/base62-0.1.1.tgz#7b4174c2f94449753b11c2651c083da841a7b084" + +base64-js@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.7.tgz#54400dc91d696cec32a8a47902f971522fee8f48" + +base64-js@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" + +base64-url@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-1.2.1.tgz#199fd661702a0e7b7dcae6e0698bb089c52f6d78" + +basic-auth-connect@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/basic-auth-connect/-/basic-auth-connect-1.0.0.tgz#fdb0b43962ca7b40456a7c2bb48fe173da2d2122" + +basic-auth@~1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.0.4.tgz#030935b01de7c9b94a824b29f3fccb750d3a5290" + +batch@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464" + +beeper@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.7" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.7.tgz#ddb048e50d9482790094c13eb3fcfc833ce7ab46" + +body-parser@~1.13.3: + version "1.13.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.13.3.tgz#c08cf330c3358e151016a05746f13f029c97fa97" + dependencies: + bytes "2.1.0" + content-type "~1.0.1" + debug "~2.2.0" + depd "~1.0.1" + http-errors "~1.3.1" + iconv-lite "0.4.11" + on-finished "~2.3.0" + qs "4.0.0" + raw-body "~2.1.2" + type-is "~1.6.6" + +body-parser@~1.14.0: + version "1.14.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.14.2.tgz#1015cb1fe2c443858259581db53332f8d0cf50f9" + dependencies: + bytes "2.2.0" + content-type "~1.0.1" + debug "~2.2.0" + depd "~1.1.0" + http-errors "~1.3.1" + iconv-lite "0.4.13" + on-finished "~2.3.0" + qs "5.2.0" + raw-body "~2.1.5" + type-is "~1.6.10" + +boom@0.4.x: + version "0.4.2" + resolved "https://registry.yarnpkg.com/boom/-/boom-0.4.2.tgz#7a636e9ded4efcefb19cef4947a3c67dfaee911b" + dependencies: + hoek "0.9.x" + +brace-expansion@^1.0.0, brace-expansion@^1.1.7: + version "1.1.8" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + +browser-pack@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-3.2.0.tgz#faa1cbc41487b1acc4747e373e1148adffd0e2d9" + dependencies: + JSONStream "~0.8.4" + combine-source-map "~0.3.0" + concat-stream "~1.4.1" + defined "~0.0.0" + through2 "~0.5.1" + umd "^2.1.0" + +browser-pack@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-4.0.4.tgz#8dae95a20ca43b3fea201faa6cfaa84ff4a0d484" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.3.0" + concat-stream "~1.4.1" + defined "^1.0.0" + through2 "~0.5.1" + umd "^3.0.0" + +browser-resolve@^1.3.0, browser-resolve@^1.7.0, browser-resolve@^1.7.1: + version "1.11.2" + resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" + dependencies: + resolve "1.1.7" + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" + dependencies: + buffer-xor "^1.0.2" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + inherits "^2.0.1" + +browserify-cipher@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-shim@^3.8.0: + version "3.8.14" + resolved "https://registry.yarnpkg.com/browserify-shim/-/browserify-shim-3.8.14.tgz#bf1057026932d3253c75ef7dd714f3b877edec6b" + dependencies: + exposify "~0.5.0" + mothership "~0.2.0" + rename-function-calls "~0.1.0" + resolve "~0.6.1" + through "~2.3.4" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + +browserify-zlib@~0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d" + dependencies: + pako "~0.2.0" + +browserify@^6.3.3: + version "6.3.4" + resolved "https://registry.yarnpkg.com/browserify/-/browserify-6.3.4.tgz#57b5d195cc568139e971302e5cd9d58ddafb54d8" + dependencies: + JSONStream "~0.8.3" + assert "~1.1.0" + browser-pack "^3.2.0" + browser-resolve "^1.3.0" + browserify-zlib "~0.1.2" + buffer "^2.3.0" + builtins "~0.0.3" + commondir "0.0.1" + concat-stream "~1.4.1" + console-browserify "^1.1.0" + constants-browserify "~0.0.1" + crypto-browserify "^3.0.0" + deep-equal "~0.2.1" + defined "~0.0.0" + deps-sort "^1.3.5" + domain-browser "~1.1.0" + duplexer2 "~0.0.2" + events "~1.0.0" + glob "^4.0.5" + http-browserify "^1.4.0" + https-browserify "~0.0.0" + inherits "~2.0.1" + insert-module-globals "^6.1.0" + isarray "0.0.1" + labeled-stream-splicer "^1.0.0" + module-deps "^3.5.0" + os-browserify "~0.1.1" + parents "~0.0.1" + path-browserify "~0.0.0" + process "^0.8.0" + punycode "~1.2.3" + querystring-es3 "~0.2.0" + readable-stream "^1.0.33-1" + resolve "~0.7.1" + shallow-copy "0.0.1" + shasum "^1.0.0" + shell-quote "~0.0.1" + stream-browserify "^1.0.0" + string_decoder "~0.10.0" + subarg "^1.0.0" + syntax-error "^1.1.1" + through2 "^1.0.0" + timers-browserify "^1.0.1" + tty-browserify "~0.0.0" + umd "~2.1.0" + url "~0.10.1" + util "~0.10.1" + vm-browserify "~0.0.1" + xtend "^3.0.0" + +browserify@^9.0.2: + version "9.0.8" + resolved "https://registry.yarnpkg.com/browserify/-/browserify-9.0.8.tgz#91859e9f60384459ead554df89cff03c734f159b" + dependencies: + JSONStream "~0.10.0" + assert "~1.3.0" + browser-pack "^4.0.0" + browser-resolve "^1.7.1" + browserify-zlib "~0.1.2" + buffer "^3.0.0" + builtins "~0.0.3" + commondir "0.0.1" + concat-stream "~1.4.1" + console-browserify "^1.1.0" + constants-browserify "~0.0.1" + crypto-browserify "^3.0.0" + deep-equal "^1.0.0" + defined "~0.0.0" + deps-sort "^1.3.5" + domain-browser "~1.1.0" + duplexer2 "~0.0.2" + events "~1.0.0" + glob "^4.0.5" + has "^1.0.0" + http-browserify "^1.4.0" + https-browserify "~0.0.0" + inherits "~2.0.1" + insert-module-globals "^6.2.0" + isarray "0.0.1" + labeled-stream-splicer "^1.0.0" + module-deps "^3.7.0" + os-browserify "~0.1.1" + parents "^1.0.1" + path-browserify "~0.0.0" + process "^0.10.0" + punycode "~1.2.3" + querystring-es3 "~0.2.0" + read-only-stream "^1.1.1" + readable-stream "^1.1.13" + resolve "^1.1.4" + shallow-copy "0.0.1" + shasum "^1.0.0" + shell-quote "~0.0.1" + stream-browserify "^1.0.0" + string_decoder "~0.10.0" + subarg "^1.0.0" + syntax-error "^1.1.1" + through2 "^1.0.0" + timers-browserify "^1.0.1" + tty-browserify "~0.0.0" + url "~0.10.1" + util "~0.10.1" + vm-browserify "~0.0.1" + xtend "^3.0.0" + +buffer-xor@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + +buffer@^2.3.0: + version "2.8.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-2.8.2.tgz#d73c214c0334384dc29b04ee0ff5f5527c7974e7" + dependencies: + base64-js "0.0.7" + ieee754 "^1.1.4" + is-array "^1.0.1" + +buffer@^3.0.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb" + dependencies: + base64-js "0.0.8" + ieee754 "^1.1.4" + isarray "^1.0.0" + +builtin-modules@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +builtins@~0.0.3: + version "0.0.7" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-0.0.7.tgz#355219cd6cf18dbe7c01cc7fd2dce765cfdc549a" + +bytes@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.1.0.tgz#ac93c410e2ffc9cc7cf4b464b38289067f5e47b4" + +bytes@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.2.0.tgz#fd35464a403f6f9117c2de3609ecff9cae000588" + +bytes@2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.4.0.tgz#7d97196f9d5baf7f6935e25985549edd2a6c2339" + +callsite@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + +center-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" + dependencies: + align-text "^0.1.3" + lazy-cache "^1.0.3" + +chalk@^0.5.0, chalk@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.5.1.tgz#663b3a648b68b55d04690d49167aa837858f2174" + dependencies: + ansi-styles "^1.1.0" + escape-string-regexp "^1.0.0" + has-ansi "^0.1.0" + strip-ansi "^0.3.0" + supports-color "^0.2.0" + +chalk@^1.0.0, chalk@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chokidar@~0.12.1: + version "0.12.6" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-0.12.6.tgz#be204f5b9634e009311256e5d6e8e0e508284d2f" + dependencies: + async-each "~0.1.5" + readdirp "~1.3.0" + optionalDependencies: + fsevents "~0.3.1" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07" + dependencies: + inherits "^2.0.1" + +clean-css@2.2.x: + version "2.2.23" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-2.2.23.tgz#0590b5478b516c4903edc2d89bd3fdbdd286328c" + dependencies: + commander "2.2.x" + +cliui@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" + dependencies: + center-align "^0.1.1" + right-align "^0.1.1" + wordwrap "0.0.2" + +clone-stats@^0.0.1, clone-stats@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" + +clone@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" + +clone@^1.0.0, clone@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + +codemirror@^5.0.0: + version "5.27.2" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.27.2.tgz#a292d42f079d5b98c68c3146fab99844f3d8776c" + +combine-source-map@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.3.0.tgz#d9e74f593d9cd43807312cb5d846d451efaa9eb7" + dependencies: + convert-source-map "~0.3.0" + inline-source-map "~0.3.0" + source-map "~0.1.31" + +combine-source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.6.1.tgz#9b4a09c316033d768e0f11e029fa2730e079ad96" + dependencies: + convert-source-map "~1.1.0" + inline-source-map "~0.5.0" + lodash.memoize "~3.0.3" + source-map "~0.4.2" + +combined-stream@~0.0.4: + version "0.0.7" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-0.0.7.tgz#0137e657baa5a7541c57ac37ac5fc07d73b4dc1f" + dependencies: + delayed-stream "0.0.5" + +commander@2.2.x: + version "2.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.2.0.tgz#175ad4b9317f3ff615f201c1e57224f55a3e91df" + +commander@^2.5.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.10.0.tgz#e1f5d3245de246d1a5ca04702fa1ad1bd7e405fe" + dependencies: + graceful-readlink ">= 1.0.0" + +commondir@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-0.0.1.tgz#89f00fdcd51b519c578733fec563e6a6da7f5be2" + +commoner@^0.10.0: + version "0.10.8" + resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5" + dependencies: + commander "^2.5.0" + detective "^4.3.1" + glob "^5.0.15" + graceful-fs "^4.1.2" + iconv-lite "^0.4.5" + mkdirp "^0.5.0" + private "^0.1.6" + q "^1.1.2" + recast "^0.11.17" + +compressible@~2.0.5: + version "2.0.10" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.10.tgz#feda1c7f7617912732b29bf8cf26252a20b9eecd" + dependencies: + mime-db ">= 1.27.0 < 2" + +compression@~1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.5.2.tgz#b03b8d86e6f8ad29683cba8df91ddc6ffc77b395" + dependencies: + accepts "~1.2.12" + bytes "2.1.0" + compressible "~2.0.5" + debug "~2.2.0" + on-headers "~1.0.0" + vary "~1.0.1" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + +concat-stream@~1.4.1, concat-stream@~1.4.5: + version "1.4.10" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.4.10.tgz#acc3bbf5602cb8cc980c6ac840fa7d8603e3ef36" + dependencies: + inherits "~2.0.1" + readable-stream "~1.1.9" + typedarray "~0.0.5" + +connect-livereload@^0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/connect-livereload/-/connect-livereload-0.5.4.tgz#80157d1371c9f37cc14039ab1895970d119dc3bc" + +connect-timeout@~1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/connect-timeout/-/connect-timeout-1.6.2.tgz#de9a5ec61e33a12b6edaab7b5f062e98c599b88e" + dependencies: + debug "~2.2.0" + http-errors "~1.3.1" + ms "0.7.1" + on-headers "~1.0.0" + +connect@^2.30.0: + version "2.30.2" + resolved "https://registry.yarnpkg.com/connect/-/connect-2.30.2.tgz#8da9bcbe8a054d3d318d74dfec903b5c39a1b609" + dependencies: + basic-auth-connect "1.0.0" + body-parser "~1.13.3" + bytes "2.1.0" + compression "~1.5.2" + connect-timeout "~1.6.2" + content-type "~1.0.1" + cookie "0.1.3" + cookie-parser "~1.3.5" + cookie-signature "1.0.6" + csurf "~1.8.3" + debug "~2.2.0" + depd "~1.0.1" + errorhandler "~1.4.2" + express-session "~1.11.3" + finalhandler "0.4.0" + fresh "0.3.0" + http-errors "~1.3.1" + method-override "~2.3.5" + morgan "~1.6.1" + multiparty "3.3.2" + on-headers "~1.0.0" + parseurl "~1.3.0" + pause "0.1.0" + qs "4.0.0" + response-time "~2.3.1" + serve-favicon "~2.3.0" + serve-index "~1.7.2" + serve-static "~1.10.0" + type-is "~1.6.6" + utils-merge "1.0.0" + vhost "~3.0.1" + +console-browserify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" + dependencies: + date-now "^0.1.4" + +constants-browserify@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2" + +content-type@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" + +convert-source-map@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.4.1.tgz#f919a0099fe31f80fc5a1d0eb303161b394070c7" + +convert-source-map@~0.3.0: + version "0.3.5" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" + +convert-source-map@~1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860" + +cookie-parser@~1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/cookie-parser/-/cookie-parser-1.3.5.tgz#9d755570fb5d17890771227a02314d9be7cf8356" + dependencies: + cookie "0.1.3" + cookie-signature "1.0.6" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + +cookie@0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.1.3.tgz#e734a5c1417fce472d5aef82c381cabb64d1a435" + +core-js@^1.0.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + +core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + +crc@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/crc/-/crc-3.3.0.tgz#fa622e1bc388bf257309082d6b65200ce67090ba" + +create-ecdh@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.1, create-hash@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + ripemd160 "^2.0.0" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +cryptiles@0.2.x: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-0.2.2.tgz#ed91ff1f17ad13d3748288594f8a48a0d26f325c" + dependencies: + boom "0.4.x" + +crypto-browserify@^3.0.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.0.tgz#3652a0906ab9b2a7e0c3ce66a408e957a2485522" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + +csrf@~3.0.0: + version "3.0.6" + resolved "https://registry.yarnpkg.com/csrf/-/csrf-3.0.6.tgz#b61120ddceeafc91e76ed5313bb5c0b2667b710a" + dependencies: + rndm "1.2.0" + tsscmp "1.0.5" + uid-safe "2.1.4" + +csurf@~1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/csurf/-/csurf-1.8.3.tgz#23f2a13bf1d8fce1d0c996588394442cba86a56a" + dependencies: + cookie "0.1.3" + cookie-signature "1.0.6" + csrf "~3.0.0" + http-errors "~1.3.1" + +ctype@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + +date-now@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" + +dateformat@^1.0.7-1.2.3: + version "1.0.12" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" + dependencies: + get-stdin "^4.0.1" + meow "^3.3.0" + +dateformat@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" + +deap@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/deap/-/deap-1.0.0.tgz#b148bf82430a27699b7483a03eb6b67585bfc888" + +debug@2.6.8: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" + dependencies: + ms "2.0.0" + +debug@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" + dependencies: + ms "0.7.1" + +decamelize@^1.0.0, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +deep-equal@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-equal@~0.2.1: + version "0.2.2" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-0.2.2.tgz#84b745896f34c684e98f2ce0e42abaf43bba017d" + +defaults@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + dependencies: + clone "^1.0.2" + +defined@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" + +defined@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-0.0.0.tgz#f35eea7d705e933baf13b2f03b3f83d921403b3e" + +del@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/del/-/del-0.1.3.tgz#2d724a719b5acf5c0b840b4224715e838406a419" + dependencies: + each-async "^1.0.0" + globby "^0.1.1" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + rimraf "^2.2.8" + +delayed-stream@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f" + +depd@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.0.1.tgz#80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa" + +depd@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" + +deprecated@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19" + +deps-sort@^1.3.5: + version "1.3.9" + resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-1.3.9.tgz#29dfff53e17b36aecae7530adbbbf622c2ed1a71" + dependencies: + JSONStream "^1.0.3" + shasum "^1.0.0" + subarg "^1.0.0" + through2 "^1.0.0" + +des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + +detect-file@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63" + dependencies: + fs-exists-sync "^0.1.0" + +detective@^4.0.0, detective@^4.3.1, detective@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/detective/-/detective-4.5.0.tgz#6e5a8c6b26e6c7a254b1c6b6d7490d98ec91edd1" + dependencies: + acorn "^4.0.3" + defined "^1.0.0" + +detective@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detective/-/detective-3.1.0.tgz#77782444ab752b88ca1be2e9d0a0395f1da25eed" + dependencies: + escodegen "~1.1.0" + esprima-fb "3001.1.0-dev-harmony-fb" + +diffie-hellman@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +domain-browser@~1.1.0: + version "1.1.7" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" + +domkit@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/domkit/-/domkit-0.0.1.tgz#88399d586794efc1154fec6c22cfe50f19bd4dbb" + +dot-parts@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dot-parts/-/dot-parts-1.0.1.tgz#884bd7bcfc3082ffad2fe5db53e494d8f3e0743f" + +duplexer2@0.0.2, duplexer2@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" + dependencies: + readable-stream "~1.1.9" + +duplexer@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" + +each-async@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/each-async/-/each-async-1.1.1.tgz#dee5229bdf0ab6ba2012a395e1b869abf8813473" + dependencies: + onetime "^1.0.0" + set-immediate-shim "^1.0.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + +elliptic@^6.0.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + dependencies: + iconv-lite "~0.4.13" + +end-of-stream@~0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf" + dependencies: + once "~1.3.0" + +error-ex@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" + +errorhandler@~1.4.2: + version "1.4.3" + resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.4.3.tgz#b7b70ed8f359e9db88092f2d20c0f831420ad83f" + dependencies: + accepts "~1.3.0" + escape-html "~1.0.3" + +escape-html@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.2.tgz#d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + +escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.3: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + +escodegen@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.1.0.tgz#c663923f6e20aad48d0c0fa49f31c6d4f49360cf" + dependencies: + esprima "~1.0.4" + estraverse "~1.5.0" + esutils "~1.0.0" + optionalDependencies: + source-map "~0.1.30" + +esprima-fb@13001.1001.0-dev-harmony-fb: + version "13001.1001.0-dev-harmony-fb" + resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-13001.1001.0-dev-harmony-fb.tgz#633acdb40d9bd4db8a1c1d68c06a942959fad2b0" + +esprima-fb@3001.1.0-dev-harmony-fb: + version "3001.1.0-dev-harmony-fb" + resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz#b77d37abcd38ea0b77426bb8bc2922ce6b426411" + +esprima-fb@8001.1001.0-dev-harmony-fb: + version "8001.1001.0-dev-harmony-fb" + resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-8001.1001.0-dev-harmony-fb.tgz#c3190b05341d45643e093af70485ab4988e34d5e" + +esprima@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" + +esprima@~3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + +estraverse@~1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" + +esutils@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" + +etag@~1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8" + +event-stream@^3.3.2: + version "3.3.4" + resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" + dependencies: + duplexer "~0.1.1" + from "~0" + map-stream "~0.1.0" + pause-stream "0.0.11" + split "0.3" + stream-combiner "~0.0.4" + through "~2.3.1" + +events@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/events/-/events-1.0.2.tgz#75849dcfe93d10fb057c30055afdbd51d06a8e24" + +evp_bytestokey@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" + dependencies: + create-hash "^1.1.1" + +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + +expand-tilde@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" + dependencies: + os-homedir "^1.0.1" + +expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + dependencies: + homedir-polyfill "^1.0.1" + +exposify@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/exposify/-/exposify-0.5.0.tgz#f92d0094c265b3f553e1fa456a03a1883d1059cc" + dependencies: + globo "~1.1.0" + map-obj "~1.0.1" + replace-requires "~1.0.3" + through2 "~0.4.0" + transformify "~0.1.1" + +express-session@~1.11.3: + version "1.11.3" + resolved "https://registry.yarnpkg.com/express-session/-/express-session-1.11.3.tgz#5cc98f3f5ff84ed835f91cbf0aabd0c7107400af" + dependencies: + cookie "0.1.3" + cookie-signature "1.0.6" + crc "3.3.0" + debug "~2.2.0" + depd "~1.0.1" + on-headers "~1.0.0" + parseurl "~1.3.0" + uid-safe "~2.0.0" + utils-merge "1.0.0" + +extend@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + +fancy-log@^1.0.0, fancy-log@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" + dependencies: + chalk "^1.1.1" + time-stamp "^1.0.0" + +faye-websocket@~0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + dependencies: + websocket-driver ">=0.5.1" + +fbjs@^0.8.9: + version "0.8.12" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.12.tgz#10b5d92f76d45575fd63a217d4ea02bea2f8ed04" + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.9" + +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +fill-range@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^1.1.3" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + +finalhandler@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.4.0.tgz#965a52d9e8d05d2b857548541fb89b53a2497d9b" + dependencies: + debug "~2.2.0" + escape-html "1.0.2" + on-finished "~2.3.0" + unpipe "~1.0.0" + +find-index@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" + +find-parent-dir@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" + +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + +findup-sync@^0.4.2: + version "0.4.3" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" + dependencies: + detect-file "^0.1.0" + is-glob "^2.0.1" + micromatch "^2.3.7" + resolve-dir "^0.1.0" + +fined@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fined/-/fined-1.1.0.tgz#b37dc844b76a2f5e7081e884f7c0ae344f153476" + dependencies: + expand-tilde "^2.0.2" + is-plain-object "^2.0.3" + object.defaults "^1.1.0" + object.pick "^1.2.0" + parse-filepath "^1.0.1" + +first-chunk-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" + +flagged-respawn@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-0.3.2.tgz#ff191eddcd7088a675b2610fffc976be9b8074b5" + +for-in@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + +for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + dependencies: + for-in "^1.0.1" + +forever-agent@~0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130" + +form-data@~0.1.0: + version "0.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-0.1.4.tgz#91abd788aba9702b1aabfa8bc01031a2ac9e3b12" + dependencies: + async "~0.9.0" + combined-stream "~0.0.4" + mime "~1.2.11" + +fresh@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f" + +from@~0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" + +fs-exists-sync@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + +fsevents@~0.3.1: + version "0.3.8" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-0.3.8.tgz#9992f1032c925c829554d0d59801dca0313a5356" + dependencies: + nan "^2.0.2" + +function-bind@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" + +gaze@^0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f" + dependencies: + globule "~0.1.0" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + +gift@^0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/gift/-/gift-0.4.2.tgz#1bd24d2846ad3fa71d28ff0b54f4c06a2fdd22ad" + dependencies: + underscore "1.x.x" + +git-remote-origin-url@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-1.1.2.tgz#752c6475495dc493bff350c46c7abaa50a29347e" + dependencies: + gitconfiglocal "^1.0.0" + +gitconfiglocal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + dependencies: + ini "^1.3.2" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + dependencies: + is-glob "^2.0.0" + +glob-stream@^3.1.5: + version "3.1.18" + resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b" + dependencies: + glob "^4.3.1" + glob2base "^0.0.12" + minimatch "^2.0.1" + ordered-read-streams "^0.1.0" + through2 "^0.6.1" + unique-stream "^1.0.0" + +glob-watcher@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b" + dependencies: + gaze "^0.5.1" + +glob2base@^0.0.12: + version "0.0.12" + resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" + dependencies: + find-index "^0.1.1" + +glob@^4.0.2, glob@^4.0.5, glob@^4.3.1: + version "4.5.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "^2.0.1" + once "^1.3.0" + +glob@^5.0.15: + version "5.0.15" + resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.5: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@~3.1.21: + version "3.1.21" + resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd" + dependencies: + graceful-fs "~1.2.0" + inherits "1" + minimatch "~0.2.11" + +global-modules@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" + dependencies: + global-prefix "^0.1.4" + is-windows "^0.2.0" + +global-prefix@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" + dependencies: + homedir-polyfill "^1.0.0" + ini "^1.3.4" + is-windows "^0.2.0" + which "^1.2.12" + +globby@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-0.1.1.tgz#cbec63df724b4bea458b79a16cc0e3b1f2ca8620" + dependencies: + array-differ "^0.1.0" + array-union "^0.1.0" + async "^0.9.0" + glob "^4.0.2" + +globo@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/globo/-/globo-1.1.0.tgz#0d26098955dea422eb2001b104898b0a101caaf3" + dependencies: + accessory "~1.1.0" + is-defined "~1.0.0" + ternary "~1.0.0" + +globule@~0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5" + dependencies: + glob "~3.1.21" + lodash "~1.0.1" + minimatch "~0.2.11" + +glogg@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" + dependencies: + sparkles "^1.0.0" + +graceful-fs@^3.0.0, graceful-fs@~3.0.2: + version "3.0.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818" + dependencies: + natives "^1.1.0" + +graceful-fs@^4.1.2: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +graceful-fs@~1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" + +graceful-fs@~2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-2.0.3.tgz#7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0" + +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + +gulp-bump@^0.1.11: + version "0.1.13" + resolved "https://registry.yarnpkg.com/gulp-bump/-/gulp-bump-0.1.13.tgz#4e1b0da8d56267566c3d8b832da8c0833939f702" + dependencies: + gulp-util "^3.0.1" + semver "^2.3.2" + through2 "^0.5.1" + +gulp-connect@^2.2.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/gulp-connect/-/gulp-connect-2.3.1.tgz#14ae7173328b691252b01fc1930a39cbb24fb33c" + dependencies: + connect "^2.30.0" + connect-livereload "^0.5.4" + event-stream "^3.3.2" + gulp-util "^3.0.6" + tiny-lr "^0.2.1" + +gulp-gh-pages@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/gulp-gh-pages/-/gulp-gh-pages-0.4.0.tgz#e19a5af59c35300306abd139a57a596fd61f1add" + dependencies: + gift "^0.4.1" + git-remote-origin-url "^1.0.0" + gulp-util "^3.0.1" + lodash "^2.4.1" + rimraf "^2.2.6" + through2 "^0.6.1" + when "^3.4.5" + +gulp-git@^0.5.5: + version "0.5.6" + resolved "https://registry.yarnpkg.com/gulp-git/-/gulp-git-0.5.6.tgz#85c52c6ec27048dcc557e74ec96c8ff4b24297af" + dependencies: + any-shell-escape "^0.1.1" + gulp-util "^3.0.1" + require-dir "^0.1.0" + through2 "^0.6.3" + +gulp-less@^1.3.6: + version "1.3.9" + resolved "https://registry.yarnpkg.com/gulp-less/-/gulp-less-1.3.9.tgz#e129750f236693ead5b522af311cc33eeff1910e" + dependencies: + convert-source-map "^0.4.0" + gulp-util "^3.0.0" + less "^1.7.4" + lodash.defaults "^2.4.1" + through2 "^0.5.1" + vinyl-sourcemaps-apply "^0.1.1" + +gulp-react@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/gulp-react/-/gulp-react-3.1.0.tgz#82b3dc7e9d11fd00e26580b3b065a27c106e04b6" + dependencies: + gulp-util "^3.0.0" + object-assign "^4.0.1" + react-tools "^0.13.0" + through2 "^2.0.0" + vinyl-sourcemaps-apply "^0.2.0" + +gulp-rename@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" + +gulp-streamify@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/gulp-streamify/-/gulp-streamify-0.0.5.tgz#685d20512552ac5765624b4131b4b1ecadf00ec1" + dependencies: + gulp-util "~2.2.14" + plexer "0.0.2" + readable-stream "^1.0.26-2" + +gulp-uglify@^1.0.1: + version "1.5.4" + resolved "https://registry.yarnpkg.com/gulp-uglify/-/gulp-uglify-1.5.4.tgz#524788d87666d09f9d0c21fb2177f90039a658c9" + dependencies: + deap "^1.0.0" + fancy-log "^1.0.0" + gulp-util "^3.0.0" + isobject "^2.0.0" + through2 "^2.0.0" + uglify-js "2.6.4" + uglify-save-license "^0.4.1" + vinyl-sourcemaps-apply "^0.2.0" + +gulp-util@^3.0.0, gulp-util@^3.0.1, gulp-util@^3.0.6: + version "3.0.8" + resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" + dependencies: + array-differ "^1.0.0" + array-uniq "^1.0.2" + beeper "^1.0.0" + chalk "^1.0.0" + dateformat "^2.0.0" + fancy-log "^1.1.0" + gulplog "^1.0.0" + has-gulplog "^0.1.0" + lodash._reescape "^3.0.0" + lodash._reevaluate "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.template "^3.0.0" + minimist "^1.1.0" + multipipe "^0.1.2" + object-assign "^3.0.0" + replace-ext "0.0.1" + through2 "^2.0.0" + vinyl "^0.5.0" + +gulp-util@~2.2.14: + version "2.2.20" + resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-2.2.20.tgz#d7146e5728910bd8f047a6b0b1e549bc22dbd64c" + dependencies: + chalk "^0.5.0" + dateformat "^1.0.7-1.2.3" + lodash._reinterpolate "^2.4.1" + lodash.template "^2.4.1" + minimist "^0.2.0" + multipipe "^0.1.0" + through2 "^0.5.0" + vinyl "^0.2.1" + +gulp@^3.8.10: + version "3.9.1" + resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4" + dependencies: + archy "^1.0.0" + chalk "^1.0.0" + deprecated "^0.0.1" + gulp-util "^3.0.0" + interpret "^1.0.0" + liftoff "^2.1.0" + minimist "^1.1.0" + orchestrator "^0.3.0" + pretty-hrtime "^1.0.0" + semver "^4.1.0" + tildify "^1.0.0" + v8flags "^2.0.2" + vinyl-fs "^0.3.0" + +gulplog@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" + dependencies: + glogg "^1.0.0" + +has-ansi@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e" + dependencies: + ansi-regex "^0.2.0" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + +has-gulplog@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" + dependencies: + sparkles "^1.0.0" + +has-require@~1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/has-require/-/has-require-1.2.2.tgz#921675ab130dbd9768fc8da8f1a8e242dfa41774" + dependencies: + escape-string-regexp "^1.0.3" + +has@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" + dependencies: + function-bind "^1.0.2" + +hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + dependencies: + inherits "^2.0.1" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.2" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.2.tgz#bf5c887825cfe40b9efde7bf11bd2db26e6bf01b" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + +hawk@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-1.1.1.tgz#87cd491f9b46e4e2aeaca335416766885d2d1ed9" + dependencies: + boom "0.4.x" + cryptiles "0.2.x" + hoek "0.9.x" + sntp "0.2.x" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hoek@0.9.x: + version "0.9.1" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-0.9.1.tgz#3d322462badf07716ea7eb85baf88079cddce505" + +homedir-polyfill@^1.0.0, homedir-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + +hosted-git-info@^2.1.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" + +http-browserify@^1.4.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/http-browserify/-/http-browserify-1.7.0.tgz#33795ade72df88acfbfd36773cefeda764735b20" + dependencies: + Base64 "~0.2.0" + inherits "~2.0.1" + +http-errors@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.3.1.tgz#197e22cdebd4198585e8694ef6786197b91ed942" + dependencies: + inherits "~2.0.1" + statuses "1" + +http-signature@~0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.10.1.tgz#4fbdac132559aa8323121e540779c0a012b27e66" + dependencies: + asn1 "0.1.11" + assert-plus "^0.1.5" + ctype "0.5.3" + +https-browserify@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" + +iconv-lite@0.4.11: + version "0.4.11" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.11.tgz#2ecb42fd294744922209a2e7c404dac8793d8ade" + +iconv-lite@0.4.13, iconv-lite@^0.4.5, iconv-lite@~0.4.13: + version "0.4.13" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" + +ieee754@^1.1.4: + version "1.1.8" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + +ini@^1.3.2, ini@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" + +inline-source-map@~0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.3.1.tgz#a528b514e689fce90db3089e870d92f527acb5eb" + dependencies: + source-map "~0.3.0" + +inline-source-map@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.5.0.tgz#4a4c5dd8e4fb5e9b3cda60c822dfadcaee66e0af" + dependencies: + source-map "~0.4.0" + +insert-module-globals@^6.1.0, insert-module-globals@^6.2.0: + version "6.6.3" + resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-6.6.3.tgz#20638e29a30f9ed1ca2e3a825fbc2cba5246ddfc" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.6.1" + concat-stream "~1.4.1" + is-buffer "^1.1.0" + lexical-scope "^1.2.0" + process "~0.11.0" + through2 "^1.0.0" + xtend "^4.0.0" + +interpret@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" + +is-absolute@^0.2.3: + version "0.2.6" + resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.2.6.tgz#20de69f3db942ef2d87b9c2da36f172235b1b5eb" + dependencies: + is-relative "^0.2.1" + is-windows "^0.2.0" + +is-array@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-array/-/is-array-1.0.1.tgz#e9850cc2cc860c3bc0977e84ccf0dd464584279a" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + +is-buffer@^1.1.0, is-buffer@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" + +is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + +is-defined@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-defined/-/is-defined-1.0.0.tgz#1f07ca67d571f594c4b14415a45f7bef88f92bf5" + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + dependencies: + is-primitive "^2.0.0" + +is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + +is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + dependencies: + number-is-nan "^1.0.0" + +is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + dependencies: + is-extglob "^1.0.0" + +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + dependencies: + kind-of "^3.0.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + +is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + +is-path-in-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" + dependencies: + is-path-inside "^1.0.0" + +is-path-inside@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" + dependencies: + path-is-inside "^1.0.1" + +is-plain-object@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.3.tgz#c15bf3e4b66b62d72efaf2925848663ecbc619b6" + dependencies: + isobject "^3.0.0" + +is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + +is-relative@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.2.1.tgz#d27f4c7d516d175fb610db84bbeef23c3bc97aa5" + dependencies: + is-unc-path "^0.1.1" + +is-stream@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-unc-path@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.2.tgz#6ab053a72573c10250ff416a3814c35178af39b9" + dependencies: + unc-path-regex "^0.1.0" + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + +is-windows@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" + +isarray@0.0.1, isarray@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isobject@^2.0.0, isobject@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + +isobject@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.0.tgz#39565217f3661789e8a0a0c080d5f7e6bc46e1a0" + +isomorphic-fetch@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" + dependencies: + node-fetch "^1.0.1" + whatwg-fetch ">=0.10.0" + +js-tokens@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" + +json-stable-stringify@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45" + dependencies: + jsonify "~0.0.0" + +json-stringify-safe@~5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + +jsonparse@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64" + +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + +jstransform@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-10.1.0.tgz#b4c49bf63f162c108b0348399a8737c713b0a83a" + dependencies: + base62 "0.1.1" + esprima-fb "13001.1001.0-dev-harmony-fb" + source-map "0.1.31" + +jstransform@^8.0.0, jstransform@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-8.2.0.tgz#e43f697f7cc01a1e7c827dd9df5a79d29d0c50bb" + dependencies: + base62 "0.1.1" + esprima-fb "8001.1001.0-dev-harmony-fb" + source-map "0.1.31" + +kind-of@^3.0.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + +labeled-stream-splicer@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-1.0.2.tgz#4615331537784981e8fd264e1f3a434c4e0ddd65" + dependencies: + inherits "^2.0.1" + isarray "~0.0.1" + stream-splicer "^1.1.0" + +lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + +less@^1.7.4: + version "1.7.5" + resolved "https://registry.yarnpkg.com/less/-/less-1.7.5.tgz#4f220cf7288a27eaca739df6e4808a2d4c0d5756" + optionalDependencies: + clean-css "2.2.x" + graceful-fs "~3.0.2" + mime "~1.2.11" + mkdirp "~0.5.0" + request "~2.40.0" + source-map "0.1.x" + +lexical-scope@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4" + dependencies: + astw "^2.0.0" + +liftoff@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385" + dependencies: + extend "^3.0.0" + findup-sync "^0.4.2" + fined "^1.0.1" + flagged-respawn "^0.3.2" + lodash.isplainobject "^4.0.4" + lodash.isstring "^4.0.1" + lodash.mapvalues "^4.4.0" + rechoir "^0.6.2" + resolve "^1.1.7" + +livereload-js@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.2.2.tgz#6c87257e648ab475bc24ea257457edcc1f8d0bc2" + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + +lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + +lodash._basetostring@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" + +lodash._basevalues@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" + +lodash._escapehtmlchar@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.4.1.tgz#df67c3bb6b7e8e1e831ab48bfa0795b92afe899d" + dependencies: + lodash._htmlescapes "~2.4.1" + +lodash._escapestringchar@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._escapestringchar/-/lodash._escapestringchar-2.4.1.tgz#ecfe22618a2ade50bfeea43937e51df66f0edb72" + +lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + +lodash._htmlescapes@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._htmlescapes/-/lodash._htmlescapes-2.4.1.tgz#32d14bf0844b6de6f8b62a051b4f67c228b624cb" + +lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + +lodash._isnative@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._isnative/-/lodash._isnative-2.4.1.tgz#3ea6404b784a7be836c7b57580e1cdf79b14832c" + +lodash._objecttypes@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz#7c0b7f69d98a1f76529f890b0cdb1b4dfec11c11" + +lodash._reescape@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" + +lodash._reevaluate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" + +lodash._reinterpolate@^2.4.1, lodash._reinterpolate@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-2.4.1.tgz#4f1227aa5a8711fc632f5b07a1f4607aab8b3222" + +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + +lodash._reunescapedhtml@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._reunescapedhtml/-/lodash._reunescapedhtml-2.4.1.tgz#747c4fc40103eb3bb8a0976e571f7a2659e93ba7" + dependencies: + lodash._htmlescapes "~2.4.1" + lodash.keys "~2.4.1" + +lodash._root@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" + +lodash._shimkeys@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz#6e9cc9666ff081f0b5a6c978b83e242e6949d203" + dependencies: + lodash._objecttypes "~2.4.1" + +lodash.defaults@^2.4.1, lodash.defaults@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-2.4.1.tgz#a7e8885f05e68851144b6e12a8f3678026bc4c54" + dependencies: + lodash._objecttypes "~2.4.1" + lodash.keys "~2.4.1" + +lodash.escape@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" + dependencies: + lodash._root "^3.0.0" + +lodash.escape@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-2.4.1.tgz#2ce12c5e084db0a57dda5e5d1eeeb9f5d175a3b4" + dependencies: + lodash._escapehtmlchar "~2.4.1" + lodash._reunescapedhtml "~2.4.1" + lodash.keys "~2.4.1" + +lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + +lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + +lodash.isobject@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-2.4.1.tgz#5a2e47fe69953f1ee631a7eba1fe64d2d06558f5" + dependencies: + lodash._objecttypes "~2.4.1" + +lodash.isplainobject@^4.0.4: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + +lodash.isstring@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + +lodash.keys@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + +lodash.keys@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-2.4.1.tgz#48dea46df8ff7632b10d706b8acb26591e2b3727" + dependencies: + lodash._isnative "~2.4.1" + lodash._shimkeys "~2.4.1" + lodash.isobject "~2.4.1" + +lodash.mapvalues@^4.4.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c" + +lodash.memoize@~3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" + +lodash.restparam@^3.0.0: + version "3.6.1" + resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" + +lodash.template@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-2.4.1.tgz#9e611007edf629129a974ab3c48b817b3e1cf20d" + dependencies: + lodash._escapestringchar "~2.4.1" + lodash._reinterpolate "~2.4.1" + lodash.defaults "~2.4.1" + lodash.escape "~2.4.1" + lodash.keys "~2.4.1" + lodash.templatesettings "~2.4.1" + lodash.values "~2.4.1" + +lodash.template@^3.0.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" + dependencies: + lodash._basecopy "^3.0.0" + lodash._basetostring "^3.0.0" + lodash._basevalues "^3.0.0" + lodash._isiterateecall "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + lodash.keys "^3.0.0" + lodash.restparam "^3.0.0" + lodash.templatesettings "^3.0.0" + +lodash.templatesettings@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + +lodash.templatesettings@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-2.4.1.tgz#ea76c75d11eb86d4dbe89a83893bb861929ac699" + dependencies: + lodash._reinterpolate "~2.4.1" + lodash.escape "~2.4.1" + +lodash.values@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/lodash.values/-/lodash.values-2.4.1.tgz#abf514436b3cb705001627978cbcf30b1280eea4" + dependencies: + lodash.keys "~2.4.1" + +lodash@^2.4.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.4.2.tgz#fadd834b9683073da179b3eae6d9c0d15053f73e" + +lodash@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" + +longest@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lru-cache@2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" + +map-cache@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + +map-obj@^1.0.0, map-obj@^1.0.1, map-obj@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +map-stream@~0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + +meow@^3.3.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +merge-stream@^0.1.6: + version "0.1.8" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-0.1.8.tgz#48a07b3b4a121d74a3edbfdcdb4b08adbf0240b1" + dependencies: + through2 "^0.6.1" + +method-override@~2.3.5: + version "2.3.9" + resolved "https://registry.yarnpkg.com/method-override/-/method-override-2.3.9.tgz#bd151f2ce34cf01a76ca400ab95c012b102d8f71" + dependencies: + debug "2.6.8" + methods "~1.1.2" + parseurl "~1.3.1" + vary "~1.1.1" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + +micromatch@^2.3.7: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + +miller-rabin@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +"mime-db@>= 1.27.0 < 2", mime-db@~1.27.0: + version "1.27.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" + +mime-types@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" + +mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.6, mime-types@~2.1.9: + version "2.1.15" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" + dependencies: + mime-db "~1.27.0" + +mime@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" + +mime@~1.2.11: + version "1.2.11" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" + +minimalistic-assert@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + +"minimatch@2 || 3", minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimatch@^2.0.1: + version "2.0.10" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" + dependencies: + brace-expansion "^1.0.0" + +minimatch@~0.2.11, minimatch@~0.2.12: + version "0.2.14" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a" + dependencies: + lru-cache "2" + sigmund "~1.0.0" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.0.tgz#4dffe525dae2b864c66c2e23c6271d7afdecefce" + +minimist@^1.1.0, minimist@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +mkdirp@^0.5.0, mkdirp@~0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + +module-deps@^3.5.0, module-deps@^3.7.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-3.9.1.tgz#ea75caf9199090d25b0d5512b5acacb96e7f87f3" + dependencies: + JSONStream "^1.0.3" + browser-resolve "^1.7.0" + concat-stream "~1.4.5" + defined "^1.0.0" + detective "^4.0.0" + duplexer2 "0.0.2" + inherits "^2.0.1" + parents "^1.0.0" + readable-stream "^1.1.13" + resolve "^1.1.3" + stream-combiner2 "~1.0.0" + subarg "^1.0.0" + through2 "^1.0.0" + xtend "^4.0.0" + +morgan@~1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.6.1.tgz#5fd818398c6819cba28a7cd6664f292fe1c0bbf2" + dependencies: + basic-auth "~1.0.3" + debug "~2.2.0" + depd "~1.0.1" + on-finished "~2.3.0" + on-headers "~1.0.0" + +mothership@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/mothership/-/mothership-0.2.0.tgz#93d48a2fbc3e50e2a5fc8ed586f5bc44c65f9a99" + dependencies: + find-parent-dir "~0.3.0" + +ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + +ms@0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +multiparty@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/multiparty/-/multiparty-3.3.2.tgz#35de6804dc19643e5249f3d3e3bdc6c8ce301d3f" + dependencies: + readable-stream "~1.1.9" + stream-counter "~0.2.0" + +multipipe@^0.1.0, multipipe@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" + dependencies: + duplexer2 "0.0.2" + +nan@^2.0.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" + +natives@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.0.tgz#e9ff841418a6b2ec7a495e939984f78f163e6e31" + +negotiator@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.5.3.tgz#269d5c476810ec92edbe7b6c2f28316384f9a7e8" + +negotiator@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + +node-fetch@^1.0.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.1.tgz#899cb3d0a3c92f952c47f1b876f4c8aeabd400d5" + dependencies: + encoding "^0.1.11" + is-stream "^1.0.1" + +node-uuid@~1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" + +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + +oauth-sign@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.3.0.tgz#cb540f93bb2b22a7d5941691a288d60e8ea9386e" + +object-assign@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" + +object-assign@^4.0.1, object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-keys@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" + +object.defaults@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" + dependencies: + array-each "^1.0.1" + array-slice "^1.0.0" + for-own "^1.0.0" + isobject "^3.0.0" + +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + +object.pick@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.2.0.tgz#b5392bee9782da6d9fb7d6afaf539779f1234c2b" + dependencies: + isobject "^2.1.0" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.0, on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +once@~1.3.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" + dependencies: + wrappy "1" + +onetime@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" + +optimist@~0.3.5: + version "0.3.7" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" + dependencies: + wordwrap "~0.0.2" + +orchestrator@^0.3.0: + version "0.3.8" + resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e" + dependencies: + end-of-stream "~0.1.5" + sequencify "~0.0.7" + stream-consume "~0.1.0" + +ordered-read-streams@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126" + +os-browserify@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.1.2.tgz#49ca0293e0b19590a5f5de10c7f265a617d8fe54" + +os-homedir@^1.0.0, os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + +pako@~0.2.0: + version "0.2.9" + resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" + +parents@^1.0.0, parents@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751" + dependencies: + path-platform "~0.11.15" + +parents@~0.0.1: + version "0.0.3" + resolved "https://registry.yarnpkg.com/parents/-/parents-0.0.3.tgz#fa212f024d9fa6318dbb6b4ce676c8be493b9c43" + dependencies: + path-platform "^0.0.1" + +parse-asn1@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + +parse-filepath@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.1.tgz#159d6155d43904d16c10ef698911da1e91969b73" + dependencies: + is-absolute "^0.2.3" + map-cache "^0.2.0" + path-root "^0.1.1" + +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + dependencies: + error-ex "^1.2.0" + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + +parseurl@~1.3.0, parseurl@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" + +patch-text@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/patch-text/-/patch-text-1.0.2.tgz#4bf36e65e51733d6e98f0cf62e09034daa0348ac" + +path-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + dependencies: + pinkie-promise "^2.0.0" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + +path-is-inside@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + +path-platform@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.0.1.tgz#b5585d7c3c463d89aa0060d86611cf1afd617e2a" + +path-platform@~0.11.15: + version "0.11.15" + resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2" + +path-root-regex@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" + +path-root@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" + dependencies: + path-root-regex "^0.1.0" + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +pause-stream@0.0.11: + version "0.0.11" + resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" + dependencies: + through "~2.3" + +pause@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/pause/-/pause-0.1.0.tgz#ebc8a4a8619ff0b8a81ac1513c3434ff469fdb74" + +pbkdf2@^3.0.3: + version "3.0.12" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.12.tgz#be36785c5067ea48d806ff923288c5f750b6b8a2" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +pify@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + +plexer@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/plexer/-/plexer-0.0.2.tgz#223d5800628a0646a0097d30ab576866a2f3784e" + dependencies: + readable-stream "^1.0.26-2" + +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +pretty-hrtime@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + +private@^0.1.6, private@~0.1.5: + version "0.1.7" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + +process@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/process/-/process-0.10.1.tgz#842457cc51cfed72dc775afeeafb8c6034372725" + +process@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/process/-/process-0.8.0.tgz#7bbaf7187fe6ded3fd5be0cb6103fba9cacb9798" + +process@~0.11.0: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + dependencies: + asap "~2.0.3" + +prop-types@^15.5.10: + version "15.5.10" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154" + dependencies: + fbjs "^0.8.9" + loose-envify "^1.3.1" + +public-encrypt@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + +punycode@~1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.2.4.tgz#54008ac972aec74175def9cba6df7fa9d3918740" + +q@^1.1.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" + +qs@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" + +qs@5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-5.2.0.tgz#a9f31142af468cb72b25b30136ba2456834916be" + +qs@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-1.0.2.tgz#50a93e2b5af6691c31bcea5dae78ee6ea1903768" + +qs@~5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-5.1.0.tgz#4d932e5c7ea411cca76a312d39a606200fd50cd9" + +querystring-es3@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + +random-bytes@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" + +randomatic@^1.1.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +randombytes@^2.0.0, randombytes@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.0.3.tgz#6872823535c692e2c2a0103826afd82c2e0ff175" + +raw-body@~2.1.2, raw-body@~2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.1.7.tgz#adfeace2e4fb3098058014d08c072dcc59758774" + dependencies: + bytes "2.4.0" + iconv-lite "0.4.13" + unpipe "1.0.0" + +react-dom@>=0.14.0: + version "15.6.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.6.1.tgz#2cb0ed4191038e53c209eb3a79a23e2a4cf99470" + dependencies: + fbjs "^0.8.9" + loose-envify "^1.1.0" + object-assign "^4.1.0" + prop-types "^15.5.10" + +react-tools@^0.13.0: + version "0.13.3" + resolved "https://registry.yarnpkg.com/react-tools/-/react-tools-0.13.3.tgz#da6ac7d4d7777a59a5e951cf46e72fd4b6b40a2c" + dependencies: + commoner "^0.10.0" + jstransform "^10.1.0" + +react-tools@~0.12.1: + version "0.12.2" + resolved "https://registry.yarnpkg.com/react-tools/-/react-tools-0.12.2.tgz#92e55a24f8412df6583555dd96ceb8cdb24ae86e" + dependencies: + commoner "^0.10.0" + jstransform "^8.2.0" + +reactify@^0.17.0: + version "0.17.1" + resolved "https://registry.yarnpkg.com/reactify/-/reactify-0.17.1.tgz#0a4683cca59a4c7a769579fe2fec0a9bdf81eed6" + dependencies: + jstransform "^8.0.0" + react-tools "~0.12.1" + through "~2.3.4" + +read-only-stream@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-1.1.1.tgz#5da77c799ed1388d3ef88a18471bb5924f8a0ba1" + dependencies: + readable-stream "^1.0.31" + readable-wrap "^1.0.0" + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + +"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.17, readable-stream@~1.0.26-2: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +"readable-stream@>=1.1.13-1 <1.2.0-0", readable-stream@^1.0.26-2, readable-stream@^1.0.27-1, readable-stream@^1.0.31, readable-stream@^1.0.33-1, readable-stream@^1.1.13, readable-stream@^1.1.13-1, readable-stream@~1.1.8, readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^2.1.5: + version "2.3.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.2.tgz#5a04df05e4f57fe3f0dc68fdd11dc5c97c7e6f4d" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + safe-buffer "~5.1.0" + string_decoder "~1.0.0" + util-deprecate "~1.0.1" + +readable-wrap@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/readable-wrap/-/readable-wrap-1.0.0.tgz#3b5a211c631e12303a54991c806c17e7ae206bff" + dependencies: + readable-stream "^1.1.13-1" + +readdirp@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-1.3.0.tgz#eaf1a9b463be9a8190fc9ae163aa1ac934aa340b" + dependencies: + graceful-fs "~2.0.0" + minimatch "~0.2.12" + readable-stream "~1.0.26-2" + +recast@^0.11.17: + version "0.11.23" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" + dependencies: + ast-types "0.9.6" + esprima "~3.1.0" + private "~0.1.5" + source-map "~0.5.0" + +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + dependencies: + resolve "^1.1.6" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +regex-cache@^0.4.2: + version "0.4.3" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" + dependencies: + is-equal-shallow "^0.1.3" + is-primitive "^2.0.0" + +remove-trailing-separator@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" + +rename-function-calls@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/rename-function-calls/-/rename-function-calls-0.1.1.tgz#7f83369c007a3007f6abe3033ccf81686a108e01" + dependencies: + detective "~3.1.0" + +repeat-element@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + +repeat-string@^1.5.2: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + dependencies: + is-finite "^1.0.0" + +replace-ext@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" + +replace-requires@~1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/replace-requires/-/replace-requires-1.0.4.tgz#014b7330b6b9e2557b71043b66fb02660c3bf667" + dependencies: + detective "^4.5.0" + has-require "~1.2.1" + patch-text "~1.0.2" + xtend "~4.0.0" + +request@~2.40.0: + version "2.40.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.40.0.tgz#4dd670f696f1e6e842e66b4b5e839301ab9beb67" + dependencies: + forever-agent "~0.5.0" + json-stringify-safe "~5.0.0" + mime-types "~1.0.1" + node-uuid "~1.4.0" + qs "~1.0.0" + optionalDependencies: + aws-sign2 "~0.5.0" + form-data "~0.1.0" + hawk "1.1.1" + http-signature "~0.10.0" + oauth-sign "~0.3.0" + stringstream "~0.0.4" + tough-cookie ">=0.12.0" + tunnel-agent "~0.4.0" + +require-dir@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/require-dir/-/require-dir-0.1.0.tgz#81e01e299faf5b74c34b6594f8e5add5985ddec5" + +resolve-dir@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" + dependencies: + expand-tilde "^1.2.2" + global-modules "^0.2.3" + +resolve@1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + +resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7: + version "1.3.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" + dependencies: + path-parse "^1.0.5" + +resolve@~0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.3.1.tgz#34c63447c664c70598d1c9b126fc43b2a24310a4" + +resolve@~0.6.1: + version "0.6.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46" + +resolve@~0.7.1: + version "0.7.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.7.4.tgz#395a9ef9e873fbfe12bd14408bd91bb936003d69" + +response-time@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/response-time/-/response-time-2.3.2.tgz#ffa71bab952d62f7c1d49b7434355fbc68dffc5a" + dependencies: + depd "~1.1.0" + on-headers "~1.0.1" + +rfile@~1.0, rfile@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/rfile/-/rfile-1.0.0.tgz#59708cf90ca1e74c54c3cfc5c36fdb9810435261" + dependencies: + callsite "~1.0.0" + resolve "~0.3.0" + +right-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" + dependencies: + align-text "^0.1.1" + +rimraf@^2.2.6, rimraf@^2.2.8: + version "2.6.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" + dependencies: + glob "^7.0.5" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" + dependencies: + hash-base "^2.0.0" + inherits "^2.0.1" + +rndm@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/rndm/-/rndm-1.2.0.tgz#f33fe9cfb52bbfd520aa18323bc65db110a1b76c" + +ruglify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ruglify/-/ruglify-1.0.0.tgz#dc8930e2a9544a274301cc9972574c0d0986b675" + dependencies: + rfile "~1.0" + uglify-js "~2.2" + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + +"semver@2 || 3 || 4 || 5", semver@^4.1.0: + version "4.3.6" + resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" + +semver@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-2.3.2.tgz#b9848f25d6cf36333073ec9ef8856d42f1233e52" + +send@0.13.2: + version "0.13.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.13.2.tgz#765e7607c8055452bba6f0b052595350986036de" + dependencies: + debug "~2.2.0" + depd "~1.1.0" + destroy "~1.0.4" + escape-html "~1.0.3" + etag "~1.7.0" + fresh "0.3.0" + http-errors "~1.3.1" + mime "1.3.4" + ms "0.7.1" + on-finished "~2.3.0" + range-parser "~1.0.3" + statuses "~1.2.1" + +sequencify@~0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c" + +serve-favicon@~2.3.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.3.2.tgz#dd419e268de012ab72b319d337f2105013f9381f" + dependencies: + etag "~1.7.0" + fresh "0.3.0" + ms "0.7.2" + parseurl "~1.3.1" + +serve-index@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.7.3.tgz#7a057fc6ee28dc63f64566e5fa57b111a86aecd2" + dependencies: + accepts "~1.2.13" + batch "0.5.3" + debug "~2.2.0" + escape-html "~1.0.3" + http-errors "~1.3.1" + mime-types "~2.1.9" + parseurl "~1.3.1" + +serve-static@~1.10.0: + version "1.10.3" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.10.3.tgz#ce5a6ecd3101fed5ec09827dac22a9c29bfb0535" + dependencies: + escape-html "~1.0.3" + parseurl "~1.3.1" + send "0.13.2" + +set-immediate-shim@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + +setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + +sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4: + version "2.4.8" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" + dependencies: + inherits "^2.0.1" + +shallow-copy@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" + +shasum@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f" + dependencies: + json-stable-stringify "~0.0.0" + sha.js "~2.4.4" + +shell-quote@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-0.0.1.tgz#1a41196f3c0333c482323593d6886ecf153dd986" + +sigmund@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" + +signal-exit@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +sntp@0.2.x: + version "0.2.4" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-0.2.4.tgz#fb885f18b0f3aad189f824862536bceeec750900" + dependencies: + hoek "0.9.x" + +source-map@0.1.31: + version "0.1.31" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.31.tgz#9f704d0d69d9e138a81badf6ebb4fde33d151c61" + dependencies: + amdefine ">=0.0.4" + +source-map@0.1.34: + version "0.1.34" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.34.tgz#a7cfe89aec7b1682c3b198d0acfb47d7d090566b" + dependencies: + amdefine ">=0.0.4" + +source-map@0.1.x, source-map@^0.1.39, source-map@~0.1.30, source-map@~0.1.31, source-map@~0.1.7: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + +source-map@^0.5.1, source-map@~0.5.0, source-map@~0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" + +source-map@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.3.0.tgz#8586fb9a5a005e5b501e21cd18b6f21b457ad1f9" + dependencies: + amdefine ">=0.0.4" + +source-map@~0.4.0, source-map@~0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + dependencies: + amdefine ">=0.0.4" + +sparkles@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" + +spdx-correct@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" + dependencies: + spdx-license-ids "^1.0.2" + +spdx-expression-parse@~1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + +spdx-license-ids@^1.0.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" + +split@0.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" + dependencies: + through "2" + +statuses@1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + +statuses@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.2.1.tgz#dded45cc18256d51ed40aec142489d5c61026d28" + +stream-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-1.0.0.tgz#bf9b4abfb42b274d751479e44e0ff2656b6f1193" + dependencies: + inherits "~2.0.1" + readable-stream "^1.0.27-1" + +stream-combiner2@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.0.2.tgz#ba72a6b50cbfabfa950fc8bc87604bd01eb60671" + dependencies: + duplexer2 "~0.0.2" + through2 "~0.5.1" + +stream-combiner@~0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" + dependencies: + duplexer "~0.1.1" + +stream-consume@~0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f" + +stream-counter@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/stream-counter/-/stream-counter-0.2.0.tgz#ded266556319c8b0e222812b9cf3b26fa7d947de" + dependencies: + readable-stream "~1.1.8" + +stream-splicer@^1.1.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-1.3.2.tgz#3c0441be15b9bf4e226275e6dc83964745546661" + dependencies: + indexof "0.0.1" + inherits "^2.0.1" + isarray "~0.0.1" + readable-stream "^1.1.13-1" + readable-wrap "^1.0.0" + through2 "^1.0.0" + +string_decoder@~0.10.0, string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + +string_decoder@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + dependencies: + safe-buffer "~5.1.0" + +stringstream@~0.0.4: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" + +strip-ansi@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.3.0.tgz#25f48ea22ca79187f3174a4db8759347bb126220" + dependencies: + ansi-regex "^0.2.1" + +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + +strip-bom@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794" + dependencies: + first-chunk-stream "^1.0.0" + is-utf8 "^0.2.0" + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + +subarg@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" + dependencies: + minimist "^1.1.0" + +supports-color@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +syntax-error@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1" + dependencies: + acorn "^4.0.3" + +ternary@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ternary/-/ternary-1.0.0.tgz#45702725608c9499d46a9610e9b0e49ff26f789e" + +through2@^0.5.0, through2@^0.5.1, through2@~0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.5.1.tgz#dfdd012eb9c700e2323fd334f38ac622ab372da7" + dependencies: + readable-stream "~1.0.17" + xtend "~3.0.0" + +through2@^0.6.1, through2@^0.6.3: + version "0.6.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" + dependencies: + readable-stream ">=1.0.33-1 <1.1.0-0" + xtend ">=4.0.0 <4.1.0-0" + +through2@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/through2/-/through2-1.1.1.tgz#0847cbc4449f3405574dbdccd9bb841b83ac3545" + dependencies: + readable-stream ">=1.1.13-1 <1.2.0-0" + xtend ">=4.0.0 <4.1.0-0" + +through2@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + +through2@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.4.2.tgz#dbf5866031151ec8352bb6c4db64a2292a840b9b" + dependencies: + readable-stream "~1.0.17" + xtend "~2.1.1" + +through@2, "through@>=2.2.7 <3", through@~2.3, through@~2.3.1, through@~2.3.4: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +tildify@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a" + dependencies: + os-homedir "^1.0.0" + +time-stamp@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" + +timers-browserify@^1.0.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d" + dependencies: + process "~0.11.0" + +tiny-lr@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-0.2.1.tgz#b3fdba802e5d56a33c2f6f10794b32e477ac729d" + dependencies: + body-parser "~1.14.0" + debug "~2.2.0" + faye-websocket "~0.10.0" + livereload-js "^2.2.0" + parseurl "~1.3.0" + qs "~5.1.0" + +tough-cookie@>=0.12.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" + dependencies: + punycode "^1.4.1" + +transformify@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/transformify/-/transformify-0.1.2.tgz#9a4f42a154433dd727b80575428a3c9e5489ebf1" + dependencies: + readable-stream "~1.1.9" + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + +tsscmp@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.5.tgz#7dc4a33af71581ab4337da91d85ca5427ebd9a97" + +tty-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + +tunnel-agent@~0.4.0: + version "0.4.3" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + +type-is@~1.6.10, type-is@~1.6.6: + version "1.6.15" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.15" + +typedarray@~0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +ua-parser-js@^0.7.9: + version "0.7.13" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.13.tgz#cd9dd2f86493b3f44dbeeef3780fda74c5ee14be" + +uglify-js@2.6.4: + version "2.6.4" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf" + dependencies: + async "~0.2.6" + source-map "~0.5.1" + uglify-to-browserify "~1.0.0" + yargs "~3.10.0" + +uglify-js@~2.2: + version "2.2.5" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.2.5.tgz#a6e02a70d839792b9780488b7b8b184c095c99c7" + dependencies: + optimist "~0.3.5" + source-map "~0.1.7" + +uglify-js@~2.4.0: + version "2.4.24" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.4.24.tgz#fad5755c1e1577658bb06ff9ab6e548c95bebd6e" + dependencies: + async "~0.2.6" + source-map "0.1.34" + uglify-to-browserify "~1.0.0" + yargs "~3.5.4" + +uglify-save-license@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/uglify-save-license/-/uglify-save-license-0.4.1.tgz#95726c17cc6fd171c3617e3bf4d8d82aa8c4cce1" + +uglify-to-browserify@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + +uid-safe@2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.4.tgz#3ad6f38368c6d4c8c75ec17623fb79aa1d071d81" + dependencies: + random-bytes "~1.0.0" + +uid-safe@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.0.0.tgz#a7f3c6ca64a1f6a5d04ec0ef3e4c3d5367317137" + dependencies: + base64-url "1.2.1" + +umd@^2.1.0, umd@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/umd/-/umd-2.1.0.tgz#4a6307b762f17f02d201b5fa154e673396c263cf" + dependencies: + rfile "~1.0.0" + ruglify "~1.0.0" + through "~2.3.4" + uglify-js "~2.4.0" + +umd@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" + +unc-path-regex@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" + +underscore@1.x.x: + version "1.8.3" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" + +unique-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b" + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + +url@~0.10.1: + version "0.10.3" + resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +user-home@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + +util@0.10.3, util@~0.10.1: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + +utils-merge@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" + +v8flags@^2.0.2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" + dependencies: + user-home "^1.1.1" + +validate-npm-package-license@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + dependencies: + spdx-correct "~1.0.0" + spdx-expression-parse "~1.0.0" + +vary@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.0.1.tgz#99e4981566a286118dfb2b817357df7993376d10" + +vary@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" + +vhost@~3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/vhost/-/vhost-3.0.2.tgz#2fb1decd4c466aa88b0f9341af33dc1aff2478d5" + +vinyl-fs@^0.3.0: + version "0.3.14" + resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6" + dependencies: + defaults "^1.0.0" + glob-stream "^3.1.5" + glob-watcher "^0.0.6" + graceful-fs "^3.0.0" + mkdirp "^0.5.0" + strip-bom "^1.0.0" + through2 "^0.6.1" + vinyl "^0.4.0" + +vinyl-paths@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/vinyl-paths/-/vinyl-paths-1.0.0.tgz#fc272ada915b4c3e8264cfb06de75d3ce07c8a9e" + dependencies: + through2 "^0.6.3" + +vinyl-source-stream@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/vinyl-source-stream/-/vinyl-source-stream-1.1.0.tgz#44cbe5108205279deb0c5653c094a2887938b1ab" + dependencies: + through2 "^0.6.1" + vinyl "^0.4.3" + +vinyl-sourcemaps-apply@^0.1.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.1.4.tgz#c5fcbd43e2f238423c2dc98bddd6f79b72bc345b" + dependencies: + source-map "^0.1.39" + +vinyl-sourcemaps-apply@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705" + dependencies: + source-map "^0.5.1" + +vinyl@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.2.3.tgz#bca938209582ec5a49ad538a00fa1f125e513252" + dependencies: + clone-stats "~0.0.1" + +vinyl@^0.4.0, vinyl@^0.4.3: + version "0.4.6" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" + dependencies: + clone "^0.2.0" + clone-stats "^0.0.1" + +vinyl@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" + dependencies: + clone "^1.0.0" + clone-stats "^0.0.1" + replace-ext "0.0.1" + +vm-browserify@~0.0.1: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" + dependencies: + indexof "0.0.1" + +watchify@^2.1.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/watchify/-/watchify-2.6.2.tgz#01a188d8ea1a8c0b3995e15b425b115efce4d8a9" + dependencies: + browserify "^9.0.2" + chokidar "~0.12.1" + through2 "~0.5.1" + xtend "^4.0.0" + +websocket-driver@>=0.5.1: + version "0.6.5" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" + dependencies: + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7" + +whatwg-fetch@>=0.10.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" + +when@^3.4.5: + version "3.7.8" + resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" + +which@^1.2.12: + version "1.2.14" + resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" + dependencies: + isexe "^2.0.0" + +window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + +wordwrap@0.0.2, wordwrap@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +xtend@^3.0.0, xtend@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-3.0.0.tgz#5cce7407baf642cba7becda568111c493f59665a" + +xtend@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" + dependencies: + object-keys "~0.4.0" + +yargs@~3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" + dependencies: + camelcase "^1.0.2" + cliui "^2.1.0" + decamelize "^1.0.0" + window-size "0.1.0" + +yargs@~3.5.4: + version "3.5.4" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.5.4.tgz#d8aff8f665e94c34bd259bdebd1bfaf0ddd35361" + dependencies: + camelcase "^1.0.2" + decamelize "^1.0.0" + window-size "0.1.0" + wordwrap "0.0.2" From 4b284ad2da914c03f761b11879f4fc444d388b12 Mon Sep 17 00:00:00 2001 From: Jer Date: Wed, 28 Jun 2017 17:00:52 -0500 Subject: [PATCH 05/18] New build process! --- .babelrc | 14 + Boron.js | 6 +- DropModal.js | 14 +- FadeModal.js | 16 +- FlyModal.js | 18 +- OutlineModal.js | 65 +- ScaleModal.js | 100 - WaveModal.js | 18 +- build.sh | 9 + modalFactory.js | 108 +- package.json | 53 +- src/modalFactory.js | 2 +- yarn.lock | 4389 ++++++++++++++----------------------------- 13 files changed, 1583 insertions(+), 3229 deletions(-) create mode 100644 .babelrc delete mode 100644 ScaleModal.js create mode 100644 build.sh diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..02af512 --- /dev/null +++ b/.babelrc @@ -0,0 +1,14 @@ +{ + "presets": [ + "es2015", + "react" + ], + "plugins": ["transform-object-rest-spread", "babel-plugin-transform-runtime"], + "env": { + "start": { + "presets": [ + "react-hmre" + ] + } + } +} \ No newline at end of file diff --git a/Boron.js b/Boron.js index 6613611..754eb03 100644 --- a/Boron.js +++ b/Boron.js @@ -1,8 +1,10 @@ +'use strict'; + module.exports = { DropModal: require('./DropModal'), WaveModal: require('./WaveModal'), FlyModal: require('./FlyModal'), FadeModal: require('./FadeModal'), ScaleModal: require('./ScaleModal'), - OutlineModal: require('./OutlineModal'), -} + OutlineModal: require('./OutlineModal') +}; diff --git a/DropModal.js b/DropModal.js index f271777..7fdbc7a 100644 --- a/DropModal.js +++ b/DropModal.js @@ -1,3 +1,5 @@ +'use strict'; + var modalFactory = require('./modalFactory'); var insertKeyframesRule = require('domkit/insertKeyframesRule'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); @@ -86,10 +88,10 @@ var showContentAnimation = animation.showContentAnimation; var hideContentAnimation = animation.hideContentAnimation; module.exports = modalFactory({ - getRef: function(willHidden) { + getRef: function getRef(willHidden) { return 'modal'; }, - getModalStyle: function(willHidden) { + getModalStyle: function getModalStyle(willHidden) { return appendVendorPrefix({ position: "fixed", width: "500px", @@ -102,9 +104,9 @@ module.exports = modalFactory({ animationFillMode: 'forwards', animationName: willHidden ? hideModalAnimation : showModalAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); }, - getBackdropStyle: function(willHidden) { + getBackdropStyle: function getBackdropStyle(willHidden) { return appendVendorPrefix({ position: "fixed", top: 0, @@ -119,7 +121,7 @@ module.exports = modalFactory({ animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction }); }, - getContentStyle: function(willHidden) { + getContentStyle: function getContentStyle(willHidden) { return appendVendorPrefix({ margin: 0, opacity: 0, @@ -128,6 +130,6 @@ module.exports = modalFactory({ animationDelay: '0.25s', animationName: showContentAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); } }); diff --git a/FadeModal.js b/FadeModal.js index 02099d8..acc6f97 100644 --- a/FadeModal.js +++ b/FadeModal.js @@ -1,3 +1,5 @@ +'use strict'; + var modalFactory = require('./modalFactory'); var insertKeyframesRule = require('domkit/insertKeyframesRule'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); @@ -35,7 +37,7 @@ var animation = { }, '100%': { opacity: 0.9 - }, + } }), hideBackdropAnimation: insertKeyframesRule({ @@ -56,10 +58,10 @@ var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; module.exports = modalFactory({ - getRef: function(willHidden) { + getRef: function getRef(willHidden) { return 'content'; }, - getModalStyle: function(willHidden) { + getModalStyle: function getModalStyle(willHidden) { return appendVendorPrefix({ zIndex: 1050, position: "fixed", @@ -67,9 +69,9 @@ module.exports = modalFactory({ transform: "translate3d(-50%, -50%, 0)", top: "50%", left: "50%" - }) + }); }, - getBackdropStyle: function(willHidden) { + getBackdropStyle: function getBackdropStyle(willHidden) { return appendVendorPrefix({ position: "fixed", top: 0, @@ -84,7 +86,7 @@ module.exports = modalFactory({ animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction }); }, - getContentStyle: function(willHidden) { + getContentStyle: function getContentStyle(willHidden) { return appendVendorPrefix({ margin: 0, backgroundColor: "white", @@ -92,6 +94,6 @@ module.exports = modalFactory({ animationFillMode: 'forwards', animationName: willHidden ? hideContentAnimation : showContentAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); } }); diff --git a/FlyModal.js b/FlyModal.js index a0225c9..44a76b8 100644 --- a/FlyModal.js +++ b/FlyModal.js @@ -1,3 +1,5 @@ +'use strict'; + var modalFactory = require('./modalFactory'); var insertKeyframesRule = require('domkit/insertKeyframesRule'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); @@ -38,7 +40,7 @@ var animation = { '100%': { opacity: 0, transform: 'translate3d(calc(100vw + 50%), 0, 0)' - }, + } }), showBackdropAnimation: insertKeyframesRule({ @@ -47,7 +49,7 @@ var animation = { }, '100%': { opacity: 0.9 - }, + } }), hideBackdropAnimation: insertKeyframesRule({ @@ -71,10 +73,10 @@ var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; module.exports = modalFactory({ - getRef: function(willHidden) { + getRef: function getRef(willHidden) { return 'content'; }, - getModalStyle: function(willHidden) { + getModalStyle: function getModalStyle(willHidden) { return appendVendorPrefix({ zIndex: 1050, position: "fixed", @@ -82,9 +84,9 @@ module.exports = modalFactory({ transform: "translate3d(-50%, -50%, 0)", top: "50%", left: "50%" - }) + }); }, - getBackdropStyle: function(willHidden) { + getBackdropStyle: function getBackdropStyle(willHidden) { return appendVendorPrefix({ position: "fixed", top: 0, @@ -99,7 +101,7 @@ module.exports = modalFactory({ animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction }); }, - getContentStyle: function(willHidden) { + getContentStyle: function getContentStyle(willHidden) { return appendVendorPrefix({ margin: 0, backgroundColor: "white", @@ -107,6 +109,6 @@ module.exports = modalFactory({ animationFillMode: 'forwards', animationName: willHidden ? hideContentAnimation : showContentAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); } }); diff --git a/OutlineModal.js b/OutlineModal.js index db27527..4095665 100644 --- a/OutlineModal.js +++ b/OutlineModal.js @@ -1,3 +1,5 @@ +'use strict'; + var React = require('react'); var modalFactory = require('./modalFactory'); var insertKeyframesRule = require('domkit/insertKeyframesRule'); @@ -14,13 +16,13 @@ var animation = { }, showContentAnimation: insertKeyframesRule({ '0%': { - opacity: 0, + opacity: 0 }, - '40%':{ + '40%': { opacity: 0 }, '100%': { - opacity: 1, + opacity: 1 } }), @@ -29,7 +31,7 @@ var animation = { opacity: 1 }, '100%': { - opacity: 0, + opacity: 0 } }), @@ -39,7 +41,7 @@ var animation = { }, '100%': { opacity: 0.9 - }, + } }), hideBackdropAnimation: insertKeyframesRule({ @@ -60,10 +62,10 @@ var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; module.exports = modalFactory({ - getRef: function(willHidden) { + getRef: function getRef(willHidden) { return 'content'; }, - getSharp: function(willHidden) { + getSharp: function getSharp(willHidden) { var strokeDashLength = 1680; var showSharpAnimation = insertKeyframesRule({ @@ -72,10 +74,9 @@ module.exports = modalFactory({ }, '100%': { 'stroke-dashoffset': 0 - }, + } }); - var sharpStyle = { position: 'absolute', width: 'calc(100%)', @@ -84,31 +85,35 @@ module.exports = modalFactory({ }; var rectStyle = appendVendorPrefix({ - animationDuration: willHidden? '0.4s' :'0.8s', + animationDuration: willHidden ? '0.4s' : '0.8s', animationFillMode: 'forwards', - animationName: willHidden? hideContentAnimation: showSharpAnimation, + animationName: willHidden ? hideContentAnimation : showSharpAnimation, stroke: '#ffffff', strokeWidth: '2px', strokeDasharray: strokeDashLength }); - return React.createElement("div", {style: sharpStyle}, - React.createElement("svg", { - xmlns: "http://www.w3.org/2000/svg", - width: "100%", - height: "100%", - viewBox: "0 0 496 136", - preserveAspectRatio: "none"}, - React.createElement("rect", {style: rectStyle, - x: "2", - y: "2", - fill: "none", - width: "492", - height: "132"}) + return React.createElement( + 'div', + { style: sharpStyle }, + React.createElement( + 'svg', + { + xmlns: 'http://www.w3.org/2000/svg', + width: '100%', + height: '100%', + viewBox: '0 0 496 136', + preserveAspectRatio: 'none' }, + React.createElement('rect', { style: rectStyle, + x: '2', + y: '2', + fill: 'none', + width: '492', + height: '132' }) ) - ) + ); }, - getModalStyle: function(willHidden) { + getModalStyle: function getModalStyle(willHidden) { return appendVendorPrefix({ zIndex: 1050, position: "fixed", @@ -116,9 +121,9 @@ module.exports = modalFactory({ transform: "translate3d(-50%, -50%, 0)", top: "50%", left: "50%" - }) + }); }, - getBackdropStyle: function(willHidden) { + getBackdropStyle: function getBackdropStyle(willHidden) { return appendVendorPrefix({ position: "fixed", top: 0, @@ -133,7 +138,7 @@ module.exports = modalFactory({ animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction }); }, - getContentStyle: function(willHidden) { + getContentStyle: function getContentStyle(willHidden) { return appendVendorPrefix({ margin: 0, backgroundColor: "white", @@ -141,6 +146,6 @@ module.exports = modalFactory({ animationFillMode: 'forwards', animationName: willHidden ? hideContentAnimation : showContentAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); } }); diff --git a/ScaleModal.js b/ScaleModal.js deleted file mode 100644 index b945b5f..0000000 --- a/ScaleModal.js +++ /dev/null @@ -1,100 +0,0 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'scale3d(0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'scale3d(1, 1, 1)' - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.5, 0.5, 1)' - } - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'content'; - }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) - }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } -}); diff --git a/WaveModal.js b/WaveModal.js index 987b9c5..6350dec 100644 --- a/WaveModal.js +++ b/WaveModal.js @@ -1,3 +1,5 @@ +'use strict'; + var modalFactory = require('./modalFactory'); var insertKeyframesRule = require('domkit/insertKeyframesRule'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); @@ -171,7 +173,7 @@ var animation = { '100%': { opacity: 0, transform: 'scale3d(0.8, 0.8, 1)' - }, + } }), showBackdropAnimation: insertKeyframesRule({ @@ -180,7 +182,7 @@ var animation = { }, '100%': { opacity: 0.9 - }, + } }), hideBackdropAnimation: insertKeyframesRule({ @@ -201,10 +203,10 @@ var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; module.exports = modalFactory({ - getRef: function(willHidden) { + getRef: function getRef(willHidden) { return 'content'; }, - getModalStyle: function(willHidden) { + getModalStyle: function getModalStyle(willHidden) { return appendVendorPrefix({ zIndex: 1050, position: "fixed", @@ -212,9 +214,9 @@ module.exports = modalFactory({ transform: "translate3d(-50%, -50%, 0)", top: "50%", left: "50%" - }) + }); }, - getBackdropStyle: function(willHidden) { + getBackdropStyle: function getBackdropStyle(willHidden) { return appendVendorPrefix({ position: "fixed", top: 0, @@ -229,7 +231,7 @@ module.exports = modalFactory({ animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction }); }, - getContentStyle: function(willHidden) { + getContentStyle: function getContentStyle(willHidden) { return appendVendorPrefix({ margin: 0, backgroundColor: "white", @@ -237,6 +239,6 @@ module.exports = modalFactory({ animationFillMode: 'forwards', animationName: willHidden ? hideContentAnimation : showContentAnimation, animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + }); } }); diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..98b56ae --- /dev/null +++ b/build.sh @@ -0,0 +1,9 @@ +#/bin/sh + +babel src/Boron.js --out-file Boron.js +babel src/DropModal.js --out-file DropModal.js +babel src/FadeModal.js --out-file FadeModal.js +babel src/FlyModal.js --out-file FlyModal.js +babel src/modalFactory.js --out-file modalFactory.js +babel src/OutlineModal.js --out-file OutlineModal.js +babel src/WaveModal.js --out-file WaveModal.js \ No newline at end of file diff --git a/modalFactory.js b/modalFactory.js index 2c2c410..4687b27 100644 --- a/modalFactory.js +++ b/modalFactory.js @@ -1,9 +1,11 @@ +'use strict'; + var React = require('react'); var transitionEvents = require('domkit/transitionEvents'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); -var PropTypes = require('prop-types') +var PropTypes = require('prop-types'); -module.exports = function(animation){ +module.exports = function (animation) { return React.createClass({ propTypes: { @@ -17,55 +19,55 @@ module.exports = function(animation){ closeOnClick: PropTypes.bool, modalStyle: PropTypes.object, backdropStyle: PropTypes.object, - contentStyle: PropTypes.object, + contentStyle: PropTypes.object }, - getDefaultProps: function() { + getDefaultProps: function getDefaultProps() { return { className: "", - onShow: function(){}, - onHide: function(){}, + onShow: function onShow() {}, + onHide: function onHide() {}, animation: animation, keyboard: true, backdrop: true, closeOnClick: true, modalStyle: {}, backdropStyle: {}, - contentStyle: {}, + contentStyle: {} }; }, - getInitialState: function(){ + getInitialState: function getInitialState() { return { willHidden: false, hidden: true }; }, - hasHidden: function(){ + hasHidden: function hasHidden() { return this.state.hidden; }, - addTransitionListener: function(node, handle){ + addTransitionListener: function addTransitionListener(node, handle) { if (node) { - var endListener = function(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); + var endListener = function endListener(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); } }, - handleBackdropClick: function() { + handleBackdropClick: function handleBackdropClick() { if (this.props.closeOnClick) { this.hide("backdrop"); } }, - render: function() { + render: function render() { var hidden = this.hasHidden(); if (hidden) return null; @@ -87,50 +89,55 @@ module.exports = function(animation){ } if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); for (var style in prefixedBackdropStyle) { backdropStyle[style] = prefixedBackdropStyle[style]; } } if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); for (var style in prefixedContentStyle) { contentStyle[style] = prefixedContentStyle[style]; } } - var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; + var backdrop = this.props.backdrop ? React.createElement('div', { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; - if(willHidden) { + if (willHidden) { var node = this.refs[ref]; this.addTransitionListener(node, this.leave); } - return (React.createElement("span", null, - React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, - sharp, - React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, + return React.createElement( + 'span', + null, + React.createElement( + 'div', + { ref: 'modal', style: modalStyle, className: this.props.className }, + sharp, + React.createElement( + 'div', + { ref: 'content', tabIndex: '-1', style: contentStyle }, this.props.children ) - ), + ), backdrop - )) - ; + ); }, - leave: function(){ + leave: function leave() { this.setState({ hidden: true }); this.props.onHide(this.state.hideSource); }, - enter: function(){ + enter: function enter() { this.props.onShow(); }, - show: function(){ + show: function show() { if (!this.hasHidden()) return; this.setState({ @@ -138,14 +145,14 @@ module.exports = function(animation){ hidden: false }); - setTimeout(function(){ - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); + setTimeout(function () { + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); }.bind(this), 0); }, - hide: function(source){ + hide: function hide(source) { if (this.hasHidden()) return; if (!source) { @@ -158,32 +165,25 @@ module.exports = function(animation){ }); }, - toggle: function(){ - if (this.hasHidden()) - this.show(); - else - this.hide("toggle"); + toggle: function toggle() { + if (this.hasHidden()) this.show();else this.hide("toggle"); }, - listenKeyboard: function(event) { - (typeof(this.props.keyboard)=="function") - ?this.props.keyboard(event) - :this.closeOnEsc(event); + listenKeyboard: function listenKeyboard(event) { + typeof this.props.keyboard == "function" ? this.props.keyboard(event) : this.closeOnEsc(event); }, - closeOnEsc: function(event){ - if (this.props.keyboard && - (event.key === "Escape" || - event.keyCode === 27)) { + closeOnEsc: function closeOnEsc(event) { + if (this.props.keyboard && (event.key === "Escape" || event.keyCode === 27)) { this.hide("keyboard"); } }, - componentDidMount: function(){ + componentDidMount: function componentDidMount() { window.addEventListener("keydown", this.listenKeyboard, true); }, - componentWillUnmount: function() { + componentWillUnmount: function componentWillUnmount() { window.removeEventListener("keydown", this.listenKeyboard, true); } }); diff --git a/package.json b/package.json index 644e956..674b99e 100644 --- a/package.json +++ b/package.json @@ -13,43 +13,26 @@ "domkit": "^0.0.1" }, "peerDependencies": { - "react": ">=0.14.0", - "prop-types":">=15.0" + "prop-types": ">=15.0", + "react": ">=0.15.0" }, "devDependencies": { - "react-dom": ">=0.14.0", - "reactify": "^0.17.0", - "browserify": "^6.3.3", - "browserify-shim": "^3.8.0", - "chalk": "^0.5.1", - "codemirror": "^5.0.0", - "del": "^0.1.3", - "gulp": "^3.8.10", - "gulp-bump": "^0.1.11", - "gulp-connect": "^2.2.0", - "gulp-gh-pages": "^0.4.0", - "gulp-git": "^0.5.5", - "gulp-less": "^1.3.6", - "gulp-rename": "^1.2.0", - "gulp-streamify": "^0.0.5", - "gulp-uglify": "^1.0.1", - "gulp-util": "^3.0.1", - "merge-stream": "^0.1.6", - "vinyl-paths": "^1.0.0", - "vinyl-source-stream": "^1.0.0", - "watchify": "^2.1.1", - "gulp-react": "^3.0.1" - }, - "browserify": { - "transform": [ - "reactify" - ] - }, - "browserify-shim": { - "react": "global:React" - }, - "scripts": { - "release": "gulp release" + "react": "^15.6.1", + "react-dom": "^15.6.1", + "babel-cli": "^6.24.0", + "babel-core": "6.17.0", + "babel-eslint": "7.1.1", + "babel-jest": "17.0.2", + "babel-loader": "6.2.7", + "babel-plugin-transform-es2015-spread": "^6.22.0", + "babel-plugin-transform-object-rest-spread": "^6.23.0", + "babel-plugin-transform-react-remove-prop-types": "^0.4.1", + "babel-plugin-transform-runtime": "^6.23.0", + "babel-preset-es2015": "^6.18.0", + "babel-preset-latest": "^6.24.0", + "babel-preset-react": "^6.16.0", + "babel-preset-react-app": "^2.0.1", + "babel-preset-react-hmre": "^1.1.1" }, "keywords": [ "react", diff --git a/src/modalFactory.js b/src/modalFactory.js index 5219c62..f8f26f1 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -187,4 +187,4 @@ module.exports = function(animation){ window.removeEventListener("keydown", this.listenKeyboard, true); } }); -}; +}; \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 1c48426..11f987e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,96 +2,42 @@ # yarn lockfile v1 -Base64@~0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028" - -JSONStream@^1.0.3: - version "1.3.1" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a" - dependencies: - jsonparse "^1.2.0" - through ">=2.2.7 <3" - -JSONStream@~0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.10.0.tgz#74349d0d89522b71f30f0a03ff9bd20ca6f12ac0" - dependencies: - jsonparse "0.0.5" - through ">=2.2.7 <3" - -JSONStream@~0.8.3, JSONStream@~0.8.4: - version "0.8.4" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.8.4.tgz#91657dfe6ff857483066132b4618b62e8f4887bd" - dependencies: - jsonparse "0.0.5" - through ">=2.2.7 <3" - -accepts@~1.2.12, accepts@~1.2.13: - version "1.2.13" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.2.13.tgz#e5f1f3928c6d95fd96558c36ec3d9d0de4a6ecea" - dependencies: - mime-types "~2.1.6" - negotiator "0.5.3" - -accepts@~1.3.0: - version "1.3.3" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" - dependencies: - mime-types "~2.1.11" - negotiator "0.6.1" - -accessory@~1.1.0: +abbrev@1: version "1.1.0" - resolved "https://registry.yarnpkg.com/accessory/-/accessory-1.1.0.tgz#7833e9839a32ded76d26021f36a41707a520f593" - dependencies: - ap "~0.2.0" - balanced-match "~0.2.0" - dot-parts "~1.0.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" -acorn@^4.0.3: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" - -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" +ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -ansi-regex@^0.2.0, ansi-regex@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9" + co "^4.6.0" + json-stable-stringify "^1.0.1" ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" -ansi-styles@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" - ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -any-shell-escape@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/any-shell-escape/-/any-shell-escape-0.1.1.tgz#d55ab972244c71a9a5e1ab0879f30bf110806959" +anymatch@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.0.tgz#a3e52fa39168c825ff57b0248126ce5a8ff95507" + dependencies: + arrify "^1.0.0" + micromatch "^2.1.5" -ap@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/ap/-/ap-0.2.0.tgz#ae0942600b29912f0d2b14ec60c45e8f330b6110" +aproba@^1.0.3: + version "1.1.2" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" -archy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" +are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" arr-diff@^2.0.0: version "2.0.0" @@ -103,1063 +49,1070 @@ arr-flatten@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.3.tgz#a274ed85ac08849b6bd7847c4580745dc51adfb1" -array-differ@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-0.1.0.tgz#12e2c9b706bed47c8b483b57e487473fb0861f3a" - -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - -array-each@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - -array-slice@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.0.0.tgz#e73034f00dcc1f40876008fd20feae77bd4b7c2f" - -array-union@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-0.1.0.tgz#ede98088330665e699e1ebf0227cbc6034e627db" - dependencies: - array-uniq "^0.1.0" - -array-uniq@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-0.1.1.tgz#5861f3ed4e4bb6175597a4e078e8aa78ebe958c7" - -array-uniq@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" +arrify@^1.0.0, arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + asap@~2.0.3: version "2.0.5" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" -asn1.js@^4.0.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" +asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" -asn1@0.1.11: - version "0.1.11" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.1.11.tgz#559be18376d08a4ec4dbe80877d27818639b2df7" +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" -assert-plus@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.1.5.tgz#ee74009413002d84cec7219c6ac811812e723160" +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" -assert@~1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.1.2.tgz#adaa04c46bb58c6dd1f294da3eb26e6228eb6e44" - dependencies: - util "0.10.3" +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" -assert@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.3.0.tgz#03939a622582a812cc202320a0b9a56c9b815849" - dependencies: - util "0.10.3" +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" -ast-types@0.9.6: - version "0.9.6" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" +aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" -astw@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917" +aws4@^1.2.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + +babel-cli@^6.24.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.1.tgz#207cd705bba61489b2ea41b5312341cf6aca2283" + dependencies: + babel-core "^6.24.1" + babel-polyfill "^6.23.0" + babel-register "^6.24.1" + babel-runtime "^6.22.0" + commander "^2.8.1" + convert-source-map "^1.1.0" + fs-readdir-recursive "^1.0.0" + glob "^7.0.0" + lodash "^4.2.0" + output-file-sync "^1.1.0" + path-is-absolute "^1.0.0" + slash "^1.0.0" + source-map "^0.5.0" + v8flags "^2.0.10" + optionalDependencies: + chokidar "^1.6.1" + +babel-code-frame@^6.16.0, babel-code-frame@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" dependencies: - acorn "^4.0.3" + chalk "^1.1.0" + esutils "^2.0.2" + js-tokens "^3.0.0" -async-each@~0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-0.1.6.tgz#b67e99edcddf96541e44af56290cd7d5c6e70439" +babel-core@6.17.0: + version "6.17.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.17.0.tgz#6c4576447df479e241e58c807e4bc7da4db7f425" + dependencies: + babel-code-frame "^6.16.0" + babel-generator "^6.17.0" + babel-helpers "^6.16.0" + babel-messages "^6.8.0" + babel-register "^6.16.0" + babel-runtime "^6.9.1" + babel-template "^6.16.0" + babel-traverse "^6.16.0" + babel-types "^6.16.0" + babylon "^6.11.0" + convert-source-map "^1.1.0" + debug "^2.1.1" + json5 "^0.4.0" + lodash "^4.2.0" + minimatch "^3.0.2" + path-exists "^1.0.0" + path-is-absolute "^1.0.0" + private "^0.1.6" + shebang-regex "^1.0.0" + slash "^1.0.0" + source-map "^0.5.0" + +babel-core@^6.0.0, babel-core@^6.24.1: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" + dependencies: + babel-code-frame "^6.22.0" + babel-generator "^6.25.0" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.25.0" + babel-traverse "^6.25.0" + babel-types "^6.25.0" + babylon "^6.17.2" + convert-source-map "^1.1.0" + debug "^2.1.1" + json5 "^0.5.0" + lodash "^4.2.0" + minimatch "^3.0.2" + path-is-absolute "^1.0.0" + private "^0.1.6" + slash "^1.0.0" + source-map "^0.5.0" + +babel-eslint@7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.1.1.tgz#8a6a884f085aa7060af69cfc77341c2f99370fb2" + dependencies: + babel-code-frame "^6.16.0" + babel-traverse "^6.15.0" + babel-types "^6.15.0" + babylon "^6.13.0" + lodash.pickby "^4.6.0" + +babel-generator@^6.17.0, babel-generator@^6.18.0, babel-generator@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.25.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.2.0" + source-map "^0.5.0" + trim-right "^1.0.1" + +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-builder-react-jsx@^6.22.0, babel-helper-builder-react-jsx@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.24.1.tgz#0ad7917e33c8d751e646daca4e77cc19377d2cbc" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + esutils "^2.0.0" + +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-define-map@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz#7a9747f258d8947d32d515f6aa1c7bd02204a080" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + lodash "^4.2.0" + +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-function-name@^6.22.0, babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" + dependencies: + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz#d36e22fab1008d79d88648e32116868128456ce8" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + lodash "^4.2.0" + +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" + dependencies: + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helpers@^6.16.0, babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-jest@17.0.2: + version "17.0.2" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-17.0.2.tgz#8d51e0d03759713c331f108eb0b2eaa4c6efff74" + dependencies: + babel-core "^6.0.0" + babel-plugin-istanbul "^2.0.0" + babel-preset-jest "^17.0.2" + +babel-loader@6.2.7: + version "6.2.7" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.7.tgz#16fdbf64328030dc5a606827d389c8b92a2a8032" + dependencies: + find-cache-dir "^0.1.1" + loader-utils "^0.2.11" + mkdirp "^0.5.1" + object-assign "^4.0.1" -async@^0.9.0, async@~0.9.0: - version "0.9.2" - resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" +babel-messages@^6.23.0, babel-messages@^6.8.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + dependencies: + babel-runtime "^6.22.0" -async@~0.2.6: - version "0.2.10" - resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" +babel-plugin-check-es2015-constants@^6.22.0, babel-plugin-check-es2015-constants@^6.3.13: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" + dependencies: + babel-runtime "^6.22.0" -aws-sign2@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.5.0.tgz#c57103f7a17fc037f02d7c2e64b602ea223f7d63" +babel-plugin-istanbul@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-2.0.3.tgz#266b304b9109607d60748474394676982f660df4" + dependencies: + find-up "^1.1.2" + istanbul-lib-instrument "^1.1.4" + object-assign "^4.1.0" + test-exclude "^2.1.1" -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" +babel-plugin-jest-hoist@^17.0.2: + version "17.0.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-17.0.2.tgz#213488ce825990acd4c30f887dca09fffeb45235" -balanced-match@~0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.2.1.tgz#7bc658b4bed61eee424ad74f75f5c3e2c4df3cc7" +babel-plugin-react-transform@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/babel-plugin-react-transform/-/babel-plugin-react-transform-2.0.2.tgz#515bbfa996893981142d90b1f9b1635de2995109" + dependencies: + lodash "^4.6.1" -base62@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/base62/-/base62-0.1.1.tgz#7b4174c2f94449753b11c2651c083da841a7b084" +babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" -base64-js@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.7.tgz#54400dc91d696cec32a8a47902f971522fee8f48" +babel-plugin-syntax-class-properties@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" -base64-js@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" +babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" -base64-url@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-1.2.1.tgz#199fd661702a0e7b7dcae6e0698bb089c52f6d78" +babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.3.13: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" -basic-auth-connect@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/basic-auth-connect/-/basic-auth-connect-1.0.0.tgz#fdb0b43962ca7b40456a7c2bb48fe173da2d2122" +babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" -basic-auth@~1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.0.4.tgz#030935b01de7c9b94a824b29f3fccb750d3a5290" +babel-plugin-syntax-object-rest-spread@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" -batch@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464" +babel-plugin-syntax-trailing-function-commas@^6.13.0, babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" -beeper@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.7" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.7.tgz#ddb048e50d9482790094c13eb3fcfc833ce7ab46" - -body-parser@~1.13.3: - version "1.13.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.13.3.tgz#c08cf330c3358e151016a05746f13f029c97fa97" - dependencies: - bytes "2.1.0" - content-type "~1.0.1" - debug "~2.2.0" - depd "~1.0.1" - http-errors "~1.3.1" - iconv-lite "0.4.11" - on-finished "~2.3.0" - qs "4.0.0" - raw-body "~2.1.2" - type-is "~1.6.6" - -body-parser@~1.14.0: - version "1.14.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.14.2.tgz#1015cb1fe2c443858259581db53332f8d0cf50f9" - dependencies: - bytes "2.2.0" - content-type "~1.0.1" - debug "~2.2.0" - depd "~1.1.0" - http-errors "~1.3.1" - iconv-lite "0.4.13" - on-finished "~2.3.0" - qs "5.2.0" - raw-body "~2.1.5" - type-is "~1.6.10" - -boom@0.4.x: - version "0.4.2" - resolved "https://registry.yarnpkg.com/boom/-/boom-0.4.2.tgz#7a636e9ded4efcefb19cef4947a3c67dfaee911b" +babel-plugin-transform-async-to-generator@^6.24.1, babel-plugin-transform-async-to-generator@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" dependencies: - hoek "0.9.x" + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" -brace-expansion@^1.0.0, brace-expansion@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" +babel-plugin-transform-class-properties@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.22.0.tgz#aa78f8134495c7de06c097118ba061844e1dc1d8" dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" + babel-helper-function-name "^6.22.0" + babel-plugin-syntax-class-properties "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.22.0" -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" +babel-plugin-transform-es2015-arrow-functions@^6.22.0, babel-plugin-transform-es2015-arrow-functions@^6.3.13: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + babel-runtime "^6.22.0" -browser-pack@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-3.2.0.tgz#faa1cbc41487b1acc4747e373e1148adffd0e2d9" +babel-plugin-transform-es2015-block-scoped-functions@^6.22.0, babel-plugin-transform-es2015-block-scoped-functions@^6.3.13: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" dependencies: - JSONStream "~0.8.4" - combine-source-map "~0.3.0" - concat-stream "~1.4.1" - defined "~0.0.0" - through2 "~0.5.1" - umd "^2.1.0" + babel-runtime "^6.22.0" -browser-pack@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-4.0.4.tgz#8dae95a20ca43b3fea201faa6cfaa84ff4a0d484" +babel-plugin-transform-es2015-block-scoping@^6.24.1, babel-plugin-transform-es2015-block-scoping@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz#76c295dc3a4741b1665adfd3167215dcff32a576" dependencies: - JSONStream "^1.0.3" - combine-source-map "~0.3.0" - concat-stream "~1.4.1" - defined "^1.0.0" - through2 "~0.5.1" - umd "^3.0.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + lodash "^4.2.0" -browser-resolve@^1.3.0, browser-resolve@^1.7.0, browser-resolve@^1.7.1: - version "1.11.2" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" +babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-classes@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" dependencies: - resolve "1.1.7" + 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.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" +babel-plugin-transform-es2015-computed-properties@^6.24.1, babel-plugin-transform-es2015-computed-properties@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" dependencies: - buffer-xor "^1.0.2" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - inherits "^2.0.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -browserify-cipher@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" +babel-plugin-transform-es2015-destructuring@^6.22.0, babel-plugin-transform-es2015-destructuring@^6.6.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" + babel-runtime "^6.22.0" -browserify-des@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" +babel-plugin-transform-es2015-duplicate-keys@^6.24.1, babel-plugin-transform-es2015-duplicate-keys@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-shim@^3.8.0: - version "3.8.14" - resolved "https://registry.yarnpkg.com/browserify-shim/-/browserify-shim-3.8.14.tgz#bf1057026932d3253c75ef7dd714f3b877edec6b" - dependencies: - exposify "~0.5.0" - mothership "~0.2.0" - rename-function-calls "~0.1.0" - resolve "~0.6.1" - through "~2.3.4" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@~0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d" - dependencies: - pako "~0.2.0" - -browserify@^6.3.3: - version "6.3.4" - resolved "https://registry.yarnpkg.com/browserify/-/browserify-6.3.4.tgz#57b5d195cc568139e971302e5cd9d58ddafb54d8" - dependencies: - JSONStream "~0.8.3" - assert "~1.1.0" - browser-pack "^3.2.0" - browser-resolve "^1.3.0" - browserify-zlib "~0.1.2" - buffer "^2.3.0" - builtins "~0.0.3" - commondir "0.0.1" - concat-stream "~1.4.1" - console-browserify "^1.1.0" - constants-browserify "~0.0.1" - crypto-browserify "^3.0.0" - deep-equal "~0.2.1" - defined "~0.0.0" - deps-sort "^1.3.5" - domain-browser "~1.1.0" - duplexer2 "~0.0.2" - events "~1.0.0" - glob "^4.0.5" - http-browserify "^1.4.0" - https-browserify "~0.0.0" - inherits "~2.0.1" - insert-module-globals "^6.1.0" - isarray "0.0.1" - labeled-stream-splicer "^1.0.0" - module-deps "^3.5.0" - os-browserify "~0.1.1" - parents "~0.0.1" - path-browserify "~0.0.0" - process "^0.8.0" - punycode "~1.2.3" - querystring-es3 "~0.2.0" - readable-stream "^1.0.33-1" - resolve "~0.7.1" - shallow-copy "0.0.1" - shasum "^1.0.0" - shell-quote "~0.0.1" - stream-browserify "^1.0.0" - string_decoder "~0.10.0" - subarg "^1.0.0" - syntax-error "^1.1.1" - through2 "^1.0.0" - timers-browserify "^1.0.1" - tty-browserify "~0.0.0" - umd "~2.1.0" - url "~0.10.1" - util "~0.10.1" - vm-browserify "~0.0.1" - xtend "^3.0.0" - -browserify@^9.0.2: - version "9.0.8" - resolved "https://registry.yarnpkg.com/browserify/-/browserify-9.0.8.tgz#91859e9f60384459ead554df89cff03c734f159b" - dependencies: - JSONStream "~0.10.0" - assert "~1.3.0" - browser-pack "^4.0.0" - browser-resolve "^1.7.1" - browserify-zlib "~0.1.2" - buffer "^3.0.0" - builtins "~0.0.3" - commondir "0.0.1" - concat-stream "~1.4.1" - console-browserify "^1.1.0" - constants-browserify "~0.0.1" - crypto-browserify "^3.0.0" - deep-equal "^1.0.0" - defined "~0.0.0" - deps-sort "^1.3.5" - domain-browser "~1.1.0" - duplexer2 "~0.0.2" - events "~1.0.0" - glob "^4.0.5" - has "^1.0.0" - http-browserify "^1.4.0" - https-browserify "~0.0.0" - inherits "~2.0.1" - insert-module-globals "^6.2.0" - isarray "0.0.1" - labeled-stream-splicer "^1.0.0" - module-deps "^3.7.0" - os-browserify "~0.1.1" - parents "^1.0.1" - path-browserify "~0.0.0" - process "^0.10.0" - punycode "~1.2.3" - querystring-es3 "~0.2.0" - read-only-stream "^1.1.1" - readable-stream "^1.1.13" - resolve "^1.1.4" - shallow-copy "0.0.1" - shasum "^1.0.0" - shell-quote "~0.0.1" - stream-browserify "^1.0.0" - string_decoder "~0.10.0" - subarg "^1.0.0" - syntax-error "^1.1.1" - through2 "^1.0.0" - timers-browserify "^1.0.1" - tty-browserify "~0.0.0" - url "~0.10.1" - util "~0.10.1" - vm-browserify "~0.0.1" - xtend "^3.0.0" - -buffer-xor@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -buffer@^2.3.0: - version "2.8.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-2.8.2.tgz#d73c214c0334384dc29b04ee0ff5f5527c7974e7" +babel-plugin-transform-es2015-for-of@^6.22.0, babel-plugin-transform-es2015-for-of@^6.6.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" dependencies: - base64-js "0.0.7" - ieee754 "^1.1.4" - is-array "^1.0.1" + babel-runtime "^6.22.0" -buffer@^3.0.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb" +babel-plugin-transform-es2015-function-name@^6.24.1, babel-plugin-transform-es2015-function-name@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" dependencies: - base64-js "0.0.8" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -builtins@~0.0.3: - version "0.0.7" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-0.0.7.tgz#355219cd6cf18dbe7c01cc7fd2dce765cfdc549a" - -bytes@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.1.0.tgz#ac93c410e2ffc9cc7cf4b464b38289067f5e47b4" - -bytes@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.2.0.tgz#fd35464a403f6f9117c2de3609ecff9cae000588" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -bytes@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.4.0.tgz#7d97196f9d5baf7f6935e25985549edd2a6c2339" - -callsite@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" +babel-plugin-transform-es2015-literals@^6.22.0, babel-plugin-transform-es2015-literals@^6.3.13: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" + babel-runtime "^6.22.0" -camelcase@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" +babel-plugin-transform-es2015-modules-amd@^6.24.1, babel-plugin-transform-es2015-modules-amd@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -chalk@^0.5.0, chalk@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.5.1.tgz#663b3a648b68b55d04690d49167aa837858f2174" +babel-plugin-transform-es2015-modules-commonjs@^6.24.1, babel-plugin-transform-es2015-modules-commonjs@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" dependencies: - ansi-styles "^1.1.0" - escape-string-regexp "^1.0.0" - has-ansi "^0.1.0" - strip-ansi "^0.3.0" - supports-color "^0.2.0" + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" -chalk@^1.0.0, chalk@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" +babel-plugin-transform-es2015-modules-systemjs@^6.12.0, babel-plugin-transform-es2015-modules-systemjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -chokidar@~0.12.1: - version "0.12.6" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-0.12.6.tgz#be204f5b9634e009311256e5d6e8e0e508284d2f" +babel-plugin-transform-es2015-modules-umd@^6.12.0, babel-plugin-transform-es2015-modules-umd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" dependencies: - async-each "~0.1.5" - readdirp "~1.3.0" - optionalDependencies: - fsevents "~0.3.1" + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07" +babel-plugin-transform-es2015-object-super@^6.24.1, babel-plugin-transform-es2015-object-super@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" dependencies: - inherits "^2.0.1" + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" -clean-css@2.2.x: - version "2.2.23" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-2.2.23.tgz#0590b5478b516c4903edc2d89bd3fdbdd286328c" +babel-plugin-transform-es2015-parameters@^6.24.1, babel-plugin-transform-es2015-parameters@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" dependencies: - commander "2.2.x" + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" +babel-plugin-transform-es2015-shorthand-properties@^6.24.1, babel-plugin-transform-es2015-shorthand-properties@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" - -clone-stats@^0.0.1, clone-stats@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - -clone@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" - -clone@^1.0.0, clone@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -codemirror@^5.0.0: - version "5.27.2" - resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.27.2.tgz#a292d42f079d5b98c68c3146fab99844f3d8776c" - -combine-source-map@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.3.0.tgz#d9e74f593d9cd43807312cb5d846d451efaa9eb7" +babel-plugin-transform-es2015-spread@^6.22.0, babel-plugin-transform-es2015-spread@^6.3.13: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" dependencies: - convert-source-map "~0.3.0" - inline-source-map "~0.3.0" - source-map "~0.1.31" + babel-runtime "^6.22.0" -combine-source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.6.1.tgz#9b4a09c316033d768e0f11e029fa2730e079ad96" +babel-plugin-transform-es2015-sticky-regex@^6.24.1, babel-plugin-transform-es2015-sticky-regex@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" dependencies: - convert-source-map "~1.1.0" - inline-source-map "~0.5.0" - lodash.memoize "~3.0.3" - source-map "~0.4.2" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -combined-stream@~0.0.4: - version "0.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-0.0.7.tgz#0137e657baa5a7541c57ac37ac5fc07d73b4dc1f" +babel-plugin-transform-es2015-template-literals@^6.22.0, babel-plugin-transform-es2015-template-literals@^6.6.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" dependencies: - delayed-stream "0.0.5" - -commander@2.2.x: - version "2.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.2.0.tgz#175ad4b9317f3ff615f201c1e57224f55a3e91df" + babel-runtime "^6.22.0" -commander@^2.5.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.10.0.tgz#e1f5d3245de246d1a5ca04702fa1ad1bd7e405fe" +babel-plugin-transform-es2015-typeof-symbol@^6.22.0, babel-plugin-transform-es2015-typeof-symbol@^6.6.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" dependencies: - graceful-readlink ">= 1.0.0" - -commondir@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-0.0.1.tgz#89f00fdcd51b519c578733fec563e6a6da7f5be2" + babel-runtime "^6.22.0" -commoner@^0.10.0: - version "0.10.8" - resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5" +babel-plugin-transform-es2015-unicode-regex@^6.24.1, babel-plugin-transform-es2015-unicode-regex@^6.3.13: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" dependencies: - commander "^2.5.0" - detective "^4.3.1" - glob "^5.0.15" - graceful-fs "^4.1.2" - iconv-lite "^0.4.5" - mkdirp "^0.5.0" - private "^0.1.6" - q "^1.1.2" - recast "^0.11.17" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" -compressible@~2.0.5: - version "2.0.10" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.10.tgz#feda1c7f7617912732b29bf8cf26252a20b9eecd" +babel-plugin-transform-exponentiation-operator@^6.24.1, babel-plugin-transform-exponentiation-operator@^6.8.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" dependencies: - mime-db ">= 1.27.0 < 2" + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" -compression@~1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.5.2.tgz#b03b8d86e6f8ad29683cba8df91ddc6ffc77b395" +babel-plugin-transform-flow-strip-types@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" dependencies: - accepts "~1.2.12" - bytes "2.1.0" - compressible "~2.0.5" - debug "~2.2.0" - on-headers "~1.0.0" - vary "~1.0.1" + babel-plugin-syntax-flow "^6.18.0" + babel-runtime "^6.22.0" -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - -concat-stream@~1.4.1, concat-stream@~1.4.5: - version "1.4.10" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.4.10.tgz#acc3bbf5602cb8cc980c6ac840fa7d8603e3ef36" - dependencies: - inherits "~2.0.1" - readable-stream "~1.1.9" - typedarray "~0.0.5" - -connect-livereload@^0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/connect-livereload/-/connect-livereload-0.5.4.tgz#80157d1371c9f37cc14039ab1895970d119dc3bc" - -connect-timeout@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/connect-timeout/-/connect-timeout-1.6.2.tgz#de9a5ec61e33a12b6edaab7b5f062e98c599b88e" - dependencies: - debug "~2.2.0" - http-errors "~1.3.1" - ms "0.7.1" - on-headers "~1.0.0" - -connect@^2.30.0: - version "2.30.2" - resolved "https://registry.yarnpkg.com/connect/-/connect-2.30.2.tgz#8da9bcbe8a054d3d318d74dfec903b5c39a1b609" - dependencies: - basic-auth-connect "1.0.0" - body-parser "~1.13.3" - bytes "2.1.0" - compression "~1.5.2" - connect-timeout "~1.6.2" - content-type "~1.0.1" - cookie "0.1.3" - cookie-parser "~1.3.5" - cookie-signature "1.0.6" - csurf "~1.8.3" - debug "~2.2.0" - depd "~1.0.1" - errorhandler "~1.4.2" - express-session "~1.11.3" - finalhandler "0.4.0" - fresh "0.3.0" - http-errors "~1.3.1" - method-override "~2.3.5" - morgan "~1.6.1" - multiparty "3.3.2" - on-headers "~1.0.0" - parseurl "~1.3.0" - pause "0.1.0" - qs "4.0.0" - response-time "~2.3.1" - serve-favicon "~2.3.0" - serve-index "~1.7.2" - serve-static "~1.10.0" - type-is "~1.6.6" - utils-merge "1.0.0" - vhost "~3.0.1" - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" +babel-plugin-transform-object-rest-spread@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.22.0.tgz#1d419b55e68d2e4f64a5ff3373bd67d73c8e83bc" dependencies: - date-now "^0.1.4" - -constants-browserify@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2" - -content-type@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" - -convert-source-map@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.4.1.tgz#f919a0099fe31f80fc5a1d0eb303161b394070c7" - -convert-source-map@~0.3.0: - version "0.3.5" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.22.0" -convert-source-map@~1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860" - -cookie-parser@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/cookie-parser/-/cookie-parser-1.3.5.tgz#9d755570fb5d17890771227a02314d9be7cf8356" +babel-plugin-transform-object-rest-spread@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921" dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - -cookie@0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.1.3.tgz#e734a5c1417fce472d5aef82c381cabb64d1a435" - -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.22.0" -core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -crc@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/crc/-/crc-3.3.0.tgz#fa622e1bc388bf257309082d6b65200ce67090ba" - -create-ecdh@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" +babel-plugin-transform-react-constant-elements@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.22.0.tgz#4af456f80d283e8be00f00f12852354defa08ee1" dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" + babel-runtime "^6.22.0" -create-hash@^1.1.0, create-hash@^1.1.1, create-hash@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" +babel-plugin-transform-react-display-name@^6.22.0, babel-plugin-transform-react-display-name@^6.23.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - ripemd160 "^2.0.0" - sha.js "^2.4.0" + babel-runtime "^6.22.0" -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.6" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" +babel-plugin-transform-react-jsx-self@6.22.0, babel-plugin-transform-react-jsx-self@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e" dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" -cryptiles@0.2.x: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-0.2.2.tgz#ed91ff1f17ad13d3748288594f8a48a0d26f325c" +babel-plugin-transform-react-jsx-source@6.22.0, babel-plugin-transform-react-jsx-source@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" dependencies: - boom "0.4.x" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" -crypto-browserify@^3.0.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.0.tgz#3652a0906ab9b2a7e0c3ce66a408e957a2485522" +babel-plugin-transform-react-jsx@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.22.0.tgz#48556b7dd4c3fe97d1c943bcd54fc3f2561c1817" dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" + babel-helper-builder-react-jsx "^6.22.0" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" -csrf@~3.0.0: - version "3.0.6" - resolved "https://registry.yarnpkg.com/csrf/-/csrf-3.0.6.tgz#b61120ddceeafc91e76ed5313bb5c0b2667b710a" +babel-plugin-transform-react-jsx@^6.22.0, babel-plugin-transform-react-jsx@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" dependencies: - rndm "1.2.0" - tsscmp "1.0.5" - uid-safe "2.1.4" + babel-helper-builder-react-jsx "^6.24.1" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" -csurf@~1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/csurf/-/csurf-1.8.3.tgz#23f2a13bf1d8fce1d0c996588394442cba86a56a" +babel-plugin-transform-react-remove-prop-types@^0.4.1: + version "0.4.6" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.6.tgz#c3d20ff4e97fb08fa63e86a97b2daab6ad365a19" dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - csrf "~3.0.0" - http-errors "~1.3.1" + babel-traverse "^6.24.1" -ctype@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" +babel-plugin-transform-regenerator@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz#65740593a319c44522157538d690b84094617ea6" dependencies: - array-find-index "^1.0.1" + regenerator-transform "0.9.8" -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" +babel-plugin-transform-regenerator@^6.24.1, babel-plugin-transform-regenerator@^6.6.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418" + dependencies: + regenerator-transform "0.9.11" -dateformat@^1.0.7-1.2.3: - version "1.0.12" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" +babel-plugin-transform-runtime@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.22.0.tgz#10968d760bbf6517243081eec778e10fa828551c" dependencies: - get-stdin "^4.0.1" - meow "^3.3.0" + babel-runtime "^6.22.0" -dateformat@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" +babel-plugin-transform-runtime@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz#88490d446502ea9b8e7efb0fe09ec4d99479b1ee" + dependencies: + babel-runtime "^6.22.0" -deap@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/deap/-/deap-1.0.0.tgz#b148bf82430a27699b7483a03eb6b67585bfc888" +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" -debug@2.6.8: - version "2.6.8" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" +babel-polyfill@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" dependencies: - ms "2.0.0" + babel-runtime "^6.22.0" + core-js "^2.4.0" + regenerator-runtime "^0.10.0" -debug@~2.2.0: +babel-preset-env@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.2.1.tgz#659178f54df74a74765f796be4d290b5beeb3f5f" + dependencies: + babel-plugin-check-es2015-constants "^6.3.13" + babel-plugin-syntax-trailing-function-commas "^6.13.0" + babel-plugin-transform-async-to-generator "^6.8.0" + babel-plugin-transform-es2015-arrow-functions "^6.3.13" + babel-plugin-transform-es2015-block-scoped-functions "^6.3.13" + babel-plugin-transform-es2015-block-scoping "^6.6.0" + babel-plugin-transform-es2015-classes "^6.6.0" + babel-plugin-transform-es2015-computed-properties "^6.3.13" + babel-plugin-transform-es2015-destructuring "^6.6.0" + babel-plugin-transform-es2015-duplicate-keys "^6.6.0" + babel-plugin-transform-es2015-for-of "^6.6.0" + babel-plugin-transform-es2015-function-name "^6.3.13" + babel-plugin-transform-es2015-literals "^6.3.13" + babel-plugin-transform-es2015-modules-amd "^6.8.0" + babel-plugin-transform-es2015-modules-commonjs "^6.6.0" + babel-plugin-transform-es2015-modules-systemjs "^6.12.0" + babel-plugin-transform-es2015-modules-umd "^6.12.0" + babel-plugin-transform-es2015-object-super "^6.3.13" + babel-plugin-transform-es2015-parameters "^6.6.0" + babel-plugin-transform-es2015-shorthand-properties "^6.3.13" + babel-plugin-transform-es2015-spread "^6.3.13" + babel-plugin-transform-es2015-sticky-regex "^6.3.13" + babel-plugin-transform-es2015-template-literals "^6.6.0" + babel-plugin-transform-es2015-typeof-symbol "^6.6.0" + babel-plugin-transform-es2015-unicode-regex "^6.3.13" + babel-plugin-transform-exponentiation-operator "^6.8.0" + babel-plugin-transform-regenerator "^6.6.0" + browserslist "^1.4.0" + electron-to-chromium "^1.1.0" + invariant "^2.2.2" + +babel-preset-es2015@^6.18.0, babel-preset-es2015@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" + dependencies: + 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.22.0" + babel-plugin-transform-es2015-duplicate-keys "^6.24.1" + babel-plugin-transform-es2015-for-of "^6.22.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.22.0" + babel-plugin-transform-es2015-unicode-regex "^6.24.1" + babel-plugin-transform-regenerator "^6.24.1" + +babel-preset-es2016@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-es2016/-/babel-preset-es2016-6.24.1.tgz#f900bf93e2ebc0d276df9b8ab59724ebfd959f8b" + dependencies: + babel-plugin-transform-exponentiation-operator "^6.24.1" + +babel-preset-es2017@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-es2017/-/babel-preset-es2017-6.24.1.tgz#597beadfb9f7f208bcfd8a12e9b2b29b8b2f14d1" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.24.1" + +babel-preset-flow@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" + dependencies: + babel-plugin-transform-flow-strip-types "^6.22.0" + +babel-preset-jest@^17.0.2: + version "17.0.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-17.0.2.tgz#141e935debe164aaa0364c220d31ccb2176493b2" + dependencies: + babel-plugin-jest-hoist "^17.0.2" + +babel-preset-latest@^6.24.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-latest/-/babel-preset-latest-6.24.1.tgz#677de069154a7485c2d25c577c02f624b85b85e8" + dependencies: + babel-preset-es2015 "^6.24.1" + babel-preset-es2016 "^6.24.1" + babel-preset-es2017 "^6.24.1" + +babel-preset-react-app@^2.0.1: version "2.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" - dependencies: - ms "0.7.1" + resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-2.2.0.tgz#3143bcf316049f78b5f9d0422fd7822ca4715ca4" + dependencies: + babel-plugin-transform-class-properties "6.22.0" + babel-plugin-transform-object-rest-spread "6.22.0" + babel-plugin-transform-react-constant-elements "6.22.0" + babel-plugin-transform-react-jsx "6.22.0" + babel-plugin-transform-react-jsx-self "6.22.0" + babel-plugin-transform-react-jsx-source "6.22.0" + babel-plugin-transform-regenerator "6.22.0" + babel-plugin-transform-runtime "6.22.0" + babel-preset-env "1.2.1" + babel-preset-react "6.22.0" + babel-runtime "6.22.0" + +babel-preset-react-hmre@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/babel-preset-react-hmre/-/babel-preset-react-hmre-1.1.1.tgz#d216e60cb5b8d4c873e19ed0f54eaff1437bc492" + dependencies: + babel-plugin-react-transform "^2.0.2" + react-transform-catch-errors "^1.0.2" + react-transform-hmr "^1.0.3" + redbox-react "^1.2.2" + +babel-preset-react@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.22.0.tgz#7bc97e2d73eec4b980fb6b4e4e0884e81ccdc165" + dependencies: + babel-plugin-syntax-flow "^6.3.13" + babel-plugin-syntax-jsx "^6.3.13" + babel-plugin-transform-flow-strip-types "^6.22.0" + babel-plugin-transform-react-display-name "^6.22.0" + babel-plugin-transform-react-jsx "^6.22.0" + babel-plugin-transform-react-jsx-self "^6.22.0" + babel-plugin-transform-react-jsx-source "^6.22.0" + +babel-preset-react@^6.16.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380" + dependencies: + babel-plugin-syntax-jsx "^6.3.13" + babel-plugin-transform-react-display-name "^6.23.0" + babel-plugin-transform-react-jsx "^6.24.1" + babel-plugin-transform-react-jsx-self "^6.22.0" + babel-plugin-transform-react-jsx-source "^6.22.0" + babel-preset-flow "^6.23.0" + +babel-register@^6.16.0, babel-register@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" + dependencies: + babel-core "^6.24.1" + babel-runtime "^6.22.0" + core-js "^2.4.0" + home-or-tmp "^2.0.0" + lodash "^4.2.0" + mkdirp "^0.5.1" + source-map-support "^0.4.2" + +babel-runtime@6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.22.0.tgz#1cf8b4ac67c77a4ddb0db2ae1f74de52ac4ca611" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.10.0" + +babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.9.1: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.10.0" + +babel-template@^6.16.0, babel-template@^6.22.0, babel-template@^6.24.1, babel-template@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.25.0" + babel-types "^6.25.0" + babylon "^6.17.2" + lodash "^4.2.0" + +babel-traverse@^6.15.0, babel-traverse@^6.16.0, babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1" + dependencies: + babel-code-frame "^6.22.0" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.25.0" + babylon "^6.17.2" + debug "^2.2.0" + globals "^9.0.0" + invariant "^2.2.0" + lodash "^4.2.0" + +babel-types@^6.15.0, babel-types@^6.16.0, babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" + dependencies: + babel-runtime "^6.22.0" + esutils "^2.0.2" + lodash "^4.2.0" + to-fast-properties "^1.0.1" + +babylon@^6.11.0, babylon@^6.13.0, babylon@^6.17.2, babylon@^6.17.4: + version "6.17.4" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a" -decamelize@^1.0.0, decamelize@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" -deep-equal@^1.0.0: +bcrypt-pbkdf@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" -deep-equal@~0.2.1: - version "0.2.2" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-0.2.2.tgz#84b745896f34c684e98f2ce0e42abaf43bba017d" +big.js@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978" -defaults@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" +binary-extensions@^1.0.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" + +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" dependencies: - clone "^1.0.2" + inherits "~2.0.0" -defined@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" +boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + dependencies: + hoek "2.x.x" -defined@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-0.0.0.tgz#f35eea7d705e933baf13b2f03b3f83d921403b3e" +brace-expansion@^1.1.7: + version "1.1.8" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" -del@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/del/-/del-0.1.3.tgz#2d724a719b5acf5c0b840b4224715e838406a419" +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" dependencies: - each-async "^1.0.0" - globby "^0.1.1" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - rimraf "^2.2.8" + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" -delayed-stream@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f" +browserslist@^1.4.0: + version "1.7.7" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" + dependencies: + caniuse-db "^1.0.30000639" + electron-to-chromium "^1.2.7" -depd@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.0.1.tgz#80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa" +builtin-modules@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -depd@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" +caniuse-db@^1.0.30000639: + version "1.0.30000696" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000696.tgz#e71f5c61e1f96c7a3af4e791ac5db55e11737604" -deprecated@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19" +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" -deps-sort@^1.3.5: - version "1.3.9" - resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-1.3.9.tgz#29dfff53e17b36aecae7530adbbbf622c2ed1a71" +chalk@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: - JSONStream "^1.0.3" - shasum "^1.0.0" - subarg "^1.0.0" - through2 "^1.0.0" + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" +chokidar@^1.6.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" -detect-file@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63" - dependencies: - fs-exists-sync "^0.1.0" +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" -detective@^4.0.0, detective@^4.3.1, detective@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/detective/-/detective-4.5.0.tgz#6e5a8c6b26e6c7a254b1c6b6d7490d98ec91edd1" - dependencies: - acorn "^4.0.3" - defined "^1.0.0" +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" -detective@~3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detective/-/detective-3.1.0.tgz#77782444ab752b88ca1be2e9d0a0395f1da25eed" +combined-stream@^1.0.5, combined-stream@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" dependencies: - escodegen "~1.1.0" - esprima-fb "3001.1.0-dev-harmony-fb" + delayed-stream "~1.0.0" -diffie-hellman@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" +commander@^2.8.1: + version "2.10.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.10.0.tgz#e1f5d3245de246d1a5ca04702fa1ad1bd7e405fe" dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" + graceful-readlink ">= 1.0.0" -domain-browser@~1.1.0: - version "1.1.7" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" -domkit@^0.0.1: +concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/domkit/-/domkit-0.0.1.tgz#88399d586794efc1154fec6c22cfe50f19bd4dbb" - -dot-parts@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/dot-parts/-/dot-parts-1.0.1.tgz#884bd7bcfc3082ffad2fe5db53e494d8f3e0743f" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -duplexer2@0.0.2, duplexer2@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - dependencies: - readable-stream "~1.1.9" +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" -duplexer@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" +convert-source-map@^1.1.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" -each-async@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/each-async/-/each-async-1.1.1.tgz#dee5229bdf0ab6ba2012a395e1b869abf8813473" - dependencies: - onetime "^1.0.0" - set-immediate-shim "^1.0.0" +core-js@^1.0.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" +core-js@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" -elliptic@^6.0.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" +core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" +create-react-class@^15.6.0: + version "15.6.0" + resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.0.tgz#ab448497c26566e1e29413e883207d57cfe7bed4" dependencies: - iconv-lite "~0.4.13" + fbjs "^0.8.9" + loose-envify "^1.3.1" + object-assign "^4.1.1" -end-of-stream@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf" +cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" dependencies: - once "~1.3.0" + boom "2.x.x" -error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: - is-arrayish "^0.2.1" + assert-plus "^1.0.0" -errorhandler@~1.4.2: - version "1.4.3" - resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.4.3.tgz#b7b70ed8f359e9db88092f2d20c0f831420ad83f" +debug@^2.1.1, debug@^2.2.0: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: - accepts "~1.3.0" - escape-html "~1.0.3" + ms "2.0.0" -escape-html@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.2.tgz#d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c" +deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" -escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -escodegen@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.1.0.tgz#c663923f6e20aad48d0c0fa49f31c6d4f49360cf" +detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" dependencies: - esprima "~1.0.4" - estraverse "~1.5.0" - esutils "~1.0.0" - optionalDependencies: - source-map "~0.1.30" - -esprima-fb@13001.1001.0-dev-harmony-fb: - version "13001.1001.0-dev-harmony-fb" - resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-13001.1001.0-dev-harmony-fb.tgz#633acdb40d9bd4db8a1c1d68c06a942959fad2b0" + repeating "^2.0.0" -esprima-fb@3001.1.0-dev-harmony-fb: - version "3001.1.0-dev-harmony-fb" - resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz#b77d37abcd38ea0b77426bb8bc2922ce6b426411" +dom-walk@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" -esprima-fb@8001.1001.0-dev-harmony-fb: - version "8001.1001.0-dev-harmony-fb" - resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-8001.1001.0-dev-harmony-fb.tgz#c3190b05341d45643e093af70485ab4988e34d5e" +domkit@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/domkit/-/domkit-0.0.1.tgz#88399d586794efc1154fec6c22cfe50f19bd4dbb" -esprima@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" +ecc-jsbn@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + dependencies: + jsbn "~0.1.0" -esprima@~3.1.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" +electron-to-chromium@^1.1.0, electron-to-chromium@^1.2.7: + version "1.3.14" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.14.tgz#64af0f9efd3c3c6acd57d71f83b49ca7ee9c4b43" -estraverse@~1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" -esutils@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" +encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + dependencies: + iconv-lite "~0.4.13" -etag@~1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8" +error-ex@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" -event-stream@^3.3.2: - version "3.3.4" - resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" +error-stack-parser@^1.3.6: + version "1.3.6" + resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-1.3.6.tgz#e0e73b93e417138d1cd7c0b746b1a4a14854c292" dependencies: - duplexer "~0.1.1" - from "~0" - map-stream "~0.1.0" - pause-stream "0.0.11" - split "0.3" - stream-combiner "~0.0.4" - through "~2.3.1" + stackframe "^0.3.1" -events@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/events/-/events-1.0.2.tgz#75849dcfe93d10fb057c30055afdbd51d06a8e24" +escape-string-regexp@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -evp_bytestokey@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" - dependencies: - create-hash "^1.1.1" +esutils@^2.0.0, esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" expand-brackets@^0.1.4: version "0.1.5" @@ -1173,43 +1126,7 @@ expand-range@^1.8.1: dependencies: fill-range "^2.1.0" -expand-tilde@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" - dependencies: - os-homedir "^1.0.1" - -expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - dependencies: - homedir-polyfill "^1.0.1" - -exposify@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/exposify/-/exposify-0.5.0.tgz#f92d0094c265b3f553e1fa456a03a1883d1059cc" - dependencies: - globo "~1.1.0" - map-obj "~1.0.1" - replace-requires "~1.0.3" - through2 "~0.4.0" - transformify "~0.1.1" - -express-session@~1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/express-session/-/express-session-1.11.3.tgz#5cc98f3f5ff84ed835f91cbf0aabd0c7107400af" - dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - crc "3.3.0" - debug "~2.2.0" - depd "~1.0.1" - on-headers "~1.0.0" - parseurl "~1.3.0" - uid-safe "~2.0.0" - utils-merge "1.0.0" - -extend@^3.0.0: +extend@~3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" @@ -1219,18 +1136,9 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" -fancy-log@^1.0.0, fancy-log@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" - dependencies: - chalk "^1.1.1" - time-stamp "^1.0.0" - -faye-websocket@~0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - dependencies: - websocket-driver ">=0.5.1" +extsprintf@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" fbjs@^0.8.9: version "0.8.12" @@ -1258,57 +1166,21 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -finalhandler@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.4.0.tgz#965a52d9e8d05d2b857548541fb89b53a2497d9b" - dependencies: - debug "~2.2.0" - escape-html "1.0.2" - on-finished "~2.3.0" - unpipe "~1.0.0" - -find-index@^0.1.1: +find-cache-dir@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" - -find-parent-dir@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" + dependencies: + commondir "^1.0.1" + mkdirp "^0.5.1" + pkg-dir "^1.0.0" -find-up@^1.0.0: +find-up@^1.0.0, find-up@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" -findup-sync@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" - dependencies: - detect-file "^0.1.0" - is-glob "^2.0.1" - micromatch "^2.3.7" - resolve-dir "^0.1.0" - -fined@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.1.0.tgz#b37dc844b76a2f5e7081e884f7c0ae344f153476" - dependencies: - expand-tilde "^2.0.2" - is-plain-object "^2.0.3" - object.defaults "^1.1.0" - object.pick "^1.2.0" - parse-filepath "^1.0.1" - -first-chunk-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" - -flagged-respawn@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-0.3.2.tgz#ff191eddcd7088a675b2610fffc976be9b8074b5" - for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -1319,77 +1191,68 @@ for-own@^0.1.4: dependencies: for-in "^1.0.1" -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - dependencies: - for-in "^1.0.1" - -forever-agent@~0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130" +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" -form-data@~0.1.0: - version "0.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-0.1.4.tgz#91abd788aba9702b1aabfa8bc01031a2ac9e3b12" +form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" dependencies: - async "~0.9.0" - combined-stream "~0.0.4" - mime "~1.2.11" - -fresh@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f" - -from@~0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" -fs-exists-sync@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" +fs-readdir-recursive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" -fsevents@~0.3.1: - version "0.3.8" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-0.3.8.tgz#9992f1032c925c829554d0d59801dca0313a5356" +fsevents@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" dependencies: - nan "^2.0.2" - -function-bind@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" + nan "^2.3.0" + node-pre-gyp "^0.6.36" -gaze@^0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f" +fstream-ignore@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" dependencies: - globule "~0.1.0" - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + fstream "^1.0.0" + inherits "2" + minimatch "^3.0.0" -gift@^0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/gift/-/gift-0.4.2.tgz#1bd24d2846ad3fa71d28ff0b54f4c06a2fdd22ad" +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" dependencies: - underscore "1.x.x" + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" -git-remote-origin-url@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-1.1.2.tgz#752c6475495dc493bff350c46c7abaa50a29347e" +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" dependencies: - gitconfiglocal "^1.0.0" + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" -gitconfiglocal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" dependencies: - ini "^1.3.2" + assert-plus "^1.0.0" glob-base@^0.3.0: version "0.3.0" @@ -1404,49 +1267,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob-stream@^3.1.5: - version "3.1.18" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b" - dependencies: - glob "^4.3.1" - glob2base "^0.0.12" - minimatch "^2.0.1" - ordered-read-streams "^0.1.0" - through2 "^0.6.1" - unique-stream "^1.0.0" - -glob-watcher@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b" - dependencies: - gaze "^0.5.1" - -glob2base@^0.0.12: - version "0.0.12" - resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" - dependencies: - find-index "^0.1.1" - -glob@^4.0.2, glob@^4.0.5, glob@^4.3.1: - version "4.5.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "^2.0.1" - once "^1.3.0" - -glob@^5.0.15: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.5: +glob@^7.0.0, glob@^7.0.5: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -1457,233 +1278,35 @@ glob@^7.0.5: once "^1.3.0" path-is-absolute "^1.0.0" -glob@~3.1.21: - version "3.1.21" - resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd" - dependencies: - graceful-fs "~1.2.0" - inherits "1" - minimatch "~0.2.11" - -global-modules@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" - dependencies: - global-prefix "^0.1.4" - is-windows "^0.2.0" - -global-prefix@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" - dependencies: - homedir-polyfill "^1.0.0" - ini "^1.3.4" - is-windows "^0.2.0" - which "^1.2.12" - -globby@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-0.1.1.tgz#cbec63df724b4bea458b79a16cc0e3b1f2ca8620" - dependencies: - array-differ "^0.1.0" - array-union "^0.1.0" - async "^0.9.0" - glob "^4.0.2" - -globo@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/globo/-/globo-1.1.0.tgz#0d26098955dea422eb2001b104898b0a101caaf3" - dependencies: - accessory "~1.1.0" - is-defined "~1.0.0" - ternary "~1.0.0" - -globule@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5" - dependencies: - glob "~3.1.21" - lodash "~1.0.1" - minimatch "~0.2.11" - -glogg@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" +global@^4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" dependencies: - sparkles "^1.0.0" + min-document "^2.19.0" + process "~0.5.1" -graceful-fs@^3.0.0, graceful-fs@~3.0.2: - version "3.0.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818" - dependencies: - natives "^1.1.0" +globals@^9.0.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" -graceful-fs@^4.1.2: +graceful-fs@^4.1.2, graceful-fs@^4.1.4: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" -graceful-fs@~1.2.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" - -graceful-fs@~2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-2.0.3.tgz#7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0" - "graceful-readlink@>= 1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" -gulp-bump@^0.1.11: - version "0.1.13" - resolved "https://registry.yarnpkg.com/gulp-bump/-/gulp-bump-0.1.13.tgz#4e1b0da8d56267566c3d8b832da8c0833939f702" - dependencies: - gulp-util "^3.0.1" - semver "^2.3.2" - through2 "^0.5.1" - -gulp-connect@^2.2.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/gulp-connect/-/gulp-connect-2.3.1.tgz#14ae7173328b691252b01fc1930a39cbb24fb33c" - dependencies: - connect "^2.30.0" - connect-livereload "^0.5.4" - event-stream "^3.3.2" - gulp-util "^3.0.6" - tiny-lr "^0.2.1" - -gulp-gh-pages@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/gulp-gh-pages/-/gulp-gh-pages-0.4.0.tgz#e19a5af59c35300306abd139a57a596fd61f1add" - dependencies: - gift "^0.4.1" - git-remote-origin-url "^1.0.0" - gulp-util "^3.0.1" - lodash "^2.4.1" - rimraf "^2.2.6" - through2 "^0.6.1" - when "^3.4.5" - -gulp-git@^0.5.5: - version "0.5.6" - resolved "https://registry.yarnpkg.com/gulp-git/-/gulp-git-0.5.6.tgz#85c52c6ec27048dcc557e74ec96c8ff4b24297af" - dependencies: - any-shell-escape "^0.1.1" - gulp-util "^3.0.1" - require-dir "^0.1.0" - through2 "^0.6.3" - -gulp-less@^1.3.6: - version "1.3.9" - resolved "https://registry.yarnpkg.com/gulp-less/-/gulp-less-1.3.9.tgz#e129750f236693ead5b522af311cc33eeff1910e" - dependencies: - convert-source-map "^0.4.0" - gulp-util "^3.0.0" - less "^1.7.4" - lodash.defaults "^2.4.1" - through2 "^0.5.1" - vinyl-sourcemaps-apply "^0.1.1" - -gulp-react@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/gulp-react/-/gulp-react-3.1.0.tgz#82b3dc7e9d11fd00e26580b3b065a27c106e04b6" - dependencies: - gulp-util "^3.0.0" - object-assign "^4.0.1" - react-tools "^0.13.0" - through2 "^2.0.0" - vinyl-sourcemaps-apply "^0.2.0" - -gulp-rename@^1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" - -gulp-streamify@^0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/gulp-streamify/-/gulp-streamify-0.0.5.tgz#685d20512552ac5765624b4131b4b1ecadf00ec1" - dependencies: - gulp-util "~2.2.14" - plexer "0.0.2" - readable-stream "^1.0.26-2" - -gulp-uglify@^1.0.1: - version "1.5.4" - resolved "https://registry.yarnpkg.com/gulp-uglify/-/gulp-uglify-1.5.4.tgz#524788d87666d09f9d0c21fb2177f90039a658c9" - dependencies: - deap "^1.0.0" - fancy-log "^1.0.0" - gulp-util "^3.0.0" - isobject "^2.0.0" - through2 "^2.0.0" - uglify-js "2.6.4" - uglify-save-license "^0.4.1" - vinyl-sourcemaps-apply "^0.2.0" - -gulp-util@^3.0.0, gulp-util@^3.0.1, gulp-util@^3.0.6: - version "3.0.8" - resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" - dependencies: - array-differ "^1.0.0" - array-uniq "^1.0.2" - beeper "^1.0.0" - chalk "^1.0.0" - dateformat "^2.0.0" - fancy-log "^1.1.0" - gulplog "^1.0.0" - has-gulplog "^0.1.0" - lodash._reescape "^3.0.0" - lodash._reevaluate "^3.0.0" - lodash._reinterpolate "^3.0.0" - lodash.template "^3.0.0" - minimist "^1.1.0" - multipipe "^0.1.2" - object-assign "^3.0.0" - replace-ext "0.0.1" - through2 "^2.0.0" - vinyl "^0.5.0" - -gulp-util@~2.2.14: - version "2.2.20" - resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-2.2.20.tgz#d7146e5728910bd8f047a6b0b1e549bc22dbd64c" - dependencies: - chalk "^0.5.0" - dateformat "^1.0.7-1.2.3" - lodash._reinterpolate "^2.4.1" - lodash.template "^2.4.1" - minimist "^0.2.0" - multipipe "^0.1.0" - through2 "^0.5.0" - vinyl "^0.2.1" - -gulp@^3.8.10: - version "3.9.1" - resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4" - dependencies: - archy "^1.0.0" - chalk "^1.0.0" - deprecated "^0.0.1" - gulp-util "^3.0.0" - interpret "^1.0.0" - liftoff "^2.1.0" - minimist "^1.1.0" - orchestrator "^0.3.0" - pretty-hrtime "^1.0.0" - semver "^4.1.0" - tildify "^1.0.0" - v8flags "^2.0.2" - vinyl-fs "^0.3.0" - -gulplog@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - dependencies: - glogg "^1.0.0" +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" -has-ansi@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e" +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" dependencies: - ansi-regex "^0.2.0" + ajv "^4.9.1" + har-schema "^1.0.5" has-ansi@^2.0.0: version "2.0.0" @@ -1691,115 +1314,45 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-gulplog@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" - dependencies: - sparkles "^1.0.0" - -has-require@~1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/has-require/-/has-require-1.2.2.tgz#921675ab130dbd9768fc8da8f1a8e242dfa41774" - dependencies: - escape-string-regexp "^1.0.3" - -has@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - dependencies: - function-bind "^1.0.2" - -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" - dependencies: - inherits "^2.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.2.tgz#bf5c887825cfe40b9efde7bf11bd2db26e6bf01b" - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.0" - -hawk@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-1.1.1.tgz#87cd491f9b46e4e2aeaca335416766885d2d1ed9" - dependencies: - boom "0.4.x" - cryptiles "0.2.x" - hoek "0.9.x" - sntp "0.2.x" +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" +hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" -hoek@0.9.x: - version "0.9.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-0.9.1.tgz#3d322462badf07716ea7eb85baf88079cddce505" +hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" -homedir-polyfill@^1.0.0, homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" +home-or-tmp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" dependencies: - parse-passwd "^1.0.0" + os-homedir "^1.0.0" + os-tmpdir "^1.0.1" hosted-git-info@^2.1.4: version "2.5.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" -http-browserify@^1.4.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/http-browserify/-/http-browserify-1.7.0.tgz#33795ade72df88acfbfd36773cefeda764735b20" - dependencies: - Base64 "~0.2.0" - inherits "~2.0.1" - -http-errors@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.3.1.tgz#197e22cdebd4198585e8694ef6786197b91ed942" - dependencies: - inherits "~2.0.1" - statuses "1" - -http-signature@~0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.10.1.tgz#4fbdac132559aa8323121e540779c0a012b27e66" - dependencies: - asn1 "0.1.11" - assert-plus "^0.1.5" - ctype "0.5.3" - -https-browserify@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" - -iconv-lite@0.4.11: - version "0.4.11" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.11.tgz#2ecb42fd294744922209a2e7c404dac8793d8ade" - -iconv-lite@0.4.13, iconv-lite@^0.4.5, iconv-lite@~0.4.13: - version "0.4.13" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" - -ieee754@^1.1.4: - version "1.1.8" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" +http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" dependencies: - repeating "^2.0.0" + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" +iconv-lite@~0.4.13: + version "0.4.18" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" inflight@^1.0.4: version "1.0.6" @@ -1808,67 +1361,31 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" - -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - -ini@^1.3.2, ini@^1.3.4: +ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -inline-source-map@~0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.3.1.tgz#a528b514e689fce90db3089e870d92f527acb5eb" - dependencies: - source-map "~0.3.0" - -inline-source-map@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.5.0.tgz#4a4c5dd8e4fb5e9b3cda60c822dfadcaee66e0af" - dependencies: - source-map "~0.4.0" - -insert-module-globals@^6.1.0, insert-module-globals@^6.2.0: - version "6.6.3" - resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-6.6.3.tgz#20638e29a30f9ed1ca2e3a825fbc2cba5246ddfc" - dependencies: - JSONStream "^1.0.3" - combine-source-map "~0.6.1" - concat-stream "~1.4.1" - is-buffer "^1.1.0" - lexical-scope "^1.2.0" - process "~0.11.0" - through2 "^1.0.0" - xtend "^4.0.0" - -interpret@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" - -is-absolute@^0.2.3: - version "0.2.6" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.2.6.tgz#20de69f3db942ef2d87b9c2da36f172235b1b5eb" +invariant@^2.2.0, invariant@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" dependencies: - is-relative "^0.2.1" - is-windows "^0.2.0" - -is-array@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-array/-/is-array-1.0.1.tgz#e9850cc2cc860c3bc0977e84ccf0dd464584279a" + loose-envify "^1.0.0" is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" -is-buffer@^1.1.0, is-buffer@^1.1.5: +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + +is-buffer@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" @@ -1878,10 +1395,6 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" -is-defined@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-defined/-/is-defined-1.0.0.tgz#1f07ca67d571f594c4b14415a45f7bef88f92bf5" - is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -1906,6 +1419,12 @@ is-finite@^1.0.0: dependencies: number-is-nan "^1.0.0" +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" @@ -1924,28 +1443,6 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - -is-path-in-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" - dependencies: - path-is-inside "^1.0.1" - -is-plain-object@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.3.tgz#c15bf3e4b66b62d72efaf2925848663ecbc619b6" - dependencies: - isobject "^3.0.0" - is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" @@ -1954,52 +1451,28 @@ is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" -is-relative@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.2.1.tgz#d27f4c7d516d175fb610db84bbeef23c3bc97aa5" - dependencies: - is-unc-path "^0.1.1" - is-stream@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" -is-unc-path@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.2.tgz#6ab053a72573c10250ff416a3814c35178af39b9" - dependencies: - unc-path-regex "^0.1.0" +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" -is-windows@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" - -isarray@0.0.1, isarray@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - -isobject@^2.0.0, isobject@^2.1.0: +isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" dependencies: isarray "1.0.0" -isobject@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.0.tgz#39565217f3661789e8a0a0c080d5f7e6bc46e1a0" - isomorphic-fetch@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" @@ -2007,47 +1480,76 @@ isomorphic-fetch@^2.1.1: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + +istanbul-lib-coverage@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" + +istanbul-lib-instrument@^1.1.4: + version "1.7.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.3.tgz#925b239163eabdd68cc4048f52c2fa4f899ecfa7" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.17.4" + istanbul-lib-coverage "^1.1.1" + semver "^5.3.0" + js-tokens@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -json-stable-stringify@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45" +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + +json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.0: +json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" +json5@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" + +json5@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" -jsonparse@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64" - -jsonparse@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" - -jstransform@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-10.1.0.tgz#b4c49bf63f162c108b0348399a8737c713b0a83a" - dependencies: - base62 "0.1.1" - esprima-fb "13001.1001.0-dev-harmony-fb" - source-map "0.1.31" - -jstransform@^8.0.0, jstransform@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-8.2.0.tgz#e43f697f7cc01a1e7c827dd9df5a79d29d0c50bb" +jsprim@^1.2.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" dependencies: - base62 "0.1.1" - esprima-fb "8001.1001.0-dev-harmony-fb" - source-map "0.1.31" + assert-plus "1.0.0" + extsprintf "1.0.2" + json-schema "0.2.3" + verror "1.3.6" kind-of@^3.0.2: version "3.2.2" @@ -2061,53 +1563,6 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -labeled-stream-splicer@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-1.0.2.tgz#4615331537784981e8fd264e1f3a434c4e0ddd65" - dependencies: - inherits "^2.0.1" - isarray "~0.0.1" - stream-splicer "^1.1.0" - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - -less@^1.7.4: - version "1.7.5" - resolved "https://registry.yarnpkg.com/less/-/less-1.7.5.tgz#4f220cf7288a27eaca739df6e4808a2d4c0d5756" - optionalDependencies: - clean-css "2.2.x" - graceful-fs "~3.0.2" - mime "~1.2.11" - mkdirp "~0.5.0" - request "~2.40.0" - source-map "0.1.x" - -lexical-scope@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4" - dependencies: - astw "^2.0.0" - -liftoff@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385" - dependencies: - extend "^3.0.0" - findup-sync "^0.4.2" - fined "^1.0.1" - flagged-respawn "^0.3.2" - lodash.isplainobject "^4.0.4" - lodash.isstring "^4.0.1" - lodash.mapvalues "^4.4.0" - rechoir "^0.6.2" - resolve "^1.1.7" - -livereload-js@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.2.2.tgz#6c87257e648ab475bc24ea257457edcc1f8d0bc2" - load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -2118,209 +1573,22 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" -lodash._basecopy@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - -lodash._basetostring@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" - -lodash._basevalues@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" - -lodash._escapehtmlchar@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.4.1.tgz#df67c3bb6b7e8e1e831ab48bfa0795b92afe899d" - dependencies: - lodash._htmlescapes "~2.4.1" - -lodash._escapestringchar@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._escapestringchar/-/lodash._escapestringchar-2.4.1.tgz#ecfe22618a2ade50bfeea43937e51df66f0edb72" - -lodash._getnative@^3.0.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - -lodash._htmlescapes@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._htmlescapes/-/lodash._htmlescapes-2.4.1.tgz#32d14bf0844b6de6f8b62a051b4f67c228b624cb" - -lodash._isiterateecall@^3.0.0: - version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" - -lodash._isnative@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._isnative/-/lodash._isnative-2.4.1.tgz#3ea6404b784a7be836c7b57580e1cdf79b14832c" - -lodash._objecttypes@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz#7c0b7f69d98a1f76529f890b0cdb1b4dfec11c11" - -lodash._reescape@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" - -lodash._reevaluate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" - -lodash._reinterpolate@^2.4.1, lodash._reinterpolate@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-2.4.1.tgz#4f1227aa5a8711fc632f5b07a1f4607aab8b3222" - -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - -lodash._reunescapedhtml@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._reunescapedhtml/-/lodash._reunescapedhtml-2.4.1.tgz#747c4fc40103eb3bb8a0976e571f7a2659e93ba7" - dependencies: - lodash._htmlescapes "~2.4.1" - lodash.keys "~2.4.1" - -lodash._root@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" - -lodash._shimkeys@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz#6e9cc9666ff081f0b5a6c978b83e242e6949d203" - dependencies: - lodash._objecttypes "~2.4.1" - -lodash.defaults@^2.4.1, lodash.defaults@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-2.4.1.tgz#a7e8885f05e68851144b6e12a8f3678026bc4c54" - dependencies: - lodash._objecttypes "~2.4.1" - lodash.keys "~2.4.1" - -lodash.escape@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" - dependencies: - lodash._root "^3.0.0" - -lodash.escape@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-2.4.1.tgz#2ce12c5e084db0a57dda5e5d1eeeb9f5d175a3b4" - dependencies: - lodash._escapehtmlchar "~2.4.1" - lodash._reunescapedhtml "~2.4.1" - lodash.keys "~2.4.1" - -lodash.isarguments@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - -lodash.isarray@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - -lodash.isobject@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-2.4.1.tgz#5a2e47fe69953f1ee631a7eba1fe64d2d06558f5" - dependencies: - lodash._objecttypes "~2.4.1" - -lodash.isplainobject@^4.0.4: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - -lodash.keys@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" - dependencies: - lodash._getnative "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" - -lodash.keys@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-2.4.1.tgz#48dea46df8ff7632b10d706b8acb26591e2b3727" +loader-utils@^0.2.11: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" dependencies: - lodash._isnative "~2.4.1" - lodash._shimkeys "~2.4.1" - lodash.isobject "~2.4.1" + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" -lodash.mapvalues@^4.4.0: +lodash.pickby@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c" - -lodash.memoize@~3.0.3: - version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" - -lodash.restparam@^3.0.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" - -lodash.template@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-2.4.1.tgz#9e611007edf629129a974ab3c48b817b3e1cf20d" - dependencies: - lodash._escapestringchar "~2.4.1" - lodash._reinterpolate "~2.4.1" - lodash.defaults "~2.4.1" - lodash.escape "~2.4.1" - lodash.keys "~2.4.1" - lodash.templatesettings "~2.4.1" - lodash.values "~2.4.1" - -lodash.template@^3.0.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" - dependencies: - lodash._basecopy "^3.0.0" - lodash._basetostring "^3.0.0" - lodash._basevalues "^3.0.0" - lodash._isiterateecall "^3.0.0" - lodash._reinterpolate "^3.0.0" - lodash.escape "^3.0.0" - lodash.keys "^3.0.0" - lodash.restparam "^3.0.0" - lodash.templatesettings "^3.0.0" - -lodash.templatesettings@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.escape "^3.0.0" - -lodash.templatesettings@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-2.4.1.tgz#ea76c75d11eb86d4dbe89a83893bb861929ac699" - dependencies: - lodash._reinterpolate "~2.4.1" - lodash.escape "~2.4.1" - -lodash.values@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/lodash.values/-/lodash.values-2.4.1.tgz#abf514436b3cb705001627978cbcf30b1280eea4" - dependencies: - lodash.keys "~2.4.1" - -lodash@^2.4.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-2.4.2.tgz#fadd834b9683073da179b3eae6d9c0d15053f73e" - -lodash@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" + resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff" -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" +lodash@^4.2.0, lodash@^4.6.1: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: version "1.3.1" @@ -2328,68 +1596,7 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: dependencies: js-tokens "^3.0.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lru-cache@2: - version "2.7.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" - -map-cache@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - -map-obj@^1.0.0, map-obj@^1.0.1, map-obj@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - -map-stream@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - -meow@^3.3.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -merge-stream@^0.1.6: - version "0.1.8" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-0.1.8.tgz#48a07b3b4a121d74a3edbfdcdb4b08adbf0240b1" - dependencies: - through2 "^0.6.1" - -method-override@~2.3.5: - version "2.3.9" - resolved "https://registry.yarnpkg.com/method-override/-/method-override-2.3.9.tgz#bd151f2ce34cf01a76ca400ab95c012b102d8f71" - dependencies: - debug "2.6.8" - methods "~1.1.2" - parseurl "~1.3.1" - vary "~1.1.1" - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - -micromatch@^2.3.7: +micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: @@ -2407,156 +1614,50 @@ micromatch@^2.3.7: parse-glob "^3.0.4" regex-cache "^0.4.2" -miller-rabin@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.27.0 < 2", mime-db@~1.27.0: +mime-db@~1.27.0: version "1.27.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" -mime-types@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" - -mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.6, mime-types@~2.1.9: +mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.15" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" dependencies: mime-db "~1.27.0" -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - -mime@~1.2.11: - version "1.2.11" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" - -minimalistic-assert@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + dependencies: + dom-walk "^0.1.0" -"minimatch@2 || 3", minimatch@^3.0.4: +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: brace-expansion "^1.1.7" -minimatch@^2.0.1: - version "2.0.10" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" - dependencies: - brace-expansion "^1.0.0" - -minimatch@~0.2.11, minimatch@~0.2.12: - version "0.2.14" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a" - dependencies: - lru-cache "2" - sigmund "~1.0.0" - minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.0.tgz#4dffe525dae2b864c66c2e23c6271d7afdecefce" - -minimist@^1.1.0, minimist@^1.1.3: +minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mkdirp@^0.5.0, mkdirp@~0.5.0: +"mkdirp@>=0.5 0", mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" -module-deps@^3.5.0, module-deps@^3.7.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-3.9.1.tgz#ea75caf9199090d25b0d5512b5acacb96e7f87f3" - dependencies: - JSONStream "^1.0.3" - browser-resolve "^1.7.0" - concat-stream "~1.4.5" - defined "^1.0.0" - detective "^4.0.0" - duplexer2 "0.0.2" - inherits "^2.0.1" - parents "^1.0.0" - readable-stream "^1.1.13" - resolve "^1.1.3" - stream-combiner2 "~1.0.0" - subarg "^1.0.0" - through2 "^1.0.0" - xtend "^4.0.0" - -morgan@~1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.6.1.tgz#5fd818398c6819cba28a7cd6664f292fe1c0bbf2" - dependencies: - basic-auth "~1.0.3" - debug "~2.2.0" - depd "~1.0.1" - on-finished "~2.3.0" - on-headers "~1.0.0" - -mothership@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/mothership/-/mothership-0.2.0.tgz#93d48a2fbc3e50e2a5fc8ed586f5bc44c65f9a99" - dependencies: - find-parent-dir "~0.3.0" - -ms@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" - -ms@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -multiparty@3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/multiparty/-/multiparty-3.3.2.tgz#35de6804dc19643e5249f3d3e3bdc6c8ce301d3f" - dependencies: - readable-stream "~1.1.9" - stream-counter "~0.2.0" - -multipipe@^0.1.0, multipipe@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" - dependencies: - duplexer2 "0.0.2" - -nan@^2.0.2: +nan@^2.3.0: version "2.6.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" -natives@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.0.tgz#e9ff841418a6b2ec7a495e939984f78f163e6e31" - -negotiator@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.5.3.tgz#269d5c476810ec92edbe7b6c2f28316384f9a7e8" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - node-fetch@^1.0.1: version "1.7.1" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.1.tgz#899cb3d0a3c92f952c47f1b876f4c8aeabd400d5" @@ -2564,11 +1665,28 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" -node-uuid@~1.4.0: - version "1.4.8" - resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" +node-pre-gyp@^0.6.36: + version "0.6.36" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" + dependencies: + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "^2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: +normalize-package-data@^2.3.2: version "2.4.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" dependencies: @@ -2583,35 +1701,27 @@ normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" +npmlog@^4.0.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" -oauth-sign@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.3.0.tgz#cb540f93bb2b22a7d5941691a288d60e8ea9386e" - -object-assign@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" +oauth-sign@~0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" -object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-keys@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" - -object.defaults@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" - dependencies: - array-each "^1.0.1" - array-slice "^1.0.0" - for-own "^1.0.0" - isobject "^3.0.0" - object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" @@ -2619,97 +1729,34 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -object.pick@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.2.0.tgz#b5392bee9782da6d9fb7d6afaf539779f1234c2b" - dependencies: - isobject "^2.1.0" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.0, on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - -once@^1.3.0: +once@^1.3.0, once@^1.3.3: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" -once@~1.3.0: - version "1.3.3" - resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" - dependencies: - wrappy "1" - -onetime@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - -optimist@~0.3.5: - version "0.3.7" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" - dependencies: - wordwrap "~0.0.2" - -orchestrator@^0.3.0: - version "0.3.8" - resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e" - dependencies: - end-of-stream "~0.1.5" - sequencify "~0.0.7" - stream-consume "~0.1.0" - -ordered-read-streams@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126" - -os-browserify@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.1.2.tgz#49ca0293e0b19590a5f5de10c7f265a617d8fe54" - -os-homedir@^1.0.0, os-homedir@^1.0.1: +os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" -pako@~0.2.0: - version "0.2.9" - resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" - -parents@^1.0.0, parents@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751" - dependencies: - path-platform "~0.11.15" - -parents@~0.0.1: - version "0.0.3" - resolved "https://registry.yarnpkg.com/parents/-/parents-0.0.3.tgz#fa212f024d9fa6318dbb6b4ce676c8be493b9c43" - dependencies: - path-platform "^0.0.1" +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -parse-asn1@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" +osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" -parse-filepath@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.1.tgz#159d6155d43904d16c10ef698911da1e91969b73" +output-file-sync@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76" dependencies: - is-absolute "^0.2.3" - map-cache "^0.2.0" - path-root "^0.1.1" + graceful-fs "^4.1.4" + mkdirp "^0.5.1" + object-assign "^4.1.0" parse-glob@^3.0.4: version "3.0.4" @@ -2726,21 +1773,9 @@ parse-json@^2.2.0: dependencies: error-ex "^1.2.0" -parse-passwd@^1.0.0: +path-exists@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - -parseurl@~1.3.0, parseurl@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" - -patch-text@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/patch-text/-/patch-text-1.0.2.tgz#4bf36e65e51733d6e98f0cf62e09034daa0348ac" - -path-browserify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-1.0.0.tgz#d5a8998eb71ef37a74c34eb0d9eba6e878eea081" path-exists@^2.0.0: version "2.1.0" @@ -2752,32 +1787,6 @@ path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - -path-parse@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" - -path-platform@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.0.1.tgz#b5585d7c3c463d89aa0060d86611cf1afd617e2a" - -path-platform@~0.11.15: - version "0.11.15" - resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2" - -path-root-regex@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" - -path-root@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" - dependencies: - path-root-regex "^0.1.0" - path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" @@ -2786,25 +1795,9 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -pause-stream@0.0.11: - version "0.0.11" - resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" - dependencies: - through "~2.3" - -pause@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/pause/-/pause-0.1.0.tgz#ebc8a4a8619ff0b8a81ac1513c3434ff469fdb74" - -pbkdf2@^3.0.3: - version "3.0.12" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.12.tgz#be36785c5067ea48d806ff923288c5f750b6b8a2" - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" pify@^2.0.0: version "2.3.0" @@ -2820,21 +1813,17 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" -plexer@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/plexer/-/plexer-0.0.2.tgz#223d5800628a0646a0097d30ab576866a2f3784e" +pkg-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" dependencies: - readable-stream "^1.0.26-2" + find-up "^1.0.0" preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" -pretty-hrtime@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - -private@^0.1.6, private@~0.1.5: +private@^0.1.6: version "0.1.7" resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" @@ -2842,17 +1831,9 @@ process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" -process@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/process/-/process-0.10.1.tgz#842457cc51cfed72dc775afeeafb8c6034372725" - -process@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/process/-/process-0.8.0.tgz#7bbaf7187fe6ded3fd5be0cb6103fba9cacb9798" - -process@~0.11.0: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" +process@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" promise@^7.1.1: version "7.3.1" @@ -2860,66 +1841,20 @@ promise@^7.1.1: dependencies: asap "~2.0.3" -prop-types@^15.5.10: +prop-types@^15.5.10, prop-types@^15.5.4: version "15.5.10" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154" dependencies: fbjs "^0.8.9" loose-envify "^1.3.1" -public-encrypt@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" -punycode@~1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.2.4.tgz#54008ac972aec74175def9cba6df7fa9d3918740" - -q@^1.1.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" - -qs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" - -qs@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-5.2.0.tgz#a9f31142af468cb72b25b30136ba2456834916be" - -qs@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-1.0.2.tgz#50a93e2b5af6691c31bcea5dae78ee6ea1903768" - -qs@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-5.1.0.tgz#4d932e5c7ea411cca76a312d39a606200fd50cd9" - -querystring-es3@~0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - -random-bytes@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" +qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" randomatic@^1.1.3: version "1.1.7" @@ -2928,25 +1863,20 @@ randomatic@^1.1.3: is-number "^3.0.0" kind-of "^4.0.0" -randombytes@^2.0.0, randombytes@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" +rc@^1.1.7: + version "1.2.1" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" dependencies: - safe-buffer "^5.1.0" - -range-parser@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.0.3.tgz#6872823535c692e2c2a0103826afd82c2e0ff175" + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" -raw-body@~2.1.2, raw-body@~2.1.5: - version "2.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.1.7.tgz#adfeace2e4fb3098058014d08c072dcc59758774" - dependencies: - bytes "2.4.0" - iconv-lite "0.4.13" - unpipe "1.0.0" +react-deep-force-update@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.0.1.tgz#f911b5be1d2a6fe387507dd6e9a767aa2924b4c7" -react-dom@>=0.14.0: +react-dom@^15.6.1: version "15.6.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.6.1.tgz#2cb0ed4191038e53c209eb3a79a23e2a4cf99470" dependencies: @@ -2955,34 +1885,33 @@ react-dom@>=0.14.0: object-assign "^4.1.0" prop-types "^15.5.10" -react-tools@^0.13.0: - version "0.13.3" - resolved "https://registry.yarnpkg.com/react-tools/-/react-tools-0.13.3.tgz#da6ac7d4d7777a59a5e951cf46e72fd4b6b40a2c" +react-proxy@^1.1.7: + version "1.1.8" + resolved "https://registry.yarnpkg.com/react-proxy/-/react-proxy-1.1.8.tgz#9dbfd9d927528c3aa9f444e4558c37830ab8c26a" dependencies: - commoner "^0.10.0" - jstransform "^10.1.0" + lodash "^4.6.1" + react-deep-force-update "^1.0.0" -react-tools@~0.12.1: - version "0.12.2" - resolved "https://registry.yarnpkg.com/react-tools/-/react-tools-0.12.2.tgz#92e55a24f8412df6583555dd96ceb8cdb24ae86e" - dependencies: - commoner "^0.10.0" - jstransform "^8.2.0" +react-transform-catch-errors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/react-transform-catch-errors/-/react-transform-catch-errors-1.0.2.tgz#1b4d4a76e97271896fc16fe3086c793ec88a9eeb" -reactify@^0.17.0: - version "0.17.1" - resolved "https://registry.yarnpkg.com/reactify/-/reactify-0.17.1.tgz#0a4683cca59a4c7a769579fe2fec0a9bdf81eed6" +react-transform-hmr@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/react-transform-hmr/-/react-transform-hmr-1.0.4.tgz#e1a40bd0aaefc72e8dfd7a7cda09af85066397bb" dependencies: - jstransform "^8.0.0" - react-tools "~0.12.1" - through "~2.3.4" + global "^4.3.0" + react-proxy "^1.1.7" -read-only-stream@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-1.1.1.tgz#5da77c799ed1388d3ef88a18471bb5924f8a0ba1" +react@^15.6.1: + version "15.6.1" + resolved "https://registry.yarnpkg.com/react/-/react-15.6.1.tgz#baa8434ec6780bde997cdc380b79cd33b96393df" dependencies: - readable-stream "^1.0.31" - readable-wrap "^1.0.0" + create-react-class "^15.6.0" + fbjs "^0.8.9" + loose-envify "^1.1.0" + object-assign "^4.1.0" + prop-types "^15.5.10" read-pkg-up@^1.0.1: version "1.0.1" @@ -2999,25 +1928,7 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.17, readable-stream@~1.0.26-2: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -"readable-stream@>=1.1.13-1 <1.2.0-0", readable-stream@^1.0.26-2, readable-stream@^1.0.27-1, readable-stream@^1.0.31, readable-stream@^1.0.33-1, readable-stream@^1.1.13, readable-stream@^1.1.13-1, readable-stream@~1.1.8, readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^2.1.5: +readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4: version "2.3.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.2.tgz#5a04df05e4f57fe3f0dc68fdd11dc5c97c7e6f4d" dependencies: @@ -3029,41 +1940,47 @@ readable-stream@^2.1.5: string_decoder "~1.0.0" util-deprecate "~1.0.1" -readable-wrap@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/readable-wrap/-/readable-wrap-1.0.0.tgz#3b5a211c631e12303a54991c806c17e7ae206bff" +readdirp@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" dependencies: - readable-stream "^1.1.13-1" + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" -readdirp@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-1.3.0.tgz#eaf1a9b463be9a8190fc9ae163aa1ac934aa340b" +redbox-react@^1.2.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.4.2.tgz#7fe35d3c567301e97938cc7fd6a10918f424c6b4" dependencies: - graceful-fs "~2.0.0" - minimatch "~0.2.12" - readable-stream "~1.0.26-2" + error-stack-parser "^1.3.6" + object-assign "^4.0.1" + prop-types "^15.5.4" + sourcemapped-stacktrace "^1.1.6" -recast@^0.11.17: - version "0.11.23" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" - dependencies: - ast-types "0.9.6" - esprima "~3.1.0" - private "~0.1.5" - source-map "~0.5.0" +regenerate@^1.2.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" +regenerator-runtime@^0.10.0: + version "0.10.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" + +regenerator-transform@0.9.11: + version "0.9.11" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.11.tgz#3a7d067520cb7b7176769eb5ff868691befe1283" dependencies: - resolve "^1.1.6" + babel-runtime "^6.18.0" + babel-types "^6.19.0" + private "^0.1.6" -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" +regenerator-transform@0.9.8: + version "0.9.8" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.8.tgz#0f88bb2bc03932ddb7b6b7312e68078f01026d6c" dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" + babel-runtime "^6.18.0" + babel-types "^6.19.0" + private "^0.1.6" regex-cache@^0.4.2: version "0.4.3" @@ -3072,16 +1989,28 @@ regex-cache@^0.4.2: is-equal-shallow "^0.1.3" is-primitive "^2.0.0" +regexpu-core@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + remove-trailing-separator@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" -rename-function-calls@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/rename-function-calls/-/rename-function-calls-0.1.1.tgz#7f83369c007a3007f6abe3033ccf81686a108e01" - dependencies: - detective "~3.1.0" - repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" @@ -3096,178 +2025,56 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -replace-ext@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - -replace-requires@~1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/replace-requires/-/replace-requires-1.0.4.tgz#014b7330b6b9e2557b71043b66fb02660c3bf667" - dependencies: - detective "^4.5.0" - has-require "~1.2.1" - patch-text "~1.0.2" - xtend "~4.0.0" - -request@~2.40.0: - version "2.40.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.40.0.tgz#4dd670f696f1e6e842e66b4b5e839301ab9beb67" - dependencies: - forever-agent "~0.5.0" - json-stringify-safe "~5.0.0" - mime-types "~1.0.1" - node-uuid "~1.4.0" - qs "~1.0.0" - optionalDependencies: - aws-sign2 "~0.5.0" - form-data "~0.1.0" - hawk "1.1.1" - http-signature "~0.10.0" - oauth-sign "~0.3.0" +request@^2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" stringstream "~0.0.4" - tough-cookie ">=0.12.0" - tunnel-agent "~0.4.0" - -require-dir@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/require-dir/-/require-dir-0.1.0.tgz#81e01e299faf5b74c34b6594f8e5add5985ddec5" - -resolve-dir@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" - dependencies: - expand-tilde "^1.2.2" - global-modules "^0.2.3" - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - -resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7: - version "1.3.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" - dependencies: - path-parse "^1.0.5" - -resolve@~0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.3.1.tgz#34c63447c664c70598d1c9b126fc43b2a24310a4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" -resolve@~0.6.1: - version "0.6.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46" - -resolve@~0.7.1: - version "0.7.4" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.7.4.tgz#395a9ef9e873fbfe12bd14408bd91bb936003d69" - -response-time@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/response-time/-/response-time-2.3.2.tgz#ffa71bab952d62f7c1d49b7434355fbc68dffc5a" - dependencies: - depd "~1.1.0" - on-headers "~1.0.1" - -rfile@~1.0, rfile@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rfile/-/rfile-1.0.0.tgz#59708cf90ca1e74c54c3cfc5c36fdb9810435261" - dependencies: - callsite "~1.0.0" - resolve "~0.3.0" - -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" - dependencies: - align-text "^0.1.1" +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" -rimraf@^2.2.6, rimraf@^2.2.8: +rimraf@2, rimraf@^2.5.1, rimraf@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: glob "^7.0.5" -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" - dependencies: - hash-base "^2.0.0" - inherits "^2.0.1" - -rndm@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/rndm/-/rndm-1.2.0.tgz#f33fe9cfb52bbfd520aa18323bc65db110a1b76c" - -ruglify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ruglify/-/ruglify-1.0.0.tgz#dc8930e2a9544a274301cc9972574c0d0986b675" - dependencies: - rfile "~1.0" - uglify-js "~2.2" - -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0: +safe-buffer@^5.0.1, safe-buffer@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" -"semver@2 || 3 || 4 || 5", semver@^4.1.0: - version "4.3.6" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" - -semver@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-2.3.2.tgz#b9848f25d6cf36333073ec9ef8856d42f1233e52" - -send@0.13.2: - version "0.13.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.13.2.tgz#765e7607c8055452bba6f0b052595350986036de" - dependencies: - debug "~2.2.0" - depd "~1.1.0" - destroy "~1.0.4" - escape-html "~1.0.3" - etag "~1.7.0" - fresh "0.3.0" - http-errors "~1.3.1" - mime "1.3.4" - ms "0.7.1" - on-finished "~2.3.0" - range-parser "~1.0.3" - statuses "~1.2.1" - -sequencify@~0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c" - -serve-favicon@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.3.2.tgz#dd419e268de012ab72b319d337f2105013f9381f" - dependencies: - etag "~1.7.0" - fresh "0.3.0" - ms "0.7.2" - parseurl "~1.3.1" - -serve-index@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.7.3.tgz#7a057fc6ee28dc63f64566e5fa57b111a86aecd2" - dependencies: - accepts "~1.2.13" - batch "0.5.3" - debug "~2.2.0" - escape-html "~1.0.3" - http-errors "~1.3.1" - mime-types "~2.1.9" - parseurl "~1.3.1" +"semver@2 || 3 || 4 || 5", semver@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -serve-static@~1.10.0: - version "1.10.3" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.10.3.tgz#ce5a6ecd3101fed5ec09827dac22a9c29bfb0535" - dependencies: - escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.13.2" +set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" -set-immediate-shim@^1.0.0: +set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" @@ -3275,78 +2082,39 @@ setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" -sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4: - version "2.4.8" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" - dependencies: - inherits "^2.0.1" - -shallow-copy@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" - -shasum@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f" - dependencies: - json-stable-stringify "~0.0.0" - sha.js "~2.4.4" - -shell-quote@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-0.0.1.tgz#1a41196f3c0333c482323593d6886ecf153dd986" - -sigmund@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" signal-exit@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" -sntp@0.2.x: - version "0.2.4" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-0.2.4.tgz#fb885f18b0f3aad189f824862536bceeec750900" - dependencies: - hoek "0.9.x" - -source-map@0.1.31: - version "0.1.31" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.31.tgz#9f704d0d69d9e138a81badf6ebb4fde33d151c61" - dependencies: - amdefine ">=0.0.4" +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" -source-map@0.1.34: - version "0.1.34" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.34.tgz#a7cfe89aec7b1682c3b198d0acfb47d7d090566b" +sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" dependencies: - amdefine ">=0.0.4" + hoek "2.x.x" -source-map@0.1.x, source-map@^0.1.39, source-map@~0.1.30, source-map@~0.1.31, source-map@~0.1.7: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" +source-map-support@^0.4.2: + version "0.4.15" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" dependencies: - amdefine ">=0.0.4" + source-map "^0.5.6" -source-map@^0.5.1, source-map@~0.5.0, source-map@~0.5.1: +source-map@0.5.6, source-map@^0.5.0, source-map@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.3.0.tgz#8586fb9a5a005e5b501e21cd18b6f21b457ad1f9" - dependencies: - amdefine ">=0.0.4" - -source-map@~0.4.0, source-map@~0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" +sourcemapped-stacktrace@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/sourcemapped-stacktrace/-/sourcemapped-stacktrace-1.1.6.tgz#112d8749c942c3cd3b630dfac9514577b86a3a51" dependencies: - amdefine ">=0.0.4" - -sparkles@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" + source-map "0.5.6" spdx-correct@~1.0.0: version "1.0.2" @@ -3362,64 +2130,31 @@ spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" -split@0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" +sshpk@^1.7.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" dependencies: - through "2" - -statuses@1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - -statuses@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.2.1.tgz#dded45cc18256d51ed40aec142489d5c61026d28" + asn1 "~0.2.3" + assert-plus "^1.0.0" + dashdash "^1.12.0" + getpass "^0.1.1" + optionalDependencies: + bcrypt-pbkdf "^1.0.0" + ecc-jsbn "~0.1.1" + jsbn "~0.1.0" + tweetnacl "~0.14.0" -stream-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-1.0.0.tgz#bf9b4abfb42b274d751479e44e0ff2656b6f1193" - dependencies: - inherits "~2.0.1" - readable-stream "^1.0.27-1" +stackframe@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-0.3.1.tgz#33aa84f1177a5548c8935533cbfeb3420975f5a4" -stream-combiner2@~1.0.0: +string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.0.2.tgz#ba72a6b50cbfabfa950fc8bc87604bd01eb60671" - dependencies: - duplexer2 "~0.0.2" - through2 "~0.5.1" - -stream-combiner@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" - dependencies: - duplexer "~0.1.1" - -stream-consume@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f" - -stream-counter@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/stream-counter/-/stream-counter-0.2.0.tgz#ded266556319c8b0e222812b9cf3b26fa7d947de" - dependencies: - readable-stream "~1.1.8" - -stream-splicer@^1.1.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-1.3.2.tgz#3c0441be15b9bf4e226275e6dc83964745546661" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" dependencies: - indexof "0.0.1" - inherits "^2.0.1" - isarray "~0.0.1" - readable-stream "^1.1.13-1" - readable-wrap "^1.0.0" - through2 "^1.0.0" - -string_decoder@~0.10.0, string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" string_decoder@~1.0.0: version "1.0.3" @@ -3431,250 +2166,88 @@ stringstream@~0.0.4: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" -strip-ansi@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.3.0.tgz#25f48ea22ca79187f3174a4db8759347bb126220" - dependencies: - ansi-regex "^0.2.1" - -strip-ansi@^3.0.0: +strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: ansi-regex "^2.0.0" -strip-bom@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794" - dependencies: - first-chunk-stream "^1.0.0" - is-utf8 "^0.2.0" - strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" dependencies: is-utf8 "^0.2.0" -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" - -subarg@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" - dependencies: - minimist "^1.1.0" - -supports-color@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a" +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -syntax-error@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1" - dependencies: - acorn "^4.0.3" - -ternary@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ternary/-/ternary-1.0.0.tgz#45702725608c9499d46a9610e9b0e49ff26f789e" - -through2@^0.5.0, through2@^0.5.1, through2@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.5.1.tgz#dfdd012eb9c700e2323fd334f38ac622ab372da7" - dependencies: - readable-stream "~1.0.17" - xtend "~3.0.0" - -through2@^0.6.1, through2@^0.6.3: - version "0.6.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" - dependencies: - readable-stream ">=1.0.33-1 <1.1.0-0" - xtend ">=4.0.0 <4.1.0-0" - -through2@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-1.1.1.tgz#0847cbc4449f3405574dbdccd9bb841b83ac3545" - dependencies: - readable-stream ">=1.1.13-1 <1.2.0-0" - xtend ">=4.0.0 <4.1.0-0" - -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" +tar-pack@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through2@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.4.2.tgz#dbf5866031151ec8352bb6c4db64a2292a840b9b" - dependencies: - readable-stream "~1.0.17" - xtend "~2.1.1" - -through@2, "through@>=2.2.7 <3", through@~2.3, through@~2.3.1, through@~2.3.4: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + debug "^2.2.0" + fstream "^1.0.10" + fstream-ignore "^1.0.5" + once "^1.3.3" + readable-stream "^2.1.4" + rimraf "^2.5.1" + tar "^2.2.1" + uid-number "^0.0.6" -tildify@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a" +tar@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" dependencies: - os-homedir "^1.0.0" - -time-stamp@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" + block-stream "*" + fstream "^1.0.2" + inherits "2" -timers-browserify@^1.0.1: - version "1.4.2" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d" +test-exclude@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-2.1.3.tgz#a8d8968e1da83266f9864f2852c55e220f06434a" dependencies: - process "~0.11.0" + arrify "^1.0.1" + micromatch "^2.3.11" + object-assign "^4.1.0" + read-pkg-up "^1.0.1" + require-main-filename "^1.0.1" -tiny-lr@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-0.2.1.tgz#b3fdba802e5d56a33c2f6f10794b32e477ac729d" - dependencies: - body-parser "~1.14.0" - debug "~2.2.0" - faye-websocket "~0.10.0" - livereload-js "^2.2.0" - parseurl "~1.3.0" - qs "~5.1.0" +to-fast-properties@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" -tough-cookie@>=0.12.0: +tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" dependencies: punycode "^1.4.1" -transformify@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/transformify/-/transformify-0.1.2.tgz#9a4f42a154433dd727b80575428a3c9e5489ebf1" - dependencies: - readable-stream "~1.1.9" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - -tsscmp@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.5.tgz#7dc4a33af71581ab4337da91d85ca5427ebd9a97" - -tty-browserify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - -tunnel-agent@~0.4.0: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -type-is@~1.6.10, type-is@~1.6.6: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" dependencies: - media-typer "0.3.0" - mime-types "~2.1.15" + safe-buffer "^5.0.1" -typedarray@~0.0.5: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" ua-parser-js@^0.7.9: version "0.7.13" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.13.tgz#cd9dd2f86493b3f44dbeeef3780fda74c5ee14be" -uglify-js@2.6.4: - version "2.6.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf" - dependencies: - async "~0.2.6" - source-map "~0.5.1" - uglify-to-browserify "~1.0.0" - yargs "~3.10.0" - -uglify-js@~2.2: - version "2.2.5" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.2.5.tgz#a6e02a70d839792b9780488b7b8b184c095c99c7" - dependencies: - optimist "~0.3.5" - source-map "~0.1.7" - -uglify-js@~2.4.0: - version "2.4.24" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.4.24.tgz#fad5755c1e1577658bb06ff9ab6e548c95bebd6e" - dependencies: - async "~0.2.6" - source-map "0.1.34" - uglify-to-browserify "~1.0.0" - yargs "~3.5.4" - -uglify-save-license@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/uglify-save-license/-/uglify-save-license-0.4.1.tgz#95726c17cc6fd171c3617e3bf4d8d82aa8c4cce1" - -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" - -uid-safe@2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.4.tgz#3ad6f38368c6d4c8c75ec17623fb79aa1d071d81" - dependencies: - random-bytes "~1.0.0" - -uid-safe@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.0.0.tgz#a7f3c6ca64a1f6a5d04ec0ef3e4c3d5367317137" - dependencies: - base64-url "1.2.1" - -umd@^2.1.0, umd@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/umd/-/umd-2.1.0.tgz#4a6307b762f17f02d201b5fa154e673396c263cf" - dependencies: - rfile "~1.0.0" - ruglify "~1.0.0" - through "~2.3.4" - uglify-js "~2.4.0" - -umd@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" - -unc-path-regex@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - -underscore@1.x.x: - version "1.8.3" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" - -unique-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b" - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - -url@~0.10.1: - version "0.10.3" - resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" - dependencies: - punycode "1.3.2" - querystring "0.2.0" +uid-number@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" user-home@^1.1.1: version "1.1.1" @@ -3684,17 +2257,11 @@ util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" -util@0.10.3, util@~0.10.1: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - dependencies: - inherits "2.0.1" - -utils-merge@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" +uuid@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" -v8flags@^2.0.2: +v8flags@^2.0.10: version "2.1.1" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" dependencies: @@ -3707,156 +2274,22 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" -vary@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.0.1.tgz#99e4981566a286118dfb2b817357df7993376d10" - -vary@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" - -vhost@~3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/vhost/-/vhost-3.0.2.tgz#2fb1decd4c466aa88b0f9341af33dc1aff2478d5" - -vinyl-fs@^0.3.0: - version "0.3.14" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6" - dependencies: - defaults "^1.0.0" - glob-stream "^3.1.5" - glob-watcher "^0.0.6" - graceful-fs "^3.0.0" - mkdirp "^0.5.0" - strip-bom "^1.0.0" - through2 "^0.6.1" - vinyl "^0.4.0" - -vinyl-paths@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/vinyl-paths/-/vinyl-paths-1.0.0.tgz#fc272ada915b4c3e8264cfb06de75d3ce07c8a9e" - dependencies: - through2 "^0.6.3" - -vinyl-source-stream@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/vinyl-source-stream/-/vinyl-source-stream-1.1.0.tgz#44cbe5108205279deb0c5653c094a2887938b1ab" - dependencies: - through2 "^0.6.1" - vinyl "^0.4.3" - -vinyl-sourcemaps-apply@^0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.1.4.tgz#c5fcbd43e2f238423c2dc98bddd6f79b72bc345b" - dependencies: - source-map "^0.1.39" - -vinyl-sourcemaps-apply@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705" - dependencies: - source-map "^0.5.1" - -vinyl@^0.2.1: - version "0.2.3" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.2.3.tgz#bca938209582ec5a49ad538a00fa1f125e513252" - dependencies: - clone-stats "~0.0.1" - -vinyl@^0.4.0, vinyl@^0.4.3: - version "0.4.6" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" - dependencies: - clone "^0.2.0" - clone-stats "^0.0.1" - -vinyl@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" - dependencies: - clone "^1.0.0" - clone-stats "^0.0.1" - replace-ext "0.0.1" - -vm-browserify@~0.0.1: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - dependencies: - indexof "0.0.1" - -watchify@^2.1.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/watchify/-/watchify-2.6.2.tgz#01a188d8ea1a8c0b3995e15b425b115efce4d8a9" - dependencies: - browserify "^9.0.2" - chokidar "~0.12.1" - through2 "~0.5.1" - xtend "^4.0.0" - -websocket-driver@>=0.5.1: - version "0.6.5" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" +verror@1.3.6: + version "1.3.6" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" dependencies: - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7" + extsprintf "1.0.2" whatwg-fetch@>=0.10.0: version "2.0.3" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" -when@^3.4.5: - version "3.7.8" - resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" - -which@^1.2.12: - version "1.2.14" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" +wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" dependencies: - isexe "^2.0.0" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" - -wordwrap@0.0.2, wordwrap@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + string-width "^1.0.2" wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - -xtend@^3.0.0, xtend@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-3.0.0.tgz#5cce7407baf642cba7becda568111c493f59665a" - -xtend@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" - dependencies: - object-keys "~0.4.0" - -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0" - -yargs@~3.5.4: - version "3.5.4" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.5.4.tgz#d8aff8f665e94c34bd259bdebd1bfaf0ddd35361" - dependencies: - camelcase "^1.0.2" - decamelize "^1.0.0" - window-size "0.1.0" - wordwrap "0.0.2" From 2bcf63908030d2537fca2a6622e8f54fe6b7cc76 Mon Sep 17 00:00:00 2001 From: Jer Date: Wed, 28 Jun 2017 18:50:48 -0500 Subject: [PATCH 06/18] finalize new build process --- README.md | 6 +-- ScaleModal.js | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++ build.sh | 1 + package.json | 2 +- 4 files changed, 107 insertions(+), 4 deletions(-) create mode 100644 ScaleModal.js diff --git a/README.md b/README.md index 03ff825..0be3698 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ Boron [![npm version](https://badge.fury.io/js/boron.svg)](http://badge.fury.io/js/boron) ===== -[![Pair on this](https://tf-assets-staging.s3.amazonaws.com/badges/thinkful_repo_badge.svg)](http://start.thinkful.com/react/?utm_source=github&utm_medium=badge&utm_campaign=boron) +# This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! + A collection of dialog animations with React.js. -* React 0.14+ Use `boron 0.2` -* React 0.12+ Use `boron 0.1` +* React 0.15+ Use `boron 0.3` ## Demo & Examples diff --git a/ScaleModal.js b/ScaleModal.js new file mode 100644 index 0000000..dfbe85b --- /dev/null +++ b/ScaleModal.js @@ -0,0 +1,102 @@ +'use strict'; + +var modalFactory = require('./modalFactory'); +var insertKeyframesRule = require('domkit/insertKeyframesRule'); +var appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'scale3d(0, 0, 1)' + }, + '100%': { + opacity: 1, + transform: 'scale3d(1, 1, 1)' + } + }), + + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.5, 0.5, 1)' + } + }), + + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +module.exports = modalFactory({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getModalStyle: function getModalStyle(willHidden) { + return appendVendorPrefix({ + zIndex: 1050, + position: "fixed", + width: "500px", + transform: "translate3d(-50%, -50%, 0)", + top: "50%", + left: "50%" + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return appendVendorPrefix({ + position: "fixed", + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: "#373A47", + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return appendVendorPrefix({ + margin: 0, + backgroundColor: "white", + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } +}); diff --git a/build.sh b/build.sh index 98b56ae..826c694 100644 --- a/build.sh +++ b/build.sh @@ -6,4 +6,5 @@ babel src/FadeModal.js --out-file FadeModal.js babel src/FlyModal.js --out-file FlyModal.js babel src/modalFactory.js --out-file modalFactory.js babel src/OutlineModal.js --out-file OutlineModal.js +babel src/ScaleModal.js --out-file ScaleModal.js babel src/WaveModal.js --out-file WaveModal.js \ No newline at end of file diff --git a/package.json b/package.json index 674b99e..0272d3e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "boron", - "version": "0.2.5", + "version": "0.3.0", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Yuanyan Cao", From da27aaba2bf91030049c086f98d23893288f42d3 Mon Sep 17 00:00:00 2001 From: Jeremy Ayerst Date: Wed, 28 Jun 2017 18:56:21 -0500 Subject: [PATCH 07/18] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0be3698..9217127 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Boron [![npm version](https://badge.fury.io/js/boron.svg)](http://badge.fury.io/js/boron) +Beryllium [![npm version](https://badge.fury.io/js/boron.svg)](http://badge.fury.io/js/boron) ===== # This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! From a0040012276cee3cde7fbb4c8a0b0c454f59b282 Mon Sep 17 00:00:00 2001 From: Jeremy Ayerst Date: Wed, 28 Jun 2017 18:56:33 -0500 Subject: [PATCH 08/18] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9217127..ee5d29f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Beryllium [![npm version](https://badge.fury.io/js/boron.svg)](http://badge.fury.io/js/boron) +Beryllium ===== # This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! From efd1c7d2ee4211a8d60bd10320739de80995d387 Mon Sep 17 00:00:00 2001 From: Jeremy Ayerst Date: Wed, 28 Jun 2017 18:57:05 -0500 Subject: [PATCH 09/18] Update package.json --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 0272d3e..f150e7d 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { - "name": "boron", + "name": "beryllium", "version": "0.3.0", "description": "A collection of dialog animations with React.js", "main": "Boron.js", - "author": "Yuanyan Cao", + "author": "Jeremy Ayerst", "license": "MIT", "repository": { "type": "git", From dc968aabe26f210503a95e646872c7b56fa28906 Mon Sep 17 00:00:00 2001 From: Jer Date: Sat, 1 Jul 2017 12:51:11 -0500 Subject: [PATCH 10/18] fix deprecation warnings as well as update readme.md --- README.md | 20 +-- modalFactory.js | 353 ++++++++++++++++++++++++-------------------- package.json | 6 +- src/modalFactory.js | 345 +++++++++++++++++++++---------------------- 4 files changed, 373 insertions(+), 351 deletions(-) diff --git a/README.md b/README.md index ee5d29f..8b17039 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Beryllium +Reboron ===== # This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! @@ -16,25 +16,23 @@ To build the examples locally, run: ``` npm install -gulp dev ``` Then open [`localhost:9999`](http://localhost:9999) in a browser. ## Installation -The easiest way to use `boron` is to install it from NPM and include it in your own React build process (using [Browserify](http://browserify.org), etc). +The easiest way to use `reboron` is to install it from NPM and include it in your own React build process -You can also use the standalone build by including `dist/boron.js` in your page. If you use this, make sure you have already included React, and it is available as a global variable. ``` -npm install boron --save +npm install reboron --save ``` ## Usage ``` javascript -var Modal = require('boron/DropModal'); +var Modal = require('reboron/DropModal'); var Example = React.createClass({ showModal: function(){ this.refs.modal.show(); @@ -89,7 +87,7 @@ The values for the CSS properties will either add new properties or override the Modal with 80% width: ``` javascript -var Modal = require('boron/ScaleModal'); +var Modal = require('reboron/ScaleModal'); // Style object var modalStyle = { @@ -119,7 +117,7 @@ var Example = React.createClass({ Red backdrop with a blue modal, rotated at 45 degrees: ``` javascript -var Modal = require('boron/FlyModal'); +var Modal = require('reboron/FlyModal'); // Individual styles for the modal, modal content, and backdrop var modalStyle = { @@ -166,12 +164,6 @@ var Example = React.createClass({ * ScaleModal * WaveModal -## Browser Support - -![IE](https://raw.github.com/alrra/browser-logos/master/internet-explorer/internet-explorer_48x48.png) | ![Chrome](https://raw.github.com/alrra/browser-logos/master/chrome/chrome_48x48.png) | ![Firefox](https://raw.github.com/alrra/browser-logos/master/firefox/firefox_48x48.png) | ![Opera](https://raw.github.com/alrra/browser-logos/master/opera/opera_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/master/safari/safari_48x48.png) ---- | --- | --- | --- | --- | -IE 10+ ✔ | Chrome 4.0+ ✔ | Firefox 16.0+ ✔ | Opera 15.0+ ✔ | Safari 4.0+ ✔ | - ## License Boron is [MIT licensed](./LICENSE). diff --git a/modalFactory.js b/modalFactory.js index 4687b27..3900c4e 100644 --- a/modalFactory.js +++ b/modalFactory.js @@ -1,190 +1,221 @@ 'use strict'; +var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); + +var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); + +var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); + +var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); + +var _createClass2 = require('babel-runtime/helpers/createClass'); + +var _createClass3 = _interopRequireDefault(_createClass2); + +var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); + +var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); + +var _inherits2 = require('babel-runtime/helpers/inherits'); + +var _inherits3 = _interopRequireDefault(_inherits2); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + var React = require('react'); var transitionEvents = require('domkit/transitionEvents'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); var PropTypes = require('prop-types'); module.exports = function (animation) { + var Factory = function (_React$Component) { + (0, _inherits3.default)(Factory, _React$Component); - return React.createClass({ - propTypes: { - className: PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. - keyboard: PropTypes.bool, - onShow: PropTypes.func, - onHide: PropTypes.func, - animation: PropTypes.object, - backdrop: PropTypes.bool, - closeOnClick: PropTypes.bool, - modalStyle: PropTypes.object, - backdropStyle: PropTypes.object, - contentStyle: PropTypes.object - }, - - getDefaultProps: function getDefaultProps() { - return { - className: "", - onShow: function onShow() {}, - onHide: function onHide() {}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {} - }; - }, + function Factory(props) { + (0, _classCallCheck3.default)(this, Factory); - getInitialState: function getInitialState() { - return { + var _this = (0, _possibleConstructorReturn3.default)(this, (Factory.__proto__ || (0, _getPrototypeOf2.default)(Factory)).call(this, props)); + + _this.state = { willHidden: false, hidden: true }; - }, - - hasHidden: function hasHidden() { - return this.state.hidden; - }, - addTransitionListener: function addTransitionListener(node, handle) { - if (node) { - var endListener = function endListener(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } - }, + _this.hasHidden = _this.hasHidden.bind(_this); + _this.handleBackdropClick = _this.handleBackdropClick.bind(_this); + _this.leave = _this.leave.bind(_this); + _this.enter = _this.enter.bind(_this); + _this.show = _this.show.bind(_this); + _this.hide = _this.hide.bind(_this); + _this.toggle = _this.toggle.bind(_this); + _this.listenKeyboard = _this.listenKeyboard.bind(_this); + return _this; + } - handleBackdropClick: function handleBackdropClick() { - if (this.props.closeOnClick) { - this.hide("backdrop"); + (0, _createClass3.default)(Factory, [{ + key: 'hasHidden', + value: function hasHidden() { + return this.state.hidden; } - }, - - render: function render() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; + }, { + key: 'addTransitionListener', + value: function addTransitionListener(node, handle) { + if (node) { + var endListener = function endListener(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); } } - - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; + }, { + key: 'handleBackdropClick', + value: function handleBackdropClick() { + if (this.props.closeOnClick) { + this.hide(); } } - - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; + }, { + key: 'render', + value: function render() { + + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; + } } - } - - var backdrop = this.props.backdrop ? React.createElement('div', { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; - - if (willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); - } - return React.createElement( - 'span', - null, - React.createElement( - 'div', - { ref: 'modal', style: modalStyle, className: this.props.className }, - sharp, - React.createElement( - 'div', - { ref: 'content', tabIndex: '-1', style: contentStyle }, - this.props.children - ) - ), - backdrop - ); - }, - - leave: function leave() { - this.setState({ - hidden: true - }); - this.props.onHide(this.state.hideSource); - }, - - enter: function enter() { - this.props.onShow(); - }, - - show: function show() { - if (!this.hasHidden()) return; + if (this.props.backdropStyle) { + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (var style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; + } + } - this.setState({ - willHidden: false, - hidden: false - }); + if (this.props.contentStyle) { + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (var style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; + } + } - setTimeout(function () { - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - }, + var backdrop = this.props.backdrop ? React.createElement("div", { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; - hide: function hide(source) { - if (this.hasHidden()) return; + if (willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } - if (!source) { - source = "hide"; + return React.createElement("span", null, React.createElement("div", { ref: "modal", style: modalStyle, className: this.props.className }, sharp, React.createElement("div", { ref: "content", tabIndex: "-1", style: contentStyle }, this.props.children)), backdrop); } - - this.setState({ - hideSource: source, - willHidden: true - }); - }, - - toggle: function toggle() { - if (this.hasHidden()) this.show();else this.hide("toggle"); - }, - - listenKeyboard: function listenKeyboard(event) { - typeof this.props.keyboard == "function" ? this.props.keyboard(event) : this.closeOnEsc(event); - }, - - closeOnEsc: function closeOnEsc(event) { - if (this.props.keyboard && (event.key === "Escape" || event.keyCode === 27)) { - this.hide("keyboard"); + }, { + key: 'leave', + value: function leave() { + this.setState({ + hidden: true + }); + this.props.onHide(); } - }, - - componentDidMount: function componentDidMount() { - window.addEventListener("keydown", this.listenKeyboard, true); - }, - - componentWillUnmount: function componentWillUnmount() { - window.removeEventListener("keydown", this.listenKeyboard, true); - } - }); + }, { + key: 'enter', + value: function enter() { + this.props.onShow(); + } + }, { + key: 'show', + value: function show() { + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function () { + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + } + }, { + key: 'hide', + value: function hide() { + if (this.hasHidden()) return; + + this.setState({ + willHidden: true + }); + } + }, { + key: 'toggle', + value: function toggle() { + if (this.hasHidden()) this.show();else this.hide(); + } + }, { + key: 'listenKeyboard', + value: function listenKeyboard(event) { + if (this.props.keyboard && (event.key === "Escape" || event.keyCode === 27)) { + this.hide(); + } + } + }, { + key: 'componentDidMount', + value: function componentDidMount() { + window.addEventListener("keydown", this.listenKeyboard, true); + } + }, { + key: 'componentWillUnmount', + value: function componentWillUnmount() { + window.removeEventListener("keydown", this.listenKeyboard, true); + } + }]); + return Factory; + }(React.Component); + + ; + + Factory.propTypes = { + className: PropTypes.string, + // Close the modal when esc is pressed? Defaults to true. + keyboard: PropTypes.bool, + onShow: PropTypes.func, + onHide: PropTypes.func, + animation: PropTypes.object, + backdrop: PropTypes.bool, + closeOnClick: PropTypes.bool, + modalStyle: PropTypes.object, + backdropStyle: PropTypes.object, + contentStyle: PropTypes.object + }; + + Factory.defaultProps = { + className: "", + onShow: function onShow() {}, + onHide: function onHide() {}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {} + }; + + return Factory; }; diff --git a/package.json b/package.json index f150e7d..ffb503b 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,13 @@ { - "name": "beryllium", - "version": "0.3.0", + "name": "reboron", + "version": "0.3.2", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Jeremy Ayerst", "license": "MIT", "repository": { "type": "git", - "url": "https://github.com/jerairrest/boron.git" + "url": "https://github.com/jerairrest/reboron.git" }, "dependencies": { "domkit": "^0.0.1" diff --git a/src/modalFactory.js b/src/modalFactory.js index f8f26f1..3d96d66 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -1,190 +1,189 @@ var React = require('react'); var transitionEvents = require('domkit/transitionEvents'); var appendVendorPrefix = require('domkit/appendVendorPrefix'); -var PropTypes = require('prop-types') +var PropTypes = require('prop-types'); module.exports = function(animation){ - return React.createClass({ - propTypes: { - className: PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. - keyboard: PropTypes.bool, - onShow: PropTypes.func, - onHide: PropTypes.func, - animation: PropTypes.object, - backdrop: PropTypes.bool, - closeOnClick: PropTypes.bool, - modalStyle: PropTypes.object, - backdropStyle: PropTypes.object, - contentStyle: PropTypes.object, - }, - - getDefaultProps: function() { - return { - className: "", - onShow: function(){}, - onHide: function(){}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {}, - }; - }, - - getInitialState: function(){ - return { - willHidden: false, - hidden: true - }; - }, - - hasHidden: function(){ - return this.state.hidden; - }, - - addTransitionListener: function(node, handle){ - if (node) { - var endListener = function(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } - }, - - handleBackdropClick: function() { - if (this.props.closeOnClick) { - this.hide("backdrop"); - } - }, - - render: function() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; - } - } - - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; - } - } + class Factory extends React.Component { + constructor(props) { + super(props); + this.state = { + willHidden: false, + hidden: true + }; + + this.hasHidden = this.hasHidden.bind(this); + this.handleBackdropClick = this.handleBackdropClick.bind(this); + this.leave = this.leave.bind(this); + this.enter = this.enter.bind(this); + this.show = this.show.bind(this); + this.hide = this.hide.bind(this); + this.toggle = this.toggle.bind(this); + this.listenKeyboard = this.listenKeyboard.bind(this); + }; + + hasHidden() { + return this.state.hidden; + }; + + addTransitionListener(node, handle){ + if (node) { + var endListener = function(e) { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); + } + }; - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; - } + handleBackdropClick() { + if (this.props.closeOnClick) { + this.hide(); + } + }; + + render() { + + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; } + } - var backdrop = this.props.backdrop?
: undefined; - - if(willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); + if (this.props.backdropStyle) { + var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (var style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; } + } - return ( -
- {sharp} -
- {this.props.children} -
-
- {backdrop} -
) - ; - }, - - leave: function(){ - this.setState({ - hidden: true - }); - this.props.onHide(this.state.hideSource); - }, - - enter: function(){ - this.props.onShow(); - }, - - show: function(){ - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function(){ - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - }, - - hide: function(source){ - if (this.hasHidden()) return; - - if (!source) { - source = "hide"; + if (this.props.contentStyle) { + var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (var style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; } + } - this.setState({ - hideSource: source, - willHidden: true - }); - }, - - toggle: function(){ - if (this.hasHidden()) - this.show(); - else - this.hide("toggle"); - }, - - listenKeyboard: function(event) { - (typeof(this.props.keyboard)=="function") - ?this.props.keyboard(event) - :this.closeOnEsc(event); - }, - - closeOnEsc: function(event){ - if (this.props.keyboard && - (event.key === "Escape" || - event.keyCode === 27)) { - this.hide("keyboard"); - } - }, + var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; - componentDidMount: function(){ - window.addEventListener("keydown", this.listenKeyboard, true); - }, + if(willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } - componentWillUnmount: function() { - window.removeEventListener("keydown", this.listenKeyboard, true); + return (React.createElement("span", null, + React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, + sharp, + React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, + this.props.children + ) + ), + backdrop + )) + ; + }; + + leave() { + this.setState({ + hidden: true + }); + this.props.onHide(); + }; + + enter() { + this.props.onShow(); + }; + + show() { + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function(){ + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + }; + + hide() { + if (this.hasHidden()) return; + + this.setState({ + willHidden: true + }); + }; + + toggle() { + if (this.hasHidden()) + this.show(); + else + this.hide(); + }; + + listenKeyboard(event) { + if (this.props.keyboard && + (event.key === "Escape" || + event.keyCode === 27)) { + this.hide(); } - }); + }; + + componentDidMount() { + window.addEventListener("keydown", this.listenKeyboard, true); + }; + + componentWillUnmount() { + window.removeEventListener("keydown", this.listenKeyboard, true); + }; +}; + +Factory.propTypes = { + className: PropTypes.string, + // Close the modal when esc is pressed? Defaults to true. + keyboard: PropTypes.bool, + onShow: PropTypes.func, + onHide: PropTypes.func, + animation: PropTypes.object, + backdrop: PropTypes.bool, + closeOnClick: PropTypes.bool, + modalStyle: PropTypes.object, + backdropStyle: PropTypes.object, + contentStyle: PropTypes.object +}; + +Factory.defaultProps = { + className: "", + onShow: function(){}, + onHide: function(){}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {} +}; + +return Factory; }; \ No newline at end of file From 6ce30601d9a25e52066e73f7bf99ea39bd2a3f28 Mon Sep 17 00:00:00 2001 From: BrandonWade Date: Thu, 13 Jul 2017 21:41:14 -0500 Subject: [PATCH 11/18] Replace build shell script with npm script (#4) --- build.sh | 10 ---------- package.json | 11 +++++++++++ 2 files changed, 11 insertions(+), 10 deletions(-) delete mode 100644 build.sh diff --git a/build.sh b/build.sh deleted file mode 100644 index 826c694..0000000 --- a/build.sh +++ /dev/null @@ -1,10 +0,0 @@ -#/bin/sh - -babel src/Boron.js --out-file Boron.js -babel src/DropModal.js --out-file DropModal.js -babel src/FadeModal.js --out-file FadeModal.js -babel src/FlyModal.js --out-file FlyModal.js -babel src/modalFactory.js --out-file modalFactory.js -babel src/OutlineModal.js --out-file OutlineModal.js -babel src/ScaleModal.js --out-file ScaleModal.js -babel src/WaveModal.js --out-file WaveModal.js \ No newline at end of file diff --git a/package.json b/package.json index ffb503b..b8adfd6 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,17 @@ "type": "git", "url": "https://github.com/jerairrest/reboron.git" }, + "scripts": { + "build": "npm run boron & npm run drop & npm run fade & npm run fly & npm run factory & npm run outline & npm run scale & npm run wave", + "boron": "babel src/Boron.js --out-file Boron.js", + "drop": "babel src/DropModal.js --out-file DropModal.js", + "fade": "babel src/FadeModal.js --out-file FadeModal.js", + "fly": "babel src/FlyModal.js --out-file FlyModal.js", + "factory": "babel src/modalFactory.js --out-file modalFactory.js", + "outline": "babel src/OutlineModal.js --out-file OutlineModal.js", + "scale": "babel src/ScaleModal.js --out-file ScaleModal.js", + "wave": "babel src/WaveModal.js --out-file WaveModal.js" + }, "dependencies": { "domkit": "^0.0.1" }, From 9441091653cd7044ca875512d182bc19c4302e15 Mon Sep 17 00:00:00 2001 From: BrandonWade Date: Sat, 15 Jul 2017 13:30:37 -0500 Subject: [PATCH 12/18] Es6 update (#5) * Port modal files over to ES6. - Remove gulpfile - Rewrite modal JS files using ES6 syntax - Remove unneeded Boron files * Begin updating modalFactory to use ES6. * Readme update. * Minor Readme updates. * Another minor Readme update. --- Boron.js | 10 - DropModal.js | 233 +++++++++++----------- FadeModal.js | 177 +++++++++-------- FlyModal.js | 207 ++++++++++--------- OutlineModal.js | 278 +++++++++++++------------- README.md | 195 +++++++++--------- ScaleModal.js | 183 +++++++++-------- WaveModal.js | 467 ++++++++++++++++++++++--------------------- gulpfile.js | 323 ------------------------------ modalFactory.js | 401 +++++++++++++++++++------------------ package.json | 3 +- src/Boron.js | 8 - src/DropModal.js | 245 +++++++++++------------ src/FadeModal.js | 177 ++++++++--------- src/FlyModal.js | 207 ++++++++++--------- src/OutlineModal.js | 270 +++++++++++++------------ src/ScaleModal.js | 169 ++++++++-------- src/WaveModal.js | 471 ++++++++++++++++++++++---------------------- src/modalFactory.js | 245 ++++++++++++----------- 19 files changed, 1989 insertions(+), 2280 deletions(-) delete mode 100644 Boron.js delete mode 100644 gulpfile.js delete mode 100644 src/Boron.js diff --git a/Boron.js b/Boron.js deleted file mode 100644 index 754eb03..0000000 --- a/Boron.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -module.exports = { - DropModal: require('./DropModal'), - WaveModal: require('./WaveModal'), - FlyModal: require('./FlyModal'), - FadeModal: require('./FadeModal'), - ScaleModal: require('./ScaleModal'), - OutlineModal: require('./OutlineModal') -}; diff --git a/DropModal.js b/DropModal.js index 7fdbc7a..c46f43e 100644 --- a/DropModal.js +++ b/DropModal.js @@ -1,81 +1,88 @@ 'use strict'; -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' - }, +var _modalFactory = require('./modalFactory'); - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' - }, +var _modalFactory2 = _interopRequireDefault(_modalFactory); - showModalAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate(-50%, -300px)' - }, - '100%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - } - }), +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - hideModalAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - }, - '100%': { - opacity: 0, - transform: 'translate(-50%, 100px)' - } - }), +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }), +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate(0, -20px)' - }, - '100%': { - opacity: 1, - transform: 'translate(0, 0)' - } - }), +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate(0, 0)' - }, - '100%': { - opacity: 0, - transform: 'translate(0, 50px)' - } - }) +var animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' + }, + showModalAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0, + transform: 'translate(-50%, -300px)' + }, + '100%': { + opacity: 1, + transform: 'translate(-50%, -50%)' + } + }), + hideModalAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1, + transform: 'translate(-50%, -50%)' + }, + '100%': { + opacity: 0, + transform: 'translate(-50%, 100px)' + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }), + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0, + transform: 'translate(0, -20px)' + }, + '100%': { + opacity: 1, + transform: 'translate(0, 0)' + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1, + transform: 'translate(0, 0)' + }, + '100%': { + opacity: 0, + transform: 'translate(0, 50px)' + } + }) }; var showAnimation = animation.show; @@ -87,49 +94,49 @@ var hideBackdropAnimation = animation.hideBackdropAnimation; var showContentAnimation = animation.showContentAnimation; var hideContentAnimation = animation.hideContentAnimation; -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'modal'; - }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - width: "500px", - transform: "translate(-50%, -50%)", - top: "50%", - left: "50%", - backgroundColor: "white", - zIndex: 1050, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideModalAnimation : showModalAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - opacity: 0, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationDelay: '0.25s', - animationName: showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'modal'; + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + width: '500px', + transform: 'translate(-50%, -50%)', + top: '50%', + left: '50%', + backgroundColor: 'white', + zIndex: 1050, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideModalAnimation : showModalAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + opacity: 0, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationDelay: '0.25s', + animationName: showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/FadeModal.js b/FadeModal.js index acc6f97..694d6e5 100644 --- a/FadeModal.js +++ b/FadeModal.js @@ -1,53 +1,64 @@ 'use strict'; -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 1 - } - }), +var _modalFactory = require('./modalFactory'); + +var _modalFactory2 = _interopRequireDefault(_modalFactory); + +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0 - } - }), +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var animation = { + show: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 1 + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0 + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) }; var showAnimation = animation.show; @@ -57,43 +68,43 @@ var hideContentAnimation = animation.hideContentAnimation; var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%' + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/FlyModal.js b/FlyModal.js index 44a76b8..3b68226 100644 --- a/FlyModal.js +++ b/FlyModal.js @@ -1,68 +1,79 @@ 'use strict'; -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' - }, - hide: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate3d(calc(-100vw - 50%), 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(100px, 0, 0)' - }, - '100%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - } - }), +var _modalFactory = require('./modalFactory'); + +var _modalFactory2 = _interopRequireDefault(_modalFactory); + +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)' - }, - '100%': { - opacity: 0, - transform: 'translate3d(calc(100vw + 50%), 0, 0)' - } - }), +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '90%': { - opactiy: 0.9 - }, - '100%': { - opacity: 0 - } - }) +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var animation = { + show: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out' + }, + hide: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0, + transform: 'translate3d(calc(-100vw - 50%), 0, 0)' + }, + '50%': { + opacity: 1, + transform: 'translate3d(100px, 0, 0)' + }, + '100%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)' + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)' + }, + '50%': { + opacity: 1, + transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)' + }, + '100%': { + opacity: 0, + transform: 'translate3d(calc(100vw + 50%), 0, 0)' + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 + }, + '90%': { + opactiy: 0.9 + }, + '100%': { + opacity: 0 + } + }) }; var showAnimation = animation.show; @@ -72,43 +83,43 @@ var hideContentAnimation = animation.hideContentAnimation; var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%' + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/OutlineModal.js b/OutlineModal.js index 4095665..dceed3f 100644 --- a/OutlineModal.js +++ b/OutlineModal.js @@ -1,151 +1,161 @@ 'use strict'; -var React = require('react'); -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '0.8s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '40%': { - opacity: 0 - }, - '100%': { - opacity: 1 - } - }), +var _react = require('react'); - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0 - } - }), +var _react2 = _interopRequireDefault(_react); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _modalFactory = require('./modalFactory'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; +var _modalFactory2 = _interopRequireDefault(_modalFactory); -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getSharp: function getSharp(willHidden) { - var strokeDashLength = 1680; +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - var showSharpAnimation = insertKeyframesRule({ - '0%': { - 'stroke-dashoffset': strokeDashLength - }, - '100%': { - 'stroke-dashoffset': 0 - } - }); +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - var sharpStyle = { - position: 'absolute', - width: 'calc(100%)', - height: 'calc(100%)', - zIndex: '-1' - }; +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - var rectStyle = appendVendorPrefix({ - animationDuration: willHidden ? '0.4s' : '0.8s', - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showSharpAnimation, - stroke: '#ffffff', - strokeWidth: '2px', - strokeDasharray: strokeDashLength - }); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - return React.createElement( - 'div', - { style: sharpStyle }, - React.createElement( - 'svg', - { - xmlns: 'http://www.w3.org/2000/svg', - width: '100%', - height: '100%', - viewBox: '0 0 496 136', - preserveAspectRatio: 'none' }, - React.createElement('rect', { style: rectStyle, - x: '2', - y: '2', - fill: 'none', - width: '492', - height: '132' }) - ) - ); +var animation = { + show: { + animationDuration: '0.8s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '40%': { + opacity: 0 }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }); + '100%': { + opacity: 1 + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0 + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + '100%': { + opacity: 0 } + }) +}; + +var showAnimation = animation.show; +var hideAnimation = animation.hide; +var showContentAnimation = animation.showContentAnimation; +var hideContentAnimation = animation.hideContentAnimation; +var showBackdropAnimation = animation.showBackdropAnimation; +var hideBackdropAnimation = animation.hideBackdropAnimation; + +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getSharp: function getSharp(willHidden) { + var strokeDashLength = 1680; + var showSharpAnimation = (0, _insertKeyframesRule2.default)({ + '0%': { + 'stroke-dashoffset': strokeDashLength + }, + '100%': { + 'stroke-dashoffset': 0 + } + }); + var sharpStyle = { + position: 'absolute', + width: 'calc(100%)', + height: 'calc(100%)', + zIndex: '-1' + }; + var rectStyle = (0, _appendVendorPrefix2.default)({ + animationDuration: willHidden ? '0.4s' : '0.8s', + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showSharpAnimation, + stroke: '#ffffff', + strokeWidth: '2px', + strokeDasharray: strokeDashLength + }); + + return _react2.default.createElement( + 'div', + { style: sharpStyle }, + _react2.default.createElement( + 'svg', + { xmlns: 'http://www.w3.org/2000/svg', + width: '100%', + height: '100%', + viewBox: '0 0 496 136', + preserveAspectRatio: 'none' }, + _react2.default.createElement('rect', { style: rectStyle, + x: '2', + y: '2', + fill: 'none', + width: '492', + height: '132' }) + ) + ); + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%' + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/README.md b/README.md index 8b17039..cc90991 100644 --- a/README.md +++ b/README.md @@ -1,66 +1,57 @@ Reboron ===== - -# This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! - - A collection of dialog animations with React.js. -* React 0.15+ Use `boron 0.3` - -## Demo & Examples - -Live demo: [yuanyan.github.io/boron](http://yuanyan.github.io/boron/) - -To build the examples locally, run: - -``` -npm install -``` +* Demo - [yuanyan.github.io/boron](http://yuanyan.github.io/boron/) -Then open [`localhost:9999`](http://localhost:9999) in a browser. +## About +This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! ## Installation - The easiest way to use `reboron` is to install it from NPM and include it in your own React build process - - ``` npm install reboron --save ``` ## Usage - ``` javascript -var Modal = require('reboron/DropModal'); -var Example = React.createClass({ - showModal: function(){ - this.refs.modal.show(); - }, - hideModal: function(){ - this.refs.modal.hide(); - }, - - callback: function(event){ - console.log(event); - }, - - render: function() { - return ( -
- - -

I am a dialog

- -
-
- ); - } -}); +import React, { Component } from 'react'; +import Modal from 'reboron/DropModal'; + +class Example extends Component { + constructor(props) { + super(props); + } + + showModal() { + this.refs.modal.show(); + } + + hideModal() { + this.refs.modal.hide(); + } + + callback(evt) { + console.log(evt); + } + + render() { + return ( +
+ + +

I am a dialog

+ +
+
+ ); + } +} + +export default Example; ``` ## Props - * className - Add custom class name. * keyboard - Receive a callback function or a boolean to choose to close the modal when escape key is pressed. * backdrop - Includes a backdrop element. @@ -87,76 +78,85 @@ The values for the CSS properties will either add new properties or override the Modal with 80% width: ``` javascript -var Modal = require('reboron/ScaleModal'); +import React, { Component } from 'react'; +import Modal from 'reboron/ScaleModal'; // Style object -var modalStyle = { - width: '80%' +const modalStyle = { + width: '80%', }; -var Example = React.createClass({ - showModal: function(){ - this.refs.modal.show(); - }, - hideModal: function(){ - this.refs.modal.hide(); - }, - render: function() { - return ( -
- - -

I am a dialog

- -
-
- ); - } -}); +class Example extends Component { + showModal() { + this.refs.modal.show(); + } + + hideModal() { + this.refs.modal.hide(); + } + + render() { + return ( +
+ + +

I am a dialog

+ +
+
+ ); + } +} + +export default Example; ``` Red backdrop with a blue modal, rotated at 45 degrees: + ``` javascript -var Modal = require('reboron/FlyModal'); +import React, { Component } from 'react'; +import Modal from 'reboron/FlyModal'; // Individual styles for the modal, modal content, and backdrop -var modalStyle = { - transform: 'rotate(45deg) translateX(-50%)', +const modalStyle = { + transform: 'rotate(45deg) translateX(-50%)', }; -var backdropStyle = { - backgroundColor: 'red' +const backdropStyle = { + backgroundColor: 'red', }; -var contentStyle = { - backgroundColor: 'blue', - height: '100%' +const contentStyle = { + backgroundColor: 'blue', + height: '100%', }; -var Example = React.createClass({ - showModal: function(){ - this.refs.modal.show(); - }, - hideModal: function(){ - this.refs.modal.hide(); - }, - render: function() { - return ( -
- - -

I am a dialog

- -
-
- ); - } -}); +class Example extends Component { + showModal() { + this.refs.modal.show(); + } + + hideModal() { + this.refs.modal.hide(); + } + + render() { + return ( +
+ + +

I am a dialog

+ +
+
+ ); + } +} + +export default Example; ``` - ## Modals - * DropModal * FadeModal * FlyModal @@ -165,5 +165,4 @@ var Example = React.createClass({ * WaveModal ## License - Boron is [MIT licensed](./LICENSE). diff --git a/ScaleModal.js b/ScaleModal.js index dfbe85b..37f17ab 100644 --- a/ScaleModal.js +++ b/ScaleModal.js @@ -1,56 +1,67 @@ 'use strict'; -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'scale3d(0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'scale3d(1, 1, 1)' - } - }), +var _modalFactory = require('./modalFactory'); + +var _modalFactory2 = _interopRequireDefault(_modalFactory); + +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.5, 0.5, 1)' - } - }), +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0, + transform: 'scale3d(0, 0, 1)' + }, + '100%': { + opacity: 1, + transform: 'scale3d(1, 1, 1)' + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.5, 0.5, 1)' + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) }; var showAnimation = animation.show; @@ -60,43 +71,43 @@ var hideContentAnimation = animation.hideContentAnimation; var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%' + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/WaveModal.js b/WaveModal.js index 6350dec..efc1190 100644 --- a/WaveModal.js +++ b/WaveModal.js @@ -1,198 +1,209 @@ 'use strict'; -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var animation = { - show: { - animationDuration: '1s', - animationTimingFunction: 'linear' - }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '2.083333%': { - transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '4.166667%': { - transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '6.25%': { - transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '8.333333%': { - transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '10.416667%': { - transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '12.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '14.583333%': { - transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '16.666667%': { - transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '18.75%': { - transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '20.833333%': { - transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '22.916667%': { - transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '25%': { - transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '27.083333%': { - transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '29.166667%': { - transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '31.25%': { - transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '33.333333%': { - transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '35.416667%': { - transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '37.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '39.583333%': { - transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '41.666667%': { - transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '43.75%': { - transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '45.833333%': { - transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '47.916667%': { - transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '50%': { - opacity: 1, - transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '52.083333%': { - transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '54.166667%': { - transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '56.25%': { - transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '58.333333%': { - transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '60.416667%': { - transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '62.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '64.583333%': { - transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '66.666667%': { - transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '68.75%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '70.833333%': { - transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '72.916667%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '75%': { - transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '77.083333%': { - transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '79.166667%': { - transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '81.25%': { - transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '83.333333%': { - transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '85.416667%': { - transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '87.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '89.583333%': { - transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '91.666667%': { - transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '93.75%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '95.833333%': { - transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '97.916667%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - } - }), +var _modalFactory = require('./modalFactory'); + +var _modalFactory2 = _interopRequireDefault(_modalFactory); + +var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.8, 0.8, 1)' - } - }), +var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var animation = { + show: { + animationDuration: '1s', + animationTimingFunction: 'linear' + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out' + }, + showContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0, + transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '2.083333%': { + transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '4.166667%': { + transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '6.25%': { + transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '8.333333%': { + transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '10.416667%': { + transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '12.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '14.583333%': { + transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '16.666667%': { + transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '18.75%': { + transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '20.833333%': { + transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '22.916667%': { + transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '25%': { + transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '27.083333%': { + transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '29.166667%': { + transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '31.25%': { + transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '33.333333%': { + transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '35.416667%': { + transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '37.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '39.583333%': { + transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '41.666667%': { + transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '43.75%': { + transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '45.833333%': { + transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '47.916667%': { + transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '50%': { + opacity: 1, + transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '52.083333%': { + transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '54.166667%': { + transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '56.25%': { + transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '58.333333%': { + transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '60.416667%': { + transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '62.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '64.583333%': { + transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '66.666667%': { + transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '68.75%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '70.833333%': { + transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '72.916667%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '75%': { + transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '77.083333%': { + transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '79.166667%': { + transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '81.25%': { + transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '83.333333%': { + transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '85.416667%': { + transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '87.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '89.583333%': { + transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '91.666667%': { + transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '93.75%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '95.833333%': { + transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '97.916667%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + }, + '100%': { + opacity: 1, + transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' + } + }), + hideContentAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 1 + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.8, 0.8, 1)' + } + }), + showBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0 + }, + '100%': { + opacity: 0.9 + } + }), + hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ + '0%': { + opacity: 0.9 + }, + '100%': { + opacity: 0 + } + }) }; var showAnimation = animation.show; @@ -202,43 +213,43 @@ var hideContentAnimation = animation.hideContentAnimation; var showBackdropAnimation = animation.showBackdropAnimation; var hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } +exports.default = (0, _modalFactory2.default)({ + getRef: function getRef(willHidden) { + return 'content'; + }, + getModalStyle: function getModalStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%' + }); + }, + getBackdropStyle: function getBackdropStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + }, + getContentStyle: function getContentStyle(willHidden) { + return (0, _appendVendorPrefix2.default)({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction + }); + } }); diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 18ede95..0000000 --- a/gulpfile.js +++ /dev/null @@ -1,323 +0,0 @@ -var browserify = require('browserify'), - shim = require('browserify-shim'), - chalk = require('chalk'), - del = require('del'), - vinyPaths = require('vinyl-paths'), - gulp = require('gulp'), - bump = require('gulp-bump'), - connect = require('gulp-connect'), - deploy = require("gulp-gh-pages"), - git = require("gulp-git"), - less = require('gulp-less'), - rename = require('gulp-rename'), - streamify = require('gulp-streamify'), - uglify = require('gulp-uglify'), - gutil = require('gulp-util'), - merge = require('merge-stream'), - reactify = require('reactify'), - react = require('gulp-react'), - source = require('vinyl-source-stream'), - watchify = require('watchify'); - - -/** - * Constants - */ - -var SRC_PATH = 'src'; -var DIST_PATH = 'dist'; - -var COMPONENT_NAME = 'Boron'; -var PACKAGE_FILE = COMPONENT_NAME + '.js'; -var PACKAGE_NAME = COMPONENT_NAME.toLowerCase(); - -var DEPENDENCIES = ['react', 'react-dom']; - -var EXAMPLE_SRC_PATH = 'example/src'; -var EXAMPLE_DIST_PATH = 'example/dist'; - -var EXAMPLE_APP = 'app.js'; -var EXAMPLE_COPY = [ - 'node_modules/codemirror/lib/codemirror.js', - 'node_modules/codemirror/lib/codemirror.css', - 'node_modules/codemirror/mode/javascript/javascript.js', - 'node_modules/react/dist/JSXTransformer.js' -]; -var EXAMPLE_LESS = 'app.less'; -var EXAMPLE_FILES = [ - 'index.html' -]; - - -/** - * Bundle helpers - */ - -function doBundle(target, name, dest) { - return target.bundle() - .on('error', function(e) { - gutil.log('Browserify Error', e); - }) - .pipe(source(name)) - .pipe(gulp.dest(dest)) - .pipe(connect.reload()); -} - -function watchBundle(target, name, dest) { - return watchify(target) - .on('update', function (scriptIds) { - scriptIds = scriptIds - .filter(function(i) { return i.substr(0,2) !== './' }) - .map(function(i) { return chalk.blue(i.replace(__dirname, '')) }); - if (scriptIds.length > 1) { - gutil.log(scriptIds.length + ' Scripts updated:\n* ' + scriptIds.join('\n* ') + '\nrebuilding...'); - } else { - gutil.log(scriptIds[0] + ' updated, rebuilding...'); - } - doBundle(target, name, dest); - }) - .on('time', function (time) { - gutil.log(chalk.green(name + ' built in ' + (Math.round(time / 10) / 100) + 's')); - }); -} - - -/** - * Prepare task for examples - */ - -gulp.task('clean:examples', function(done) { - del([EXAMPLE_DIST_PATH], done); -}); - - -/** - * Build example files - */ -gulp.task('build:example:files', function buildExampleFiles() { - return gulp.src(EXAMPLE_FILES.map(function(i) { return EXAMPLE_SRC_PATH + '/' + i })) - .pipe(gulp.dest(EXAMPLE_DIST_PATH)) - .pipe(connect.reload()); -}); - - -/** - * Build example css from less - */ -gulp.task('build:example:css', function buildExampleCSS() { - return gulp.src(EXAMPLE_SRC_PATH + '/' + EXAMPLE_LESS) - .pipe(less()) - .pipe(gulp.dest(EXAMPLE_DIST_PATH)) - .pipe(connect.reload()); -}); - - -/** - * Build example scripts - * - * Returns a gulp task with watchify when in development mode - */ - -function buildExampleScripts(dev) { - - var dest = EXAMPLE_DIST_PATH; - - var opts = dev ? watchify.args : {}; - opts.debug = dev ? true : false; - opts.hasExports = true; - - return function() { - - var common = browserify(opts), - bundle = browserify(opts).require('./' + SRC_PATH + '/' + PACKAGE_FILE, { expose: PACKAGE_NAME }), - example = browserify(opts).exclude(PACKAGE_NAME).add('./' + EXAMPLE_SRC_PATH + '/' + EXAMPLE_APP); - - DEPENDENCIES.forEach(function(pkg) { - common.require(pkg); - bundle.exclude(pkg); - example.exclude(pkg); - }); - - if (dev) { - watchBundle(common, 'common.js', dest); - watchBundle(bundle, 'bundle.js', dest); - watchBundle(example, 'app.js', dest); - } - - return merge( - doBundle(common, 'common.js', dest), - doBundle(bundle, 'bundle.js', dest), - doBundle(example, 'app.js', dest) - ); - - } - -}; - - -gulp.task('dev:build:example:scripts', buildExampleScripts(true)); -gulp.task('build:example:scripts', buildExampleScripts()); - -gulp.task('build:example:copy', function(){ - return gulp.src(EXAMPLE_COPY) - .pipe(gulp.dest(EXAMPLE_DIST_PATH)) - .pipe(connect.reload()); -}); - -/** - * Build examples - */ -gulp.task('build:examples', [ - 'build:example:files', - 'build:example:css', - 'build:example:scripts', - 'build:example:copy' -]); - -gulp.task('watch:examples', [ - 'build:example:files', - 'build:example:css', - 'dev:build:example:scripts', - 'build:example:copy' -], function() { - gulp.watch(EXAMPLE_FILES.map(function(i) { return EXAMPLE_SRC_PATH + '/' + i }), ['build:example:files']); - gulp.watch([EXAMPLE_SRC_PATH + '/' + EXAMPLE_LESS], ['build:example:css']); -}); - - -/** - * Serve task for local development - */ - -gulp.task('dev:server', function() { - connect.server({ - root: 'example/dist', - port: 9999, - livereload: true - }); -}); - -/** - * Development task - */ - -gulp.task('dev', [ - 'dev:server', - 'watch:examples' -]); - - -/** - * Build task - */ - -gulp.task('clean:dist', function(done) { - del([DIST_PATH], done); -}); - -gulp.task('build:dist', function() { - - var standalone = browserify('./' + SRC_PATH + '/' + PACKAGE_FILE, { - standalone: COMPONENT_NAME - }) - .transform(reactify) - .transform(shim); - - DEPENDENCIES.forEach(function(pkg) { - standalone.exclude(pkg); - }); - - return standalone.bundle() - .on('error', function(e) { - gutil.log('Browserify Error', e); - }) - .pipe(source(PACKAGE_NAME + '.js')) - .pipe(gulp.dest(DIST_PATH)) - .pipe(rename(PACKAGE_NAME + '.min.js')) - .pipe(streamify(uglify())) - .pipe(gulp.dest(DIST_PATH)); - -}); - -gulp.task('build', [ - 'clean:dist', -], function(){ - gulp.start('build:dist', 'build:examples') -}); - - -/** - * Version bump tasks - */ - -function getBumpTask(type) { - return function() { - return gulp.src(['./package.json']) - .pipe(bump({ type: type })) - .pipe(gulp.dest('./')); - }; -} - -gulp.task('bump', getBumpTask('patch')); -gulp.task('bump:minor', getBumpTask('minor')); -gulp.task('bump:major', getBumpTask('major')); - - -/** - * Git tag task - * (version *must* be bumped first) - */ - -gulp.task('publish:tag', function(done) { - var pkg = require('./package.json'); - var v = 'v' + pkg.version; - var message = 'Release ' + v; - - git.tag(v, message, function (err) { - if (err) throw err; - git.push('origin', v, function (err) { - if (err) throw err; - done(); - }); - }); -}); - - - -/** - * npm publish task - * * (version *must* be bumped first) - */ -function buildToRoot(){ - return gulp.src(SRC_PATH + '/*.js') - .pipe(react()) - .pipe(gulp.dest('./')) -} - -gulp.task('build:npm', buildToRoot); - -gulp.task('publish:npm', ['build:npm'], function(done) { - - require('child_process') - .spawn('npm', ['publish'], { stdio: 'inherit' }) - .on('close', done); -}); - -gulp.task('clean:npm', function () { - buildToRoot().pipe(vinyPaths(del)) -}) - -gulp.task('release:npm', ['publish:npm'], function(){ - gulp.start('clean:npm') -}); - - -/** - * Deploy tasks - */ - -gulp.task('publish:examples', ['build:examples'], function() { - return gulp.src(EXAMPLE_DIST_PATH + '/**/*').pipe(deploy()); -}); - -gulp.task('release', ['publish:tag', 'release:npm', 'publish:examples']); diff --git a/modalFactory.js b/modalFactory.js index 3900c4e..68289c4 100644 --- a/modalFactory.js +++ b/modalFactory.js @@ -1,5 +1,9 @@ 'use strict'; +Object.defineProperty(exports, "__esModule", { + value: true +}); + var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); @@ -20,202 +24,215 @@ var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); +var _react = require('react'); + +var _react2 = _interopRequireDefault(_react); + +var _transitionEvents = require('domkit/transitionEvents'); + +var _transitionEvents2 = _interopRequireDefault(_transitionEvents); + +var _appendVendorPrefix = require('domkit/appendVendorPrefix'); + +var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); + +var _propTypes = require('prop-types'); + +var _propTypes2 = _interopRequireDefault(_propTypes); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var React = require('react'); -var transitionEvents = require('domkit/transitionEvents'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); -var PropTypes = require('prop-types'); - -module.exports = function (animation) { - var Factory = function (_React$Component) { - (0, _inherits3.default)(Factory, _React$Component); - - function Factory(props) { - (0, _classCallCheck3.default)(this, Factory); - - var _this = (0, _possibleConstructorReturn3.default)(this, (Factory.__proto__ || (0, _getPrototypeOf2.default)(Factory)).call(this, props)); - - _this.state = { - willHidden: false, - hidden: true - }; - - _this.hasHidden = _this.hasHidden.bind(_this); - _this.handleBackdropClick = _this.handleBackdropClick.bind(_this); - _this.leave = _this.leave.bind(_this); - _this.enter = _this.enter.bind(_this); - _this.show = _this.show.bind(_this); - _this.hide = _this.hide.bind(_this); - _this.toggle = _this.toggle.bind(_this); - _this.listenKeyboard = _this.listenKeyboard.bind(_this); - return _this; +exports.default = function (animation) { + var Factory = function (_Component) { + (0, _inherits3.default)(Factory, _Component); + + function Factory(props) { + (0, _classCallCheck3.default)(this, Factory); + + var _this = (0, _possibleConstructorReturn3.default)(this, (Factory.__proto__ || (0, _getPrototypeOf2.default)(Factory)).call(this, props)); + + _this.state = { + willHidden: false, + hidden: true + }; + + _this.hasHidden = _this.hasHidden.bind(_this); + _this.handleBackdropClick = _this.handleBackdropClick.bind(_this); + _this.leave = _this.leave.bind(_this); + _this.enter = _this.enter.bind(_this); + _this.show = _this.show.bind(_this); + _this.hide = _this.hide.bind(_this); + _this.toggle = _this.toggle.bind(_this); + _this.listenKeyboard = _this.listenKeyboard.bind(_this); + return _this; + } + + (0, _createClass3.default)(Factory, [{ + key: 'hasHidden', + value: function hasHidden() { + return this.state.hidden; + } + }, { + key: 'addTransitionListener', + value: function addTransitionListener(node, handle) { + if (node) { + var endListener = function endListener(e) { + if (e && e.target !== node) { + return; + } + _transitionEvents2.default.removeEndEventListener(node, endListener); + handle(); + }; + _transitionEvents2.default.addEndEventListener(node, endListener); + } + } + }, { + key: 'handleBackdropClick', + value: function handleBackdropClick() { + if (this.props.closeOnClick) { + this.hide(); + } + } + }, { + key: 'render', + value: function render() { + var hidden = this.hasHidden(); + if (hidden) return null; + + var willHidden = this.state.willHidden; + var animation = this.props.animation; + var modalStyle = animation.getModalStyle(willHidden); + var backdropStyle = animation.getBackdropStyle(willHidden); + var contentStyle = animation.getContentStyle(willHidden); + var ref = animation.getRef(willHidden); + var sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + var prefixedModalStyle = (0, _appendVendorPrefix2.default)(this.props.modalStyle); + for (var style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; + } } - (0, _createClass3.default)(Factory, [{ - key: 'hasHidden', - value: function hasHidden() { - return this.state.hidden; - } - }, { - key: 'addTransitionListener', - value: function addTransitionListener(node, handle) { - if (node) { - var endListener = function endListener(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } - } - }, { - key: 'handleBackdropClick', - value: function handleBackdropClick() { - if (this.props.closeOnClick) { - this.hide(); - } - } - }, { - key: 'render', - value: function render() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; - } - } - - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; - } - } - - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; - } - } - - var backdrop = this.props.backdrop ? React.createElement("div", { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; - - if (willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); - } - - return React.createElement("span", null, React.createElement("div", { ref: "modal", style: modalStyle, className: this.props.className }, sharp, React.createElement("div", { ref: "content", tabIndex: "-1", style: contentStyle }, this.props.children)), backdrop); - } - }, { - key: 'leave', - value: function leave() { - this.setState({ - hidden: true - }); - this.props.onHide(); - } - }, { - key: 'enter', - value: function enter() { - this.props.onShow(); - } - }, { - key: 'show', - value: function show() { - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function () { - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - } - }, { - key: 'hide', - value: function hide() { - if (this.hasHidden()) return; - - this.setState({ - willHidden: true - }); - } - }, { - key: 'toggle', - value: function toggle() { - if (this.hasHidden()) this.show();else this.hide(); - } - }, { - key: 'listenKeyboard', - value: function listenKeyboard(event) { - if (this.props.keyboard && (event.key === "Escape" || event.keyCode === 27)) { - this.hide(); - } - } - }, { - key: 'componentDidMount', - value: function componentDidMount() { - window.addEventListener("keydown", this.listenKeyboard, true); - } - }, { - key: 'componentWillUnmount', - value: function componentWillUnmount() { - window.removeEventListener("keydown", this.listenKeyboard, true); - } - }]); - return Factory; - }(React.Component); - - ; - - Factory.propTypes = { - className: PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. - keyboard: PropTypes.bool, - onShow: PropTypes.func, - onHide: PropTypes.func, - animation: PropTypes.object, - backdrop: PropTypes.bool, - closeOnClick: PropTypes.bool, - modalStyle: PropTypes.object, - backdropStyle: PropTypes.object, - contentStyle: PropTypes.object - }; - - Factory.defaultProps = { - className: "", - onShow: function onShow() {}, - onHide: function onHide() {}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {} - }; + if (this.props.backdropStyle) { + var prefixedBackdropStyle = (0, _appendVendorPrefix2.default)(this.props.backdropStyle); + for (var _style in prefixedBackdropStyle) { + backdropStyle[_style] = prefixedBackdropStyle[_style]; + } + } + + if (this.props.contentStyle) { + var prefixedContentStyle = (0, _appendVendorPrefix2.default)(this.props.contentStyle); + for (var _style2 in prefixedContentStyle) { + contentStyle[_style2] = prefixedContentStyle[_style2]; + } + } + + var backdrop = this.props.backdrop ? _react2.default.createElement('div', { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; + if (willHidden) { + var node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } + + return _react2.default.createElement('span', null, _react2.default.createElement('div', { ref: 'modal', style: modalStyle, className: this.props.className }, sharp, _react2.default.createElement('div', { ref: 'content', tabIndex: '-1', style: contentStyle }, this.props.children)), backdrop); + } + }, { + key: 'leave', + value: function leave() { + this.setState({ + hidden: true + }); + this.props.onHide(); + } + }, { + key: 'enter', + value: function enter() { + this.props.onShow(); + } + }, { + key: 'show', + value: function show() { + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function () { + var ref = this.props.animation.getRef(); + var node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); + } + }, { + key: 'hide', + value: function hide() { + if (this.hasHidden()) return; + + this.setState({ + willHidden: true + }); + } + }, { + key: 'toggle', + value: function toggle() { + if (this.hasHidden()) { + this.show(); + } else { + this.hide(); + } + } + }, { + key: 'listenKeyboard', + value: function listenKeyboard(event) { + if (this.props.keyboard && (event.key === 'Escape' || event.keyCode === 27)) { + this.hide(); + } + } + }, { + key: 'componentDidMount', + value: function componentDidMount() { + window.addEventListener('keydown', this.listenKeyboard, true); + } + }, { + key: 'componentWillUnmount', + value: function componentWillUnmount() { + window.removeEventListener('keydown', this.listenKeyboard, true); + } + }]); return Factory; + }(_react.Component); + + ; + + Factory.propTypes = { + className: _propTypes2.default.string, + keyboard: _propTypes2.default.bool, + onShow: _propTypes2.default.func, + onHide: _propTypes2.default.func, + animation: _propTypes2.default.object, + backdrop: _propTypes2.default.bool, + closeOnClick: _propTypes2.default.bool, + modalStyle: _propTypes2.default.object, + backdropStyle: _propTypes2.default.object, + contentStyle: _propTypes2.default.object + }; + + Factory.defaultProps = { + className: '', + onShow: function onShow() {}, + onHide: function onHide() {}, + animation: animation, + keyboard: true, + backdrop: true, + closeOnClick: true, + modalStyle: {}, + backdropStyle: {}, + contentStyle: {} + }; + + return Factory; }; diff --git a/package.json b/package.json index b8adfd6..075c344 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,7 @@ "url": "https://github.com/jerairrest/reboron.git" }, "scripts": { - "build": "npm run boron & npm run drop & npm run fade & npm run fly & npm run factory & npm run outline & npm run scale & npm run wave", - "boron": "babel src/Boron.js --out-file Boron.js", + "build": "npm run drop & npm run fade & npm run fly & npm run factory & npm run outline & npm run scale & npm run wave", "drop": "babel src/DropModal.js --out-file DropModal.js", "fade": "babel src/FadeModal.js --out-file FadeModal.js", "fly": "babel src/FlyModal.js --out-file FlyModal.js", diff --git a/src/Boron.js b/src/Boron.js deleted file mode 100644 index 6613611..0000000 --- a/src/Boron.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - DropModal: require('./DropModal'), - WaveModal: require('./WaveModal'), - FlyModal: require('./FlyModal'), - FadeModal: require('./FadeModal'), - ScaleModal: require('./ScaleModal'), - OutlineModal: require('./OutlineModal'), -} diff --git a/src/DropModal.js b/src/DropModal.js index f271777..e50b1a6 100644 --- a/src/DropModal.js +++ b/src/DropModal.js @@ -1,133 +1,126 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' +const animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)', + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)', + }, + showModalAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate(-50%, -300px)', }, - - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' + '100%': { + opacity: 1, + transform: 'translate(-50%, -50%)', }, - - showModalAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate(-50%, -300px)' - }, - '100%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - } - }), - - hideModalAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - }, - '100%': { - opacity: 0, - transform: 'translate(-50%, 100px)' - } - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }), - - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate(0, -20px)' - }, - '100%': { - opacity: 1, - transform: 'translate(0, 0)' - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate(0, 0)' - }, - '100%': { - opacity: 0, - transform: 'translate(0, 50px)' - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showModalAnimation = animation.showModalAnimation; -var hideModalAnimation = animation.hideModalAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; - -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'modal'; + }), + hideModalAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate(-50%, -50%)', }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - width: "500px", - transform: "translate(-50%, -50%)", - top: "50%", - left: "50%", - backgroundColor: "white", - zIndex: 1050, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideModalAnimation : showModalAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) + '100%': { + opacity: 0, + transform: 'translate(-50%, 100px)', }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - opacity: 0, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationDelay: '0.25s', - animationName: showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } + '100%': { + opacity: 0.9, + }, + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, + }, + '100%': { + opacity: 0, + }, + }), + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate(0, -20px)', + }, + '100%': { + opacity: 1, + transform: 'translate(0, 0)', + }, + }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate(0, 0)', + }, + '100%': { + opacity: 0, + transform: 'translate(0, 50px)', + }, + }), +}; + +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showModalAnimation = animation.showModalAnimation; +const hideModalAnimation = animation.hideModalAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; + +export default modalFactory({ + getRef: (willHidden) => { + return 'modal'; + }, + getModalStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + width: '500px', + transform: 'translate(-50%, -50%)', + top: '50%', + left: '50%', + backgroundColor: 'white', + zIndex: 1050, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideModalAnimation : showModalAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getBackdropStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getContentStyle: (willHidden) => { + return appendVendorPrefix({ + margin: 0, + opacity: 0, + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationDelay: '0.25s', + animationName: showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/FadeModal.js b/src/FadeModal.js index 02099d8..64f5603 100644 --- a/src/FadeModal.js +++ b/src/FadeModal.js @@ -1,97 +1,94 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' +const animation = { + show: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out', + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out', + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' + '100%': { + opacity: 1, }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 1 - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0 - } - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'content'; + }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) + '100%': { + opacity: 0, }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } + '100%': { + opacity: 0.9, + }, + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, + }, + '100%': { + opacity: 0, + }, + }), +}; + +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; + +export default modalFactory({ + getRef: (willHidden) => { + return 'content'; + }, + getModalStyle: (willHidden) => { + return appendVendorPrefix({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%', + }); + }, + getBackdropStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getContentStyle: (willHidden) => { + return appendVendorPrefix({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/FlyModal.js b/src/FlyModal.js index a0225c9..01681fc 100644 --- a/src/FlyModal.js +++ b/src/FlyModal.js @@ -1,112 +1,109 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' +const animation = { + show: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out', + }, + hide: { + animationDuration: '0.5s', + animationTimingFunction: 'ease-out', + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'translate3d(calc(-100vw - 50%), 0, 0)', }, - hide: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' + '50%': { + opacity: 1, + transform: 'translate3d(100px, 0, 0)', }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'translate3d(calc(-100vw - 50%), 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(100px, 0, 0)' - }, - '100%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)' - }, - '100%': { - opacity: 0, - transform: 'translate3d(calc(100vw + 50%), 0, 0)' - }, - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '90%': { - opactiy: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'content'; + '100%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)', + }, + }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + transform: 'translate3d(0, 0, 0)', + }, + '50%': { + opacity: 1, + transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)', }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) + '100%': { + opacity: 0, + transform: 'translate3d(calc(100vw + 50%), 0, 0)', }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } + '100%': { + opacity: 0.9, + }, + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, + }, + '90%': { + opactiy: 0.9, + }, + '100%': { + opacity: 0, + }, + }), +}; + +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; + +export default modalFactory({ + getRef: (willHidden) => { + return 'content'; + }, + getModalStyle: (willHidden) => { + return appendVendorPrefix({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%', + }); + }, + getBackdropStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getContentStyle: (willHidden) => { + return appendVendorPrefix({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/OutlineModal.js b/src/OutlineModal.js index b50a5fe..32dbba7 100644 --- a/src/OutlineModal.js +++ b/src/OutlineModal.js @@ -1,146 +1,140 @@ -var React = require('react'); -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import React from 'react'; +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '0.8s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' +const animation = { + show: { + animationDuration: '0.8s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)', + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out', + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' + '40%':{ + opacity: 0, }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - }, - '40%':{ - opacity: 0 - }, - '100%': { - opacity: 1, - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - } - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'content'; + '100%': { + opacity: 1, }, - getSharp: function(willHidden) { - var strokeDashLength = 1680; - - var showSharpAnimation = insertKeyframesRule({ - '0%': { - 'stroke-dashoffset': strokeDashLength - }, - '100%': { - 'stroke-dashoffset': 0 - }, - }); - - - var sharpStyle = { - position: 'absolute', - width: 'calc(100%)', - height: 'calc(100%)', - zIndex: '-1' - }; - - var rectStyle = appendVendorPrefix({ - animationDuration: willHidden? '0.4s' :'0.8s', - animationFillMode: 'forwards', - animationName: willHidden? hideContentAnimation: showSharpAnimation, - stroke: '#ffffff', - strokeWidth: '2px', - strokeDasharray: strokeDashLength - }); - - return
- - - -
+ }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + }, + '100%': { + opacity: 0, + }, + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + }, + '100%': { + opacity: 0.9, }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + '100%': { + opacity: 0, }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } + }), +}; + +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; + +export default modalFactory({ + getRef: (willHidden) => { + return 'content'; + }, + getSharp: (willHidden) => { + const strokeDashLength = 1680; + const showSharpAnimation = insertKeyframesRule({ + '0%': { + 'stroke-dashoffset': strokeDashLength, + }, + '100%': { + 'stroke-dashoffset': 0, + }, + }); + const sharpStyle = { + position: 'absolute', + width: 'calc(100%)', + height: 'calc(100%)', + zIndex: '-1', + }; + const rectStyle = appendVendorPrefix({ + animationDuration: willHidden? '0.4s' :'0.8s', + animationFillMode: 'forwards', + animationName: willHidden? hideContentAnimation: showSharpAnimation, + stroke: '#ffffff', + strokeWidth: '2px', + strokeDasharray: strokeDashLength, + }); + + return ( +
+ + + +
+ ); + }, + getModalStyle: (willHidden) => { + return appendVendorPrefix({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%', + }) + }, + getBackdropStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getContentStyle: (willHidden) => { + return appendVendorPrefix({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/ScaleModal.js b/src/ScaleModal.js index b945b5f..e345817 100644 --- a/src/ScaleModal.js +++ b/src/ScaleModal.js @@ -1,100 +1,97 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' +const animation = { + show: { + animationDuration: '0.4s', + animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)', + }, + hide: { + animationDuration: '0.4s', + animationTimingFunction: 'ease-out', + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'scale3d(0, 0, 1)', }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' + '100%': { + opacity: 1, + transform: 'scale3d(1, 1, 1)', }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'scale3d(0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'scale3d(1, 1, 1)' - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.5, 0.5, 1)' - } - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) + }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.5, 0.5, 1)', + }, + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + }, + '100%': { + opacity: 0.9, + }, + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, + }, + '100%': { + opacity: 0, + }, + }), }; -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ +export default modalFactory({ getRef: function(willHidden) { - return 'content'; + return 'content'; }, getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) + return appendVendorPrefix({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%', + }); }, getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.4s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); }, getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } + return appendVendorPrefix({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/WaveModal.js b/src/WaveModal.js index 987b9c5..336be75 100644 --- a/src/WaveModal.js +++ b/src/WaveModal.js @@ -1,242 +1,239 @@ -var modalFactory = require('./modalFactory'); -var insertKeyframesRule = require('domkit/insertKeyframesRule'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); +import modalFactory from './modalFactory'; +import insertKeyframesRule from 'domkit/insertKeyframesRule'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; -var animation = { - show: { - animationDuration: '1s', - animationTimingFunction: 'linear' - }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 0, - transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '2.083333%': { - transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '4.166667%': { - transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '6.25%': { - transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '8.333333%': { - transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '10.416667%': { - transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '12.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '14.583333%': { - transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '16.666667%': { - transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '18.75%': { - transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '20.833333%': { - transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '22.916667%': { - transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '25%': { - transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '27.083333%': { - transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '29.166667%': { - transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '31.25%': { - transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '33.333333%': { - transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '35.416667%': { - transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '37.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '39.583333%': { - transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '41.666667%': { - transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '43.75%': { - transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '45.833333%': { - transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '47.916667%': { - transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '50%': { - opacity: 1, - transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '52.083333%': { - transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '54.166667%': { - transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '56.25%': { - transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '58.333333%': { - transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '60.416667%': { - transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '62.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '64.583333%': { - transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '66.666667%': { - transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '68.75%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '70.833333%': { - transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '72.916667%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '75%': { - transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '77.083333%': { - transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '79.166667%': { - transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '81.25%': { - transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '83.333333%': { - transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '85.416667%': { - transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '87.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '89.583333%': { - transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '91.666667%': { - transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '93.75%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '95.833333%': { - transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '97.916667%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - } - }), - - hideContentAnimation: insertKeyframesRule({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.8, 0.8, 1)' - }, - }), - - showBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - }, - }), - - hideBackdropAnimation: insertKeyframesRule({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) +const animation = { + show: { + animationDuration: '1s', + animationTimingFunction: 'linear', + }, + hide: { + animationDuration: '0.3s', + animationTimingFunction: 'ease-out', + }, + showContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '2.083333%': { + transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '4.166667%': { + transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '6.25%': { + transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '8.333333%': { + transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '10.416667%': { + transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '12.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '14.583333%': { + transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '16.666667%': { + transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '18.75%': { + transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '20.833333%': { + transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '22.916667%': { + transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '25%': { + transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '27.083333%': { + transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '29.166667%': { + transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '31.25%': { + transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '33.333333%': { + transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '35.416667%': { + transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '37.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '39.583333%': { + transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '41.666667%': { + transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '43.75%': { + transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '45.833333%': { + transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '47.916667%': { + transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '50%': { + opacity: 1, + transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '52.083333%': { + transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '54.166667%': { + transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '56.25%': { + transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '58.333333%': { + transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '60.416667%': { + transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '62.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '64.583333%': { + transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '66.666667%': { + transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '68.75%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '70.833333%': { + transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '72.916667%': { + transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '75%': { + transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '77.083333%': { + transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '79.166667%': { + transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '81.25%': { + transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '83.333333%': { + transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '85.416667%': { + transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '87.5%': { + transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '89.583333%': { + transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '91.666667%': { + transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '93.75%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '95.833333%': { + transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '97.916667%': { + transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + '100%': { + opacity: 1, + transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)', + }, + }), + hideContentAnimation: insertKeyframesRule({ + '0%': { + opacity: 1, + }, + '100%': { + opacity: 0, + transform: 'scale3d(0.8, 0.8, 1)', + }, + }), + showBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0, + }, + '100%': { + opacity: 0.9, + }, + }), + hideBackdropAnimation: insertKeyframesRule({ + '0%': { + opacity: 0.9, + }, + '100%': { + opacity: 0, + }, + }), }; -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; +const showAnimation = animation.show; +const hideAnimation = animation.hide; +const showContentAnimation = animation.showContentAnimation; +const hideContentAnimation = animation.hideContentAnimation; +const showBackdropAnimation = animation.showBackdropAnimation; +const hideBackdropAnimation = animation.hideBackdropAnimation; -module.exports = modalFactory({ - getRef: function(willHidden) { - return 'content'; - }, - getModalStyle: function(willHidden) { - return appendVendorPrefix({ - zIndex: 1050, - position: "fixed", - width: "500px", - transform: "translate3d(-50%, -50%, 0)", - top: "50%", - left: "50%" - }) - }, - getBackdropStyle: function(willHidden) { - return appendVendorPrefix({ - position: "fixed", - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: "#373A47", - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function(willHidden) { - return appendVendorPrefix({ - margin: 0, - backgroundColor: "white", - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }) - } +export default modalFactory({ + getRef: (willHidden) => { + return 'content'; + }, + getModalStyle: (willHidden) => { + return appendVendorPrefix({ + zIndex: 1050, + position: 'fixed', + width: '500px', + transform: 'translate3d(-50%, -50%, 0)', + top: '50%', + left: '50%', + }); + }, + getBackdropStyle: (willHidden) => { + return appendVendorPrefix({ + position: 'fixed', + top: 0, + right: 0, + bottom: 0, + left: 0, + zIndex: 1040, + backgroundColor: '#373A47', + animationFillMode: 'forwards', + animationDuration: '0.3s', + animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, + getContentStyle: (willHidden) => { + return appendVendorPrefix({ + margin: 0, + backgroundColor: 'white', + animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, + animationFillMode: 'forwards', + animationName: willHidden ? hideContentAnimation : showContentAnimation, + animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction, + }); + }, }); diff --git a/src/modalFactory.js b/src/modalFactory.js index 3d96d66..1ec4090 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -1,166 +1,165 @@ -var React = require('react'); -var transitionEvents = require('domkit/transitionEvents'); -var appendVendorPrefix = require('domkit/appendVendorPrefix'); -var PropTypes = require('prop-types'); +import React, { Component } from 'react'; +import transitionEvents from 'domkit/transitionEvents'; +import appendVendorPrefix from 'domkit/appendVendorPrefix'; +import PropTypes from 'prop-types'; -module.exports = function(animation){ - - class Factory extends React.Component { +export default (animation) => { + class Factory extends Component { constructor(props) { - super(props); - this.state = { - willHidden: false, - hidden: true - }; - - this.hasHidden = this.hasHidden.bind(this); - this.handleBackdropClick = this.handleBackdropClick.bind(this); - this.leave = this.leave.bind(this); - this.enter = this.enter.bind(this); - this.show = this.show.bind(this); - this.hide = this.hide.bind(this); - this.toggle = this.toggle.bind(this); - this.listenKeyboard = this.listenKeyboard.bind(this); + super(props); + this.state = { + willHidden: false, + hidden: true + }; + + this.hasHidden = this.hasHidden.bind(this); + this.handleBackdropClick = this.handleBackdropClick.bind(this); + this.leave = this.leave.bind(this); + this.enter = this.enter.bind(this); + this.show = this.show.bind(this); + this.hide = this.hide.bind(this); + this.toggle = this.toggle.bind(this); + this.listenKeyboard = this.listenKeyboard.bind(this); }; hasHidden() { - return this.state.hidden; + return this.state.hidden; }; - addTransitionListener(node, handle){ - if (node) { - var endListener = function(e) { - if (e && e.target !== node) { - return; - } - transitionEvents.removeEndEventListener(node, endListener); - handle(); - }; - transitionEvents.addEndEventListener(node, endListener); - } + addTransitionListener(node, handle) { + if (node) { + const endListener = (e) => { + if (e && e.target !== node) { + return; + } + transitionEvents.removeEndEventListener(node, endListener); + handle(); + }; + transitionEvents.addEndEventListener(node, endListener); + } }; handleBackdropClick() { - if (this.props.closeOnClick) { - this.hide(); - } + if (this.props.closeOnClick) { + this.hide(); + } }; render() { - - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; - } - } - - if (this.props.backdropStyle) { - var prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); - for (var style in prefixedBackdropStyle) { - backdropStyle[style] = prefixedBackdropStyle[style]; - } + const hidden = this.hasHidden(); + if (hidden) return null; + + const willHidden = this.state.willHidden; + const animation = this.props.animation; + const modalStyle = animation.getModalStyle(willHidden); + const backdropStyle = animation.getBackdropStyle(willHidden); + const contentStyle = animation.getContentStyle(willHidden); + const ref = animation.getRef(willHidden); + const sharp = animation.getSharp && animation.getSharp(willHidden); + + // Apply custom style properties + if (this.props.modalStyle) { + const prefixedModalStyle = appendVendorPrefix(this.props.modalStyle); + for (let style in prefixedModalStyle) { + modalStyle[style] = prefixedModalStyle[style]; } + } - if (this.props.contentStyle) { - var prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); - for (var style in prefixedContentStyle) { - contentStyle[style] = prefixedContentStyle[style]; - } + if (this.props.backdropStyle) { + const prefixedBackdropStyle = appendVendorPrefix(this.props.backdropStyle); + for (let style in prefixedBackdropStyle) { + backdropStyle[style] = prefixedBackdropStyle[style]; } + } - var backdrop = this.props.backdrop? React.createElement("div", {style: backdropStyle, onClick: this.props.closeOnClick? this.handleBackdropClick: null}): undefined; - - if(willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); + if (this.props.contentStyle) { + const prefixedContentStyle = appendVendorPrefix(this.props.contentStyle); + for (let style in prefixedContentStyle) { + contentStyle[style] = prefixedContentStyle[style]; } - - return (React.createElement("span", null, - React.createElement("div", {ref: "modal", style: modalStyle, className: this.props.className}, - sharp, - React.createElement("div", {ref: "content", tabIndex: "-1", style: contentStyle}, - this.props.children - ) - ), - backdrop - )) - ; + } + + const backdrop = this.props.backdrop ? React.createElement('div', {style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null}) : undefined; + + if (willHidden) { + const node = this.refs[ref]; + this.addTransitionListener(node, this.leave); + } + + return ( + React.createElement('span', null, + React.createElement('div', {ref: 'modal', style: modalStyle, className: this.props.className}, + sharp, + React.createElement('div', {ref: 'content', tabIndex: '-1', style: contentStyle}, + this.props.children + ) + ), + backdrop + ) + ); }; leave() { - this.setState({ - hidden: true - }); - this.props.onHide(); + this.setState({ + hidden: true + }); + this.props.onHide(); }; enter() { - this.props.onShow(); + this.props.onShow(); }; show() { - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function(){ - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); + if (!this.hasHidden()) return; + + this.setState({ + willHidden: false, + hidden: false + }); + + setTimeout(function(){ + const ref = this.props.animation.getRef(); + const node = this.refs[ref]; + this.addTransitionListener(node, this.enter); + }.bind(this), 0); }; hide() { - if (this.hasHidden()) return; + if (this.hasHidden()) return; - this.setState({ - willHidden: true - }); + this.setState({ + willHidden: true + }); }; toggle() { - if (this.hasHidden()) - this.show(); - else - this.hide(); + if (this.hasHidden()) { + this.show(); + } else { + this.hide(); + } }; listenKeyboard(event) { - if (this.props.keyboard && - (event.key === "Escape" || - event.keyCode === 27)) { - this.hide(); - } + if (this.props.keyboard && + (event.key === 'Escape' || + event.keyCode === 27)) { + this.hide(); + } }; componentDidMount() { - window.addEventListener("keydown", this.listenKeyboard, true); + window.addEventListener('keydown', this.listenKeyboard, true); }; componentWillUnmount() { - window.removeEventListener("keydown", this.listenKeyboard, true); + window.removeEventListener('keydown', this.listenKeyboard, true); }; -}; + }; -Factory.propTypes = { + Factory.propTypes = { className: PropTypes.string, - // Close the modal when esc is pressed? Defaults to true. keyboard: PropTypes.bool, onShow: PropTypes.func, onHide: PropTypes.func, @@ -170,10 +169,10 @@ Factory.propTypes = { modalStyle: PropTypes.object, backdropStyle: PropTypes.object, contentStyle: PropTypes.object -}; + }; -Factory.defaultProps = { - className: "", + Factory.defaultProps = { + className: '', onShow: function(){}, onHide: function(){}, animation: animation, @@ -183,7 +182,7 @@ Factory.defaultProps = { modalStyle: {}, backdropStyle: {}, contentStyle: {} -}; + }; -return Factory; -}; \ No newline at end of file + return Factory; +}; From 574a066170f5fc291951c8ae7d7e8160612e6c37 Mon Sep 17 00:00:00 2001 From: Jer Date: Sat, 15 Jul 2017 13:34:45 -0500 Subject: [PATCH 13/18] remove compiled files --- DropModal.js | 142 --------------------------- FadeModal.js | 110 --------------------- FlyModal.js | 125 ------------------------ OutlineModal.js | 161 ------------------------------ ScaleModal.js | 113 --------------------- WaveModal.js | 255 ------------------------------------------------ modalFactory.js | 238 -------------------------------------------- package.json | 2 +- 8 files changed, 1 insertion(+), 1145 deletions(-) delete mode 100644 DropModal.js delete mode 100644 FadeModal.js delete mode 100644 FlyModal.js delete mode 100644 OutlineModal.js delete mode 100644 ScaleModal.js delete mode 100644 WaveModal.js delete mode 100644 modalFactory.js diff --git a/DropModal.js b/DropModal.js deleted file mode 100644 index c46f43e..0000000 --- a/DropModal.js +++ /dev/null @@ -1,142 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.7,0,0.3,1)' - }, - showModalAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0, - transform: 'translate(-50%, -300px)' - }, - '100%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - } - }), - hideModalAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1, - transform: 'translate(-50%, -50%)' - }, - '100%': { - opacity: 0, - transform: 'translate(-50%, 100px)' - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }), - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0, - transform: 'translate(0, -20px)' - }, - '100%': { - opacity: 1, - transform: 'translate(0, 0)' - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1, - transform: 'translate(0, 0)' - }, - '100%': { - opacity: 0, - transform: 'translate(0, 50px)' - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showModalAnimation = animation.showModalAnimation; -var hideModalAnimation = animation.hideModalAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'modal'; - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - width: '500px', - transform: 'translate(-50%, -50%)', - top: '50%', - left: '50%', - backgroundColor: 'white', - zIndex: 1050, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideModalAnimation : showModalAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - opacity: 0, - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationDelay: '0.25s', - animationName: showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/FadeModal.js b/FadeModal.js deleted file mode 100644 index 694d6e5..0000000 --- a/FadeModal.js +++ /dev/null @@ -1,110 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 1 - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0 - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - zIndex: 1050, - position: 'fixed', - width: '500px', - transform: 'translate3d(-50%, -50%, 0)', - top: '50%', - left: '50%' - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - backgroundColor: 'white', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/FlyModal.js b/FlyModal.js deleted file mode 100644 index 3b68226..0000000 --- a/FlyModal.js +++ /dev/null @@ -1,125 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' - }, - hide: { - animationDuration: '0.5s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0, - transform: 'translate3d(calc(-100vw - 50%), 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(100px, 0, 0)' - }, - '100%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1, - transform: 'translate3d(0, 0, 0)' - }, - '50%': { - opacity: 1, - transform: 'translate3d(-100px, 0, 0) scale3d(1.1, 1.1, 1)' - }, - '100%': { - opacity: 0, - transform: 'translate3d(calc(100vw + 50%), 0, 0)' - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '90%': { - opactiy: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - zIndex: 1050, - position: 'fixed', - width: '500px', - transform: 'translate3d(-50%, -50%, 0)', - top: '50%', - left: '50%' - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - backgroundColor: 'white', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/OutlineModal.js b/OutlineModal.js deleted file mode 100644 index dceed3f..0000000 --- a/OutlineModal.js +++ /dev/null @@ -1,161 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '0.8s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '40%': { - opacity: 0 - }, - '100%': { - opacity: 1 - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0 - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getSharp: function getSharp(willHidden) { - var strokeDashLength = 1680; - var showSharpAnimation = (0, _insertKeyframesRule2.default)({ - '0%': { - 'stroke-dashoffset': strokeDashLength - }, - '100%': { - 'stroke-dashoffset': 0 - } - }); - var sharpStyle = { - position: 'absolute', - width: 'calc(100%)', - height: 'calc(100%)', - zIndex: '-1' - }; - var rectStyle = (0, _appendVendorPrefix2.default)({ - animationDuration: willHidden ? '0.4s' : '0.8s', - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showSharpAnimation, - stroke: '#ffffff', - strokeWidth: '2px', - strokeDasharray: strokeDashLength - }); - - return _react2.default.createElement( - 'div', - { style: sharpStyle }, - _react2.default.createElement( - 'svg', - { xmlns: 'http://www.w3.org/2000/svg', - width: '100%', - height: '100%', - viewBox: '0 0 496 136', - preserveAspectRatio: 'none' }, - _react2.default.createElement('rect', { style: rectStyle, - x: '2', - y: '2', - fill: 'none', - width: '492', - height: '132' }) - ) - ); - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - zIndex: 1050, - position: 'fixed', - width: '500px', - transform: 'translate3d(-50%, -50%, 0)', - top: '50%', - left: '50%' - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - backgroundColor: 'white', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/ScaleModal.js b/ScaleModal.js deleted file mode 100644 index 37f17ab..0000000 --- a/ScaleModal.js +++ /dev/null @@ -1,113 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '0.4s', - animationTimingFunction: 'cubic-bezier(0.6,0,0.4,1)' - }, - hide: { - animationDuration: '0.4s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0, - transform: 'scale3d(0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'scale3d(1, 1, 1)' - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.5, 0.5, 1)' - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - zIndex: 1050, - position: 'fixed', - width: '500px', - transform: 'translate3d(-50%, -50%, 0)', - top: '50%', - left: '50%' - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationFillMode: 'forwards', - animationDuration: '0.4s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - backgroundColor: 'white', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/WaveModal.js b/WaveModal.js deleted file mode 100644 index efc1190..0000000 --- a/WaveModal.js +++ /dev/null @@ -1,255 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _modalFactory = require('./modalFactory'); - -var _modalFactory2 = _interopRequireDefault(_modalFactory); - -var _insertKeyframesRule = require('domkit/insertKeyframesRule'); - -var _insertKeyframesRule2 = _interopRequireDefault(_insertKeyframesRule); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var animation = { - show: { - animationDuration: '1s', - animationTimingFunction: 'linear' - }, - hide: { - animationDuration: '0.3s', - animationTimingFunction: 'ease-out' - }, - showContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0, - transform: 'matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '2.083333%': { - transform: 'matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '4.166667%': { - transform: 'matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '6.25%': { - transform: 'matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '8.333333%': { - transform: 'matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '10.416667%': { - transform: 'matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '12.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '14.583333%': { - transform: 'matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '16.666667%': { - transform: 'matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '18.75%': { - transform: 'matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '20.833333%': { - transform: 'matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '22.916667%': { - transform: 'matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '25%': { - transform: 'matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '27.083333%': { - transform: 'matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '29.166667%': { - transform: 'matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '31.25%': { - transform: 'matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '33.333333%': { - transform: 'matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '35.416667%': { - transform: 'matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '37.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '39.583333%': { - transform: 'matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '41.666667%': { - transform: 'matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '43.75%': { - transform: 'matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '45.833333%': { - transform: 'matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '47.916667%': { - transform: 'matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '50%': { - opacity: 1, - transform: 'matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '52.083333%': { - transform: 'matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '54.166667%': { - transform: 'matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '56.25%': { - transform: 'matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '58.333333%': { - transform: 'matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '60.416667%': { - transform: 'matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '62.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '64.583333%': { - transform: 'matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '66.666667%': { - transform: 'matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '68.75%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '70.833333%': { - transform: 'matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '72.916667%': { - transform: 'matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '75%': { - transform: 'matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '77.083333%': { - transform: 'matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '79.166667%': { - transform: 'matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '81.25%': { - transform: 'matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '83.333333%': { - transform: 'matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '85.416667%': { - transform: 'matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '87.5%': { - transform: 'matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '89.583333%': { - transform: 'matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '91.666667%': { - transform: 'matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '93.75%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '95.833333%': { - transform: 'matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '97.916667%': { - transform: 'matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - }, - '100%': { - opacity: 1, - transform: 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)' - } - }), - hideContentAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 1 - }, - '100%': { - opacity: 0, - transform: 'scale3d(0.8, 0.8, 1)' - } - }), - showBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0 - }, - '100%': { - opacity: 0.9 - } - }), - hideBackdropAnimation: (0, _insertKeyframesRule2.default)({ - '0%': { - opacity: 0.9 - }, - '100%': { - opacity: 0 - } - }) -}; - -var showAnimation = animation.show; -var hideAnimation = animation.hide; -var showContentAnimation = animation.showContentAnimation; -var hideContentAnimation = animation.hideContentAnimation; -var showBackdropAnimation = animation.showBackdropAnimation; -var hideBackdropAnimation = animation.hideBackdropAnimation; - -exports.default = (0, _modalFactory2.default)({ - getRef: function getRef(willHidden) { - return 'content'; - }, - getModalStyle: function getModalStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - zIndex: 1050, - position: 'fixed', - width: '500px', - transform: 'translate3d(-50%, -50%, 0)', - top: '50%', - left: '50%' - }); - }, - getBackdropStyle: function getBackdropStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - zIndex: 1040, - backgroundColor: '#373A47', - animationFillMode: 'forwards', - animationDuration: '0.3s', - animationName: willHidden ? hideBackdropAnimation : showBackdropAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - }, - getContentStyle: function getContentStyle(willHidden) { - return (0, _appendVendorPrefix2.default)({ - margin: 0, - backgroundColor: 'white', - animationDuration: (willHidden ? hideAnimation : showAnimation).animationDuration, - animationFillMode: 'forwards', - animationName: willHidden ? hideContentAnimation : showContentAnimation, - animationTimingFunction: (willHidden ? hideAnimation : showAnimation).animationTimingFunction - }); - } -}); diff --git a/modalFactory.js b/modalFactory.js deleted file mode 100644 index 68289c4..0000000 --- a/modalFactory.js +++ /dev/null @@ -1,238 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); - -var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); - -var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); - -var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); - -var _createClass2 = require('babel-runtime/helpers/createClass'); - -var _createClass3 = _interopRequireDefault(_createClass2); - -var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); - -var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); - -var _inherits2 = require('babel-runtime/helpers/inherits'); - -var _inherits3 = _interopRequireDefault(_inherits2); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _transitionEvents = require('domkit/transitionEvents'); - -var _transitionEvents2 = _interopRequireDefault(_transitionEvents); - -var _appendVendorPrefix = require('domkit/appendVendorPrefix'); - -var _appendVendorPrefix2 = _interopRequireDefault(_appendVendorPrefix); - -var _propTypes = require('prop-types'); - -var _propTypes2 = _interopRequireDefault(_propTypes); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (animation) { - var Factory = function (_Component) { - (0, _inherits3.default)(Factory, _Component); - - function Factory(props) { - (0, _classCallCheck3.default)(this, Factory); - - var _this = (0, _possibleConstructorReturn3.default)(this, (Factory.__proto__ || (0, _getPrototypeOf2.default)(Factory)).call(this, props)); - - _this.state = { - willHidden: false, - hidden: true - }; - - _this.hasHidden = _this.hasHidden.bind(_this); - _this.handleBackdropClick = _this.handleBackdropClick.bind(_this); - _this.leave = _this.leave.bind(_this); - _this.enter = _this.enter.bind(_this); - _this.show = _this.show.bind(_this); - _this.hide = _this.hide.bind(_this); - _this.toggle = _this.toggle.bind(_this); - _this.listenKeyboard = _this.listenKeyboard.bind(_this); - return _this; - } - - (0, _createClass3.default)(Factory, [{ - key: 'hasHidden', - value: function hasHidden() { - return this.state.hidden; - } - }, { - key: 'addTransitionListener', - value: function addTransitionListener(node, handle) { - if (node) { - var endListener = function endListener(e) { - if (e && e.target !== node) { - return; - } - _transitionEvents2.default.removeEndEventListener(node, endListener); - handle(); - }; - _transitionEvents2.default.addEndEventListener(node, endListener); - } - } - }, { - key: 'handleBackdropClick', - value: function handleBackdropClick() { - if (this.props.closeOnClick) { - this.hide(); - } - } - }, { - key: 'render', - value: function render() { - var hidden = this.hasHidden(); - if (hidden) return null; - - var willHidden = this.state.willHidden; - var animation = this.props.animation; - var modalStyle = animation.getModalStyle(willHidden); - var backdropStyle = animation.getBackdropStyle(willHidden); - var contentStyle = animation.getContentStyle(willHidden); - var ref = animation.getRef(willHidden); - var sharp = animation.getSharp && animation.getSharp(willHidden); - - // Apply custom style properties - if (this.props.modalStyle) { - var prefixedModalStyle = (0, _appendVendorPrefix2.default)(this.props.modalStyle); - for (var style in prefixedModalStyle) { - modalStyle[style] = prefixedModalStyle[style]; - } - } - - if (this.props.backdropStyle) { - var prefixedBackdropStyle = (0, _appendVendorPrefix2.default)(this.props.backdropStyle); - for (var _style in prefixedBackdropStyle) { - backdropStyle[_style] = prefixedBackdropStyle[_style]; - } - } - - if (this.props.contentStyle) { - var prefixedContentStyle = (0, _appendVendorPrefix2.default)(this.props.contentStyle); - for (var _style2 in prefixedContentStyle) { - contentStyle[_style2] = prefixedContentStyle[_style2]; - } - } - - var backdrop = this.props.backdrop ? _react2.default.createElement('div', { style: backdropStyle, onClick: this.props.closeOnClick ? this.handleBackdropClick : null }) : undefined; - - if (willHidden) { - var node = this.refs[ref]; - this.addTransitionListener(node, this.leave); - } - - return _react2.default.createElement('span', null, _react2.default.createElement('div', { ref: 'modal', style: modalStyle, className: this.props.className }, sharp, _react2.default.createElement('div', { ref: 'content', tabIndex: '-1', style: contentStyle }, this.props.children)), backdrop); - } - }, { - key: 'leave', - value: function leave() { - this.setState({ - hidden: true - }); - this.props.onHide(); - } - }, { - key: 'enter', - value: function enter() { - this.props.onShow(); - } - }, { - key: 'show', - value: function show() { - if (!this.hasHidden()) return; - - this.setState({ - willHidden: false, - hidden: false - }); - - setTimeout(function () { - var ref = this.props.animation.getRef(); - var node = this.refs[ref]; - this.addTransitionListener(node, this.enter); - }.bind(this), 0); - } - }, { - key: 'hide', - value: function hide() { - if (this.hasHidden()) return; - - this.setState({ - willHidden: true - }); - } - }, { - key: 'toggle', - value: function toggle() { - if (this.hasHidden()) { - this.show(); - } else { - this.hide(); - } - } - }, { - key: 'listenKeyboard', - value: function listenKeyboard(event) { - if (this.props.keyboard && (event.key === 'Escape' || event.keyCode === 27)) { - this.hide(); - } - } - }, { - key: 'componentDidMount', - value: function componentDidMount() { - window.addEventListener('keydown', this.listenKeyboard, true); - } - }, { - key: 'componentWillUnmount', - value: function componentWillUnmount() { - window.removeEventListener('keydown', this.listenKeyboard, true); - } - }]); - return Factory; - }(_react.Component); - - ; - - Factory.propTypes = { - className: _propTypes2.default.string, - keyboard: _propTypes2.default.bool, - onShow: _propTypes2.default.func, - onHide: _propTypes2.default.func, - animation: _propTypes2.default.object, - backdrop: _propTypes2.default.bool, - closeOnClick: _propTypes2.default.bool, - modalStyle: _propTypes2.default.object, - backdropStyle: _propTypes2.default.object, - contentStyle: _propTypes2.default.object - }; - - Factory.defaultProps = { - className: '', - onShow: function onShow() {}, - onHide: function onHide() {}, - animation: animation, - keyboard: true, - backdrop: true, - closeOnClick: true, - modalStyle: {}, - backdropStyle: {}, - contentStyle: {} - }; - - return Factory; -}; diff --git a/package.json b/package.json index 075c344..270b637 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "reboron", - "version": "0.3.2", + "version": "0.4.0", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Jeremy Ayerst", From 2edd90c0c8746e5eb2cfd5d60d60fa68a48f2424 Mon Sep 17 00:00:00 2001 From: BrandonWade Date: Sun, 16 Jul 2017 18:43:31 -0500 Subject: [PATCH 14/18] Add support for customizing OutlineModal animation. (#6) - Adds support for overwriting the default OutlineModal display animation. - Adds changes for this to the Readme - Fixes broken Readme examples --- README.md | 25 +++++++++++++------------ src/OutlineModal.js | 8 ++++---- src/modalFactory.js | 2 +- 3 files changed, 18 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index cc90991..8d9a105 100644 --- a/README.md +++ b/README.md @@ -38,10 +38,10 @@ class Example extends Component { render() { return (
- - + + this.callback() }>

I am a dialog

- +
); @@ -58,14 +58,15 @@ export default Example; * closeOnClick - Close the backdrop element when clicked. * onShow - Show callback. * onHide - Hide callback. Argument is the source of the hide action, one of: - * hide - hide() method is the cause of the hide. - * toggle - toggle() method is the cause of the hide - * keyboard - keyboard (escape key) is the cause of the hide - * backdrop - backdrop click is the cause of the hide - * [any] - custom argument passed by invoking code into the hide() method when called directly. + * hide - hide() method is the cause of the hide. + * toggle - toggle() method is the cause of the hide + * keyboard - keyboard (escape key) is the cause of the hide + * backdrop - backdrop click is the cause of the hide + * [any] - custom argument passed by invoking code into the hide() method when called directly. * modalStyle - CSS styles to apply to the modal * backdropStyle - CSS styles to apply to the backdrop * contentStyle - CSS styles to apply to the modal's content +* rectStyle - CSS styles to apply to the modal's rectangle _(OutlineModal only)_ Note: If the hide() method is called directly, a custom source string can be passed as the argument, as noted above. For example, this might be useful if @@ -98,10 +99,10 @@ class Example extends Component { render() { return (
- +

I am a dialog

- +
); @@ -143,10 +144,10 @@ class Example extends Component { render() { return (
- +

I am a dialog

- +
); diff --git a/src/OutlineModal.js b/src/OutlineModal.js index 32dbba7..3d38d30 100644 --- a/src/OutlineModal.js +++ b/src/OutlineModal.js @@ -60,7 +60,7 @@ export default modalFactory({ getRef: (willHidden) => { return 'content'; }, - getSharp: (willHidden) => { + getSharp: (willHidden, rectStyles = {}) => { const strokeDashLength = 1680; const showSharpAnimation = insertKeyframesRule({ '0%': { @@ -77,14 +77,14 @@ export default modalFactory({ zIndex: '-1', }; const rectStyle = appendVendorPrefix({ - animationDuration: willHidden? '0.4s' :'0.8s', + animationDuration: willHidden ? '0.4s' : '0.8s', animationFillMode: 'forwards', - animationName: willHidden? hideContentAnimation: showSharpAnimation, + animationName: willHidden ? hideContentAnimation : showSharpAnimation, stroke: '#ffffff', strokeWidth: '2px', strokeDasharray: strokeDashLength, + ...rectStyles, }); - return (
{ const backdropStyle = animation.getBackdropStyle(willHidden); const contentStyle = animation.getContentStyle(willHidden); const ref = animation.getRef(willHidden); - const sharp = animation.getSharp && animation.getSharp(willHidden); + const sharp = animation.getSharp && animation.getSharp(willHidden, this.props.rectStyle); // Apply custom style properties if (this.props.modalStyle) { From 7b037501bbb7d7f5b89f601039bacce07c5559d7 Mon Sep 17 00:00:00 2001 From: Jer Date: Sun, 16 Jul 2017 18:46:36 -0500 Subject: [PATCH 15/18] custom display --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 270b637..8ca2afa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "reboron", - "version": "0.4.0", + "version": "0.4.2", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Jeremy Ayerst", From 71cf0932b538d0019b27d6aa33e3894a48ed15d2 Mon Sep 17 00:00:00 2001 From: Jeremy Ayerst Date: Sun, 23 Jul 2017 22:49:20 -0500 Subject: [PATCH 16/18] update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8d9a105..f93421b 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Reboron ===== A collection of dialog animations with React.js. -* Demo - [yuanyan.github.io/boron](http://yuanyan.github.io/boron/) +* Demo - [https://jerairrest.github.io/reboron/](https://jerairrest.github.io/reboron/) ## About This is a fork of http://yuanyan.github.io/boron/ that has fixes for the deprecation warnings in React 15.*. I will be working on updating this package to use es6 as well as fixing some of the issues in the main package. PRs welcome! @@ -166,4 +166,4 @@ export default Example; * WaveModal ## License -Boron is [MIT licensed](./LICENSE). +Reboron is [MIT licensed](./LICENSE). From cce62752decf7eddf17d478a6aad61ed745c159f Mon Sep 17 00:00:00 2001 From: BrandonWade Date: Sun, 15 Oct 2017 19:42:55 -0500 Subject: [PATCH 17/18] Add source to hide action. (#12) --- package.json | 2 +- src/modalFactory.js | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 8ca2afa..d80efd5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "reboron", - "version": "0.4.2", + "version": "0.4.5", "description": "A collection of dialog animations with React.js", "main": "Boron.js", "author": "Jeremy Ayerst", diff --git a/src/modalFactory.js b/src/modalFactory.js index 7571e6b..6030053 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -41,7 +41,7 @@ export default (animation) => { handleBackdropClick() { if (this.props.closeOnClick) { - this.hide(); + this.hide('backdrop'); } }; @@ -103,7 +103,7 @@ export default (animation) => { this.setState({ hidden: true }); - this.props.onHide(); + this.props.onHide(this.state.hideSource); }; enter() { @@ -125,10 +125,13 @@ export default (animation) => { }.bind(this), 0); }; - hide() { - if (this.hasHidden()) return; + hide(source) { + if (this.hasHidden()) { + return; + } this.setState({ + hideSource: source || 'hide', willHidden: true }); }; @@ -137,7 +140,7 @@ export default (animation) => { if (this.hasHidden()) { this.show(); } else { - this.hide(); + this.hide('toggle'); } }; @@ -145,7 +148,7 @@ export default (animation) => { if (this.props.keyboard && (event.key === 'Escape' || event.keyCode === 27)) { - this.hide(); + this.hide('keyboard'); } }; From 4d3ae2b4a8155ff13f03e96f0195aa082eeaebe8 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 23 Apr 2018 16:56:17 +0200 Subject: [PATCH 18/18] Adds duration prop to modals --- README.md | 2 ++ src/modalFactory.js | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/README.md b/README.md index f93421b..2910f40 100644 --- a/README.md +++ b/README.md @@ -56,12 +56,14 @@ export default Example; * keyboard - Receive a callback function or a boolean to choose to close the modal when escape key is pressed. * backdrop - Includes a backdrop element. * closeOnClick - Close the backdrop element when clicked. +* duration - duration in milliseconds before the modal is hidden * onShow - Show callback. * onHide - Hide callback. Argument is the source of the hide action, one of: * hide - hide() method is the cause of the hide. * toggle - toggle() method is the cause of the hide * keyboard - keyboard (escape key) is the cause of the hide * backdrop - backdrop click is the cause of the hide + * timeout - timeout is the cause of the hide * [any] - custom argument passed by invoking code into the hide() method when called directly. * modalStyle - CSS styles to apply to the modal * backdropStyle - CSS styles to apply to the backdrop diff --git a/src/modalFactory.js b/src/modalFactory.js index 6030053..263b910 100644 --- a/src/modalFactory.js +++ b/src/modalFactory.js @@ -107,6 +107,9 @@ export default (animation) => { }; enter() { + if (this.props.duration >= 0) + setTimeout(() => this.hide("timeout"), parseInt(this.props.duration)); + this.props.onShow(); }; @@ -164,6 +167,7 @@ export default (animation) => { Factory.propTypes = { className: PropTypes.string, keyboard: PropTypes.bool, + duration: PropTypes.number, onShow: PropTypes.func, onHide: PropTypes.func, animation: PropTypes.object, @@ -176,6 +180,7 @@ export default (animation) => { Factory.defaultProps = { className: '', + duration: -1, onShow: function(){}, onHide: function(){}, animation: animation,