react-menu-aim
Version:
A React mixin version of Amazon's jQuery-menu-aim plugin
73 lines (67 loc) • 302 kB
JavaScript
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
"use strict";var React=require("react"),ReactMenuAim=require("../../index"),createReactClass=require("create-react-class"),Menu=createReactClass({displayName:"Menu",mixins:[ReactMenuAim],getDefaultProps:function(){return{submenuDirection:"right"}},getInitialState:function(){return{activeMenuIndex:0}},componentWillMount:function(){this.initMenuAim({submenuDirection:this.props.submenuDirection,menuSelector:".menu",delay:300,tolerance:75})},handleSwitchMenuIndex:function(e){this.setState({activeMenuIndex:e})},render:function(){var e=this,t="menu-container "+this.props.submenuDirection,n={};return"below"===this.props.submenuDirection&&(n.left=140*this.state.activeMenuIndex),React.createElement("div",{className:t},React.createElement("ul",{className:"menu",onMouseLeave:this.handleMouseLeaveMenu},this.props.menuData.map(function(t,n){var a="menu-item";return n===e.state.activeMenuIndex&&(a+=" active"),React.createElement("li",{className:a,key:n,onMouseEnter:function(){e.handleMouseEnterRow.call(e,n,e.handleSwitchMenuIndex)}},t.name)})),React.createElement("ul",{className:"sub-menu",style:n},this.props.menuData[this.state.activeMenuIndex].subMenu.map(function(e,t){return React.createElement("li",{className:"sub-menu-item",key:t},e)})))}});module.exports=exports=Menu;
},{"../../index":4,"create-react-class":6,"react":32}],2:[function(require,module,exports){
"use strict";var React=require("react"),ReactDOM=require("react-dom"),Menu=require("./Menu"),menuData=require("./menuData");window.React=React,ReactDOM.render(React.createElement(Menu,{menuData:menuData}),document.querySelector("#demo1 .demo-container")),ReactDOM.render(React.createElement(Menu,{menuData:menuData,submenuDirection:"below"}),document.querySelector("#demo3 .demo-container"));
},{"./Menu":1,"./menuData":3,"react":32,"react-dom":29}],3:[function(require,module,exports){
"use strict";module.exports=exports=[{name:"File",subMenu:["New File","Open","Open Recent","ReOpen with Encoding","New View into File","Save","Save with Encoding","Sava As","Save All"]},{name:"Edit",subMenu:["Undo Insert Characters","Repeat Insert Characters","Undo Selection","Copy","Cut","Paste","Paste and Indent","Paste from History"]},{name:"Selection",subMenu:["Split into Lines","Add Previous Line","Add Next Line","Single Selection","Invert Selection"]},{name:"Find",subMenu:["Find","Find Next","Find Previous","Increment Find"]},{name:"View",subMenu:["Show minimap","Hide Tabs","Hide Status Bar","Show Console","Enter Full Screen","Enter Distraction Free Mode","Layout","Groups"]},{name:"Goto",subMenu:["Goto Anything","Goto Symbol","Goto Symbol in Project","Goto Definition","Goto Line","Jump Back","Jump Forward"]},{name:"Tools",subMenu:["Command Palette","Snippets","Build System","Build","Build With"]},{name:"Project",subMenu:["Open Project","Switch Project","Quick Switch Project","Open Recent","Save Project As"]},{name:"Window",subMenu:["Minimize","Zoom","Bring All to Front"]}];
},{}],4:[function(require,module,exports){
function on(e,t,o){e.addEventListener?e.addEventListener(t,o,!1):e.attachEvent&&e.attachEvent("on"+t,function(t){o.call(e,t||window.event)})}function off(e,t,o){e.removeEventListener?e.removeEventListener(t,o):e.detachEvent&&e.detachEvent("on"+t,o)}function offset(e){if(!e)return{left:0,top:0};var t=e.getBoundingClientRect();return{top:t.top+document.body.scrollTop,left:t.left+document.body.scrollLeft}}function outerWidth(e){var t=e.offsetWidth,o=e.currentStyle||getComputedStyle(e);return t+=parseInt(o.marginLeft,10)||0}function outerHeight(e){var t=e.offsetHeight,o=e.currentStyle||getComputedStyle(e);return t+=parseInt(o.marginLeft,10)||0}function handleMouseMoveDocument(e){mouseLocs.push({x:e.pageX,y:e.pageY}),mouseLocs.length>MOUSE_LOCS_TRACKED&&mouseLocs.shift()}function getActivateDelay(e){function t(e,t){return(t.y-e.y)/(t.x-e.x)}e=e||{};var o=ReactDOM.findDOMNode(this);if(!o||!o.querySelector)return 0;o=e.menuSelector?o.querySelector(e.menuSelector):o;var n=offset(o),i={x:n.left,y:n.top-(e.tolerance||TOLERANCE)},u={x:n.left+outerWidth(o),y:i.y},r={x:n.left,y:n.top+outerHeight(o)+(e.tolerance||TOLERANCE)},s={x:n.left+outerWidth(o),y:r.y},c=mouseLocs[mouseLocs.length-1],a=mouseLocs[0];if(!c)return 0;if(a||(a=c),a.x<n.left||a.x>s.x||a.y<n.top||a.y>s.y)return 0;if(this._lastDelayDoc&&c.x===this._lastDelayDoc.x&&c.y===this._lastDelayDoc.y)return 0;var l=u,m=s;"left"===e.submenuDirection?(l=r,m=i):"below"===e.submenuDirection?(l=s,m=r):"above"===e.submenuDirection&&(l=i);var f=t(c,l),h=t(c,m),v=t(a,l),_=t(a,m);return f<v&&h>_?(this._lastDelayLoc=c,e.delay||DELAY):(this._lastDelayLoc=null,0)}function activate(e,t){t.call(this,e)}function possiblyActivate(e,t,o){var n=getActivateDelay.call(this,o);if(n){var i=this;this.__reactMenuAimTimer=setTimeout(function(){possiblyActivate.call(i,e,t,o)},n)}else activate.call(this,e,t)}var ReactDOM=require("react-dom"),MOUSE_LOCS_TRACKED=3,DELAY=300,TOLERANCE=75,mousemoveListener=0,mouseLocs=[];module.exports=exports={initMenuAim:function(e){this.__reactMenuAimConfig=e},__getMouseMoveDocumentHandler:function(){return this.__mouseMoveDocumentHandler||(this.__mouseMoveDocumentHandler=handleMouseMoveDocument.bind(this)),this.__mouseMoveDocumentHandler},componentDidMount:function(){0===mousemoveListener&&on(document,"mousemove",this.__getMouseMoveDocumentHandler()),mousemoveListener+=1},componentWillUnmount:function(){mousemoveListener-=1,0===mousemoveListener&&(off(document,"mousemove",this.__getMouseMoveDocumentHandler()),mouseLocs=[]),clearTimeout(this.__reactMenuAimTimer),this.__reactMenuAimTimer=null,this.__mouseMoveDocumentHandler=null},handleMouseLeaveMenu:function(e,t){this.__reactMenuAimTimer&&clearTimeout(this.__reactMenuAimTimer),"function"==typeof e&&e.call(this,t)},handleMouseEnterRow:function(e,t){this.__reactMenuAimTimer&&clearTimeout(this.__reactMenuAimTimer),possiblyActivate.call(this,e,t,this.__reactMenuAimConfig)}};
},{"react-dom":29}],5:[function(require,module,exports){
(function (process){
"use strict";function identity(t){return t}function factory(t,e,n){function o(t,e,n){for(var o in e)e.hasOwnProperty(o)&&"production"!==process.env.NODE_ENV&&warning("function"==typeof e[o],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",t.displayName||"ReactClass",ReactPropTypeLocationNames[n],o)}function i(t,e){var n=y.hasOwnProperty(e)?y[e]:null;_.hasOwnProperty(e)&&_invariant("OVERRIDE_BASE"===n,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",e),t&&_invariant("DEFINE_MANY"===n||"DEFINE_MANY_MERGED"===n,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",e)}function a(t,n){if(n){_invariant("function"!=typeof n,"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object."),_invariant(!e(n),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var o=t.prototype,a=o.__reactAutoBindPairs;n.hasOwnProperty(MIXINS_KEY)&&f.mixins(t,n.mixins);for(var r in n)if(n.hasOwnProperty(r)&&r!==MIXINS_KEY){var s=n[r],u=o.hasOwnProperty(r);if(i(u,r),f.hasOwnProperty(r))f[r](t,s);else{var l=y.hasOwnProperty(r),d="function"==typeof s,m=d&&!l&&!u&&!1!==n.autobind;if(m)a.push(r,s),o[r]=s;else if(u){var h=y[r];_invariant(l&&("DEFINE_MANY_MERGED"===h||"DEFINE_MANY"===h),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",h,r),"DEFINE_MANY_MERGED"===h?o[r]=c(o[r],s):"DEFINE_MANY"===h&&(o[r]=p(o[r],s))}else o[r]=s,"production"!==process.env.NODE_ENV&&"function"==typeof s&&n.displayName&&(o[r].displayName=n.displayName+"_"+r)}}}else if("production"!==process.env.NODE_ENV){var E=typeof n,_="object"===E&&null!==n;"production"!==process.env.NODE_ENV&&warning(_,"%s: You're attempting to include a mixin that is either null or not an object. Check the mixins included by the component, as well as any mixins they include themselves. Expected object but got %s.",t.displayName||"ReactClass",null===n?null:E)}}function r(t,e){if(e)for(var n in e){var o=e[n];if(e.hasOwnProperty(n)){var i=n in f;_invariant(!i,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var a=n in t;_invariant(!a,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),t[n]=o}}}function s(t,e){_invariant(t&&e&&"object"==typeof t&&"object"==typeof e,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in e)e.hasOwnProperty(n)&&(_invariant(void 0===t[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),t[n]=e[n]);return t}function c(t,e){return function(){var n=t.apply(this,arguments),o=e.apply(this,arguments);if(null==n)return o;if(null==o)return n;var i={};return s(i,n),s(i,o),i}}function p(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function u(t,e){var n=e.bind(t);if("production"!==process.env.NODE_ENV){n.__reactBoundContext=t,n.__reactBoundMethod=e,n.__reactBoundArguments=null;var o=t.constructor.displayName,i=n.bind;n.bind=function(a){for(var r=arguments.length,s=Array(r>1?r-1:0),c=1;c<r;c++)s[c-1]=arguments[c];if(a!==t&&null!==a)"production"!==process.env.NODE_ENV&&warning(!1,"bind(): React component methods may only be bound to the component instance. See %s",o);else if(!s.length)return"production"!==process.env.NODE_ENV&&warning(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",o),n;var p=i.apply(n,arguments);return p.__reactBoundContext=t,p.__reactBoundMethod=e,p.__reactBoundArguments=s,p}}return n}function l(t){for(var e=t.__reactAutoBindPairs,n=0;n<e.length;n+=2){var o=e[n],i=e[n+1];t[o]=u(t,i)}}function d(t){var e=identity(function(t,o,i){"production"!==process.env.NODE_ENV&&warning(this instanceof e,"Something is calling a React component directly. Use a factory or JSX instead. See: https://fb.me/react-legacyfactory"),this.__reactAutoBindPairs.length&&l(this),this.props=t,this.context=o,this.refs=emptyObject,this.updater=i||n,this.state=null;var a=this.getInitialState?this.getInitialState():null;"production"!==process.env.NODE_ENV&&void 0===a&&this.getInitialState._isMockFunction&&(a=null),_invariant("object"==typeof a&&!Array.isArray(a),"%s.getInitialState(): must return an object or null",e.displayName||"ReactCompositeComponent"),this.state=a});e.prototype=new N,e.prototype.constructor=e,e.prototype.__reactAutoBindPairs=[],m.forEach(a.bind(null,e)),a(e,h),a(e,t),a(e,E),e.getDefaultProps&&(e.defaultProps=e.getDefaultProps()),"production"!==process.env.NODE_ENV&&(e.getDefaultProps&&(e.getDefaultProps.isReactClassApproved={}),e.prototype.getInitialState&&(e.prototype.getInitialState.isReactClassApproved={})),_invariant(e.prototype.render,"createClass(...): Class specification must implement a `render` method."),"production"!==process.env.NODE_ENV&&(warning(!e.prototype.componentShouldUpdate,"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",t.displayName||"A component"),warning(!e.prototype.componentWillRecieveProps,"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",t.displayName||"A component"));for(var o in y)e.prototype[o]||(e.prototype[o]=null);return e}var m=[],y={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},f={displayName:function(t,e){t.displayName=e},mixins:function(t,e){if(e)for(var n=0;n<e.length;n++)a(t,e[n])},childContextTypes:function(t,e){"production"!==process.env.NODE_ENV&&o(t,e,"childContext"),t.childContextTypes=_assign({},t.childContextTypes,e)},contextTypes:function(t,e){"production"!==process.env.NODE_ENV&&o(t,e,"context"),t.contextTypes=_assign({},t.contextTypes,e)},getDefaultProps:function(t,e){t.getDefaultProps?t.getDefaultProps=c(t.getDefaultProps,e):t.getDefaultProps=e},propTypes:function(t,e){"production"!==process.env.NODE_ENV&&o(t,e,"prop"),t.propTypes=_assign({},t.propTypes,e)},statics:function(t,e){r(t,e)},autobind:function(){}},h={componentDidMount:function(){this.__isMounted=!0}},E={componentWillUnmount:function(){this.__isMounted=!1}},_={replaceState:function(t,e){this.updater.enqueueReplaceState(this,t,e)},isMounted:function(){return"production"!==process.env.NODE_ENV&&(warning(this.__didWarnIsMounted,"%s: isMounted is deprecated. Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.",this.constructor&&this.constructor.displayName||this.name||"Component"),this.__didWarnIsMounted=!0),!!this.__isMounted}},N=function(){};return _assign(N.prototype,t.prototype,_),d}var _assign=require("object-assign"),emptyObject=require("fbjs/lib/emptyObject"),_invariant=require("fbjs/lib/invariant");if("production"!==process.env.NODE_ENV)var warning=require("fbjs/lib/warning");var MIXINS_KEY="mixins",ReactPropTypeLocationNames;ReactPropTypeLocationNames="production"!==process.env.NODE_ENV?{prop:"prop",context:"context",childContext:"child context"}:{},module.exports=factory;
}).call(this,require('_process'))
},{"_process":24,"fbjs/lib/emptyObject":13,"fbjs/lib/invariant":18,"fbjs/lib/warning":22,"object-assign":23}],6:[function(require,module,exports){
"use strict";var React=require("react"),factory=require("./factory");if(void 0===React)throw Error("create-react-class could not find the React object. If you are using script tags, make sure that React is being loaded before create-react-class.");var ReactNoopUpdateQueue=(new React.Component).updater;module.exports=factory(React.Component,React.isValidElement,ReactNoopUpdateQueue);
},{"./factory":5,"react":32}],7:[function(require,module,exports){
(function (process){
"use strict";var emptyFunction=require("./emptyFunction"),EventListener={listen:function(e,t,n){return e.addEventListener?(e.addEventListener(t,n,!1),{remove:function(){e.removeEventListener(t,n,!1)}}):e.attachEvent?(e.attachEvent("on"+t,n),{remove:function(){e.detachEvent("on"+t,n)}}):void 0},capture:function(e,t,n){return e.addEventListener?(e.addEventListener(t,n,!0),{remove:function(){e.removeEventListener(t,n,!0)}}):("production"!==process.env.NODE_ENV&&console.error("Attempted to listen to events during the capture phase on a browser that does not support the capture phase. Your application will not receive some events."),{remove:emptyFunction})},registerDefault:function(){}};module.exports=EventListener;
}).call(this,require('_process'))
},{"./emptyFunction":12,"_process":24}],8:[function(require,module,exports){
"use strict";var canUseDOM=!("undefined"==typeof window||!window.document||!window.document.createElement),ExecutionEnvironment={canUseDOM:canUseDOM,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:canUseDOM&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:canUseDOM&&!!window.screen,isInWorker:!canUseDOM};module.exports=ExecutionEnvironment;
},{}],9:[function(require,module,exports){
"use strict";function camelize(e){return e.replace(_hyphenPattern,function(e,t){return t.toUpperCase()})}var _hyphenPattern=/-(.)/g;module.exports=camelize;
},{}],10:[function(require,module,exports){
"use strict";function camelizeStyleName(e){return camelize(e.replace(msPattern,"ms-"))}var camelize=require("./camelize"),msPattern=/^-ms-/;module.exports=camelizeStyleName;
},{"./camelize":9}],11:[function(require,module,exports){
"use strict";function containsNode(o,e){return!(!o||!e)&&(o===e||!isTextNode(o)&&(isTextNode(e)?containsNode(o,e.parentNode):"contains"in o?o.contains(e):!!o.compareDocumentPosition&&!!(16&o.compareDocumentPosition(e))))}var isTextNode=require("./isTextNode");module.exports=containsNode;
},{"./isTextNode":20}],12:[function(require,module,exports){
"use strict";function makeEmptyFunction(t){return function(){return t}}var emptyFunction=function(){};emptyFunction.thatReturns=makeEmptyFunction,emptyFunction.thatReturnsFalse=makeEmptyFunction(!1),emptyFunction.thatReturnsTrue=makeEmptyFunction(!0),emptyFunction.thatReturnsNull=makeEmptyFunction(null),emptyFunction.thatReturnsThis=function(){return this},emptyFunction.thatReturnsArgument=function(t){return t},module.exports=emptyFunction;
},{}],13:[function(require,module,exports){
(function (process){
"use strict";var emptyObject={};"production"!==process.env.NODE_ENV&&Object.freeze(emptyObject),module.exports=emptyObject;
}).call(this,require('_process'))
},{"_process":24}],14:[function(require,module,exports){
"use strict";function focusNode(o){try{o.focus()}catch(o){}}module.exports=focusNode;
},{}],15:[function(require,module,exports){
"use strict";function getActiveElement(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}module.exports=getActiveElement;
},{}],16:[function(require,module,exports){
"use strict";function hyphenate(e){return e.replace(_uppercasePattern,"-$1").toLowerCase()}var _uppercasePattern=/([A-Z])/g;module.exports=hyphenate;
},{}],17:[function(require,module,exports){
"use strict";function hyphenateStyleName(e){return hyphenate(e).replace(msPattern,"-ms-")}var hyphenate=require("./hyphenate"),msPattern=/^ms-/;module.exports=hyphenateStyleName;
},{"./hyphenate":16}],18:[function(require,module,exports){
(function (process){
"use strict";function invariant(r,e,n,i,a,o,t,s){if(validateFormat(e),!r){var v;if(void 0===e)v=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[n,i,a,o,t,s],u=0;v=new Error(e.replace(/%s/g,function(){return d[u++]})),v.name="Invariant Violation"}throw v.framesToPop=1,v}}var validateFormat=function(r){};"production"!==process.env.NODE_ENV&&(validateFormat=function(r){if(void 0===r)throw new Error("invariant requires an error message argument")}),module.exports=invariant;
}).call(this,require('_process'))
},{"_process":24}],19:[function(require,module,exports){
"use strict";function isNode(e){var o=e?e.ownerDocument||e:document,t=o.defaultView||window;return!(!e||!("function"==typeof t.Node?e instanceof t.Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}module.exports=isNode;
},{}],20:[function(require,module,exports){
"use strict";function isTextNode(e){return isNode(e)&&3==e.nodeType}var isNode=require("./isNode");module.exports=isTextNode;
},{"./isNode":19}],21:[function(require,module,exports){
"use strict";function is(t,e){return t===e?0!==t||0!==e||1/t==1/e:t!==t&&e!==e}function shallowEqual(t,e){if(is(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;var r=Object.keys(t),n=Object.keys(e);if(r.length!==n.length)return!1;for(var l=0;l<r.length;l++)if(!hasOwnProperty.call(e,r[l])||!is(t[r[l]],e[r[l]]))return!1;return!0}var hasOwnProperty=Object.prototype.hasOwnProperty;module.exports=shallowEqual;
},{}],22:[function(require,module,exports){
(function (process){
"use strict";var emptyFunction=require("./emptyFunction"),warning=emptyFunction;if("production"!==process.env.NODE_ENV){var printWarning=function(r){for(var n=arguments.length,e=Array(n>1?n-1:0),o=1;o<n;o++)e[o-1]=arguments[o];var i=0,t="Warning: "+r.replace(/%s/g,function(){return e[i++]});"undefined"!=typeof console&&console.error(t);try{throw new Error(t)}catch(r){}};warning=function(r,n){if(void 0===n)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==n.indexOf("Failed Composite propType: ")&&!r){for(var e=arguments.length,o=Array(e>2?e-2:0),i=2;i<e;i++)o[i-2]=arguments[i];printWarning.apply(void 0,[n].concat(o))}}}module.exports=warning;
}).call(this,require('_process'))
},{"./emptyFunction":12,"_process":24}],23:[function(require,module,exports){
"use strict";function toObject(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function shouldUseNative(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(r).map(function(e){return r[e]}).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(e){n[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}var getOwnPropertySymbols=Object.getOwnPropertySymbols,hasOwnProperty=Object.prototype.hasOwnProperty,propIsEnumerable=Object.prototype.propertyIsEnumerable;module.exports=shouldUseNative()?Object.assign:function(e,r){for(var t,n,o=toObject(e),a=1;a<arguments.length;a++){t=Object(arguments[a]);for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);if(getOwnPropertySymbols){n=getOwnPropertySymbols(t);for(var c=0;c<n.length;c++)propIsEnumerable.call(t,n[c])&&(o[n[c]]=t[n[c]])}}return o};
},{}],24:[function(require,module,exports){
function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}var process=module.exports={},cachedSetTimeout,cachedClearTimeout;!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var queue=[],draining=!1,currentQueue,queueIndex=-1;process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title="browser",process.browser=!0,process.env={},process.argv=[],process.version="",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error("process.binding is not supported")},process.cwd=function(){return"/"},process.chdir=function(e){throw new Error("process.chdir is not supported")},process.umask=function(){return 0};
},{}],25:[function(require,module,exports){
(function (process){
"use strict";function checkPropTypes(e,r,a,t,n){if("production"!==process.env.NODE_ENV)for(var s in e)if(e.hasOwnProperty(s)){var i;try{invariant("function"==typeof e[s],"%s: %s type `%s` is invalid; it must be a function, usually from the `prop-types` package, but received `%s`.",t||"React class",a,s,typeof e[s]),i=e[s](r,s,t,a,null,ReactPropTypesSecret)}catch(e){i=e}if(warning(!i||i instanceof Error,"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",t||"React class",a,s,typeof i),i instanceof Error&&!(i.message in loggedTypeFailures)){loggedTypeFailures[i.message]=!0;var o=n?n():"";warning(!1,"Failed %s type: %s%s",a,i.message,null!=o?o:"")}}}if("production"!==process.env.NODE_ENV)var invariant=require("fbjs/lib/invariant"),warning=require("fbjs/lib/warning"),ReactPropTypesSecret=require("./lib/ReactPropTypesSecret"),loggedTypeFailures={};module.exports=checkPropTypes;
}).call(this,require('_process'))
},{"./lib/ReactPropTypesSecret":26,"_process":24,"fbjs/lib/invariant":18,"fbjs/lib/warning":22}],26:[function(require,module,exports){
"use strict";var ReactPropTypesSecret="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";module.exports=ReactPropTypesSecret;
},{}],27:[function(require,module,exports){
(function (process){
"use strict";"production"!==process.env.NODE_ENV&&function(){function e(e,t){return(e&t)===t}function t(e,t){if(o(e))return!1;if(e.length>2&&("o"===e[0]||"O"===e[0])&&("n"===e[1]||"N"===e[1]))return!1;if(null===t)return!0;switch(typeof t){case"boolean":return r(e);case"undefined":case"number":case"string":case"object":return!0;default:return!1}}function n(e){return Zo.hasOwnProperty(e)?Zo[e]:null}function r(e){if(o(e))return!0;var t=n(e);if(t)return t.hasBooleanValue||t.hasStringBooleanValue||t.hasOverloadedBooleanValue;var r=e.toLowerCase().slice(0,5);return"data-"===r||"aria-"===r}function o(e){return Yo.hasOwnProperty(e)}function a(){if(ya)for(var e in ba){var t=ba[e],n=ya.indexOf(e);if(n>-1||Do(!1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!ka[n]){t.extractEvents||Do(!1,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),ka[n]=t;var r=t.eventTypes;for(var o in r)i(r[o],t,o)||Do(!1,"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",o,e)}}}function i(e,t,n){Ca.hasOwnProperty(n)&&Do(!1,"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),Ca[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var a=r[o];l(a,t,n)}return!0}return!!e.registrationName&&(l(e.registrationName,t,n),!0)}function l(e,t,n){wa[e]&&Do(!1,"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),wa[e]=t,xa[e]=t.eventTypes[n].dependencies;var r=e.toLowerCase();Ta[r]=e,"onDoubleClick"===e&&(Ta.ondblclick=e)}function u(e){ya&&Do(!1,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),ya=Array.prototype.slice.call(e),a()}function s(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];ba.hasOwnProperty(n)&&ba[n]===r||(ba[n]&&Do(!1,"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),ba[n]=r,t=!0)}t&&a()}function c(e,t,n,r){var o=e.type||"unknown-event";e.currentTarget=Ra(r),fa.invokeGuardedCallbackAndCatchFirstError(o,n,void 0,e),e.currentTarget=null}function d(e,t){var n=e._dispatchListeners,r=e._dispatchInstances;if(ga(e),Array.isArray(n))for(var o=0;o<n.length&&!e.isPropagationStopped();o++)c(e,t,n[o],r[o]);else n&&c(e,t,n,r);e._dispatchListeners=null,e._dispatchInstances=null}function p(e,t){return null==t&&Do(!1,"accumulateInto(...): Accumulated items must not be null or undefined."),null==e?t:Array.isArray(e)?Array.isArray(t)?(e.push.apply(e,t),e):(e.push(t),e):Array.isArray(t)?[e].concat(t):[e,t]}function f(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)}function h(e){return"button"===e||"input"===e||"select"===e||"textarea"===e}function m(e,t,n){switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":return!(!n.disabled||!h(t));default:return!1}}function g(e,t){var n,r=e.stateNode;if(!r)return null;var o=Sa(r);return o?(n=o[t],m(t,e.type,o)?null:(n&&"function"!=typeof n&&Do(!1,"Expected `%s` listener to be a function, instead got a value of `%s` type.",t,typeof n),n)):null}function v(e,t,n,r){for(var o,a=0;a<ka.length;a++){var i=ka[a];if(i){var l=i.extractEvents(e,t,n,r);l&&(o=p(o,l))}}return o}function y(e){e&&(Na=p(Na,e))}function b(e){var t=Na;Na=null,t&&(e?f(t,Ma):f(t,Da),Na&&Do(!1,"processEventQueue(): Additional events were enqueued while processing an event queue. Support for this has not yet been implemented."),fa.rethrowCaughtError())}function k(e,t){t[Qa]=e}function C(e){if(e[Qa])return e[Qa];for(var t=[];!e[Qa];){if(t.push(e),!e.parentNode)return null;e=e.parentNode}var n=void 0,r=e[Qa];if(r.tag===ja||r.tag===Va)return r;for(;e&&(r=e[Qa]);e=t.pop())n=r;return n}function w(e){var t=e[Qa];return t&&(t.tag===ja||t.tag===Va)?t:null}function x(e){if(e.tag===ja||e.tag===Va)return e.stateNode;Do(!1,"getNodeFromInstance: Invalid argument.")}function T(e){return e[$a]||null}function E(e,t){e[$a]=t}function S(e){do{e=e.return}while(e&&e.tag!==ja);return e||null}function P(e,t){for(var n=0,r=e;r;r=S(r))n++;for(var o=0,a=t;a;a=S(a))o++;for(;n-o>0;)e=S(e),n--;for(;o-n>0;)t=S(t),o--;for(var i=n;i--;){if(e===t||e===t.alternate)return e;e=S(e),t=S(t)}return null}function R(e){return S(e)}function I(e,t,n){for(var r=[];e;)r.push(e),e=S(e);var o;for(o=r.length;o-- >0;)t(r[o],"captured",n);for(o=0;o<r.length;o++)t(r[o],"bubbled",n)}function N(e,t,n,r,o){for(var a=e&&t?P(e,t):null,i=[];;){if(!e)break;if(e===a)break;var l=e.alternate;if(null!==l&&l===a)break;i.push(e),e=S(e)}for(var u=[];;){if(!t)break;if(t===a)break;var s=t.alternate;if(null!==s&&s===a)break;u.push(t),t=S(t)}for(var c=0;c<i.length;c++)n(i[c],"bubbled",r);for(var d=u.length;d-- >0;)n(u[d],"captured",o)}function O(e,t,n){return g(e,t.dispatchConfig.phasedRegistrationNames[n])}function M(e,t,n){_o(e,"Dispatching inst must not be null");var r=O(e,n,t);r&&(n._dispatchListeners=p(n._dispatchListeners,r),n._dispatchInstances=p(n._dispatchInstances,e))}function D(e){e&&e.dispatchConfig.phasedRegistrationNames&&I(e._targetInst,M,e)}function _(e){if(e&&e.dispatchConfig.phasedRegistrationNames){var t=e._targetInst;I(t?R(t):null,M,e)}}function A(e,t,n){if(e&&n&&n.dispatchConfig.registrationName){var r=n.dispatchConfig.registrationName,o=g(e,r);o&&(n._dispatchListeners=p(n._dispatchListeners,o),n._dispatchInstances=p(n._dispatchInstances,e))}}function U(e){e&&e.dispatchConfig.registrationName&&A(e._targetInst,null,e)}function F(e){f(e,D)}function L(e){f(e,_)}function H(e,t,n,r){N(n,r,A,e,t)}function z(e){f(e,U)}function j(){return!Za&&Ao.canUseDOM&&(Za="textContent"in document.documentElement?"textContent":"innerText"),Za}function V(e){return Ja._root=e,Ja._startText=q(),!0}function B(){Ja._root=null,Ja._startText=null,Ja._fallbackText=null}function W(){if(Ja._fallbackText)return Ja._fallbackText;var e,t,n=Ja._startText,r=n.length,o=q(),a=o.length;for(e=0;e<r&&n[e]===o[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===o[a-t];t++);var l=t>1?1-t:void 0;return Ja._fallbackText=o.slice(e,l),Ja._fallbackText}function q(){return"value"in Ja._root?Ja._root.value:Ja._root[j()]}function K(e,t,n,r){delete this.nativeEvent,delete this.preventDefault,delete this.stopPropagation,this.dispatchConfig=e,this._targetInst=t,this.nativeEvent=n;var o=this.constructor.Interface;for(var a in o)if(o.hasOwnProperty(a)){delete this[a];var i=o[a];i?this[a]=i(n):"target"===a?this.target=r:this[a]=n[a]}var l=null!=n.defaultPrevented?n.defaultPrevented:!1===n.returnValue;return this.isDefaultPrevented=l?Fo.thatReturnsTrue:Fo.thatReturnsFalse,this.isPropagationStopped=Fo.thatReturnsFalse,this}function Y(e,t){function n(e){return o(a?"setting the method":"setting the property","This is effectively a no-op"),e}function r(){return o(a?"accessing the method":"accessing the property",a?"This is a no-op function":"This is set to null"),t}function o(t,n){_o(!1,"This synthetic event is reused for performance reasons. If you're seeing this, you're %s `%s` on a released/nullified synthetic event. %s. If you must keep the original synthetic event around, use event.persist(). See https://fb.me/react-event-pooling for more information.",t,e,n)}var a="function"==typeof t;return{configurable:!0,set:n,get:r}}function Q(e,t,n,r){var o=this;if(o.eventPool.length){var a=o.eventPool.pop();return o.call(a,e,t,n,r),a}return new o(e,t,n,r)}function $(e){var t=this;e instanceof t||Do(!1,"Trying to release an event instance into a pool of a different type."),e.destructor(),t.eventPool.length<ni&&t.eventPool.push(e)}function X(e){e.eventPool=[],e.getPooled=Q,e.release=$}function G(e,t,n,r){return ai.call(this,e,t,n,r)}function Z(e,t,n,r){return ai.call(this,e,t,n,r)}function J(e){return(e.ctrlKey||e.altKey||e.metaKey)&&!(e.ctrlKey&&e.altKey)}function ee(e){switch(e){case"topCompositionStart":return vi.compositionStart;case"topCompositionEnd":return vi.compositionEnd;case"topCompositionUpdate":return vi.compositionUpdate}}function te(e,t){return"topKeyDown"===e&&t.keyCode===si}function ne(e,t){switch(e){case"topKeyUp":return-1!==ui.indexOf(t.keyCode);case"topKeyDown":return t.keyCode!==si;case"topKeyPress":case"topMouseDown":case"topBlur":return!0;default:return!1}}function re(e){var t=e.detail;return"object"==typeof t&&"data"in t?t.data:null}function oe(e,t,n,r){var o,a;if(ci?o=ee(e):bi?ne(e,n)&&(o=vi.compositionEnd):te(e,n)&&(o=vi.compositionStart),!o)return null;hi&&(bi||o!==vi.compositionStart?o===vi.compositionEnd&&bi&&(a=W()):bi=V(r));var i=G.getPooled(o,t,n,r);if(a)i.data=a;else{var l=re(n);null!==l&&(i.data=l)}return F(i),i}function ae(e,t){switch(e){case"topCompositionEnd":return re(t);case"topKeyPress":return t.which!==mi?null:(yi=!0,gi);case"topTextInput":var n=t.data;return n===gi&&yi?null:n;default:return null}}function ie(e,t){if(bi){if("topCompositionEnd"===e||!ci&&ne(e,t)){var n=W();return B(),bi=!1,n}return null}switch(e){case"topPaste":return null;case"topKeyPress":if(!J(t)){if(t.char&&t.char.length>1)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"topCompositionEnd":return hi?null:t.data;default:return null}}function le(e,t,n,r){var o;if(!(o=fi?ae(e,n):ie(e,n)))return null;var a=Z.getPooled(vi.beforeInput,t,n,r);return a.data=o,F(a),a}function ue(e){var t=Pa(e);if(t){Ci&&"function"==typeof Ci.restoreControlledState||Do(!1,"Fiber needs to be injected to handle a fiber target for controlled events. This error is likely caused by a bug in React. Please file an issue.");var n=Sa(t.stateNode);Ci.restoreControlledState(t.stateNode,t.type,n)}}function se(e){xi?Ti?Ti.push(e):Ti=[e]:xi=e}function ce(){if(xi){var e=xi,t=Ti;if(xi=null,Ti=null,ue(e),t)for(var n=0;n<t.length;n++)ue(t[n])}}function de(e,t){if(Ri)return Pi(e,t);Ri=!0;try{return Pi(e,t)}finally{Ri=!1,ce()}}function pe(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Oi[e.type]:"textarea"===t}function fe(e){var t=e.target||e.srcElement||window;return t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===Di?t.parentNode:t}function he(e,t){if(!Ao.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,r=n in document;if(!r){var o=document.createElement("div");o.setAttribute(n,"return;"),r="function"==typeof o[n]}return!r&&pi&&"wheel"===e&&(r=document.implementation.hasFeature("Events.wheel","3.0")),r}function me(e){var t=e.type,n=e.nodeName;return n&&"input"===n.toLowerCase()&&("checkbox"===t||"radio"===t)}function ge(e){return e._valueTracker}function ve(e){e._valueTracker=null}function ye(e){var t="";return e?t=me(e)?e.checked?"true":"false":e.value:t}function be(e){var t=me(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&"function"==typeof n.get&&"function"==typeof n.set){Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:!0,get:function(){return n.get.call(this)},set:function(e){r=""+e,n.set.call(this,e)}});return{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){ve(e),delete e[t]}}}}function ke(e){ge(e)||(e._valueTracker=be(e))}function Ce(e){if(!e)return!1;var t=ge(e);if(!t)return!0;var n=t.getValue(),r=ye(e);return r!==n&&(t.setValue(r),!0)}function we(e,t,n){var r=ai.getPooled(Fi.change,e,t,n);return r.type="change",se(n),F(r),r}function xe(e){var t=e.nodeName&&e.nodeName.toLowerCase();return"select"===t||"input"===t&&"file"===e.type}function Te(e){de(Ee,we(Hi,e,fe(e)))}function Ee(e){y(e),b(!1)}function Se(e){if(Ce(x(e)))return e}function Pe(e,t){if("topChange"===e)return t}function Re(e,t){Li=e,Hi=t,Li.attachEvent("onpropertychange",Ne)}function Ie(){Li&&(Li.detachEvent("onpropertychange",Ne),Li=null,Hi=null)}function Ne(e){"value"===e.propertyName&&Se(Hi)&&Te(e)}function Oe(e,t,n){"topFocus"===e?(Ie(),Re(t,n)):"topBlur"===e&&Ie()}function Me(e,t){if("topSelectionChange"===e||"topKeyUp"===e||"topKeyDown"===e)return Se(Hi)}function De(e){var t=e.nodeName;return t&&"input"===t.toLowerCase()&&("checkbox"===e.type||"radio"===e.type)}function _e(e,t){if("topClick"===e)return Se(t)}function Ae(e,t){if("topInput"===e||"topChange"===e)return Se(t)}function Ue(e,t){if(null!=e){var n=e._wrapperState||t._wrapperState;if(n&&n.controlled&&"number"===t.type){var r=""+t.value;t.getAttribute("value")!==r&&t.setAttribute("value",r)}}}function Fe(e,t,n,r){return ai.call(this,e,t,n,r)}function Le(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var r=Wi[e];return!!r&&!!n[r]}function He(e){return Le}function ze(e,t,n,r){return Fe.call(this,e,t,n,r)}function je(e){return e._reactInternalFiber}function Ve(e){return void 0!==e._reactInternalFiber}function Be(e,t){e._reactInternalFiber=t}function We(e){var t=e.type;return"string"==typeof t?t:"function"==typeof t?t.displayName||t.name:null}function qe(e){var t=e;if(e.alternate)for(;t.return;)t=t.return;else{if((t.effectTag&Ji)!==Gi)return ll;for(;t.return;)if(t=t.return,(t.effectTag&Ji)!==Gi)return ll}return t.tag===Ha?ul:sl}function Ke(e){return qe(e)===ul}function Ye(e){var t=$i.current;if(null!==t&&t.tag===La){var n=t,r=n.stateNode;_o(r._warnedAboutRefsInRender,"%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",We(n)||"A component"),r._warnedAboutRefsInRender=!0}var o=je(e);return!!o&&qe(o)===ul}function Qe(e){qe(e)!==ul&&Do(!1,"Unable to find node on an unmounted component.")}function $e(e){var t=e.alternate;if(!t){var n=qe(e);return n===sl&&Do(!1,"Unable to find node on an unmounted component."),n===ll?null:e}for(var r=e,o=t;;){var a=r.return,i=a?a.alternate:null;if(!a||!i)break;if(a.child===i.child){for(var l=a.child;l;){if(l===r)return Qe(a),e;if(l===o)return Qe(a),t;l=l.sibling}Do(!1,"Unable to find node on an unmounted component.")}if(r.return!==o.return)r=a,o=i;else{for(var u=!1,s=a.child;s;){if(s===r){u=!0,r=a,o=i;break}if(s===o){u=!0,o=a,r=i;break}s=s.sibling}if(!u){for(s=i.child;s;){if(s===r){u=!0,r=i,o=a;break}if(s===o){u=!0,o=i,r=a;break}s=s.sibling}u||Do(!1,"Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}r.alternate!==o&&Do(!1,"Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}return r.tag!==Ha&&Do(!1,"Unable to find node on an unmounted component."),r.stateNode.current===r?e:t}function Xe(e){var t=$e(e);if(!t)return null;for(var n=t;;){if(n.tag===ja||n.tag===Va)return n;if(n.child)n.child.return=n,n=n.child;else{if(n===t)return null;for(;!n.sibling;){if(!n.return||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}}return null}function Ge(e){var t=$e(e);if(!t)return null;for(var n=t;;){if(n.tag===ja||n.tag===Va)return n;if(n.child&&n.tag!==za)n.child.return=n,n=n.child;else{if(n===t)return null;for(;!n.sibling;){if(!n.return||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}}return null}function Ze(e){for(;e.return;)e=e.return;return e.tag!==Ha?null:e.stateNode.containerInfo}function Je(e,t,n){if(dl.length){var r=dl.pop();return r.topLevelType=e,r.nativeEvent=t,r.targetInst=n,r}return{topLevelType:e,nativeEvent:t,targetInst:n,ancestors:[]}}function et(e){e.topLevelType=null,e.nativeEvent=null,e.targetInst=null,e.ancestors.length=0,dl.length<cl&&dl.push(e)}function tt(e){var t=e.targetInst,n=t;do{if(!n){e.ancestors.push(n);break}var r=Ze(n);if(!r)break;e.ancestors.push(n),n=C(r)}while(n);for(var o=0;o<e.ancestors.length;o++)t=e.ancestors[o],fl(e.topLevelType,t,e.nativeEvent,fe(e.nativeEvent))}function nt(e){fl=e}function rt(e){pl=!!e}function ot(){return pl}function at(e,t,n){return n?Lo.listen(n,t,lt.bind(null,e)):null}function it(e,t,n){return n?Lo.capture(n,t,lt.bind(null,e)):null}function lt(e,t){if(pl){var n=fe(t),r=C(n);null===r||"number"!=typeof r.tag||Ke(r)||(r=null);var o=Je(e,t,r);try{de(tt,o)}finally{et(o)}}}function ut(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n["ms"+e]="MS"+t,n["O"+e]="o"+t.toLowerCase(),n}function st(e){if(gl[e])return gl[e];if(!ml[e])return e;var t=ml[e];for(var n in t)if(t.hasOwnProperty(n)&&n in vl)return gl[e]=t[n];return""}function ct(e){y(e),b(!1)}function dt(e,t,n,r){ct(v(e,t,n,r))}function pt(e){return Object.prototype.hasOwnProperty.call(e,xl)||(e[xl]=wl++,Cl[e[xl]]={}),Cl[e[xl]]}function ft(e,t){for(var n=t,r=pt(n),o=xa[e],a=0;a<o.length;a++){var i=o[a];r.hasOwnProperty(i)&&r[i]||("topScroll"===i?it("topScroll","scroll",n):"topFocus"===i||"topBlur"===i?(it("topFocus","focus",n),it("topBlur","blur",n),r.topBlur=!0,r.topFocus=!0):"topCancel"===i?(he("cancel",!0)&&it("topCancel","cancel",n),r.topCancel=!0):"topClose"===i?(he("close",!0)&&it("topClose","close",n),r.topClose=!0):kl.hasOwnProperty(i)&&at(i,kl[i],n),r[i]=!0)}}function ht(e,t){for(var n=pt(t),r=xa[e],o=0;o<r.length;o++){var a=r[o];if(!n.hasOwnProperty(a)||!n[a])return!1}return!0}function mt(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function gt(e){for(;e;){if(e.nextSibling)return e.nextSibling;e=e.parentNode}}function vt(e,t){for(var n=mt(e),r=0,o=0;n;){if(n.nodeType===Di){if(o=r+n.textContent.length,r<=t&&o>=t)return{node:n,offset:t-r};r=o}n=mt(gt(n))}}function yt(e){var t=window.getSelection&&window.getSelection();if(!t||0===t.rangeCount)return null;var n=t.anchorNode,r=t.anchorOffset,o=t.focusNode,a=t.focusOffset;try{n.nodeType,o.nodeType}catch(e){return null}return bt(e,n,r,o,a)}function bt(e,t,n,r,o){var a=0,i=-1,l=-1,u=0,s=0,c=e,d=null;e:for(;;){for(var p=null;;){if(c!==t||0!==n&&c.nodeType!==Di||(i=a+n),c!==r||0!==o&&c.nodeType!==Di||(l=a+o),c.nodeType===Di&&(a+=c.nodeValue.length),null===(p=c.firstChild))break;d=c,c=p}for(;;){if(c===e)break e;if(d===t&&++u===n&&(i=a),d===r&&++s===o&&(l=a),null!==(p=c.nextSibling))break;c=d,d=c.parentNode}c=p}return-1===i||-1===l?null:{start:i,end:l}}function kt(e,t){if(window.getSelection){var n=window.getSelection(),r=e[j()].length,o=Math.min(t.start,r),a=void 0===t.end?o:Math.min(t.end,r);if(!n.extend&&o>a){var i=a;a=o,o=i}var l=vt(e,o),u=vt(e,a);if(l&&u){if(1===n.rangeCount&&n.anchorNode===l.node&&n.anchorOffset===l.offset&&n.focusNode===u.node&&n.focusOffset===u.offset)return;var s=document.createRange();s.setStart(l.node,l.offset),n.removeAllRanges(),o>a?(n.addRange(s),n.extend(u.node,u.offset)):(s.setEnd(u.node,u.offset),n.addRange(s))}}}function Ct(e){return jo(document.documentElement,e)}function wt(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&"text"===e.type||"textarea"===t||"true"===e.contentEditable)}function xt(){var e=Ho();return{focusedElem:e,selectionRange:wt(e)?Et(e):null}}function Tt(e){var t=Ho(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&Ct(n)){wt(n)&&St(n,r);for(var o=[],a=n;a=a.parentNode;)a.nodeType===Mi&&o.push({element:a,left:a.scrollLeft,top:a.scrollTop});Vo(n);for(var i=0;i<o.length;i++){var l=o[i];l.element.scrollLeft=l.left,l.element.scrollTop=l.top}}}function Et(e){return("selectionStart"in e?{start:e.selectionStart,end:e.selectionEnd}:yt(e))||{start:0,end:0}}function St(e,t){var n=t.start,r=t.end;void 0===r&&(r=n),"selectionStart"in e?(e.selectionStart=n,e.selectionEnd=Math.min(r,e.value.length)):kt(e,t)}function Pt(e){if("selectionStart"in e&&wt(e))return{start:e.selectionStart,end:e.selectionEnd};if(window.getSelection){var t=window.getSelection();return{anchorNode:t.anchorNode,anchorOffset:t.anchorOffset,focusNode:t.focusNode,focusOffset:t.focusOffset}}}function Rt(e,t){if(Il||null==Sl||Sl!==Ho())return null;var n=Pt(Sl);if(!Rl||!zo(Rl,n)){Rl=n;var r=ai.getPooled(El.select,Pl,e,t);return r.type="select",r.target=Sl,F(r),r}return null}function It(e,t,n,r){return ai.call(this,e,t,n,r)}function Nt(e,t,n,r){return ai.call(this,e,t,n,r)}function Ot(e,t,n,r){return Fe.call(this,e,t,n,r)}function Mt(e){var t,n=e.keyCode;return"charCode"in e?0===(t=e.charCode)&&13===n&&(t=13):t=n,t>=32||13===t?t:0}function Dt(e){if(e.key){var t=_l[e.key]||e.key;if("Unidentified"!==t)return t}if("keypress"===e.type){var n=Mt(e);return 13===n?"Enter":String.fromCharCode(n)}return"keydown"===e.type||"keyup"===e.type?Al[e.keyCode]||"Unidentified":""}function _t(e,t,n,r){return Fe.call(this,e,t,n,r)}function At(e,t,n,r){return ze.call(this,e,t,n,r)}function Ut(e,t,n,r){return Fe.call(this,e,t,n,r)}function Ft(e,t,n,r){return ai.call(this,e,t,n,r)}function Lt(e,t,n,r){return ze.call(this,e,t,n,r)}function Ht(e){return{current:e}}function zt(e,t){if(Zl<0)return void _o(!1,"Unexpected pop.");t!==Gl[Zl]&&_o(!1,"Unexpected Fiber popped."),e.current=Xl[Zl],Xl[Zl]=null,Gl[Zl]=null,Zl--}function jt(e,t,n){Zl++,Xl[Zl]=e.current,Gl[Zl]=n,e.current=t}function Vt(){for(;Zl>-1;)Xl[Zl]=null,Gl[Zl]=null,Zl--}function Bt(e){switch(e.tag){case Ua:case Fa:case La:case ja:var t=e._debugOwner,n=e._debugSource,r=We(e),o=null;return t&&(o=We(t)),Jl(r,n,o);default:return""}}function Wt(e){var t="",n=e;do{t+=Bt(n),n=n.return}while(n);return t}function qt(){var e=eu.current;if(null===e)return null;var t=e._debugOwner;return null!==t&&void 0!==t?We(t):null}function Kt(){var e=eu.current;return null===e?null:Wt(e)}function Yt(){Xi.getCurrentStack=null,eu.current=null,eu.phase=null}function Qt(e){Xi.getCurrentStack=Kt,eu.current=e,eu.phase=null}function $t(e){eu.phase=e}function Xt(){Kl&&su++}function Gt(){Kl&&(au&&(iu=!0),null!==ru&&"componentWillMount"!==ru&&"componentWillReceiveProps"!==ru&&(lu=!0))}function Zt(){Kl&&tu&&!cu&&(cu=!0,hu("(Waiting for async callback...)"))}function Jt(e){if(Kl&&tu){cu=!1;gu("(Waiting for async callback...)","(Waiting for async callback...)",e?"React was blocked by main thread":null)}}function en(e){if(Kl){if(!tu||wu(e))return;if(nu=e,!bu(e,null))return;e._debugIsCurrentlyTiming=!0}}function tn(e){if(Kl){if(!tu||wu(e))return;e._debugIsCurrentlyTiming=!1,ku(e,null)}}function nn(e){if(Kl){if(!tu||wu(e))return;if(nu=e.return,!e._debugIsCurrentlyTiming)return;e._debugIsCurrentlyTiming=!1,Cu(e,null,null)}}function rn(e){if(Kl){if(!tu||wu(e))return;if(nu=e.return,!e._debugIsCurrentlyTiming)return;e._debugIsCurrentlyTiming=!1;Cu(e,null,"An error was thrown inside this error boundary")}}function on(e,t){if(Kl){if(!tu)return;if(xu(),!bu(e,t))return;ou=e,ru=t}}function an(){if(Kl){if(!tu)return;if(null!==ru&&null!==ou){Cu(ou,ru,lu?"Scheduled a cascading update":null)}ru=null,ou=null}}function ln(e){if(Kl){if(nu=e,!tu)return;uu=0,hu("(React Tree Reconciliation)"),Su()}}function un(e){if(Kl){if(!tu)return;var t=null;if(null!==e)if(e.tag===Ha)t="A top-level update interrupted the previous render";else{var n=We(e)||"Unknown";t="An update to "+n+" interrupted the previous render"}else uu>1&&(t="There were cascading updates");uu=0,Tu(),gu("(React Tree Reconciliation)","(React Tree Reconciliation)",t)}}function sn(){if(Kl){if(!tu)return;au=!0,iu=!1,du.clear(),hu("(Committing Changes)")}}function cn(){if(Kl){if(!tu)return;var e=null;iu?e="Lifecycle hook scheduled a cascading update":uu>0&&(e="Caused by a cascading update in earlier commit"),iu