statebus 7.0.28 → 7.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/client-library.js CHANGED
@@ -147,14 +147,8 @@
147
147
  if (t.parents) put.parents = t.parents
148
148
 
149
149
  // Do we have patches?
150
- if (t.patch) {
151
- put.patches = t.patch.map(patch => {
152
- var match = patch.match(/(.*) = (.*)/),
153
- range = match[1],
154
- content = match[2]
155
- return {unit: 'json', range, content}
156
- })
157
- }
150
+ if (t.patches) put.patches = t.patches
151
+
158
152
  // Then we just have a simple body.
159
153
  else put.body = JSON.stringify(obj.val)
160
154
 
@@ -222,7 +216,7 @@
222
216
  // credentials: 'include'
223
217
  }
224
218
  ).then(res => res.subscribe(
225
- new_version => {
219
+ update => {
226
220
  // New update received!
227
221
  if (subscriptions[key].status === 'connecting') {
228
222
  console.log('%c[*] opened ' + key,
@@ -233,17 +227,15 @@
233
227
  }
234
228
 
235
229
  // Return the update
236
- if (new_version.body)
230
+ if (update.body)
237
231
  // As a snapshot body
238
232
  t.return({
239
233
  key: key,
240
- val: add_prefixes(JSON.parse(new_version.body))
234
+ val: add_prefixes(JSON.parse(update.body))
241
235
  })
242
- else if (new_version.patches)
236
+ else if (update.patches)
243
237
  // As a patch
244
- bus.set.fire(key, {patch: new_version.patches.map(
245
- patch => patch.range + ' = ' + patch.content
246
- )})
238
+ bus.set.fire(key, {patches: update.patches})
247
239
  },
248
240
  reconnect
249
241
  )).catch(reconnect)
@@ -0,0 +1,5 @@
1
+ !function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.React=e()}}(function(){return function e(t,n,o){function r(i,s){if(!n[i]){if(!t[i]){var u="function"==typeof require&&require;if(!s&&u)return u(i,!0);if(a)return a(i,!0);var c=new Error("Cannot find module '"+i+"'");throw c.code="MODULE_NOT_FOUND",c}var l=n[i]={exports:{}};t[i][0].call(l.exports,function(e){var n=t[i][1][e];return r(n||e)},l,l.exports,e,t,n,o)}return n[i].exports}for(var a="function"==typeof require&&require,i=0;i<o.length;i++)r(o[i]);return r}({1:[function(e,t,n){"use strict";var o=e("./DOMPropertyOperations"),r=e("./EventPluginUtils"),a=e("./ReactChildren"),i=e("./ReactComponent"),s=e("./ReactCompositeComponent"),u=e("./ReactContext"),c=e("./ReactCurrentOwner"),l=e("./ReactElement"),p=e("./ReactElementValidator"),d=e("./ReactDOM"),f=e("./ReactDOMComponent"),h=e("./ReactDefaultInjection"),m=e("./ReactInstanceHandles"),v=e("./ReactLegacyElement"),y=e("./ReactMount"),g=e("./ReactMultiChild"),C=e("./ReactPerf"),E=e("./ReactPropTypes"),R=e("./ReactServerRendering"),b=e("./ReactTextComponent"),M=e("./Object.assign"),w=e("./deprecated"),D=e("./onlyChild");h.inject();var x=l.createElement,O=l.createFactory;x=p.createElement,O=p.createFactory,x=v.wrapCreateElement(x),O=v.wrapCreateFactory(O);var _=C.measure("React","render",y.render),P={Children:{map:a.map,forEach:a.forEach,count:a.count,only:D},DOM:d,PropTypes:E,initializeTouchEvents:function(e){r.useTouchEvents=e},createClass:s.createClass,createElement:x,createFactory:O,constructAndRenderComponent:y.constructAndRenderComponent,constructAndRenderComponentByID:y.constructAndRenderComponentByID,render:_,renderToString:R.renderToString,renderToStaticMarkup:R.renderToStaticMarkup,unmountComponentAtNode:y.unmountComponentAtNode,isValidClass:v.isValidClass,isValidElement:l.isValidElement,withContext:u.withContext,__spread:M,renderComponent:w("React","renderComponent","render",this,_),renderComponentToString:w("React","renderComponentToString","renderToString",this,R.renderToString),renderComponentToStaticMarkup:w("React","renderComponentToStaticMarkup","renderToStaticMarkup",this,R.renderToStaticMarkup),isValidComponent:w("React","isValidComponent","isValidElement",this,l.isValidElement)};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.inject&&__REACT_DEVTOOLS_GLOBAL_HOOK__.inject({Component:i,CurrentOwner:c,DOMComponent:f,DOMPropertyOperations:o,InstanceHandles:m,Mount:y,MultiChild:g,TextComponent:b}),e("./ExecutionEnvironment").canUseDOM&&window.top===window.self){navigator.userAgent.indexOf("Chrome")>-1&&"undefined"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&console.debug("Download the React DevTools for a better development experience: http://fb.me/react-devtools");for(var T=[Array.isArray,Array.prototype.every,Array.prototype.forEach,Array.prototype.indexOf,Array.prototype.map,Date.now,Function.prototype.bind,Object.keys,String.prototype.split,String.prototype.trim,Object.create,Object.freeze],I=0;I<T.length;I++)if(!T[I]){console.error("One or more ES5 shim/shams expected by React are not available: http://fb.me/react-warning-polyfills");break}}P.version="0.12.2",t.exports=P},{"./DOMPropertyOperations":12,"./EventPluginUtils":20,"./ExecutionEnvironment":22,"./Object.assign":27,"./ReactChildren":31,"./ReactComponent":32,"./ReactCompositeComponent":34,"./ReactContext":35,"./ReactCurrentOwner":36,"./ReactDOM":37,"./ReactDOMComponent":39,"./ReactDefaultInjection":49,"./ReactElement":52,"./ReactElementValidator":53,"./ReactInstanceHandles":60,"./ReactLegacyElement":61,"./ReactMount":63,"./ReactMultiChild":64,"./ReactPerf":68,"./ReactPropTypes":72,"./ReactServerRendering":76,"./ReactTextComponent":78,"./deprecated":106,"./onlyChild":137}],2:[function(e,t,n){"use strict";var o=e("./focusNode"),r={componentDidMount:function(){this.props.autoFocus&&o(this.getDOMNode())}};t.exports=r},{"./focusNode":111}],3:[function(e,t,n){"use strict";function o(e){return(e.ctrlKey||e.altKey||e.metaKey)&&!(e.ctrlKey&&e.altKey)}var r=e("./EventConstants"),a=e("./EventPropagators"),i=e("./ExecutionEnvironment"),s=e("./SyntheticInputEvent"),u=e("./keyOf"),c=i.canUseDOM&&"TextEvent"in window&&!("documentMode"in document||function(){var e=window.opera;return"object"==typeof e&&"function"==typeof e.version&&parseInt(e.version(),10)<=12}()),l=String.fromCharCode(32),p=r.topLevelTypes,d={beforeInput:{phasedRegistrationNames:{bubbled:u({onBeforeInput:null}),captured:u({onBeforeInputCapture:null})},dependencies:[p.topCompositionEnd,p.topKeyPress,p.topTextInput,p.topPaste]}},f=null,h=!1,m={eventTypes:d,extractEvents:function(e,t,n,r){var i;if(c)switch(e){case p.topKeyPress:if(32!==r.which)return;h=!0,i=l;break;case p.topTextInput:if((i=r.data)===l&&h)return;break;default:return}else{switch(e){case p.topPaste:f=null;break;case p.topKeyPress:r.which&&!o(r)&&(f=String.fromCharCode(r.which));break;case p.topCompositionEnd:f=r.data}if(null===f)return;i=f}if(i){var u=s.getPooled(d.beforeInput,n,r);return u.data=i,f=null,a.accumulateTwoPhaseDispatches(u),u}}};t.exports=m},{"./EventConstants":16,"./EventPropagators":21,"./ExecutionEnvironment":22,"./SyntheticInputEvent":89,"./keyOf":133}],4:[function(e,t,n){"use strict";function o(e,t){return e+t.charAt(0).toUpperCase()+t.substring(1)}var r={columnCount:!0,flex:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,strokeOpacity:!0},a=["Webkit","ms","Moz","O"];Object.keys(r).forEach(function(e){a.forEach(function(t){r[o(t,e)]=r[e]})});var i={background:{backgroundImage:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundColor:!0},border:{borderWidth:!0,borderStyle:!0,borderColor:!0},borderBottom:{borderBottomWidth:!0,borderBottomStyle:!0,borderBottomColor:!0},borderLeft:{borderLeftWidth:!0,borderLeftStyle:!0,borderLeftColor:!0},borderRight:{borderRightWidth:!0,borderRightStyle:!0,borderRightColor:!0},borderTop:{borderTopWidth:!0,borderTopStyle:!0,borderTopColor:!0},font:{fontStyle:!0,fontVariant:!0,fontWeight:!0,fontSize:!0,lineHeight:!0,fontFamily:!0}},s={isUnitlessNumber:r,shorthandPropertyExpansions:i};t.exports=s},{}],5:[function(e,t,n){"use strict";var o=e("./CSSProperty"),r=e("./ExecutionEnvironment"),a=e("./camelizeStyleName"),i=e("./dangerousStyleValue"),s=e("./hyphenateStyleName"),u=e("./memoizeStringOnly"),c=e("./warning"),l=u(function(e){return s(e)}),p="cssFloat";r.canUseDOM&&void 0===document.documentElement.style.cssFloat&&(p="styleFloat");var d={},f=function(e){d.hasOwnProperty(e)&&d[e]||(d[e]=!0,c(!1,"Unsupported style property "+e+". Did you mean "+a(e)+"?"))},h={createMarkupForStyles:function(e){var t="";for(var n in e)if(e.hasOwnProperty(n)){n.indexOf("-")>-1&&f(n);var o=e[n];null!=o&&(t+=l(n)+":",t+=i(n,o)+";")}return t||null},setValueForStyles:function(e,t){var n=e.style;for(var r in t)if(t.hasOwnProperty(r)){r.indexOf("-")>-1&&f(r);var a=i(r,t[r]);if("float"===r&&(r=p),a)n[r]=a;else{var s=o.shorthandPropertyExpansions[r];if(s)for(var u in s)n[u]="";else n[r]=""}}}};t.exports=h},{"./CSSProperty":4,"./ExecutionEnvironment":22,"./camelizeStyleName":100,"./dangerousStyleValue":105,"./hyphenateStyleName":124,"./memoizeStringOnly":135,"./warning":145}],6:[function(e,t,n){"use strict";function o(){this._callbacks=null,this._contexts=null}var r=e("./PooledClass"),a=e("./Object.assign"),i=e("./invariant");a(o.prototype,{enqueue:function(e,t){this._callbacks=this._callbacks||[],this._contexts=this._contexts||[],this._callbacks.push(e),this._contexts.push(t)},notifyAll:function(){var e=this._callbacks,t=this._contexts;if(e){i(e.length===t.length,"Mismatched list of contexts in callback queue"),this._callbacks=null,this._contexts=null;for(var n=0,o=e.length;n<o;n++)e[n].call(t[n]);e.length=0,t.length=0}},reset:function(){this._callbacks=null,this._contexts=null},destructor:function(){this.reset()}}),r.addPoolingTo(o),t.exports=o},{"./Object.assign":27,"./PooledClass":28,"./invariant":126}],7:[function(e,t,n){"use strict";function o(e){return"SELECT"===e.nodeName||"INPUT"===e.nodeName&&"file"===e.type}function r(e){var t=M.getPooled(_.change,T,e);E.accumulateTwoPhaseDispatches(t),b.batchedUpdates(a,t)}function a(e){C.enqueueEvents(e),C.processEventQueue()}function i(e,t){P=e,T=t,P.attachEvent("onchange",r)}function s(){P&&(P.detachEvent("onchange",r),P=null,T=null)}function u(e,t,n){if(e===O.topChange)return n}function c(e,t,n){e===O.topFocus?(s(),i(t,n)):e===O.topBlur&&s()}function l(e,t){P=e,T=t,I=e.value,N=Object.getOwnPropertyDescriptor(e.constructor.prototype,"value"),Object.defineProperty(P,"value",A),P.attachEvent("onpropertychange",d)}function p(){P&&(delete P.value,P.detachEvent("onpropertychange",d),P=null,T=null,I=null,N=null)}function d(e){if("value"===e.propertyName){var t=e.srcElement.value;t!==I&&(I=t,r(e))}}function f(e,t,n){if(e===O.topInput)return n}function h(e,t,n){e===O.topFocus?(p(),l(t,n)):e===O.topBlur&&p()}function m(e,t,n){if((e===O.topSelectionChange||e===O.topKeyUp||e===O.topKeyDown)&&P&&P.value!==I)return I=P.value,T}function v(e){return"INPUT"===e.nodeName&&("checkbox"===e.type||"radio"===e.type)}function y(e,t,n){if(e===O.topClick)return n}var g=e("./EventConstants"),C=e("./EventPluginHub"),E=e("./EventPropagators"),R=e("./ExecutionEnvironment"),b=e("./ReactUpdates"),M=e("./SyntheticEvent"),w=e("./isEventSupported"),D=e("./isTextInputElement"),x=e("./keyOf"),O=g.topLevelTypes,_={change:{phasedRegistrationNames:{bubbled:x({onChange:null}),captured:x({onChangeCapture:null})},dependencies:[O.topBlur,O.topChange,O.topClick,O.topFocus,O.topInput,O.topKeyDown,O.topKeyUp,O.topSelectionChange]}},P=null,T=null,I=null,N=null,S=!1;R.canUseDOM&&(S=w("change")&&(!("documentMode"in document)||document.documentMode>8));var k=!1;R.canUseDOM&&(k=w("input")&&(!("documentMode"in document)||document.documentMode>9));var A={get:function(){return N.get.call(this)},set:function(e){I=""+e,N.set.call(this,e)}},U={eventTypes:_,extractEvents:function(e,t,n,r){var a,i;if(o(t)?S?a=u:i=c:D(t)?k?a=f:(a=m,i=h):v(t)&&(a=y),a){var s=a(e,t,n);if(s){var l=M.getPooled(_.change,s,r);return E.accumulateTwoPhaseDispatches(l),l}}i&&i(e,t,n)}};t.exports=U},{"./EventConstants":16,"./EventPluginHub":18,"./EventPropagators":21,"./ExecutionEnvironment":22,"./ReactUpdates":79,"./SyntheticEvent":87,"./isEventSupported":127,"./isTextInputElement":129,"./keyOf":133}],8:[function(e,t,n){"use strict";var o=0,r={createReactRootIndex:function(){return o++}};t.exports=r},{}],9:[function(e,t,n){"use strict";function o(e){switch(e){case g.topCompositionStart:return E.compositionStart;case g.topCompositionEnd:return E.compositionEnd;case g.topCompositionUpdate:return E.compositionUpdate}}function r(e,t){return e===g.topKeyDown&&t.keyCode===m}function a(e,t){switch(e){case g.topKeyUp:return-1!==h.indexOf(t.keyCode);case g.topKeyDown:return t.keyCode!==m;case g.topKeyPress:case g.topMouseDown:case g.topBlur:return!0;default:return!1}}function i(e){this.root=e,this.startSelection=l.getSelection(e),this.startValue=this.getText()}var s=e("./EventConstants"),u=e("./EventPropagators"),c=e("./ExecutionEnvironment"),l=e("./ReactInputSelection"),p=e("./SyntheticCompositionEvent"),d=e("./getTextContentAccessor"),f=e("./keyOf"),h=[9,13,27,32],m=229,v=c.canUseDOM&&"CompositionEvent"in window,y=!v||"documentMode"in document&&document.documentMode>8&&document.documentMode<=11,g=s.topLevelTypes,C=null,E={compositionEnd:{phasedRegistrationNames:{bubbled:f({onCompositionEnd:null}),captured:f({onCompositionEndCapture:null})},dependencies:[g.topBlur,g.topCompositionEnd,g.topKeyDown,g.topKeyPress,g.topKeyUp,g.topMouseDown]},compositionStart:{phasedRegistrationNames:{bubbled:f({onCompositionStart:null}),captured:f({onCompositionStartCapture:null})},dependencies:[g.topBlur,g.topCompositionStart,g.topKeyDown,g.topKeyPress,g.topKeyUp,g.topMouseDown]},compositionUpdate:{phasedRegistrationNames:{bubbled:f({onCompositionUpdate:null}),captured:f({onCompositionUpdateCapture:null})},dependencies:[g.topBlur,g.topCompositionUpdate,g.topKeyDown,g.topKeyPress,g.topKeyUp,g.topMouseDown]}};i.prototype.getText=function(){return this.root.value||this.root[d()]},i.prototype.getData=function(){var e=this.getText(),t=this.startSelection.start,n=this.startValue.length-this.startSelection.end;return e.substr(t,e.length-n-t)};var R={eventTypes:E,extractEvents:function(e,t,n,s){var c,l;if(v?c=o(e):C?a(e,s)&&(c=E.compositionEnd):r(e,s)&&(c=E.compositionStart),y&&(C||c!==E.compositionStart?c===E.compositionEnd&&C&&(l=C.getData(),C=null):C=new i(t)),c){var d=p.getPooled(c,n,s);return l&&(d.data=l),u.accumulateTwoPhaseDispatches(d),d}}};t.exports=R},{"./EventConstants":16,"./EventPropagators":21,"./ExecutionEnvironment":22,"./ReactInputSelection":59,"./SyntheticCompositionEvent":85,"./getTextContentAccessor":121,"./keyOf":133}],10:[function(e,t,n){"use strict";function o(e,t,n){e.insertBefore(t,e.childNodes[n]||null)}var r,a=e("./Danger"),i=e("./ReactMultiChildUpdateTypes"),s=e("./getTextContentAccessor"),u=e("./invariant"),c=s();r="textContent"===c?function(e,t){e.textContent=t}:function(e,t){for(;e.firstChild;)e.removeChild(e.firstChild);if(t){var n=e.ownerDocument||document;e.appendChild(n.createTextNode(t))}};var l={dangerouslyReplaceNodeWithMarkup:a.dangerouslyReplaceNodeWithMarkup,updateTextContent:r,processUpdates:function(e,t){for(var n,s=null,c=null,l=0;n=e[l];l++)if(n.type===i.MOVE_EXISTING||n.type===i.REMOVE_NODE){var p=n.fromIndex,d=n.parentNode.childNodes[p],f=n.parentID;u(d,"processUpdates(): Unable to find child %s of element. This probably means the DOM was unexpectedly mutated (e.g., by the browser), usually due to forgetting a <tbody> when using tables, nesting tags like <form>, <p>, or <a>, or using non-SVG elements in an <svg> parent. Try inspecting the child nodes of the element with React ID `%s`.",p,f),s=s||{},s[f]=s[f]||[],s[f][p]=d,c=c||[],c.push(d)}var h=a.dangerouslyRenderMarkup(t);if(c)for(var m=0;m<c.length;m++)c[m].parentNode.removeChild(c[m]);for(var v=0;n=e[v];v++)switch(n.type){case i.INSERT_MARKUP:o(n.parentNode,h[n.markupIndex],n.toIndex);break;case i.MOVE_EXISTING:o(n.parentNode,s[n.parentID][n.fromIndex],n.toIndex);break;case i.TEXT_CONTENT:r(n.parentNode,n.textContent);break;case i.REMOVE_NODE:}}};t.exports=l},{"./Danger":13,"./ReactMultiChildUpdateTypes":65,"./getTextContentAccessor":121,"./invariant":126}],11:[function(e,t,n){"use strict";function o(e,t){return(e&t)===t}var r=e("./invariant"),a={MUST_USE_ATTRIBUTE:1,MUST_USE_PROPERTY:2,HAS_SIDE_EFFECTS:4,HAS_BOOLEAN_VALUE:8,HAS_NUMERIC_VALUE:16,HAS_POSITIVE_NUMERIC_VALUE:48,HAS_OVERLOADED_BOOLEAN_VALUE:64,injectDOMPropertyConfig:function(e){var t=e.Properties||{},n=e.DOMAttributeNames||{},i=e.DOMPropertyNames||{},u=e.DOMMutationMethods||{};e.isCustomAttribute&&s._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var c in t){r(!s.isStandardName.hasOwnProperty(c),"injectDOMPropertyConfig(...): You're trying to inject DOM property '%s' which has already been injected. You may be accidentally injecting the same DOM property config twice, or you may be injecting two configs that have conflicting property names.",c),s.isStandardName[c]=!0;var l=c.toLowerCase();if(s.getPossibleStandardName[l]=c,n.hasOwnProperty(c)){var p=n[c];s.getPossibleStandardName[p]=c,s.getAttributeName[c]=p}else s.getAttributeName[c]=l;s.getPropertyName[c]=i.hasOwnProperty(c)?i[c]:c,u.hasOwnProperty(c)?s.getMutationMethod[c]=u[c]:s.getMutationMethod[c]=null;var d=t[c];s.mustUseAttribute[c]=o(d,a.MUST_USE_ATTRIBUTE),s.mustUseProperty[c]=o(d,a.MUST_USE_PROPERTY),s.hasSideEffects[c]=o(d,a.HAS_SIDE_EFFECTS),s.hasBooleanValue[c]=o(d,a.HAS_BOOLEAN_VALUE),s.hasNumericValue[c]=o(d,a.HAS_NUMERIC_VALUE),s.hasPositiveNumericValue[c]=o(d,a.HAS_POSITIVE_NUMERIC_VALUE),s.hasOverloadedBooleanValue[c]=o(d,a.HAS_OVERLOADED_BOOLEAN_VALUE),r(!s.mustUseAttribute[c]||!s.mustUseProperty[c],"DOMProperty: Cannot require using both attribute and property: %s",c),r(s.mustUseProperty[c]||!s.hasSideEffects[c],"DOMProperty: Properties that have side effects must use property: %s",c),r(!!s.hasBooleanValue[c]+!!s.hasNumericValue[c]+!!s.hasOverloadedBooleanValue[c]<=1,"DOMProperty: Value can be one of boolean, overloaded boolean, or numeric value, but not a combination: %s",c)}}},i={},s={ID_ATTRIBUTE_NAME:"data-reactid",isStandardName:{},getPossibleStandardName:{},getAttributeName:{},getPropertyName:{},getMutationMethod:{},mustUseAttribute:{},mustUseProperty:{},hasSideEffects:{},hasBooleanValue:{},hasNumericValue:{},hasPositiveNumericValue:{},hasOverloadedBooleanValue:{},_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;t<s._isCustomAttributeFunctions.length;t++){if((0,s._isCustomAttributeFunctions[t])(e))return!0}return!1},getDefaultValueForProperty:function(e,t){var n,o=i[e];return o||(i[e]=o={}),t in o||(n=document.createElement(e),o[t]=n[t]),o[t]},injection:a};t.exports=s},{"./invariant":126}],12:[function(e,t,n){"use strict";function o(e,t){return null==t||r.hasBooleanValue[e]&&!t||r.hasNumericValue[e]&&isNaN(t)||r.hasPositiveNumericValue[e]&&t<1||r.hasOverloadedBooleanValue[e]&&!1===t}var r=e("./DOMProperty"),a=e("./escapeTextForBrowser"),i=e("./memoizeStringOnly"),s=e("./warning"),u=i(function(e){return a(e)+'="'}),c={children:!0,dangerouslySetInnerHTML:!0,key:!0,ref:!0},l={},p=function(e){if(!(c.hasOwnProperty(e)&&c[e]||l.hasOwnProperty(e)&&l[e])){l[e]=!0;var t=e.toLowerCase(),n=r.isCustomAttribute(t)?t:r.getPossibleStandardName.hasOwnProperty(t)?r.getPossibleStandardName[t]:null;s(null==n,"Unknown DOM property "+e+". Did you mean "+n+"?")}},d={createMarkupForID:function(e){return u(r.ID_ATTRIBUTE_NAME)+a(e)+'"'},createMarkupForProperty:function(e,t){if(r.isStandardName.hasOwnProperty(e)&&r.isStandardName[e]){if(o(e,t))return"";var n=r.getAttributeName[e];return r.hasBooleanValue[e]||r.hasOverloadedBooleanValue[e]&&!0===t?a(n):u(n)+a(t)+'"'}return r.isCustomAttribute(e)?null==t?"":u(e)+a(t)+'"':(p(e),null)},setValueForProperty:function(e,t,n){if(r.isStandardName.hasOwnProperty(t)&&r.isStandardName[t]){var a=r.getMutationMethod[t];if(a)a(e,n);else if(o(t,n))this.deleteValueForProperty(e,t);else if(r.mustUseAttribute[t])e.setAttribute(r.getAttributeName[t],""+n);else{var i=r.getPropertyName[t];r.hasSideEffects[t]&&""+e[i]==""+n||(e[i]=n)}}else r.isCustomAttribute(t)?null==n?e.removeAttribute(t):e.setAttribute(t,""+n):p(t)},deleteValueForProperty:function(e,t){if(r.isStandardName.hasOwnProperty(t)&&r.isStandardName[t]){var n=r.getMutationMethod[t];if(n)n(e,void 0);else if(r.mustUseAttribute[t])e.removeAttribute(r.getAttributeName[t]);else{var o=r.getPropertyName[t],a=r.getDefaultValueForProperty(e.nodeName,o);r.hasSideEffects[t]&&""+e[o]===a||(e[o]=a)}}else r.isCustomAttribute(t)?e.removeAttribute(t):p(t)}};t.exports=d},{"./DOMProperty":11,"./escapeTextForBrowser":109,"./memoizeStringOnly":135,"./warning":145}],13:[function(e,t,n){"use strict";function o(e){return e.substring(1,e.indexOf(" "))}var r=e("./ExecutionEnvironment"),a=e("./createNodesFromMarkup"),i=e("./emptyFunction"),s=e("./getMarkupWrap"),u=e("./invariant"),c=/^(<[^ \/>]+)/,l={dangerouslyRenderMarkup:function(e){u(r.canUseDOM,"dangerouslyRenderMarkup(...): Cannot render markup in a worker thread. Make sure `window` and `document` are available globally before requiring React when unit testing or use React.renderToString for server rendering.");for(var t,n={},l=0;l<e.length;l++)u(e[l],"dangerouslyRenderMarkup(...): Missing markup."),t=o(e[l]),t=s(t)?t:"*",n[t]=n[t]||[],n[t][l]=e[l];var p=[],d=0;for(t in n)if(n.hasOwnProperty(t)){var f=n[t];for(var h in f)if(f.hasOwnProperty(h)){var m=f[h];f[h]=m.replace(c,'$1 data-danger-index="'+h+'" ')}var v=a(f.join(""),i);for(l=0;l<v.length;++l){var y=v[l];y.hasAttribute&&y.hasAttribute("data-danger-index")?(h=+y.getAttribute("data-danger-index"),y.removeAttribute("data-danger-index"),u(!p.hasOwnProperty(h),"Danger: Assigning to an already-occupied result index."),p[h]=y,d+=1):console.error("Danger: Discarding unexpected node:",y)}}return u(d===p.length,"Danger: Did not assign to every index of resultList."),u(p.length===e.length,"Danger: Expected markup to render %s nodes, but rendered %s.",e.length,p.length),p},dangerouslyReplaceNodeWithMarkup:function(e,t){u(r.canUseDOM,"dangerouslyReplaceNodeWithMarkup(...): Cannot render markup in a worker thread. Make sure `window` and `document` are available globally before requiring React when unit testing or use React.renderToString for server rendering."),u(t,"dangerouslyReplaceNodeWithMarkup(...): Missing markup."),u("html"!==e.tagName.toLowerCase(),"dangerouslyReplaceNodeWithMarkup(...): Cannot replace markup of the <html> node. This is because browser quirks make this unreliable and/or slow. If you want to render to the root you must use server rendering. See renderComponentToString().");var n=a(t,i)[0];e.parentNode.replaceChild(n,e)}};t.exports=l},{"./ExecutionEnvironment":22,"./createNodesFromMarkup":104,"./emptyFunction":107,"./getMarkupWrap":118,"./invariant":126}],14:[function(e,t,n){"use strict";var o=e("./keyOf"),r=[o({ResponderEventPlugin:null}),o({SimpleEventPlugin:null}),o({TapEventPlugin:null}),o({EnterLeaveEventPlugin:null}),o({ChangeEventPlugin:null}),o({SelectEventPlugin:null}),o({CompositionEventPlugin:null}),o({BeforeInputEventPlugin:null}),o({AnalyticsEventPlugin:null}),o({MobileSafariClickEventPlugin:null})];t.exports=r},{"./keyOf":133}],15:[function(e,t,n){"use strict";var o=e("./EventConstants"),r=e("./EventPropagators"),a=e("./SyntheticMouseEvent"),i=e("./ReactMount"),s=e("./keyOf"),u=o.topLevelTypes,c=i.getFirstReactDOM,l={mouseEnter:{registrationName:s({onMouseEnter:null}),dependencies:[u.topMouseOut,u.topMouseOver]},mouseLeave:{registrationName:s({onMouseLeave:null}),dependencies:[u.topMouseOut,u.topMouseOver]}},p=[null,null],d={eventTypes:l,extractEvents:function(e,t,n,o){if(e===u.topMouseOver&&(o.relatedTarget||o.fromElement))return null;if(e!==u.topMouseOut&&e!==u.topMouseOver)return null;var s;if(t.window===t)s=t;else{var d=t.ownerDocument;s=d?d.defaultView||d.parentWindow:window}var f,h;if(e===u.topMouseOut?(f=t,h=c(o.relatedTarget||o.toElement)||s):(f=s,h=t),f===h)return null;var m=f?i.getID(f):"",v=h?i.getID(h):"",y=a.getPooled(l.mouseLeave,m,o);y.type="mouseleave",y.target=f,y.relatedTarget=h;var g=a.getPooled(l.mouseEnter,v,o);return g.type="mouseenter",g.target=h,g.relatedTarget=f,r.accumulateEnterLeaveDispatches(y,g,m,v),p[0]=y,p[1]=g,p}};t.exports=d},{"./EventConstants":16,"./EventPropagators":21,"./ReactMount":63,"./SyntheticMouseEvent":91,"./keyOf":133}],16:[function(e,t,n){"use strict";var o=e("./keyMirror"),r=o({bubbled:null,captured:null}),a=o({topBlur:null,topChange:null,topClick:null,topCompositionEnd:null,topCompositionStart:null,topCompositionUpdate:null,topContextMenu:null,topCopy:null,topCut:null,topDoubleClick:null,topDrag:null,topDragEnd:null,topDragEnter:null,topDragExit:null,topDragLeave:null,topDragOver:null,topDragStart:null,topDrop:null,topError:null,topFocus:null,topInput:null,topKeyDown:null,topKeyPress:null,topKeyUp:null,topLoad:null,topMouseDown:null,topMouseMove:null,topMouseOut:null,topMouseOver:null,topMouseUp:null,topPaste:null,topReset:null,topScroll:null,topSelectionChange:null,topSubmit:null,topTextInput:null,topTouchCancel:null,topTouchEnd:null,topTouchMove:null,topTouchStart:null,topWheel:null}),i={topLevelTypes:a,PropagationPhases:r};t.exports=i},{"./keyMirror":132}],17:[function(e,t,n){var o=e("./emptyFunction"),r={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)}}):(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:o})},registerDefault:function(){}};t.exports=r},{"./emptyFunction":107}],18:[function(e,t,n){"use strict";function o(){if(!d||!d.traverseTwoPhase||!d.traverseEnterLeave)throw new Error("InstanceHandle not injected before use!")}var r=e("./EventPluginRegistry"),a=e("./EventPluginUtils"),i=e("./accumulateInto"),s=e("./forEachAccumulated"),u=e("./invariant"),c={},l=null,p=function(e){if(e){var t=a.executeDispatch,n=r.getPluginModuleForEvent(e);n&&n.executeDispatch&&(t=n.executeDispatch),a.executeDispatchesInOrder(e,t),e.isPersistent()||e.constructor.release(e)}},d=null,f={injection:{injectMount:a.injection.injectMount,injectInstanceHandle:function(e){d=e,o()},getInstanceHandle:function(){return o(),d},injectEventPluginOrder:r.injectEventPluginOrder,injectEventPluginsByName:r.injectEventPluginsByName},eventNameDispatchConfigs:r.eventNameDispatchConfigs,registrationNameModules:r.registrationNameModules,putListener:function(e,t,n){u(!n||"function"==typeof n,"Expected %s listener to be a function, instead got type %s",t,typeof n),(c[t]||(c[t]={}))[e]=n},getListener:function(e,t){var n=c[t];return n&&n[e]},deleteListener:function(e,t){var n=c[t];n&&delete n[e]},deleteAllListeners:function(e){for(var t in c)delete c[t][e]},extractEvents:function(e,t,n,o){for(var a,s=r.plugins,u=0,c=s.length;u<c;u++){var l=s[u];if(l){var p=l.extractEvents(e,t,n,o);p&&(a=i(a,p))}}return a},enqueueEvents:function(e){e&&(l=i(l,e))},processEventQueue:function(){var e=l;l=null,s(e,p),u(!l,"processEventQueue(): Additional events were enqueued while processing an event queue. Support for this has not yet been implemented.")},__purge:function(){c={}},__getListenerBank:function(){return c}};t.exports=f},{"./EventPluginRegistry":19,"./EventPluginUtils":20,"./accumulateInto":97,"./forEachAccumulated":112,"./invariant":126}],19:[function(e,t,n){"use strict";function o(){if(s)for(var e in u){var t=u[e],n=s.indexOf(e);if(i(n>-1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!c.plugins[n]){i(t.extractEvents,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),c.plugins[n]=t;var o=t.eventTypes;for(var a in o)i(r(o[a],t,a),"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",a,e)}}}function r(e,t,n){i(!c.eventNameDispatchConfigs.hasOwnProperty(n),"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",n),c.eventNameDispatchConfigs[n]=e;var o=e.phasedRegistrationNames;if(o){for(var r in o)if(o.hasOwnProperty(r)){var s=o[r];a(s,t,n)}return!0}return!!e.registrationName&&(a(e.registrationName,t,n),!0)}function a(e,t,n){i(!c.registrationNameModules[e],"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),c.registrationNameModules[e]=t,c.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var i=e("./invariant"),s=null,u={},c={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},injectEventPluginOrder:function(e){i(!s,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),s=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];u.hasOwnProperty(n)&&u[n]===r||(i(!u[n],"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",n),u[n]=r,t=!0)}t&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return c.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var o=c.registrationNameModules[t.phasedRegistrationNames[n]];if(o)return o}return null},_resetEventPlugins:function(){s=null;for(var e in u)u.hasOwnProperty(e)&&delete u[e];c.plugins.length=0;var t=c.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var o=c.registrationNameModules;for(var r in o)o.hasOwnProperty(r)&&delete o[r]}};t.exports=c},{"./invariant":126}],20:[function(e,t,n){"use strict";function o(e){return e===y.topMouseUp||e===y.topTouchEnd||e===y.topTouchCancel}function r(e){return e===y.topMouseMove||e===y.topTouchMove}function a(e){return e===y.topMouseDown||e===y.topTouchStart}function i(e,t){var n=e._dispatchListeners,o=e._dispatchIDs;if(f(e),Array.isArray(n))for(var r=0;r<n.length&&!e.isPropagationStopped();r++)t(e,n[r],o[r]);else n&&t(e,n,o)}function s(e,t,n){e.currentTarget=v.Mount.getNode(n);var o=t(e,n);return e.currentTarget=null,o}function u(e,t){i(e,t),e._dispatchListeners=null,e._dispatchIDs=null}function c(e){var t=e._dispatchListeners,n=e._dispatchIDs;if(f(e),Array.isArray(t)){for(var o=0;o<t.length&&!e.isPropagationStopped();o++)if(t[o](e,n[o]))return n[o]}else if(t&&t(e,n))return n;return null}function l(e){var t=c(e);return e._dispatchIDs=null,e._dispatchListeners=null,t}function p(e){f(e);var t=e._dispatchListeners,n=e._dispatchIDs;m(!Array.isArray(t),"executeDirectDispatch(...): Invalid `event`.");var o=t?t(e,n):null;return e._dispatchListeners=null,e._dispatchIDs=null,o}function d(e){return!!e._dispatchListeners}var f,h=e("./EventConstants"),m=e("./invariant"),v={Mount:null,injectMount:function(e){v.Mount=e,m(e&&e.getNode,"EventPluginUtils.injection.injectMount(...): Injected Mount module is missing getNode.")}},y=h.topLevelTypes;f=function(e){var t=e._dispatchListeners,n=e._dispatchIDs,o=Array.isArray(t),r=Array.isArray(n),a=r?n.length:n?1:0,i=o?t.length:t?1:0;m(r===o&&a===i,"EventPluginUtils: Invalid `event`.")};var g={isEndish:o,isMoveish:r,isStartish:a,executeDirectDispatch:p,executeDispatch:s,executeDispatchesInOrder:u,executeDispatchesInOrderStopAtTrue:l,hasDispatches:d,injection:v,useTouchEvents:!1};t.exports=g},{"./EventConstants":16,"./invariant":126}],21:[function(e,t,n){"use strict";function o(e,t,n){var o=t.dispatchConfig.phasedRegistrationNames[n];return v(e,o)}function r(e,t,n){if(!e)throw new Error("Dispatching id must not be null");var r=t?m.bubbled:m.captured,a=o(e,n,r);a&&(n._dispatchListeners=f(n._dispatchListeners,a),n._dispatchIDs=f(n._dispatchIDs,e))}function a(e){e&&e.dispatchConfig.phasedRegistrationNames&&d.injection.getInstanceHandle().traverseTwoPhase(e.dispatchMarker,r,e)}function i(e,t,n){if(n&&n.dispatchConfig.registrationName){var o=n.dispatchConfig.registrationName,r=v(e,o);r&&(n._dispatchListeners=f(n._dispatchListeners,r),n._dispatchIDs=f(n._dispatchIDs,e))}}function s(e){e&&e.dispatchConfig.registrationName&&i(e.dispatchMarker,null,e)}function u(e){h(e,a)}function c(e,t,n,o){d.injection.getInstanceHandle().traverseEnterLeave(n,o,i,e,t)}function l(e){h(e,s)}var p=e("./EventConstants"),d=e("./EventPluginHub"),f=e("./accumulateInto"),h=e("./forEachAccumulated"),m=p.PropagationPhases,v=d.getListener,y={accumulateTwoPhaseDispatches:u,accumulateDirectDispatches:l,accumulateEnterLeaveDispatches:c};t.exports=y},{"./EventConstants":16,"./EventPluginHub":18,"./accumulateInto":97,"./forEachAccumulated":112}],22:[function(e,t,n){"use strict";var o=!("undefined"==typeof window||!window.document||!window.document.createElement),r={canUseDOM:o,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:o&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:o&&!!window.screen,isInWorker:!o};t.exports=r},{}],23:[function(e,t,n){"use strict"
2
+ ;var o,r=e("./DOMProperty"),a=e("./ExecutionEnvironment"),i=r.injection.MUST_USE_ATTRIBUTE,s=r.injection.MUST_USE_PROPERTY,u=r.injection.HAS_BOOLEAN_VALUE,c=r.injection.HAS_SIDE_EFFECTS,l=r.injection.HAS_NUMERIC_VALUE,p=r.injection.HAS_POSITIVE_NUMERIC_VALUE,d=r.injection.HAS_OVERLOADED_BOOLEAN_VALUE;if(a.canUseDOM){var f=document.implementation;o=f&&f.hasFeature&&f.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")}var h={isCustomAttribute:RegExp.prototype.test.bind(/^(data|aria)-[a-z_][a-z\d_.\-]*$/),Properties:{accept:null,acceptCharset:null,accessKey:null,action:null,allowFullScreen:i|u,allowTransparency:i,alt:null,async:u,autoComplete:null,autoPlay:u,cellPadding:null,cellSpacing:null,charSet:i,checked:s|u,classID:i,className:o?i:s,cols:i|p,colSpan:null,content:null,contentEditable:null,contextMenu:i,controls:s|u,coords:null,crossOrigin:null,data:null,dateTime:i,defer:u,dir:null,disabled:i|u,download:d,draggable:null,encType:null,form:i,formAction:i,formEncType:i,formMethod:i,formNoValidate:u,formTarget:i,frameBorder:i,height:i,hidden:i|u,href:null,hrefLang:null,htmlFor:null,httpEquiv:null,icon:null,id:s,label:null,lang:null,list:i,loop:s|u,manifest:i,marginHeight:null,marginWidth:null,max:null,maxLength:i,media:i,mediaGroup:null,method:null,min:null,multiple:s|u,muted:s|u,name:null,noValidate:u,open:null,pattern:null,placeholder:null,poster:null,preload:null,radioGroup:null,readOnly:s|u,rel:null,required:u,role:i,rows:i|p,rowSpan:null,sandbox:null,scope:null,scrolling:null,seamless:i|u,selected:s|u,shape:null,size:i|p,sizes:i,span:p,spellCheck:null,src:null,srcDoc:s,srcSet:i,start:l,step:null,style:null,tabIndex:null,target:null,title:null,type:null,useMap:null,value:s|c,width:i,wmode:i,autoCapitalize:null,autoCorrect:null,itemProp:i,itemScope:i|u,itemType:i,property:null},DOMAttributeNames:{acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv"},DOMPropertyNames:{autoCapitalize:"autocapitalize",autoComplete:"autocomplete",autoCorrect:"autocorrect",autoFocus:"autofocus",autoPlay:"autoplay",encType:"enctype",hrefLang:"hreflang",radioGroup:"radiogroup",spellCheck:"spellcheck",srcDoc:"srcdoc",srcSet:"srcset"}};t.exports=h},{"./DOMProperty":11,"./ExecutionEnvironment":22}],24:[function(e,t,n){"use strict";function o(e){c(null==e.props.checkedLink||null==e.props.valueLink,"Cannot provide a checkedLink and a valueLink. If you want to use checkedLink, you probably don't want to use valueLink and vice versa.")}function r(e){o(e),c(null==e.props.value&&null==e.props.onChange,"Cannot provide a valueLink and a value or onChange event. If you want to use value or onChange, you probably don't want to use valueLink.")}function a(e){o(e),c(null==e.props.checked&&null==e.props.onChange,"Cannot provide a checkedLink and a checked property or onChange event. If you want to use checked or onChange, you probably don't want to use checkedLink")}function i(e){this.props.valueLink.requestChange(e.target.value)}function s(e){this.props.checkedLink.requestChange(e.target.checked)}var u=e("./ReactPropTypes"),c=e("./invariant"),l={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},p={Mixin:{propTypes:{value:function(e,t,n){if(!(!e[t]||l[e.type]||e.onChange||e.readOnly||e.disabled))return new Error("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.")},checked:function(e,t,n){if(e[t]&&!e.onChange&&!e.readOnly&&!e.disabled)return new Error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")},onChange:u.func}},getValue:function(e){return e.props.valueLink?(r(e),e.props.valueLink.value):e.props.value},getChecked:function(e){return e.props.checkedLink?(a(e),e.props.checkedLink.value):e.props.checked},getOnChange:function(e){return e.props.valueLink?(r(e),i):e.props.checkedLink?(a(e),s):e.props.onChange}};t.exports=p},{"./ReactPropTypes":72,"./invariant":126}],25:[function(e,t,n){"use strict";function o(e){e.remove()}var r=e("./ReactBrowserEventEmitter"),a=e("./accumulateInto"),i=e("./forEachAccumulated"),s=e("./invariant"),u={trapBubbledEvent:function(e,t){s(this.isMounted(),"Must be mounted to trap events");var n=r.trapBubbledEvent(e,t,this.getDOMNode());this._localEventListeners=a(this._localEventListeners,n)},componentWillUnmount:function(){this._localEventListeners&&i(this._localEventListeners,o)}};t.exports=u},{"./ReactBrowserEventEmitter":30,"./accumulateInto":97,"./forEachAccumulated":112,"./invariant":126}],26:[function(e,t,n){"use strict";var o=e("./EventConstants"),r=e("./emptyFunction"),a=o.topLevelTypes,i={eventTypes:null,extractEvents:function(e,t,n,o){if(e===a.topTouchStart){var i=o.target;i&&!i.onclick&&(i.onclick=r)}}};t.exports=i},{"./EventConstants":16,"./emptyFunction":107}],27:[function(e,t,n){function o(e,t){if(null==e)throw new TypeError("Object.assign target cannot be null or undefined");for(var n=Object(e),o=Object.prototype.hasOwnProperty,r=1;r<arguments.length;r++){var a=arguments[r];if(null!=a){var i=Object(a);for(var s in i)o.call(i,s)&&(n[s]=i[s])}}return n}t.exports=o},{}],28:[function(e,t,n){"use strict";var o=e("./invariant"),r=function(e){var t=this;if(t.instancePool.length){var n=t.instancePool.pop();return t.call(n,e),n}return new t(e)},a=function(e,t){var n=this;if(n.instancePool.length){var o=n.instancePool.pop();return n.call(o,e,t),o}return new n(e,t)},i=function(e,t,n){var o=this;if(o.instancePool.length){var r=o.instancePool.pop();return o.call(r,e,t,n),r}return new o(e,t,n)},s=function(e,t,n,o,r){var a=this;if(a.instancePool.length){var i=a.instancePool.pop();return a.call(i,e,t,n,o,r),i}return new a(e,t,n,o,r)},u=function(e){var t=this;o(e instanceof t,"Trying to release an instance into a pool of a different type."),e.destructor&&e.destructor(),t.instancePool.length<t.poolSize&&t.instancePool.push(e)},c=r,l=function(e,t){var n=e;return n.instancePool=[],n.getPooled=t||c,n.poolSize||(n.poolSize=10),n.release=u,n},p={addPoolingTo:l,oneArgumentPooler:r,twoArgumentPooler:a,threeArgumentPooler:i,fiveArgumentPooler:s};t.exports=p},{"./invariant":126}],29:[function(e,t,n){"use strict";var o=e("./ReactEmptyComponent"),r=e("./ReactMount"),a=e("./invariant"),i={getDOMNode:function(){return a(this.isMounted(),"getDOMNode(): A component must be mounted to have a DOM node."),o.isNullComponentID(this._rootNodeID)?null:r.getNode(this._rootNodeID)}};t.exports=i},{"./ReactEmptyComponent":54,"./ReactMount":63,"./invariant":126}],30:[function(e,t,n){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,m)||(e[m]=f++,p[e[m]]={}),p[e[m]]}var r=e("./EventConstants"),a=e("./EventPluginHub"),i=e("./EventPluginRegistry"),s=e("./ReactEventEmitterMixin"),u=e("./ViewportMetrics"),c=e("./Object.assign"),l=e("./isEventSupported"),p={},d=!1,f=0,h={topBlur:"blur",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topWheel:"wheel"},m="_reactListenersID"+String(Math.random()).slice(2),v=c({},s,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(v.handleTopLevel),v.ReactEventListener=e}},setEnabled:function(e){v.ReactEventListener&&v.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!v.ReactEventListener||!v.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,a=o(n),s=i.registrationNameDependencies[e],u=r.topLevelTypes,c=0,p=s.length;c<p;c++){var d=s[c];a.hasOwnProperty(d)&&a[d]||(d===u.topWheel?l("wheel")?v.ReactEventListener.trapBubbledEvent(u.topWheel,"wheel",n):l("mousewheel")?v.ReactEventListener.trapBubbledEvent(u.topWheel,"mousewheel",n):v.ReactEventListener.trapBubbledEvent(u.topWheel,"DOMMouseScroll",n):d===u.topScroll?l("scroll",!0)?v.ReactEventListener.trapCapturedEvent(u.topScroll,"scroll",n):v.ReactEventListener.trapBubbledEvent(u.topScroll,"scroll",v.ReactEventListener.WINDOW_HANDLE):d===u.topFocus||d===u.topBlur?(l("focus",!0)?(v.ReactEventListener.trapCapturedEvent(u.topFocus,"focus",n),v.ReactEventListener.trapCapturedEvent(u.topBlur,"blur",n)):l("focusin")&&(v.ReactEventListener.trapBubbledEvent(u.topFocus,"focusin",n),v.ReactEventListener.trapBubbledEvent(u.topBlur,"focusout",n)),a[u.topBlur]=!0,a[u.topFocus]=!0):h.hasOwnProperty(d)&&v.ReactEventListener.trapBubbledEvent(d,h[d],n),a[d]=!0)}},trapBubbledEvent:function(e,t,n){return v.ReactEventListener.trapBubbledEvent(e,t,n)},trapCapturedEvent:function(e,t,n){return v.ReactEventListener.trapCapturedEvent(e,t,n)},ensureScrollValueMonitoring:function(){if(!d){var e=u.refreshScrollValues;v.ReactEventListener.monitorScrollValue(e),d=!0}},eventNameDispatchConfigs:a.eventNameDispatchConfigs,registrationNameModules:a.registrationNameModules,putListener:a.putListener,getListener:a.getListener,deleteListener:a.deleteListener,deleteAllListeners:a.deleteAllListeners});t.exports=v},{"./EventConstants":16,"./EventPluginHub":18,"./EventPluginRegistry":19,"./Object.assign":27,"./ReactEventEmitterMixin":56,"./ViewportMetrics":96,"./isEventSupported":127}],31:[function(e,t,n){"use strict";function o(e,t){this.forEachFunction=e,this.forEachContext=t}function r(e,t,n,o){var r=e;r.forEachFunction.call(r.forEachContext,t,o)}function a(e,t,n){if(null==e)return e;var a=o.getPooled(t,n);d(e,r,a),o.release(a)}function i(e,t,n){this.mapResult=e,this.mapFunction=t,this.mapContext=n}function s(e,t,n,o){var r=e,a=r.mapResult,i=!a.hasOwnProperty(n);if(f(i,"ReactChildren.map(...): Encountered two children with the same key, `%s`. Child keys must be unique; when two children share a key, only the first child will be used.",n),i){var s=r.mapFunction.call(r.mapContext,t,o);a[n]=s}}function u(e,t,n){if(null==e)return e;var o={},r=i.getPooled(o,t,n);return d(e,s,r),i.release(r),o}function c(e,t,n,o){return null}function l(e,t){return d(e,c,null)}var p=e("./PooledClass"),d=e("./traverseAllChildren"),f=e("./warning"),h=p.twoArgumentPooler,m=p.threeArgumentPooler;p.addPoolingTo(o,h),p.addPoolingTo(i,m);var v={forEach:a,map:u,count:l};t.exports=v},{"./PooledClass":28,"./traverseAllChildren":144,"./warning":145}],32:[function(e,t,n){"use strict";var o=e("./ReactElement"),r=e("./ReactOwner"),a=e("./ReactUpdates"),i=e("./Object.assign"),s=e("./invariant"),u=e("./keyMirror"),c=u({MOUNTED:null,UNMOUNTED:null}),l=!1,p=null,d=null,f={injection:{injectEnvironment:function(e){s(!l,"ReactComponent: injectEnvironment() can only be called once."),d=e.mountImageIntoNode,p=e.unmountIDFromEnvironment,f.BackendIDOperations=e.BackendIDOperations,l=!0}},LifeCycle:c,BackendIDOperations:null,Mixin:{isMounted:function(){return this._lifeCycleState===c.MOUNTED},setProps:function(e,t){var n=this._pendingElement||this._currentElement;this.replaceProps(i({},n.props,e),t)},replaceProps:function(e,t){s(this.isMounted(),"replaceProps(...): Can only update a mounted component."),s(0===this._mountDepth,"replaceProps(...): You called `setProps` or `replaceProps` on a component with a parent. This is an anti-pattern since props will get reactively updated when rendered. Instead, change the owner's `render` method to pass the correct value as props to the component where it is created."),this._pendingElement=o.cloneAndReplaceProps(this._pendingElement||this._currentElement,e),a.enqueueUpdate(this,t)},_setPropsInternal:function(e,t){var n=this._pendingElement||this._currentElement;this._pendingElement=o.cloneAndReplaceProps(n,i({},n.props,e)),a.enqueueUpdate(this,t)},construct:function(e){this.props=e.props,this._owner=e._owner,this._lifeCycleState=c.UNMOUNTED,this._pendingCallbacks=null,this._currentElement=e,this._pendingElement=null},mountComponent:function(e,t,n){s(!this.isMounted(),"mountComponent(%s, ...): Can only mount an unmounted component. Make sure to avoid storing components between renders or reusing a single component instance in multiple places.",e);var o=this._currentElement.ref;if(null!=o){var a=this._currentElement._owner;r.addComponentAsRefTo(this,o,a)}this._rootNodeID=e,this._lifeCycleState=c.MOUNTED,this._mountDepth=n},unmountComponent:function(){s(this.isMounted(),"unmountComponent(): Can only unmount a mounted component.");var e=this._currentElement.ref;null!=e&&r.removeComponentAsRefFrom(this,e,this._owner),p(this._rootNodeID),this._rootNodeID=null,this._lifeCycleState=c.UNMOUNTED},receiveComponent:function(e,t){s(this.isMounted(),"receiveComponent(...): Can only update a mounted component."),this._pendingElement=e,this.performUpdateIfNecessary(t)},performUpdateIfNecessary:function(e){if(null!=this._pendingElement){var t=this._currentElement,n=this._pendingElement;this._currentElement=n,this.props=n.props,this._owner=n._owner,this._pendingElement=null,this.updateComponent(e,t)}},updateComponent:function(e,t){var n=this._currentElement;n._owner===t._owner&&n.ref===t.ref||(null!=t.ref&&r.removeComponentAsRefFrom(this,t.ref,t._owner),null!=n.ref&&r.addComponentAsRefTo(this,n.ref,n._owner))},mountComponentIntoNode:function(e,t,n){var o=a.ReactReconcileTransaction.getPooled();o.perform(this._mountComponentIntoNode,this,e,t,o,n),a.ReactReconcileTransaction.release(o)},_mountComponentIntoNode:function(e,t,n,o){var r=this.mountComponent(e,n,0);d(r,t,o)},isOwnedBy:function(e){return this._owner===e},getSiblingByRef:function(e){var t=this._owner;return t&&t.refs?t.refs[e]:null}}};t.exports=f},{"./Object.assign":27,"./ReactElement":52,"./ReactOwner":67,"./ReactUpdates":79,"./invariant":126,"./keyMirror":132}],33:[function(e,t,n){"use strict";var o=e("./ReactDOMIDOperations"),r=e("./ReactMarkupChecksum"),a=e("./ReactMount"),i=e("./ReactPerf"),s=e("./ReactReconcileTransaction"),u=e("./getReactRootElementInContainer"),c=e("./invariant"),l=e("./setInnerHTML"),p={ReactReconcileTransaction:s,BackendIDOperations:o,unmountIDFromEnvironment:function(e){a.purgeID(e)},mountImageIntoNode:i.measure("ReactComponentBrowserEnvironment","mountImageIntoNode",function(e,t,n){if(c(t&&(1===t.nodeType||9===t.nodeType),"mountComponentIntoNode(...): Target container is not valid."),n){if(r.canReuseMarkup(e,u(t)))return;c(9!==t.nodeType,"You're trying to render a component to the document using server rendering but the checksum was invalid. This usually means you rendered a different component type or props on the client from the one on the server, or your render() methods are impure. React cannot handle this case due to cross-browser quirks by rendering at the document root. You should look for environment dependent code in your components and ensure the props are the same client and server side."),console.warn("React attempted to use reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on the server was not what the client was expecting. React injected new markup to compensate which works but you have lost many of the benefits of server rendering. Instead, figure out why the markup being generated is different on the client or server.")}c(9!==t.nodeType,"You're trying to render a component to the document but you didn't use server rendering. We can't do this without using server rendering due to cross-browser quirks. See renderComponentToString() for server rendering."),l(t,e)})};t.exports=p},{"./ReactDOMIDOperations":41,"./ReactMarkupChecksum":62,"./ReactMount":63,"./ReactPerf":68,"./ReactReconcileTransaction":74,"./getReactRootElementInContainer":120,"./invariant":126,"./setInnerHTML":140}],34:[function(e,t,n){"use strict";function o(e){var t=e._owner||null;return t&&t.constructor&&t.constructor.displayName?" Check the render method of `"+t.constructor.displayName+"`.":""}function r(e,t,n){for(var o in t)t.hasOwnProperty(o)&&_("function"==typeof t[o],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactCompositeComponent",w[n],o)}function a(e,t){var n=B.hasOwnProperty(t)?B[t]:null;V.hasOwnProperty(t)&&_(n===U.OVERRIDE_BASE,"ReactCompositeComponentInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e.hasOwnProperty(t)&&_(n===U.DEFINE_MANY||n===U.DEFINE_MANY_MERGED,"ReactCompositeComponentInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function i(e){var t=e._compositeLifeCycleState;_(e.isMounted()||t===j.MOUNTING,"replaceState(...): Can only update a mounted or mounting component."),_(null==h.current,"replaceState(...): Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."),_(t!==j.UNMOUNTING,"replaceState(...): Cannot update while unmounting component. This usually means you called setState() on an unmounted component.")}function s(e,t){if(t){_(!C.isValidFactory(t),"ReactCompositeComponent: You're attempting to use a component class as a mixin. Instead, just use a regular object."),_(!m.isValidElement(t),"ReactCompositeComponent: You're attempting to use a component as a mixin. Instead, just use a regular object.");var n=e.prototype;t.hasOwnProperty(A)&&F.mixins(e,t.mixins);for(var o in t)if(t.hasOwnProperty(o)&&o!==A){var r=t[o];if(a(n,o),F.hasOwnProperty(o))F[o](e,r);else{var i=B.hasOwnProperty(o),s=n.hasOwnProperty(o),u=r&&r.__reactDontBind,c="function"==typeof r,d=c&&!i&&!s&&!u;if(d)n.__reactAutoBindMap||(n.__reactAutoBindMap={}),n.__reactAutoBindMap[o]=r,n[o]=r;else if(s){var f=B[o];_(i&&(f===U.DEFINE_MANY_MERGED||f===U.DEFINE_MANY),"ReactCompositeComponent: Unexpected spec policy %s for key %s when mixing in component specs.",f,o),f===U.DEFINE_MANY_MERGED?n[o]=l(n[o],r):f===U.DEFINE_MANY&&(n[o]=p(n[o],r))}else n[o]=r,"function"==typeof r&&t.displayName&&(n[o].displayName=t.displayName+"_"+o)}}}}function u(e,t){if(t)for(var n in t){var o=t[n];if(t.hasOwnProperty(n)){var r=n in F;_(!r,'ReactCompositeComponent: 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 e;_(!a,"ReactCompositeComponent: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=o}}}function c(e,t){return _(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeObjectsWithNoDuplicateKeys(): Cannot merge non-objects"),N(t,function(t,n){_(void 0===e[n],"mergeObjectsWithNoDuplicateKeys(): 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),e[n]=t}),e}function l(e,t){return function(){var n=e.apply(this,arguments),o=t.apply(this,arguments);return null==n?o:null==o?n:c(n,o)}}function p(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}var d=e("./ReactComponent"),f=e("./ReactContext"),h=e("./ReactCurrentOwner"),m=e("./ReactElement"),v=e("./ReactElementValidator"),y=e("./ReactEmptyComponent"),g=e("./ReactErrorUtils"),C=e("./ReactLegacyElement"),E=e("./ReactOwner"),R=e("./ReactPerf"),b=e("./ReactPropTransferer"),M=e("./ReactPropTypeLocations"),w=e("./ReactPropTypeLocationNames"),D=e("./ReactUpdates"),x=e("./Object.assign"),O=e("./instantiateReactComponent"),_=e("./invariant"),P=e("./keyMirror"),T=e("./keyOf"),I=e("./monitorCodeUse"),N=e("./mapObject"),S=e("./shouldUpdateReactComponent"),k=e("./warning"),A=T({mixins:null}),U=P({DEFINE_ONCE:null,DEFINE_MANY:null,OVERRIDE_BASE:null,DEFINE_MANY_MERGED:null}),L=[],B={mixins:U.DEFINE_MANY,statics:U.DEFINE_MANY,propTypes:U.DEFINE_MANY,contextTypes:U.DEFINE_MANY,childContextTypes:U.DEFINE_MANY,getDefaultProps:U.DEFINE_MANY_MERGED,getInitialState:U.DEFINE_MANY_MERGED,getChildContext:U.DEFINE_MANY_MERGED,render:U.DEFINE_ONCE,componentWillMount:U.DEFINE_MANY,componentDidMount:U.DEFINE_MANY,componentWillReceiveProps:U.DEFINE_MANY,shouldComponentUpdate:U.DEFINE_ONCE,componentWillUpdate:U.DEFINE_MANY,componentDidUpdate:U.DEFINE_MANY,componentWillUnmount:U.DEFINE_MANY,updateComponent:U.OVERRIDE_BASE},F={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n<t.length;n++)s(e,t[n])},childContextTypes:function(e,t){r(e,t,M.childContext),e.childContextTypes=x({},e.childContextTypes,t)},contextTypes:function(e,t){r(e,t,M.context),e.contextTypes=x({},e.contextTypes,t)},getDefaultProps:function(e,t){e.getDefaultProps?e.getDefaultProps=l(e.getDefaultProps,t):e.getDefaultProps=t},propTypes:function(e,t){r(e,t,M.prop),e.propTypes=x({},e.propTypes,t)},statics:function(e,t){u(e,t)}},j=P({MOUNTING:null,UNMOUNTING:null,RECEIVING_PROPS:null}),V={construct:function(e){d.Mixin.construct.apply(this,arguments),E.Mixin.construct.apply(this,arguments),this.state=null,this._pendingState=null,this.context=null,this._compositeLifeCycleState=null},isMounted:function(){return d.Mixin.isMounted.call(this)&&this._compositeLifeCycleState!==j.MOUNTING},mountComponent:R.measure("ReactCompositeComponent","mountComponent",function(e,t,n){d.Mixin.mountComponent.call(this,e,t,n),this._compositeLifeCycleState=j.MOUNTING,this.__reactAutoBindMap&&this._bindAutoBindMethods(),this.context=this._processContext(this._currentElement._context),this.props=this._processProps(this.props),this.state=this.getInitialState?this.getInitialState():null,_("object"==typeof this.state&&!Array.isArray(this.state),"%s.getInitialState(): must return an object or null",this.constructor.displayName||"ReactCompositeComponent"),this._pendingState=null,this._pendingForceUpdate=!1,this.componentWillMount&&(this.componentWillMount(),this._pendingState&&(this.state=this._pendingState,this._pendingState=null)),this._renderedComponent=O(this._renderValidatedComponent(),this._currentElement.type),this._compositeLifeCycleState=null;var o=this._renderedComponent.mountComponent(e,t,n+1);return this.componentDidMount&&t.getReactMountReady().enqueue(this.componentDidMount,this),o}),unmountComponent:function(){this._compositeLifeCycleState=j.UNMOUNTING,this.componentWillUnmount&&this.componentWillUnmount(),this._compositeLifeCycleState=null,this._renderedComponent.unmountComponent(),this._renderedComponent=null,d.Mixin.unmountComponent.call(this)},setState:function(e,t){_("object"==typeof e||null==e,"setState(...): takes an object of state variables to update."),k(null!=e,"setState(...): You passed an undefined or null state object; instead, use forceUpdate()."),this.replaceState(x({},this._pendingState||this.state,e),t)},replaceState:function(e,t){i(this),this._pendingState=e,this._compositeLifeCycleState!==j.MOUNTING&&D.enqueueUpdate(this,t)},_processContext:function(e){var t=null,n=this.constructor.contextTypes;if(n){t={};for(var o in n)t[o]=e[o];this._checkPropTypes(n,t,M.context)}return t},_processChildContext:function(e){var t=this.getChildContext&&this.getChildContext(),n=this.constructor.displayName||"ReactCompositeComponent";if(t){_("object"==typeof this.constructor.childContextTypes,"%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().",n),this._checkPropTypes(this.constructor.childContextTypes,t,M.childContext);for(var o in t)_(o in this.constructor.childContextTypes,'%s.getChildContext(): key "%s" is not defined in childContextTypes.',n,o);return x({},e,t)}return e},_processProps:function(e){var t=this.constructor.propTypes;return t&&this._checkPropTypes(t,e,M.prop),e},_checkPropTypes:function(e,t,n){var r=this.constructor.displayName;for(var a in e)if(e.hasOwnProperty(a)){var i=e[a](t,a,r,n);if(i instanceof Error){var s=o(this);k(!1,i.message+s)}}},performUpdateIfNecessary:function(e){var t=this._compositeLifeCycleState;if(t!==j.MOUNTING&&t!==j.RECEIVING_PROPS&&(null!=this._pendingElement||null!=this._pendingState||this._pendingForceUpdate)){var n=this.context,o=this.props,r=this._currentElement;null!=this._pendingElement&&(r=this._pendingElement,n=this._processContext(r._context),o=this._processProps(r.props),this._pendingElement=null,this._compositeLifeCycleState=j.RECEIVING_PROPS,this.componentWillReceiveProps&&this.componentWillReceiveProps(o,n)),this._compositeLifeCycleState=null;var a=this._pendingState||this.state;this._pendingState=null;var i=this._pendingForceUpdate||!this.shouldComponentUpdate||this.shouldComponentUpdate(o,a,n);void 0===i&&console.warn((this.constructor.displayName||"ReactCompositeComponent")+".shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false."),i?(this._pendingForceUpdate=!1,this._performComponentUpdate(r,o,a,n,e)):(this._currentElement=r,this.props=o,this.state=a,this.context=n,this._owner=r._owner)}},_performComponentUpdate:function(e,t,n,o,r){var a=this._currentElement,i=this.props,s=this.state,u=this.context;this.componentWillUpdate&&this.componentWillUpdate(t,n,o),this._currentElement=e,this.props=t,this.state=n,this.context=o,this._owner=e._owner,this.updateComponent(r,a),this.componentDidUpdate&&r.getReactMountReady().enqueue(this.componentDidUpdate.bind(this,i,s,u),this)},receiveComponent:function(e,t){e===this._currentElement&&null!=e._owner||d.Mixin.receiveComponent.call(this,e,t)},updateComponent:R.measure("ReactCompositeComponent","updateComponent",function(e,t){d.Mixin.updateComponent.call(this,e,t);var n=this._renderedComponent,o=n._currentElement,r=this._renderValidatedComponent();if(S(o,r))n.receiveComponent(r,e);else{var a=this._rootNodeID,i=n._rootNodeID;n.unmountComponent(),this._renderedComponent=O(r,this._currentElement.type);var s=this._renderedComponent.mountComponent(a,e,this._mountDepth+1);d.BackendIDOperations.dangerouslyReplaceNodeWithMarkupByID(i,s)}}),forceUpdate:function(e){var t=this._compositeLifeCycleState;_(this.isMounted()||t===j.MOUNTING,"forceUpdate(...): Can only force an update on mounted or mounting components."),_(t!==j.UNMOUNTING&&null==h.current,"forceUpdate(...): Cannot force an update while unmounting component or within a `render` function."),this._pendingForceUpdate=!0,D.enqueueUpdate(this,e)},_renderValidatedComponent:R.measure("ReactCompositeComponent","_renderValidatedComponent",function(){var e,t=f.current;f.current=this._processChildContext(this._currentElement._context),h.current=this;try{e=this.render(),null===e||!1===e?(e=y.getEmptyComponent(),y.registerNullComponentID(this._rootNodeID)):y.deregisterNullComponentID(this._rootNodeID)}finally{f.current=t,h.current=null}return _(m.isValidElement(e),"%s.render(): A valid ReactComponent must be returned. You may have returned undefined, an array or some other invalid object.",this.constructor.displayName||"ReactCompositeComponent"),e}),_bindAutoBindMethods:function(){for(var e in this.__reactAutoBindMap)if(this.__reactAutoBindMap.hasOwnProperty(e)){var t=this.__reactAutoBindMap[e];this[e]=this._bindAutoBindMethod(g.guard(t,this.constructor.displayName+"."+e))}},_bindAutoBindMethod:function(e){var t=this,n=e.bind(t);n.__reactBoundContext=t,n.__reactBoundMethod=e,n.__reactBoundArguments=null;var o=t.constructor.displayName,r=n.bind;return n.bind=function(a){for(var i=[],s=1,u=arguments.length;s<u;s++)i.push(arguments[s]);if(a!==t&&null!==a)I("react_bind_warning",{component:o}),console.warn("bind(): React component methods may only be bound to the component instance. See "+o);else if(!i.length)return I("react_bind_warning",{component:o}),console.warn("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 "+o),n;var c=r.apply(n,arguments);return c.__reactBoundContext=t,c.__reactBoundMethod=e,c.__reactBoundArguments=i,c},n}},H=function(){};x(H.prototype,d.Mixin,E.Mixin,b.Mixin,V);var W={LifeCycle:j,Base:H,createClass:function(e){var t=function(e){};t.prototype=new H,t.prototype.constructor=t,L.forEach(s.bind(null,t)),s(t,e),t.getDefaultProps&&(t.defaultProps=t.getDefaultProps()),_(t.prototype.render,"createClass(...): Class specification must implement a `render` method."),t.prototype.componentShouldUpdate&&(I("react_component_should_update_warning",{component:e.displayName}),console.warn((e.displayName||"A component")+" 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."));for(var n in B)t.prototype[n]||(t.prototype[n]=null);return C.wrapFactory(v.createFactory(t))},injection:{injectMixin:function(e){L.push(e)}}};t.exports=W},{"./Object.assign":27,"./ReactComponent":32,"./ReactContext":35,"./ReactCurrentOwner":36,"./ReactElement":52,"./ReactElementValidator":53,"./ReactEmptyComponent":54,"./ReactErrorUtils":55,"./ReactLegacyElement":61,"./ReactOwner":67,"./ReactPerf":68,"./ReactPropTransferer":69,"./ReactPropTypeLocationNames":70,"./ReactPropTypeLocations":71,"./ReactUpdates":79,"./instantiateReactComponent":125,"./invariant":126,"./keyMirror":132,"./keyOf":133,"./mapObject":134,"./monitorCodeUse":136,"./shouldUpdateReactComponent":142,"./warning":145}],35:[function(e,t,n){"use strict";var o=e("./Object.assign"),r={current:{},withContext:function(e,t){var n,a=r.current;r.current=o({},a,e);try{n=t()}finally{r.current=a}return n}};t.exports=r},{"./Object.assign":27}],36:[function(e,t,n){"use strict";var o={current:null};t.exports=o},{}],37:[function(e,t,n){"use strict";function o(e){return a.markNonLegacyFactory(r.createFactory(e))}var r=(e("./ReactElement"),e("./ReactElementValidator")),a=e("./ReactLegacyElement"),i=e("./mapObject"),s=i({a:"a",abbr:"abbr",address:"address",area:"area",article:"article",aside:"aside",audio:"audio",b:"b",base:"base",bdi:"bdi",bdo:"bdo",big:"big",blockquote:"blockquote",body:"body",br:"br",button:"button",canvas:"canvas",caption:"caption",cite:"cite",code:"code",col:"col",colgroup:"colgroup",data:"data",datalist:"datalist",dd:"dd",del:"del",details:"details",dfn:"dfn",dialog:"dialog",div:"div",dl:"dl",dt:"dt",em:"em",embed:"embed",fieldset:"fieldset",figcaption:"figcaption",figure:"figure",footer:"footer",form:"form",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",head:"head",header:"header",hr:"hr",html:"html",i:"i",iframe:"iframe",img:"img",input:"input",ins:"ins",kbd:"kbd",keygen:"keygen",label:"label",legend:"legend",li:"li",link:"link",main:"main",map:"map",mark:"mark",menu:"menu",menuitem:"menuitem",meta:"meta",meter:"meter",nav:"nav",noscript:"noscript",object:"object",ol:"ol",optgroup:"optgroup",option:"option",output:"output",p:"p",param:"param",picture:"picture",pre:"pre",progress:"progress",q:"q",rp:"rp",rt:"rt",ruby:"ruby",s:"s",samp:"samp",script:"script",section:"section",select:"select",small:"small",source:"source",span:"span",strong:"strong",style:"style",sub:"sub",summary:"summary",sup:"sup",table:"table",tbody:"tbody",td:"td",textarea:"textarea",tfoot:"tfoot",th:"th",thead:"thead",time:"time",title:"title",tr:"tr",track:"track",u:"u",ul:"ul",var:"var",video:"video",wbr:"wbr",circle:"circle",defs:"defs",ellipse:"ellipse",g:"g",line:"line",
3
+ linearGradient:"linearGradient",mask:"mask",path:"path",pattern:"pattern",polygon:"polygon",polyline:"polyline",radialGradient:"radialGradient",rect:"rect",stop:"stop",svg:"svg",text:"text",tspan:"tspan"},o);t.exports=s},{"./ReactElement":52,"./ReactElementValidator":53,"./ReactLegacyElement":61,"./mapObject":134}],38:[function(e,t,n){"use strict";var o=e("./AutoFocusMixin"),r=e("./ReactBrowserComponentMixin"),a=e("./ReactCompositeComponent"),i=e("./ReactElement"),s=e("./ReactDOM"),u=e("./keyMirror"),c=i.createFactory(s.button.type),l=u({onClick:!0,onDoubleClick:!0,onMouseDown:!0,onMouseMove:!0,onMouseUp:!0,onClickCapture:!0,onDoubleClickCapture:!0,onMouseDownCapture:!0,onMouseMoveCapture:!0,onMouseUpCapture:!0}),p=a.createClass({displayName:"ReactDOMButton",mixins:[o,r],render:function(){var e={};for(var t in this.props)!this.props.hasOwnProperty(t)||this.props.disabled&&l[t]||(e[t]=this.props[t]);return c(e,this.props.children)}});t.exports=p},{"./AutoFocusMixin":2,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52,"./keyMirror":132}],39:[function(e,t,n){"use strict";function o(e){e&&(g(null==e.children||null==e.dangerouslySetInnerHTML,"Can only set one of `children` or `props.dangerouslySetInnerHTML`."),e.contentEditable&&null!=e.children&&console.warn("A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional."),g(null==e.style||"object"==typeof e.style,"The `style` prop expects a mapping from style properties to values, not a string."))}function r(e,t,n,o){"onScroll"!==t||C("scroll",!0)||(R("react_no_scroll_event"),console.warn("This browser doesn't support the `onScroll` event"));var r=f.findReactContainerForID(e);if(r){var a=r.nodeType===O?r.ownerDocument:r;M(t,a)}o.getPutListenerQueue().enqueuePutListener(e,t,n)}function a(e){I.call(T,e)||(g(P.test(e),"Invalid tag: %s",e),T[e]=!0)}function i(e){a(e),this._tag=e,this.tagName=e.toUpperCase()}var s=e("./CSSPropertyOperations"),u=e("./DOMProperty"),c=e("./DOMPropertyOperations"),l=e("./ReactBrowserComponentMixin"),p=e("./ReactComponent"),d=e("./ReactBrowserEventEmitter"),f=e("./ReactMount"),h=e("./ReactMultiChild"),m=e("./ReactPerf"),v=e("./Object.assign"),y=e("./escapeTextForBrowser"),g=e("./invariant"),C=e("./isEventSupported"),E=e("./keyOf"),R=e("./monitorCodeUse"),b=d.deleteListener,M=d.listenTo,w=d.registrationNameModules,D={string:!0,number:!0},x=E({style:null}),O=1,_={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},P=/^[a-zA-Z][a-zA-Z:_\.\-\d]*$/,T={},I={}.hasOwnProperty;i.displayName="ReactDOMComponent",i.Mixin={mountComponent:m.measure("ReactDOMComponent","mountComponent",function(e,t,n){p.Mixin.mountComponent.call(this,e,t,n),o(this.props);var r=_[this._tag]?"":"</"+this._tag+">";return this._createOpenTagMarkupAndPutListeners(t)+this._createContentMarkup(t)+r}),_createOpenTagMarkupAndPutListeners:function(e){var t=this.props,n="<"+this._tag;for(var o in t)if(t.hasOwnProperty(o)){var a=t[o];if(null!=a)if(w.hasOwnProperty(o))r(this._rootNodeID,o,a,e);else{o===x&&(a&&(a=t.style=v({},t.style)),a=s.createMarkupForStyles(a));var i=c.createMarkupForProperty(o,a);i&&(n+=" "+i)}}return e.renderToStaticMarkup?n+">":n+" "+c.createMarkupForID(this._rootNodeID)+">"},_createContentMarkup:function(e){var t=this.props.dangerouslySetInnerHTML;if(null!=t){if(null!=t.__html)return t.__html}else{var n=D[typeof this.props.children]?this.props.children:null,o=null!=n?null:this.props.children;if(null!=n)return y(n);if(null!=o){return this.mountChildren(o,e).join("")}}return""},receiveComponent:function(e,t){e===this._currentElement&&null!=e._owner||p.Mixin.receiveComponent.call(this,e,t)},updateComponent:m.measure("ReactDOMComponent","updateComponent",function(e,t){o(this._currentElement.props),p.Mixin.updateComponent.call(this,e,t),this._updateDOMProperties(t.props,e),this._updateDOMChildren(t.props,e)}),_updateDOMProperties:function(e,t){var n,o,a,i=this.props;for(n in e)if(!i.hasOwnProperty(n)&&e.hasOwnProperty(n))if(n===x){var s=e[n];for(o in s)s.hasOwnProperty(o)&&(a=a||{},a[o]="")}else w.hasOwnProperty(n)?b(this._rootNodeID,n):(u.isStandardName[n]||u.isCustomAttribute(n))&&p.BackendIDOperations.deletePropertyByID(this._rootNodeID,n);for(n in i){var c=i[n],l=e[n];if(i.hasOwnProperty(n)&&c!==l)if(n===x)if(c&&(c=i.style=v({},c)),l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(a=a||{},a[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(a=a||{},a[o]=c[o])}else a=c;else w.hasOwnProperty(n)?r(this._rootNodeID,n,c,t):(u.isStandardName[n]||u.isCustomAttribute(n))&&p.BackendIDOperations.updatePropertyByID(this._rootNodeID,n,c)}a&&p.BackendIDOperations.updateStylesByID(this._rootNodeID,a)},_updateDOMChildren:function(e,t){var n=this.props,o=D[typeof e.children]?e.children:null,r=D[typeof n.children]?n.children:null,a=e.dangerouslySetInnerHTML&&e.dangerouslySetInnerHTML.__html,i=n.dangerouslySetInnerHTML&&n.dangerouslySetInnerHTML.__html,s=null!=o?null:e.children,u=null!=r?null:n.children,c=null!=o||null!=a,l=null!=r||null!=i;null!=s&&null==u?this.updateChildren(null,t):c&&!l&&this.updateTextContent(""),null!=r?o!==r&&this.updateTextContent(""+r):null!=i?a!==i&&p.BackendIDOperations.updateInnerHTMLByID(this._rootNodeID,i):null!=u&&this.updateChildren(u,t)},unmountComponent:function(){this.unmountChildren(),d.deleteAllListeners(this._rootNodeID),p.Mixin.unmountComponent.call(this)}},v(i.prototype,p.Mixin,i.Mixin,h.Mixin,l),t.exports=i},{"./CSSPropertyOperations":5,"./DOMProperty":11,"./DOMPropertyOperations":12,"./Object.assign":27,"./ReactBrowserComponentMixin":29,"./ReactBrowserEventEmitter":30,"./ReactComponent":32,"./ReactMount":63,"./ReactMultiChild":64,"./ReactPerf":68,"./escapeTextForBrowser":109,"./invariant":126,"./isEventSupported":127,"./keyOf":133,"./monitorCodeUse":136}],40:[function(e,t,n){"use strict";var o=e("./EventConstants"),r=e("./LocalEventTrapMixin"),a=e("./ReactBrowserComponentMixin"),i=e("./ReactCompositeComponent"),s=e("./ReactElement"),u=e("./ReactDOM"),c=s.createFactory(u.form.type),l=i.createClass({displayName:"ReactDOMForm",mixins:[a,r],render:function(){return c(this.props)},componentDidMount:function(){this.trapBubbledEvent(o.topLevelTypes.topReset,"reset"),this.trapBubbledEvent(o.topLevelTypes.topSubmit,"submit")}});t.exports=l},{"./EventConstants":16,"./LocalEventTrapMixin":25,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52}],41:[function(e,t,n){"use strict";var o=e("./CSSPropertyOperations"),r=e("./DOMChildrenOperations"),a=e("./DOMPropertyOperations"),i=e("./ReactMount"),s=e("./ReactPerf"),u=e("./invariant"),c=e("./setInnerHTML"),l={dangerouslySetInnerHTML:"`dangerouslySetInnerHTML` must be set using `updateInnerHTMLByID()`.",style:"`style` must be set using `updateStylesByID()`."},p={updatePropertyByID:s.measure("ReactDOMIDOperations","updatePropertyByID",function(e,t,n){var o=i.getNode(e);u(!l.hasOwnProperty(t),"updatePropertyByID(...): %s",l[t]),null!=n?a.setValueForProperty(o,t,n):a.deleteValueForProperty(o,t)}),deletePropertyByID:s.measure("ReactDOMIDOperations","deletePropertyByID",function(e,t,n){var o=i.getNode(e);u(!l.hasOwnProperty(t),"updatePropertyByID(...): %s",l[t]),a.deleteValueForProperty(o,t,n)}),updateStylesByID:s.measure("ReactDOMIDOperations","updateStylesByID",function(e,t){var n=i.getNode(e);o.setValueForStyles(n,t)}),updateInnerHTMLByID:s.measure("ReactDOMIDOperations","updateInnerHTMLByID",function(e,t){var n=i.getNode(e);c(n,t)}),updateTextContentByID:s.measure("ReactDOMIDOperations","updateTextContentByID",function(e,t){var n=i.getNode(e);r.updateTextContent(n,t)}),dangerouslyReplaceNodeWithMarkupByID:s.measure("ReactDOMIDOperations","dangerouslyReplaceNodeWithMarkupByID",function(e,t){var n=i.getNode(e);r.dangerouslyReplaceNodeWithMarkup(n,t)}),dangerouslyProcessChildrenUpdates:s.measure("ReactDOMIDOperations","dangerouslyProcessChildrenUpdates",function(e,t){for(var n=0;n<e.length;n++)e[n].parentNode=i.getNode(e[n].parentID);r.processUpdates(e,t)})};t.exports=p},{"./CSSPropertyOperations":5,"./DOMChildrenOperations":10,"./DOMPropertyOperations":12,"./ReactMount":63,"./ReactPerf":68,"./invariant":126,"./setInnerHTML":140}],42:[function(e,t,n){"use strict";var o=e("./EventConstants"),r=e("./LocalEventTrapMixin"),a=e("./ReactBrowserComponentMixin"),i=e("./ReactCompositeComponent"),s=e("./ReactElement"),u=e("./ReactDOM"),c=s.createFactory(u.img.type),l=i.createClass({displayName:"ReactDOMImg",tagName:"IMG",mixins:[a,r],render:function(){return c(this.props)},componentDidMount:function(){this.trapBubbledEvent(o.topLevelTypes.topLoad,"load"),this.trapBubbledEvent(o.topLevelTypes.topError,"error")}});t.exports=l},{"./EventConstants":16,"./LocalEventTrapMixin":25,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52}],43:[function(e,t,n){"use strict";function o(){this.isMounted()&&this.forceUpdate()}var r=e("./AutoFocusMixin"),a=e("./DOMPropertyOperations"),i=e("./LinkedValueUtils"),s=e("./ReactBrowserComponentMixin"),u=e("./ReactCompositeComponent"),c=e("./ReactElement"),l=e("./ReactDOM"),p=e("./ReactMount"),d=e("./ReactUpdates"),f=e("./Object.assign"),h=e("./invariant"),m=c.createFactory(l.input.type),v={},y=u.createClass({displayName:"ReactDOMInput",mixins:[r,i.Mixin,s],getInitialState:function(){var e=this.props.defaultValue;return{initialChecked:this.props.defaultChecked||!1,initialValue:null!=e?e:null}},render:function(){var e=f({},this.props);e.defaultChecked=null,e.defaultValue=null;var t=i.getValue(this);e.value=null!=t?t:this.state.initialValue;var n=i.getChecked(this);return e.checked=null!=n?n:this.state.initialChecked,e.onChange=this._handleChange,m(e,this.props.children)},componentDidMount:function(){var e=p.getID(this.getDOMNode());v[e]=this},componentWillUnmount:function(){var e=this.getDOMNode(),t=p.getID(e);delete v[t]},componentDidUpdate:function(e,t,n){var o=this.getDOMNode();null!=this.props.checked&&a.setValueForProperty(o,"checked",this.props.checked||!1);var r=i.getValue(this);null!=r&&a.setValueForProperty(o,"value",""+r)},_handleChange:function(e){var t,n=i.getOnChange(this);n&&(t=n.call(this,e)),d.asap(o,this);var r=this.props.name;if("radio"===this.props.type&&null!=r){for(var a=this.getDOMNode(),s=a;s.parentNode;)s=s.parentNode;for(var u=s.querySelectorAll("input[name="+JSON.stringify(""+r)+'][type="radio"]'),c=0,l=u.length;c<l;c++){var f=u[c];if(f!==a&&f.form===a.form){var m=p.getID(f);h(m,"ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.");var y=v[m];h(y,"ReactDOMInput: Unknown radio button ID %s.",m),d.asap(o,y)}}}return t}});t.exports=y},{"./AutoFocusMixin":2,"./DOMPropertyOperations":12,"./LinkedValueUtils":24,"./Object.assign":27,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52,"./ReactMount":63,"./ReactUpdates":79,"./invariant":126}],44:[function(e,t,n){"use strict";var o=e("./ReactBrowserComponentMixin"),r=e("./ReactCompositeComponent"),a=e("./ReactElement"),i=e("./ReactDOM"),s=e("./warning"),u=a.createFactory(i.option.type),c=r.createClass({displayName:"ReactDOMOption",mixins:[o],componentWillMount:function(){s(null==this.props.selected,"Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.")},render:function(){return u(this.props,this.props.children)}});t.exports=c},{"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52,"./warning":145}],45:[function(e,t,n){"use strict";function o(){this.isMounted()&&(this.setState({value:this._pendingValue}),this._pendingValue=0)}function r(e,t,n){if(null!=e[t])if(e.multiple){if(!Array.isArray(e[t]))return new Error("The `"+t+"` prop supplied to <select> must be an array if `multiple` is true.")}else if(Array.isArray(e[t]))return new Error("The `"+t+"` prop supplied to <select> must be a scalar value if `multiple` is false.")}function a(e,t){var n,o,r,a=e.props.multiple,i=null!=t?t:e.state.value,s=e.getDOMNode().options;if(a)for(n={},o=0,r=i.length;o<r;++o)n[""+i[o]]=!0;else n=""+i;for(o=0,r=s.length;o<r;o++){var u=a?n.hasOwnProperty(s[o].value):s[o].value===n;u!==s[o].selected&&(s[o].selected=u)}}var i=e("./AutoFocusMixin"),s=e("./LinkedValueUtils"),u=e("./ReactBrowserComponentMixin"),c=e("./ReactCompositeComponent"),l=e("./ReactElement"),p=e("./ReactDOM"),d=e("./ReactUpdates"),f=e("./Object.assign"),h=l.createFactory(p.select.type),m=c.createClass({displayName:"ReactDOMSelect",mixins:[i,s.Mixin,u],propTypes:{defaultValue:r,value:r},getInitialState:function(){return{value:this.props.defaultValue||(this.props.multiple?[]:"")}},componentWillMount:function(){this._pendingValue=null},componentWillReceiveProps:function(e){!this.props.multiple&&e.multiple?this.setState({value:[this.state.value]}):this.props.multiple&&!e.multiple&&this.setState({value:this.state.value[0]})},render:function(){var e=f({},this.props);return e.onChange=this._handleChange,e.value=null,h(e,this.props.children)},componentDidMount:function(){a(this,s.getValue(this))},componentDidUpdate:function(e){var t=s.getValue(this),n=!!e.multiple,o=!!this.props.multiple;null==t&&n===o||a(this,t)},_handleChange:function(e){var t,n=s.getOnChange(this);n&&(t=n.call(this,e));var r;if(this.props.multiple){r=[];for(var a=e.target.options,i=0,u=a.length;i<u;i++)a[i].selected&&r.push(a[i].value)}else r=e.target.value;return this._pendingValue=r,d.asap(o,this),t}});t.exports=m},{"./AutoFocusMixin":2,"./LinkedValueUtils":24,"./Object.assign":27,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52,"./ReactUpdates":79}],46:[function(e,t,n){"use strict";function o(e,t,n,o){return e===n&&t===o}function r(e){var t=document.selection,n=t.createRange(),o=n.text.length,r=n.duplicate();r.moveToElementText(e),r.setEndPoint("EndToStart",n);var a=r.text.length;return{start:a,end:a+o}}function a(e){var t=window.getSelection&&window.getSelection();if(!t||0===t.rangeCount)return null;var n=t.anchorNode,r=t.anchorOffset,a=t.focusNode,i=t.focusOffset,s=t.getRangeAt(0),u=o(t.anchorNode,t.anchorOffset,t.focusNode,t.focusOffset),c=u?0:s.toString().length,l=s.cloneRange();l.selectNodeContents(e),l.setEnd(s.startContainer,s.startOffset);var p=o(l.startContainer,l.startOffset,l.endContainer,l.endOffset),d=p?0:l.toString().length,f=d+c,h=document.createRange();h.setStart(n,r),h.setEnd(a,i);var m=h.collapsed;return{start:m?f:d,end:m?d:f}}function i(e,t){var n,o,r=document.selection.createRange().duplicate();void 0===t.end?(n=t.start,o=n):t.start>t.end?(n=t.end,o=t.start):(n=t.start,o=t.end),r.moveToElementText(e),r.moveStart("character",n),r.setEndPoint("EndToStart",r),r.moveEnd("character",o-n),r.select()}function s(e,t){if(window.getSelection){var n=window.getSelection(),o=e[l()].length,r=Math.min(t.start,o),a=void 0===t.end?r:Math.min(t.end,o);if(!n.extend&&r>a){var i=a;a=r,r=i}var s=c(e,r),u=c(e,a);if(s&&u){var p=document.createRange();p.setStart(s.node,s.offset),n.removeAllRanges(),r>a?(n.addRange(p),n.extend(u.node,u.offset)):(p.setEnd(u.node,u.offset),n.addRange(p))}}}var u=e("./ExecutionEnvironment"),c=e("./getNodeForCharacterOffset"),l=e("./getTextContentAccessor"),p=u.canUseDOM&&document.selection,d={getOffsets:p?r:a,setOffsets:p?i:s};t.exports=d},{"./ExecutionEnvironment":22,"./getNodeForCharacterOffset":119,"./getTextContentAccessor":121}],47:[function(e,t,n){"use strict";function o(){this.isMounted()&&this.forceUpdate()}var r=e("./AutoFocusMixin"),a=e("./DOMPropertyOperations"),i=e("./LinkedValueUtils"),s=e("./ReactBrowserComponentMixin"),u=e("./ReactCompositeComponent"),c=e("./ReactElement"),l=e("./ReactDOM"),p=e("./ReactUpdates"),d=e("./Object.assign"),f=e("./invariant"),h=e("./warning"),m=c.createFactory(l.textarea.type),v=u.createClass({displayName:"ReactDOMTextarea",mixins:[r,i.Mixin,s],getInitialState:function(){var e=this.props.defaultValue,t=this.props.children;null!=t&&(h(!1,"Use the `defaultValue` or `value` props instead of setting children on <textarea>."),f(null==e,"If you supply `defaultValue` on a <textarea>, do not pass children."),Array.isArray(t)&&(f(t.length<=1,"<textarea> can only have at most one child."),t=t[0]),e=""+t),null==e&&(e="");var n=i.getValue(this);return{initialValue:""+(null!=n?n:e)}},render:function(){var e=d({},this.props);return f(null==e.dangerouslySetInnerHTML,"`dangerouslySetInnerHTML` does not make sense on <textarea>."),e.defaultValue=null,e.value=null,e.onChange=this._handleChange,m(e,this.state.initialValue)},componentDidUpdate:function(e,t,n){var o=i.getValue(this);if(null!=o){var r=this.getDOMNode();a.setValueForProperty(r,"value",""+o)}},_handleChange:function(e){var t,n=i.getOnChange(this);return n&&(t=n.call(this,e)),p.asap(o,this),t}});t.exports=v},{"./AutoFocusMixin":2,"./DOMPropertyOperations":12,"./LinkedValueUtils":24,"./Object.assign":27,"./ReactBrowserComponentMixin":29,"./ReactCompositeComponent":34,"./ReactDOM":37,"./ReactElement":52,"./ReactUpdates":79,"./invariant":126,"./warning":145}],48:[function(e,t,n){"use strict";function o(){this.reinitializeTransaction()}var r=e("./ReactUpdates"),a=e("./Transaction"),i=e("./Object.assign"),s=e("./emptyFunction"),u={initialize:s,close:function(){d.isBatchingUpdates=!1}},c={initialize:s,close:r.flushBatchedUpdates.bind(r)},l=[c,u];i(o.prototype,a.Mixin,{getTransactionWrappers:function(){return l}});var p=new o,d={isBatchingUpdates:!1,batchedUpdates:function(e,t,n){var o=d.isBatchingUpdates;d.isBatchingUpdates=!0,o?e(t,n):p.perform(e,null,t,n)}};t.exports=d},{"./Object.assign":27,"./ReactUpdates":79,"./Transaction":95,"./emptyFunction":107}],49:[function(e,t,n){"use strict";function o(){(D.EventEmitter.injectReactEventListener(w),D.EventPluginHub.injectEventPluginOrder(u),D.EventPluginHub.injectInstanceHandle(x),D.EventPluginHub.injectMount(O),D.EventPluginHub.injectEventPluginsByName({SimpleEventPlugin:T,EnterLeaveEventPlugin:c,ChangeEventPlugin:a,CompositionEventPlugin:s,MobileSafariClickEventPlugin:d,SelectEventPlugin:_,BeforeInputEventPlugin:r}),D.NativeComponent.injectGenericComponentClass(v),D.NativeComponent.injectComponentClasses({button:y,form:g,img:C,input:E,option:R,select:b,textarea:M,html:N("html"),head:N("head"),body:N("body")}),D.CompositeComponent.injectMixin(f),D.DOMProperty.injectDOMPropertyConfig(p),D.DOMProperty.injectDOMPropertyConfig(I),D.EmptyComponent.injectEmptyComponent("noscript"),D.Updates.injectReconcileTransaction(h.ReactReconcileTransaction),D.Updates.injectBatchingStrategy(m),D.RootIndex.injectCreateReactRootIndex(l.canUseDOM?i.createReactRootIndex:P.createReactRootIndex),D.Component.injectEnvironment(h),/[?&]react_perf\b/.test(l.canUseDOM&&window.location.href||""))&&e("./ReactDefaultPerf").start()}var r=e("./BeforeInputEventPlugin"),a=e("./ChangeEventPlugin"),i=e("./ClientReactRootIndex"),s=e("./CompositionEventPlugin"),u=e("./DefaultEventPluginOrder"),c=e("./EnterLeaveEventPlugin"),l=e("./ExecutionEnvironment"),p=e("./HTMLDOMPropertyConfig"),d=e("./MobileSafariClickEventPlugin"),f=e("./ReactBrowserComponentMixin"),h=e("./ReactComponentBrowserEnvironment"),m=e("./ReactDefaultBatchingStrategy"),v=e("./ReactDOMComponent"),y=e("./ReactDOMButton"),g=e("./ReactDOMForm"),C=e("./ReactDOMImg"),E=e("./ReactDOMInput"),R=e("./ReactDOMOption"),b=e("./ReactDOMSelect"),M=e("./ReactDOMTextarea"),w=e("./ReactEventListener"),D=e("./ReactInjection"),x=e("./ReactInstanceHandles"),O=e("./ReactMount"),_=e("./SelectEventPlugin"),P=e("./ServerReactRootIndex"),T=e("./SimpleEventPlugin"),I=e("./SVGDOMPropertyConfig"),N=e("./createFullPageComponent");t.exports={inject:o}},{"./BeforeInputEventPlugin":3,"./ChangeEventPlugin":7,"./ClientReactRootIndex":8,"./CompositionEventPlugin":9,"./DefaultEventPluginOrder":14,"./EnterLeaveEventPlugin":15,"./ExecutionEnvironment":22,"./HTMLDOMPropertyConfig":23,"./MobileSafariClickEventPlugin":26,"./ReactBrowserComponentMixin":29,"./ReactComponentBrowserEnvironment":33,"./ReactDOMButton":38,"./ReactDOMComponent":39,"./ReactDOMForm":40,"./ReactDOMImg":42,"./ReactDOMInput":43,"./ReactDOMOption":44,"./ReactDOMSelect":45,"./ReactDOMTextarea":47,"./ReactDefaultBatchingStrategy":48,"./ReactDefaultPerf":50,"./ReactEventListener":57,"./ReactInjection":58,"./ReactInstanceHandles":60,"./ReactMount":63,"./SVGDOMPropertyConfig":80,"./SelectEventPlugin":81,"./ServerReactRootIndex":82,"./SimpleEventPlugin":83,"./createFullPageComponent":103}],50:[function(e,t,n){"use strict";function o(e){return Math.floor(100*e)/100}function r(e,t,n){e[t]=(e[t]||0)+n}var a=e("./DOMProperty"),i=e("./ReactDefaultPerfAnalysis"),s=e("./ReactMount"),u=e("./ReactPerf"),c=e("./performanceNow"),l={_allMeasurements:[],_mountStack:[0],_injected:!1,start:function(){l._injected||u.injection.injectMeasure(l.measure),l._allMeasurements.length=0,u.enableMeasure=!0},stop:function(){u.enableMeasure=!1},getLastMeasurements:function(){return l._allMeasurements},printExclusive:function(e){e=e||l._allMeasurements;var t=i.getExclusiveSummary(e);console.table(t.map(function(e){return{"Component class name":e.componentName,"Total inclusive time (ms)":o(e.inclusive),"Exclusive mount time (ms)":o(e.exclusive),"Exclusive render time (ms)":o(e.render),"Mount time per instance (ms)":o(e.exclusive/e.count),"Render time per instance (ms)":o(e.render/e.count),Instances:e.count}}))},printInclusive:function(e){e=e||l._allMeasurements;var t=i.getInclusiveSummary(e);console.table(t.map(function(e){return{"Owner > component":e.componentName,"Inclusive time (ms)":o(e.time),Instances:e.count}})),console.log("Total time:",i.getTotalTime(e).toFixed(2)+" ms")},getMeasurementsSummaryMap:function(e){return i.getInclusiveSummary(e,!0).map(function(e){return{"Owner > component":e.componentName,"Wasted time (ms)":e.time,Instances:e.count}})},printWasted:function(e){e=e||l._allMeasurements,console.table(l.getMeasurementsSummaryMap(e)),console.log("Total time:",i.getTotalTime(e).toFixed(2)+" ms")},printDOM:function(e){e=e||l._allMeasurements;var t=i.getDOMSummary(e);console.table(t.map(function(e){var t={};return t[a.ID_ATTRIBUTE_NAME]=e.id,t.type=e.type,t.args=JSON.stringify(e.args),t})),console.log("Total time:",i.getTotalTime(e).toFixed(2)+" ms")},_recordWrite:function(e,t,n,o){var r=l._allMeasurements[l._allMeasurements.length-1].writes;r[e]=r[e]||[],r[e].push({type:t,time:n,args:o})},measure:function(e,t,n){return function(){for(var o=[],a=0,i=arguments.length;a<i;a++)o.push(arguments[a]);var u,p,d;if("_renderNewRootComponent"===t||"flushBatchedUpdates"===t)return l._allMeasurements.push({exclusive:{},inclusive:{},render:{},counts:{},writes:{},displayNames:{},totalTime:0}),d=c(),p=n.apply(this,o),l._allMeasurements[l._allMeasurements.length-1].totalTime=c()-d,p;if("ReactDOMIDOperations"===e||"ReactComponentBrowserEnvironment"===e){if(d=c(),p=n.apply(this,o),u=c()-d,"mountImageIntoNode"===t){var f=s.getID(o[1]);l._recordWrite(f,t,u,o[0])}else"dangerouslyProcessChildrenUpdates"===t?o[0].forEach(function(e){var t={};null!==e.fromIndex&&(t.fromIndex=e.fromIndex),null!==e.toIndex&&(t.toIndex=e.toIndex),null!==e.textContent&&(t.textContent=e.textContent),null!==e.markupIndex&&(t.markup=o[1][e.markupIndex]),l._recordWrite(e.parentID,e.type,u,t)}):l._recordWrite(o[0],t,u,Array.prototype.slice.call(o,1));return p}if("ReactCompositeComponent"!==e||"mountComponent"!==t&&"updateComponent"!==t&&"_renderValidatedComponent"!==t)return n.apply(this,o);var h="mountComponent"===t?o[0]:this._rootNodeID,m="_renderValidatedComponent"===t,v="mountComponent"===t,y=l._mountStack,g=l._allMeasurements[l._allMeasurements.length-1];if(m?r(g.counts,h,1):v&&y.push(0),d=c(),p=n.apply(this,o),u=c()-d,m)r(g.render,h,u);else if(v){var C=y.pop();y[y.length-1]+=u,r(g.exclusive,h,u-C),r(g.inclusive,h,u)}else r(g.inclusive,h,u);return g.displayNames[h]={current:this.constructor.displayName,owner:this._owner?this._owner.constructor.displayName:"<root>"},p}}};t.exports=l},{"./DOMProperty":11,"./ReactDefaultPerfAnalysis":51,"./ReactMount":63,"./ReactPerf":68,"./performanceNow":139}],51:[function(e,t,n){function o(e){for(var t=0,n=0;n<e.length;n++){t+=e[n].totalTime}return t}function r(e){for(var t=[],n=0;n<e.length;n++){var o,r=e[n];for(o in r.writes)r.writes[o].forEach(function(e){t.push({id:o,type:l[e.type]||e.type,args:e.args})})}return t}function a(e){for(var t,n={},o=0;o<e.length;o++){var r=e[o],a=u({},r.exclusive,r.inclusive);for(var i in a)t=r.displayNames[i].current,n[t]=n[t]||{componentName:t,inclusive:0,exclusive:0,render:0,count:0},r.render[i]&&(n[t].render+=r.render[i]),r.exclusive[i]&&(n[t].exclusive+=r.exclusive[i]),r.inclusive[i]&&(n[t].inclusive+=r.inclusive[i]),r.counts[i]&&(n[t].count+=r.counts[i])}var s=[];for(t in n)n[t].exclusive>=c&&s.push(n[t]);return s.sort(function(e,t){return t.exclusive-e.exclusive}),s}function i(e,t){for(var n,o={},r=0;r<e.length;r++){var a,i=e[r],l=u({},i.exclusive,i.inclusive);t&&(a=s(i));for(var p in l)if(!t||a[p]){var d=i.displayNames[p];n=d.owner+" > "+d.current,o[n]=o[n]||{componentName:n,time:0,count:0},i.inclusive[p]&&(o[n].time+=i.inclusive[p]),i.counts[p]&&(o[n].count+=i.counts[p])}}var f=[];for(n in o)o[n].time>=c&&f.push(o[n]);return f.sort(function(e,t){return t.time-e.time}),f}function s(e){var t={},n=Object.keys(e.writes),o=u({},e.exclusive,e.inclusive);for(var r in o){for(var a=!1,i=0;i<n.length;i++)if(0===n[i].indexOf(r)){a=!0;break}!a&&e.counts[r]>0&&(t[r]=!0)}return t}var u=e("./Object.assign"),c=1.2,l={mountImageIntoNode:"set innerHTML",INSERT_MARKUP:"set innerHTML",MOVE_EXISTING:"move",REMOVE_NODE:"remove",TEXT_CONTENT:"set textContent",updatePropertyByID:"update attribute",deletePropertyByID:"delete attribute",updateStylesByID:"update styles",updateInnerHTMLByID:"set innerHTML",dangerouslyReplaceNodeWithMarkupByID:"replace"},p={getExclusiveSummary:a,getInclusiveSummary:i,getDOMSummary:r,getTotalTime:o};t.exports=p},{"./Object.assign":27}],52:[function(e,t,n){"use strict";function o(e,t){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:function(){return this._store?this._store[t]:null},set:function(e){i(!1,"Don't set the "+t+" property of the component. Mutate the existing props object instead."),this._store[t]=e}})}var r=e("./ReactContext"),a=e("./ReactCurrentOwner"),i=e("./warning"),s={key:!0,ref:!0},u=!1,c=function(e,t,n,o,r,a){if(this.type=e,this.key=t,this.ref=n,this._owner=o,this._context=r,this._store={validated:!1,props:a},u)return void Object.freeze(this);this.props=a};c.prototype={_isReactElement:!0},function(e){try{var t={props:!0};for(var n in t)o(e,n);u=!0}catch(e){}}(c.prototype),c.createElement=function(e,t,n){var o,u={},l=null,p=null;if(null!=t){p=void 0===t.ref?null:t.ref,i(null!==t.key,"createElement(...): Encountered component with a `key` of null. In a future version, this will be treated as equivalent to the string 'null'; instead, provide an explicit key or use undefined."),l=null==t.key?null:""+t.key;for(o in t)t.hasOwnProperty(o)&&!s.hasOwnProperty(o)&&(u[o]=t[o])}var d=arguments.length-2;if(1===d)u.children=n;else if(d>1){for(var f=Array(d),h=0;h<d;h++)f[h]=arguments[h+2];u.children=f}if(e&&e.defaultProps){var m=e.defaultProps;for(o in m)void 0===u[o]&&(u[o]=m[o])}return new c(e,l,p,a.current,r.current,u)},c.createFactory=function(e){var t=c.createElement.bind(null,e);return t.type=e,t},c.cloneAndReplaceProps=function(e,t){var n=new c(e.type,e.key,e.ref,e._owner,e._context,t);return n._store.validated=e._store.validated,n},c.isValidElement=function(e){return!(!e||!e._isReactElement)},t.exports=c},{"./ReactContext":35,"./ReactCurrentOwner":36,"./warning":145}],53:[function(e,t,n){"use strict";function o(){var e=d.current;return e&&e.constructor.displayName||void 0}function r(e,t){e._store.validated||null!=e.key||(e._store.validated=!0,i("react_key_warning",'Each child in an array should have a unique "key" prop.',e,t))}function a(e,t,n){g.test(e)&&i("react_numeric_key_warning","Child objects should have non-numeric keys so ordering is preserved.",t,n)}function i(e,t,n,r){var a=o(),i=r.displayName,s=a||i,u=m[e];if(!u.hasOwnProperty(s)){u[s]=!0,t+=a?" Check the render method of "+a+".":" Check the renderComponent call using <"+i+">.";var c=null;n._owner&&n._owner!==d.current&&(c=n._owner.constructor.displayName,t+=" It was passed a child from "+c+"."),t+=" See http://fb.me/react-warning-keys for more information.",f(e,{component:s,componentOwner:c}),console.warn(t)}}function s(){var e=o()||"";v.hasOwnProperty(e)||(v[e]=!0,f("react_object_map_children"))}function u(e,t){if(Array.isArray(e))for(var n=0;n<e.length;n++){var o=e[n];l.isValidElement(o)&&r(o,t)}else if(l.isValidElement(e))e._store.validated=!0;else if(e&&"object"==typeof e){s();for(var i in e)a(i,e[i],t)}}function c(e,t,n,o){for(var r in t)if(t.hasOwnProperty(r)){var a;try{a=t[r](n,r,e,o)}catch(e){a=e}a instanceof Error&&!(a.message in y)&&(y[a.message]=!0,f("react_failed_descriptor_type_check",{message:a.message}))}}var l=e("./ReactElement"),p=e("./ReactPropTypeLocations"),d=e("./ReactCurrentOwner"),f=e("./monitorCodeUse"),h=e("./warning"),m={react_key_warning:{},react_numeric_key_warning:{}},v={},y={},g=/^\d+$/,C={createElement:function(e,t,n){h(null!=e,"React.createElement: type should not be null or undefined. It should be a string (for DOM elements) or a ReactClass (for composite components).");var o=l.createElement.apply(this,arguments);if(null==o)return o;for(var r=2;r<arguments.length;r++)u(arguments[r],e);if(e){var a=e.displayName;e.propTypes&&c(a,e.propTypes,o.props,p.prop),e.contextTypes&&c(a,e.contextTypes,o._context,p.context)}return o},createFactory:function(e){var t=C.createElement.bind(null,e);return t.type=e,t}};t.exports=C},{"./ReactCurrentOwner":36,"./ReactElement":52,"./ReactPropTypeLocations":71,"./monitorCodeUse":136,"./warning":145}],54:[function(e,t,n){"use strict";function o(){return c(s,"Trying to return null from a render, but no null placeholder component was injected."),s()}function r(e){l[e]=!0}function a(e){delete l[e]}function i(e){return l[e]}var s,u=e("./ReactElement"),c=e("./invariant"),l={},p={injectEmptyComponent:function(e){s=u.createFactory(e)}},d={deregisterNullComponentID:a,getEmptyComponent:o,injection:p,isNullComponentID:i,registerNullComponentID:r};t.exports=d},{"./ReactElement":52,"./invariant":126}],55:[function(e,t,n){"use strict";var o={guard:function(e,t){return e}};t.exports=o},{}],56:[function(e,t,n){"use strict";function o(e){r.enqueueEvents(e),r.processEventQueue()}var r=e("./EventPluginHub"),a={handleTopLevel:function(e,t,n,a){o(r.extractEvents(e,t,n,a))}};t.exports=a},{"./EventPluginHub":18}],57:[function(e,t,n){"use strict";function o(e){var t=p.getID(e),n=l.getReactRootIDFromNodeID(t),o=p.findReactContainerForID(n);return p.getFirstReactDOM(o)}function r(e,t){this.topLevelType=e,this.nativeEvent=t,this.ancestors=[]}function a(e){for(var t=p.getFirstReactDOM(h(e.nativeEvent))||window,n=t;n;)e.ancestors.push(n),n=o(n);for(var r=0,a=e.ancestors.length;r<a;r++){t=e.ancestors[r];var i=p.getID(t)||"";v._handleTopLevel(e.topLevelType,t,i,e.nativeEvent)}}function i(e){e(m(window))}var s=e("./EventListener"),u=e("./ExecutionEnvironment"),c=e("./PooledClass"),l=e("./ReactInstanceHandles"),p=e("./ReactMount"),d=e("./ReactUpdates"),f=e("./Object.assign"),h=e("./getEventTarget"),m=e("./getUnboundedScrollPosition");f(r.prototype,{destructor:function(){this.topLevelType=null,this.nativeEvent=null,this.ancestors.length=0}}),c.addPoolingTo(r,c.twoArgumentPooler);var v={_enabled:!0,_handleTopLevel:null,WINDOW_HANDLE:u.canUseDOM?window:null,setHandleTopLevel:function(e){v._handleTopLevel=e},setEnabled:function(e){v._enabled=!!e},isEnabled:function(){return v._enabled},trapBubbledEvent:function(e,t,n){var o=n
4
+ ;if(o)return s.listen(o,t,v.dispatchEvent.bind(null,e))},trapCapturedEvent:function(e,t,n){var o=n;if(o)return s.capture(o,t,v.dispatchEvent.bind(null,e))},monitorScrollValue:function(e){var t=i.bind(null,e);s.listen(window,"scroll",t),s.listen(window,"resize",t)},dispatchEvent:function(e,t){if(v._enabled){var n=r.getPooled(e,t);try{d.batchedUpdates(a,n)}finally{r.release(n)}}}};t.exports=v},{"./EventListener":17,"./ExecutionEnvironment":22,"./Object.assign":27,"./PooledClass":28,"./ReactInstanceHandles":60,"./ReactMount":63,"./ReactUpdates":79,"./getEventTarget":117,"./getUnboundedScrollPosition":122}],58:[function(e,t,n){"use strict";var o=e("./DOMProperty"),r=e("./EventPluginHub"),a=e("./ReactComponent"),i=e("./ReactCompositeComponent"),s=e("./ReactEmptyComponent"),u=e("./ReactBrowserEventEmitter"),c=e("./ReactNativeComponent"),l=e("./ReactPerf"),p=e("./ReactRootIndex"),d=e("./ReactUpdates"),f={Component:a.injection,CompositeComponent:i.injection,DOMProperty:o.injection,EmptyComponent:s.injection,EventPluginHub:r.injection,EventEmitter:u.injection,NativeComponent:c.injection,Perf:l.injection,RootIndex:p.injection,Updates:d.injection};t.exports=f},{"./DOMProperty":11,"./EventPluginHub":18,"./ReactBrowserEventEmitter":30,"./ReactComponent":32,"./ReactCompositeComponent":34,"./ReactEmptyComponent":54,"./ReactNativeComponent":66,"./ReactPerf":68,"./ReactRootIndex":75,"./ReactUpdates":79}],59:[function(e,t,n){"use strict";function o(e){return a(document.documentElement,e)}var r=e("./ReactDOMSelection"),a=e("./containsNode"),i=e("./focusNode"),s=e("./getActiveElement"),u={hasSelectionCapabilities:function(e){return e&&("INPUT"===e.nodeName&&"text"===e.type||"TEXTAREA"===e.nodeName||"true"===e.contentEditable)},getSelectionInformation:function(){var e=s();return{focusedElem:e,selectionRange:u.hasSelectionCapabilities(e)?u.getSelection(e):null}},restoreSelection:function(e){var t=s(),n=e.focusedElem,r=e.selectionRange;t!==n&&o(n)&&(u.hasSelectionCapabilities(n)&&u.setSelection(n,r),i(n))},getSelection:function(e){var t;if("selectionStart"in e)t={start:e.selectionStart,end:e.selectionEnd};else if(document.selection&&"INPUT"===e.nodeName){var n=document.selection.createRange();n.parentElement()===e&&(t={start:-n.moveStart("character",-e.value.length),end:-n.moveEnd("character",-e.value.length)})}else t=r.getOffsets(e);return t||{start:0,end:0}},setSelection:function(e,t){var n=t.start,o=t.end;if(void 0===o&&(o=n),"selectionStart"in e)e.selectionStart=n,e.selectionEnd=Math.min(o,e.value.length);else if(document.selection&&"INPUT"===e.nodeName){var a=e.createTextRange();a.collapse(!0),a.moveStart("character",n),a.moveEnd("character",o-n),a.select()}else r.setOffsets(e,t)}};t.exports=u},{"./ReactDOMSelection":46,"./containsNode":101,"./focusNode":111,"./getActiveElement":113}],60:[function(e,t,n){"use strict";function o(e){return f+e.toString(36)}function r(e,t){return e.charAt(t)===f||t===e.length}function a(e){return""===e||e.charAt(0)===f&&e.charAt(e.length-1)!==f}function i(e,t){return 0===t.indexOf(e)&&r(t,e.length)}function s(e){return e?e.substr(0,e.lastIndexOf(f)):""}function u(e,t){if(d(a(e)&&a(t),"getNextDescendantID(%s, %s): Received an invalid React DOM ID.",e,t),d(i(e,t),"getNextDescendantID(...): React has made an invalid assumption about the DOM hierarchy. Expected `%s` to be an ancestor of `%s`.",e,t),e===t)return e;for(var n=e.length+h,o=n;o<t.length&&!r(t,o);o++);return t.substr(0,o)}function c(e,t){var n=Math.min(e.length,t.length);if(0===n)return"";for(var o=0,i=0;i<=n;i++)if(r(e,i)&&r(t,i))o=i;else if(e.charAt(i)!==t.charAt(i))break;var s=e.substr(0,o);return d(a(s),"getFirstCommonAncestorID(%s, %s): Expected a valid React DOM ID: %s",e,t,s),s}function l(e,t,n,o,r,a){e=e||"",t=t||"",d(e!==t,"traverseParentPath(...): Cannot traverse from and to the same ID, `%s`.",e);var c=i(t,e);d(c||i(e,t),"traverseParentPath(%s, %s, ...): Cannot traverse from two IDs that do not have a parent path.",e,t);for(var l=0,p=c?s:u,f=e;;f=p(f,t)){var h;if(r&&f===e||a&&f===t||(h=n(f,c,o)),!1===h||f===t)break;d(l++<m,"traverseParentPath(%s, %s, ...): Detected an infinite loop while traversing the React DOM ID tree. This may be due to malformed IDs: %s",e,t)}}var p=e("./ReactRootIndex"),d=e("./invariant"),f=".",h=f.length,m=100,v={createReactRootID:function(){return o(p.createReactRootIndex())},createReactID:function(e,t){return e+t},getReactRootIDFromNodeID:function(e){if(e&&e.charAt(0)===f&&e.length>1){var t=e.indexOf(f,1);return t>-1?e.substr(0,t):e}return null},traverseEnterLeave:function(e,t,n,o,r){var a=c(e,t);a!==e&&l(e,a,n,o,!1,!0),a!==t&&l(a,t,n,r,!0,!1)},traverseTwoPhase:function(e,t,n){e&&(l("",e,t,n,!0,!1),l(e,"",t,n,!1,!0))},traverseAncestors:function(e,t,n){l("",e,t,n,!0,!1)},_getFirstCommonAncestorID:c,_getNextDescendantID:u,isAncestorIDOf:i,SEPARATOR:f};t.exports=v},{"./ReactRootIndex":75,"./invariant":126}],61:[function(e,t,n){"use strict";function o(){if(h._isLegacyCallWarningEnabled){var e=s.current,t=e&&e.constructor?e.constructor.displayName:"";t||(t="Something"),p.hasOwnProperty(t)||(p[t]=!0,l(!1,t+" is calling a React component directly. Use a factory or JSX instead. See: http://fb.me/react-legacyfactory"),c("react_legacy_factory_call",{version:3,name:t}))}}function r(e){if(e.prototype&&"function"==typeof e.prototype.mountComponent&&"function"==typeof e.prototype.receiveComponent)l(!1,"Did not expect to get a React class here. Use `Component` instead of `Component.type` or `this.constructor`.");else{if(!e._reactWarnedForThisType){try{e._reactWarnedForThisType=!0}catch(e){}c("react_non_component_in_jsx",{version:3,name:e.name})}l(!1,"This JSX uses a plain function. Only React components are valid in React's JSX transform.")}}function a(e){l(!1,"Do not pass React.DOM."+e.type+' to JSX or createFactory. Use the string "'+e.type+'" instead.')}function i(e,t){if("function"==typeof t)for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];if("function"==typeof o){var r=o.bind(t);for(var a in o)o.hasOwnProperty(a)&&(r[a]=o[a]);e[n]=r}else e[n]=o}}var s=e("./ReactCurrentOwner"),u=e("./invariant"),c=e("./monitorCodeUse"),l=e("./warning"),p={},d={},f={},h={};h.wrapCreateFactory=function(e){return function(t){return"function"!=typeof t?e(t):t.isReactNonLegacyFactory?(a(t),e(t.type)):t.isReactLegacyFactory?e(t.type):(r(t),t)}},h.wrapCreateElement=function(e){return function(t,n,o){if("function"!=typeof t)return e.apply(this,arguments);var i;return t.isReactNonLegacyFactory?(a(t),i=Array.prototype.slice.call(arguments,0),i[0]=t.type,e.apply(this,i)):t.isReactLegacyFactory?(t._isMockFunction&&(t.type._mockedReactClassConstructor=t),i=Array.prototype.slice.call(arguments,0),i[0]=t.type,e.apply(this,i)):(r(t),t.apply(null,Array.prototype.slice.call(arguments,1)))}},h.wrapFactory=function(e){u("function"==typeof e,"This is suppose to accept a element factory");var t=function(t,n){return o(),e.apply(this,arguments)};return i(t,e.type),t.isReactLegacyFactory=d,t.type=e.type,t},h.markNonLegacyFactory=function(e){return e.isReactNonLegacyFactory=f,e},h.isValidFactory=function(e){return"function"==typeof e&&e.isReactLegacyFactory===d},h.isValidClass=function(e){return l(!1,"isValidClass is deprecated and will be removed in a future release. Use a more specific validator instead."),h.isValidFactory(e)},h._isLegacyCallWarningEnabled=!0,t.exports=h},{"./ReactCurrentOwner":36,"./invariant":126,"./monitorCodeUse":136,"./warning":145}],62:[function(e,t,n){"use strict";var o=e("./adler32"),r={CHECKSUM_ATTR_NAME:"data-react-checksum",addChecksumToMarkup:function(e){var t=o(e);return e.replace(">"," "+r.CHECKSUM_ATTR_NAME+'="'+t+'">')},canReuseMarkup:function(e,t){var n=t.getAttribute(r.CHECKSUM_ATTR_NAME);return n=n&&parseInt(n,10),o(e)===n}};t.exports=r},{"./adler32":98}],63:[function(e,t,n){"use strict";function o(e){var t=R(e);return t&&A.getID(t)}function r(e){var t=a(e);if(t)if(P.hasOwnProperty(t)){var n=P[t];n!==e&&(M(!u(n,t),"ReactMount: Two valid but unequal nodes with the same `%s`: %s",_,t),P[t]=e)}else P[t]=e;return t}function a(e){return e&&e.getAttribute&&e.getAttribute(_)||""}function i(e,t){var n=a(e);n!==t&&delete P[n],e.setAttribute(_,t),P[t]=e}function s(e){return P.hasOwnProperty(e)&&u(P[e],e)||(P[e]=A.findReactNodeByID(e)),P[e]}function u(e,t){if(e){M(a(e)===t,"ReactMount: Unexpected modification of `%s`",_);var n=A.findReactContainerForID(t);if(n&&C(n,e))return!0}return!1}function c(e){delete P[e]}function l(e){var t=P[e];if(!t||!u(t,e))return!1;k=t}function p(e){k=null,y.traverseAncestors(e,l);var t=k;return k=null,t}var d=e("./DOMProperty"),f=e("./ReactBrowserEventEmitter"),h=e("./ReactCurrentOwner"),m=e("./ReactElement"),v=e("./ReactLegacyElement"),y=e("./ReactInstanceHandles"),g=e("./ReactPerf"),C=e("./containsNode"),E=e("./deprecated"),R=e("./getReactRootElementInContainer"),b=e("./instantiateReactComponent"),M=e("./invariant"),w=e("./shouldUpdateReactComponent"),D=e("./warning"),x=v.wrapCreateElement(m.createElement),O=y.SEPARATOR,_=d.ID_ATTRIBUTE_NAME,P={},T={},I={},N={},S=[],k=null,A={_instancesByReactRootID:T,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){var a=t.props;return A.scrollMonitor(n,function(){e.replaceProps(a,r)}),N[o(n)]=R(n),e},_registerComponent:function(e,t){M(t&&(1===t.nodeType||9===t.nodeType),"_registerComponent(...): Target container is not a DOM element."),f.ensureScrollValueMonitoring();var n=A.registerContainer(t);return T[n]=e,n},_renderNewRootComponent:g.measure("ReactMount","_renderNewRootComponent",function(e,t,n){D(null==h.current,"_renderNewRootComponent(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.");var o=b(e,null),r=A._registerComponent(o,t);return o.mountComponentIntoNode(r,t,n),N[r]=R(t),o}),render:function(e,t,n){M(m.isValidElement(e),"renderComponent(): Invalid component element.%s","string"==typeof e?" Instead of passing an element string, make sure to instantiate it by passing it to React.createElement.":v.isValidFactory(e)?" Instead of passing a component class, make sure to instantiate it by passing it to React.createElement.":void 0!==e.props?" This may be caused by unintentionally loading two independent copies of React.":"");var r=T[o(t)];if(r){var a=r._currentElement;if(w(a,e))return A._updateRootComponent(r,e,t,n);A.unmountComponentAtNode(t)}var i=R(t),s=i&&A.isRenderedByReact(i),u=s&&!r,c=A._renderNewRootComponent(e,t,u);return n&&n.call(c),c},constructAndRenderComponent:function(e,t,n){var o=x(e,t);return A.render(o,n)},constructAndRenderComponentByID:function(e,t,n){var o=document.getElementById(n);return M(o,'Tried to get element with id of "%s" but it is not present on the page.',n),A.constructAndRenderComponent(e,t,o)},registerContainer:function(e){var t=o(e);return t&&(t=y.getReactRootIDFromNodeID(t)),t||(t=y.createReactRootID()),I[t]=e,t},unmountComponentAtNode:function(e){D(null==h.current,"unmountComponentAtNode(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.");var t=o(e),n=T[t];return!!n&&(A.unmountComponentFromNode(n,e),delete T[t],delete I[t],delete N[t],!0)},unmountComponentFromNode:function(e,t){for(e.unmountComponent(),9===t.nodeType&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)},findReactContainerForID:function(e){var t=y.getReactRootIDFromNodeID(e),n=I[t],o=N[t];if(o&&o.parentNode!==n){M(a(o)===t,"ReactMount: Root element ID differed from reactRootID.");var r=n.firstChild;r&&t===a(r)?N[t]=r:console.warn("ReactMount: Root element has been removed from its original container. New container:",o.parentNode)}return n},findReactNodeByID:function(e){var t=A.findReactContainerForID(e);return A.findComponentRoot(t,e)},isRenderedByReact:function(e){if(1!==e.nodeType)return!1;var t=A.getID(e);return!!t&&t.charAt(0)===O},getFirstReactDOM:function(e){for(var t=e;t&&t.parentNode!==t;){if(A.isRenderedByReact(t))return t;t=t.parentNode}return null},findComponentRoot:function(e,t){var n=S,o=0,r=p(t)||e;for(n[0]=r.firstChild,n.length=1;o<n.length;){for(var a,i=n[o++];i;){var s=A.getID(i);s?t===s?a=i:y.isAncestorIDOf(s,t)&&(n.length=o=0,n.push(i.firstChild)):n.push(i.firstChild),i=i.nextSibling}if(a)return n.length=0,a}n.length=0,M(!1,"findComponentRoot(..., %s): Unable to find element. This probably means the DOM was unexpectedly mutated (e.g., by the browser), usually due to forgetting a <tbody> when using tables, nesting tags like <form>, <p>, or <a>, or using non-SVG elements in an <svg> parent. Try inspecting the child nodes of the element with React ID `%s`.",t,A.getID(e))},getReactRootID:o,getID:r,setID:i,getNode:s,purgeID:c};A.renderComponent=E("ReactMount","renderComponent","render",this,A.render),t.exports=A},{"./DOMProperty":11,"./ReactBrowserEventEmitter":30,"./ReactCurrentOwner":36,"./ReactElement":52,"./ReactInstanceHandles":60,"./ReactLegacyElement":61,"./ReactPerf":68,"./containsNode":101,"./deprecated":106,"./getReactRootElementInContainer":120,"./instantiateReactComponent":125,"./invariant":126,"./shouldUpdateReactComponent":142,"./warning":145}],64:[function(e,t,n){"use strict";function o(e,t,n){m.push({parentID:e,parentNode:null,type:l.INSERT_MARKUP,markupIndex:v.push(t)-1,textContent:null,fromIndex:null,toIndex:n})}function r(e,t,n){m.push({parentID:e,parentNode:null,type:l.MOVE_EXISTING,markupIndex:null,textContent:null,fromIndex:t,toIndex:n})}function a(e,t){m.push({parentID:e,parentNode:null,type:l.REMOVE_NODE,markupIndex:null,textContent:null,fromIndex:t,toIndex:null})}function i(e,t){m.push({parentID:e,parentNode:null,type:l.TEXT_CONTENT,markupIndex:null,textContent:t,fromIndex:null,toIndex:null})}function s(){m.length&&(c.BackendIDOperations.dangerouslyProcessChildrenUpdates(m,v),u())}function u(){m.length=0,v.length=0}var c=e("./ReactComponent"),l=e("./ReactMultiChildUpdateTypes"),p=e("./flattenChildren"),d=e("./instantiateReactComponent"),f=e("./shouldUpdateReactComponent"),h=0,m=[],v=[],y={Mixin:{mountChildren:function(e,t){var n=p(e),o=[],r=0;this._renderedChildren=n;for(var a in n){var i=n[a];if(n.hasOwnProperty(a)){var s=d(i,null);n[a]=s;var u=this._rootNodeID+a,c=s.mountComponent(u,t,this._mountDepth+1);s._mountIndex=r,o.push(c),r++}}return o},updateTextContent:function(e){h++;var t=!0;try{var n=this._renderedChildren;for(var o in n)n.hasOwnProperty(o)&&this._unmountChildByName(n[o],o);this.setTextContent(e),t=!1}finally{h--,h||(t?u():s())}},updateChildren:function(e,t){h++;var n=!0;try{this._updateChildren(e,t),n=!1}finally{h--,h||(n?u():s())}},_updateChildren:function(e,t){var n=p(e),o=this._renderedChildren;if(n||o){var r,a=0,i=0;for(r in n)if(n.hasOwnProperty(r)){var s=o&&o[r],u=s&&s._currentElement,c=n[r];if(f(u,c))this.moveChild(s,i,a),a=Math.max(s._mountIndex,a),s.receiveComponent(c,t),s._mountIndex=i;else{s&&(a=Math.max(s._mountIndex,a),this._unmountChildByName(s,r));var l=d(c,null);this._mountChildByNameAtIndex(l,r,i,t)}i++}for(r in o)!o.hasOwnProperty(r)||n&&n[r]||this._unmountChildByName(o[r],r)}},unmountChildren:function(){var e=this._renderedChildren;for(var t in e){var n=e[t];n.unmountComponent&&n.unmountComponent()}this._renderedChildren=null},moveChild:function(e,t,n){e._mountIndex<n&&r(this._rootNodeID,e._mountIndex,t)},createChild:function(e,t){o(this._rootNodeID,t,e._mountIndex)},removeChild:function(e){a(this._rootNodeID,e._mountIndex)},setTextContent:function(e){i(this._rootNodeID,e)},_mountChildByNameAtIndex:function(e,t,n,o){var r=this._rootNodeID+t,a=e.mountComponent(r,o,this._mountDepth+1);e._mountIndex=n,this.createChild(e,a),this._renderedChildren=this._renderedChildren||{},this._renderedChildren[t]=e},_unmountChildByName:function(e,t){this.removeChild(e),e._mountIndex=null,e.unmountComponent(),delete this._renderedChildren[t]}}};t.exports=y},{"./ReactComponent":32,"./ReactMultiChildUpdateTypes":65,"./flattenChildren":110,"./instantiateReactComponent":125,"./shouldUpdateReactComponent":142}],65:[function(e,t,n){"use strict";var o=e("./keyMirror"),r=o({INSERT_MARKUP:null,MOVE_EXISTING:null,REMOVE_NODE:null,TEXT_CONTENT:null});t.exports=r},{"./keyMirror":132}],66:[function(e,t,n){"use strict";function o(e,t,n){var o=s[e];return null==o?(a(i,"There is no registered component for the tag %s",e),new i(e,t)):n===e?(a(i,"There is no registered component for the tag %s",e),new i(e,t)):new o.type(t)}var r=e("./Object.assign"),a=e("./invariant"),i=null,s={},u={injectGenericComponentClass:function(e){i=e},injectComponentClasses:function(e){r(s,e)}},c={createInstanceForTag:o,injection:u};t.exports=c},{"./Object.assign":27,"./invariant":126}],67:[function(e,t,n){"use strict";var o=e("./emptyObject"),r=e("./invariant"),a={isValidOwner:function(e){return!(!e||"function"!=typeof e.attachRef||"function"!=typeof e.detachRef)},addComponentAsRefTo:function(e,t,n){r(a.isValidOwner(n),"addComponentAsRefTo(...): Only a ReactOwner can have refs. This usually means that you're trying to add a ref to a component that doesn't have an owner (that is, was not created inside of another component's `render` method). Try rendering this component inside of a new top-level component which will hold the ref."),n.attachRef(t,e)},removeComponentAsRefFrom:function(e,t,n){r(a.isValidOwner(n),"removeComponentAsRefFrom(...): Only a ReactOwner can have refs. This usually means that you're trying to remove a ref to a component that doesn't have an owner (that is, was not created inside of another component's `render` method). Try rendering this component inside of a new top-level component which will hold the ref."),n.refs[t]===e&&n.detachRef(t)},Mixin:{construct:function(){this.refs=o},attachRef:function(e,t){r(t.isOwnedBy(this),"attachRef(%s, ...): Only a component's owner can store a ref to it.",e),(this.refs===o?this.refs={}:this.refs)[e]=t},detachRef:function(e){delete this.refs[e]}}};t.exports=a},{"./emptyObject":108,"./invariant":126}],68:[function(e,t,n){"use strict";function o(e,t,n){return n}var r={enableMeasure:!1,storedMeasure:o,measure:function(e,t,n){var o=null,a=function(){return r.enableMeasure?(o||(o=r.storedMeasure(e,t,n)),o.apply(this,arguments)):n.apply(this,arguments)};return a.displayName=e+"_"+t,a},injection:{injectMeasure:function(e){r.storedMeasure=e}}};t.exports=r},{}],69:[function(e,t,n){"use strict";function o(e){return function(t,n,o){t.hasOwnProperty(n)?t[n]=e(t[n],o):t[n]=o}}function r(e,t){for(var n in t)if(t.hasOwnProperty(n)){var o=d[n];o&&d.hasOwnProperty(n)?o(e,n,t[n]):e.hasOwnProperty(n)||(e[n]=t[n])}return e}var a=e("./Object.assign"),i=e("./emptyFunction"),s=e("./invariant"),u=e("./joinClasses"),c=e("./warning"),l=!1,p=o(function(e,t){return a({},t,e)}),d={children:i,className:o(u),style:p},f={TransferStrategies:d,mergeProps:function(e,t){return r(a({},e),t)},Mixin:{transferPropsTo:function(e){return s(e._owner===this,"%s: You can't call transferPropsTo() on a component that you don't own, %s. This usually means you are calling transferPropsTo() on a component passed in as props or children.",this.constructor.displayName,"string"==typeof e.type?e.type:e.type.displayName),l||(l=!0,c(!1,"transferPropsTo is deprecated. See http://fb.me/react-transferpropsto for more information.")),r(e.props,this.props),e}}};t.exports=f},{"./Object.assign":27,"./emptyFunction":107,"./invariant":126,"./joinClasses":131,"./warning":145}],70:[function(e,t,n){"use strict";var o={};o={prop:"prop",context:"context",childContext:"child context"},t.exports=o},{}],71:[function(e,t,n){"use strict";var o=e("./keyMirror"),r=o({prop:null,context:null,childContext:null});t.exports=r},{"./keyMirror":132}],72:[function(e,t,n){"use strict";function o(e){function t(t,n,o,r,a){if(r=r||g,null!=n[o])return e(n,o,r,a);var i=m[a];return t?new Error("Required "+i+" `"+o+"` was not specified in `"+r+"`."):void 0}var n=t.bind(null,!1);return n.isRequired=t.bind(null,!0),n}function r(e){function t(t,n,o,r){var a=t[n];if(d(a)!==e){var i=m[r],s=f(a);return new Error("Invalid "+i+" `"+n+"` of type `"+s+"` supplied to `"+o+"`, expected `"+e+"`.")}}return o(t)}function a(e){function t(t,n,o,r){var a=t[n];if(!Array.isArray(a)){var i=m[r],s=d(a);return new Error("Invalid "+i+" `"+n+"` of type `"+s+"` supplied to `"+o+"`, expected an array.")}for(var u=0;u<a.length;u++){var c=e(a,u,o,r);if(c instanceof Error)return c}}return o(t)}function i(e){function t(t,n,o,r){if(!(t[n]instanceof e)){var a=m[r],i=e.name||g;return new Error("Invalid "+a+" `"+n+"` supplied to `"+o+"`, expected instance of `"+i+"`.")}}return o(t)}function s(e){function t(t,n,o,r){for(var a=t[n],i=0;i<e.length;i++)if(a===e[i])return;var s=m[r],u=JSON.stringify(e);return new Error("Invalid "+s+" `"+n+"` of value `"+a+"` supplied to `"+o+"`, expected one of "+u+".")}return o(t)}function u(e){function t(t,n,o,r){var a=t[n],i=d(a);if("object"!==i){var s=m[r];return new Error("Invalid "+s+" `"+n+"` of type `"+i+"` supplied to `"+o+"`, expected an object.")}for(var u in a)if(a.hasOwnProperty(u)){var c=e(a,u,o,r);if(c instanceof Error)return c}}return o(t)}function c(e){function t(t,n,o,r){for(var a=0;a<e.length;a++){if(null==(0,e[a])(t,n,o,r))return}var i=m[r];return new Error("Invalid "+i+" `"+n+"` supplied to `"+o+"`.")}return o(t)}function l(e){function t(t,n,o,r){var a=t[n],i=d(a);if("object"!==i){var s=m[r];return new Error("Invalid "+s+" `"+n+"` of type `"+i+"` supplied to `"+o+"`, expected `object`.")}for(var u in e){var c=e[u];if(c){var l=c(a,u,o,r);if(l)return l}}}return o(t,"expected `object`")}function p(e){switch(typeof e){case"number":case"string":return!0;case"boolean":return!e;case"object":if(Array.isArray(e))return e.every(p);if(h.isValidElement(e))return!0;for(var t in e)if(!p(e[t]))return!1;return!0;default:return!1}}function d(e){var t=typeof e;return Array.isArray(e)?"array":e instanceof RegExp?"object":t}function f(e){var t=d(e);if("object"===t){if(e instanceof Date)return"date";if(e instanceof RegExp)return"regexp"}return t}var h=e("./ReactElement"),m=e("./ReactPropTypeLocationNames"),v=e("./deprecated"),y=e("./emptyFunction"),g="<<anonymous>>",C=function(){function e(e,t,n,o){if(!h.isValidElement(e[t])){var r=m[o];return new Error("Invalid "+r+" `"+t+"` supplied to `"+n+"`, expected a ReactElement.")}}return o(e)}(),E=function(){function e(e,t,n,o){if(!p(e[t])){var r=m[o];return new Error("Invalid "+r+" `"+t+"` supplied to `"+n+"`, expected a ReactNode.")}}return o(e)}(),R={array:r("array"),bool:r("boolean"),func:r("function"),number:r("number"),object:r("object"),string:r("string"),any:function(){return o(y.thatReturns())}(),arrayOf:a,element:C,instanceOf:i,node:E,objectOf:u,oneOf:s,oneOfType:c,shape:l,component:v("React.PropTypes","component","element",this,C),renderable:v("React.PropTypes","renderable","node",this,E)};t.exports=R},{"./ReactElement":52,"./ReactPropTypeLocationNames":70,"./deprecated":106,"./emptyFunction":107}],73:[function(e,t,n){"use strict";function o(){this.listenersToPut=[]}var r=e("./PooledClass"),a=e("./ReactBrowserEventEmitter");e("./Object.assign")(o.prototype,{enqueuePutListener:function(e,t,n){this.listenersToPut.push({rootNodeID:e,propKey:t,propValue:n})},putListeners:function(){for(var e=0;e<this.listenersToPut.length;e++){var t=this.listenersToPut[e];a.putListener(t.rootNodeID,t.propKey,t.propValue)}},reset:function(){this.listenersToPut.length=0},destructor:function(){this.reset()}}),r.addPoolingTo(o),t.exports=o},{"./Object.assign":27,"./PooledClass":28,"./ReactBrowserEventEmitter":30}],74:[function(e,t,n){"use strict";function o(){this.reinitializeTransaction(),this.renderToStaticMarkup=!1,this.reactMountReady=r.getPooled(null),this.putListenerQueue=u.getPooled()}var r=e("./CallbackQueue"),a=e("./PooledClass"),i=e("./ReactBrowserEventEmitter"),s=e("./ReactInputSelection"),u=e("./ReactPutListenerQueue"),c=e("./Transaction"),l=e("./Object.assign"),p={initialize:s.getSelectionInformation,close:s.restoreSelection},d={initialize:function(){var e=i.isEnabled();return i.setEnabled(!1),e},close:function(e){i.setEnabled(e)}},f={initialize:function(){this.reactMountReady.reset()},close:function(){this.reactMountReady.notifyAll()}},h={initialize:function(){this.putListenerQueue.reset()},close:function(){this.putListenerQueue.putListeners()}},m=[h,p,d,f],v={getTransactionWrappers:function(){return m},getReactMountReady:function(){return this.reactMountReady},getPutListenerQueue:function(){return this.putListenerQueue},destructor:function(){r.release(this.reactMountReady),this.reactMountReady=null,u.release(this.putListenerQueue),this.putListenerQueue=null}};l(o.prototype,c.Mixin,v),a.addPoolingTo(o),t.exports=o},{"./CallbackQueue":6,"./Object.assign":27,"./PooledClass":28,"./ReactBrowserEventEmitter":30,"./ReactInputSelection":59,"./ReactPutListenerQueue":73,"./Transaction":95}],75:[function(e,t,n){"use strict";var o={injectCreateReactRootIndex:function(e){r.createReactRootIndex=e}},r={createReactRootIndex:null,injection:o};t.exports=r},{}],76:[function(e,t,n){"use strict";function o(e){l(a.isValidElement(e),"renderToString(): You must pass a valid ReactElement.");var t;try{var n=i.createReactRootID();return t=u.getPooled(!1),t.perform(function(){var o=c(e,null),r=o.mountComponent(n,t,0);return s.addChecksumToMarkup(r)},null)}finally{u.release(t)}}function r(e){l(a.isValidElement(e),"renderToStaticMarkup(): You must pass a valid ReactElement.");var t;try{var n=i.createReactRootID();return t=u.getPooled(!0),t.perform(function(){return c(e,null).mountComponent(n,t,0)},null)}finally{u.release(t)}}var a=e("./ReactElement"),i=e("./ReactInstanceHandles"),s=e("./ReactMarkupChecksum"),u=e("./ReactServerRenderingTransaction"),c=e("./instantiateReactComponent"),l=e("./invariant");t.exports={renderToString:o,renderToStaticMarkup:r}},{"./ReactElement":52,"./ReactInstanceHandles":60,"./ReactMarkupChecksum":62,"./ReactServerRenderingTransaction":77,"./instantiateReactComponent":125,"./invariant":126}],77:[function(e,t,n){"use strict";function o(e){this.reinitializeTransaction(),this.renderToStaticMarkup=e,this.reactMountReady=a.getPooled(null),this.putListenerQueue=i.getPooled()}var r=e("./PooledClass"),a=e("./CallbackQueue"),i=e("./ReactPutListenerQueue"),s=e("./Transaction"),u=e("./Object.assign"),c=e("./emptyFunction"),l={initialize:function(){this.reactMountReady.reset()},close:c},p={initialize:function(){this.putListenerQueue.reset()},close:c},d=[p,l],f={getTransactionWrappers:function(){return d},getReactMountReady:function(){return this.reactMountReady},getPutListenerQueue:function(){return this.putListenerQueue},destructor:function(){a.release(this.reactMountReady),this.reactMountReady=null,i.release(this.putListenerQueue),this.putListenerQueue=null}};u(o.prototype,s.Mixin,f),r.addPoolingTo(o),t.exports=o},{"./CallbackQueue":6,"./Object.assign":27,"./PooledClass":28,"./ReactPutListenerQueue":73,"./Transaction":95,"./emptyFunction":107}],78:[function(e,t,n){"use strict";var o=e("./DOMPropertyOperations"),r=e("./ReactComponent"),a=e("./ReactElement"),i=e("./Object.assign"),s=e("./escapeTextForBrowser"),u=function(e){};i(u.prototype,r.Mixin,{mountComponent:function(e,t,n){r.Mixin.mountComponent.call(this,e,t,n);var a=s(this.props);return t.renderToStaticMarkup?a:"<span "+o.createMarkupForID(e)+">"+a+"</span>"},receiveComponent:function(e,t){var n=e.props;n!==this.props&&(this.props=n,r.BackendIDOperations.updateTextContentByID(this._rootNodeID,n))}});var c=function(e){return new a(u,null,null,null,null,e)};c.type=u,t.exports=c},{"./DOMPropertyOperations":12,"./Object.assign":27,"./ReactComponent":32,"./ReactElement":52,"./escapeTextForBrowser":109}],79:[function(e,t,n){"use strict";function o(){v(O.ReactReconcileTransaction&&R,"ReactUpdates: must inject a reconcile transaction class and batching strategy")}function r(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=l.getPooled(),this.reconcileTransaction=O.ReactReconcileTransaction.getPooled()}function a(e,t,n){o(),R.batchedUpdates(e,t,n)}function i(e,t){return e._mountDepth-t._mountDepth}function s(e){var t=e.dirtyComponentsLength;v(t===g.length,"Expected flush transaction's stored dirty-components length (%s) to match dirty-components array length (%s).",t,g.length),g.sort(i);for(var n=0;n<t;n++){var o=g[n];if(o.isMounted()){var r=o._pendingCallbacks;if(o._pendingCallbacks=null,o.performUpdateIfNecessary(e.reconcileTransaction),r)for(var a=0;a<r.length;a++)e.callbackQueue.enqueue(r[a],o)}}}function u(e,t){if(v(!t||"function"==typeof t,"enqueueUpdate(...): You called `setProps`, `replaceProps`, `setState`, `replaceState`, or `forceUpdate` with a callback that isn't callable."),o(),y(null==d.current,"enqueueUpdate(): Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate."),!R.isBatchingUpdates)return void R.batchedUpdates(u,e,t);g.push(e),t&&(e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t])}function c(e,t){v(R.isBatchingUpdates,"ReactUpdates.asap: Can't enqueue an asap callback in a context whereupdates are not being batched."),C.enqueue(e,t),E=!0}var l=e("./CallbackQueue"),p=e("./PooledClass"),d=e("./ReactCurrentOwner"),f=e("./ReactPerf"),h=e("./Transaction"),m=e("./Object.assign"),v=e("./invariant"),y=e("./warning"),g=[],C=l.getPooled(),E=!1,R=null,b={initialize:function(){this.dirtyComponentsLength=g.length},close:function(){this.dirtyComponentsLength!==g.length?(g.splice(0,this.dirtyComponentsLength),D()):g.length=0}},M={initialize:function(){this.callbackQueue.reset()},close:function(){this.callbackQueue.notifyAll()}},w=[b,M];m(r.prototype,h.Mixin,{getTransactionWrappers:function(){return w},destructor:function(){this.dirtyComponentsLength=null,l.release(this.callbackQueue),this.callbackQueue=null,O.ReactReconcileTransaction.release(this.reconcileTransaction),this.reconcileTransaction=null},perform:function(e,t,n){return h.Mixin.perform.call(this,this.reconcileTransaction.perform,this.reconcileTransaction,e,t,n)}}),p.addPoolingTo(r);var D=f.measure("ReactUpdates","flushBatchedUpdates",function(){for(;g.length||E;){if(g.length){var e=r.getPooled();e.perform(s,null,e),r.release(e)}if(E){E=!1;var t=C;C=l.getPooled(),t.notifyAll(),l.release(t)}}}),x={injectReconcileTransaction:function(e){v(e,"ReactUpdates: must provide a reconcile transaction class"),O.ReactReconcileTransaction=e},injectBatchingStrategy:function(e){v(e,"ReactUpdates: must provide a batching strategy"),v("function"==typeof e.batchedUpdates,"ReactUpdates: must provide a batchedUpdates() function"),v("boolean"==typeof e.isBatchingUpdates,"ReactUpdates: must provide an isBatchingUpdates boolean attribute"),R=e}},O={ReactReconcileTransaction:null,batchedUpdates:a,enqueueUpdate:u,flushBatchedUpdates:D,injection:x,asap:c};t.exports=O},{"./CallbackQueue":6,"./Object.assign":27,"./PooledClass":28,"./ReactCurrentOwner":36,"./ReactPerf":68,"./Transaction":95,"./invariant":126,"./warning":145}],80:[function(e,t,n){"use strict";var o=e("./DOMProperty"),r=o.injection.MUST_USE_ATTRIBUTE,a={Properties:{cx:r,cy:r,d:r,dx:r,dy:r,fill:r,fillOpacity:r,fontFamily:r,fontSize:r,fx:r,fy:r,gradientTransform:r,gradientUnits:r,markerEnd:r,markerMid:r,markerStart:r,offset:r,opacity:r,patternContentUnits:r,patternUnits:r,points:r,preserveAspectRatio:r,r:r,rx:r,ry:r,spreadMethod:r,stopColor:r,stopOpacity:r,stroke:r,strokeDasharray:r,strokeLinecap:r,strokeOpacity:r,strokeWidth:r,textAnchor:r,transform:r,version:r,viewBox:r,x1:r,x2:r,x:r,y1:r,y2:r,y:r},DOMAttributeNames:{fillOpacity:"fill-opacity",fontFamily:"font-family",fontSize:"font-size",gradientTransform:"gradientTransform",gradientUnits:"gradientUnits",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",patternContentUnits:"patternContentUnits",
5
+ patternUnits:"patternUnits",preserveAspectRatio:"preserveAspectRatio",spreadMethod:"spreadMethod",stopColor:"stop-color",stopOpacity:"stop-opacity",strokeDasharray:"stroke-dasharray",strokeLinecap:"stroke-linecap",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",textAnchor:"text-anchor",viewBox:"viewBox"}};t.exports=a},{"./DOMProperty":11}],81:[function(e,t,n){"use strict";function o(e){if("selectionStart"in e&&s.hasSelectionCapabilities(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}}if(document.selection){var n=document.selection.createRange();return{parentElement:n.parentElement(),text:n.text,top:n.boundingTop,left:n.boundingLeft}}}function r(e){if(!g&&null!=m&&m==c()){var t=o(m);if(!y||!d(y,t)){y=t;var n=u.getPooled(h.select,v,e);return n.type="select",n.target=m,i.accumulateTwoPhaseDispatches(n),n}}}var a=e("./EventConstants"),i=e("./EventPropagators"),s=e("./ReactInputSelection"),u=e("./SyntheticEvent"),c=e("./getActiveElement"),l=e("./isTextInputElement"),p=e("./keyOf"),d=e("./shallowEqual"),f=a.topLevelTypes,h={select:{phasedRegistrationNames:{bubbled:p({onSelect:null}),captured:p({onSelectCapture:null})},dependencies:[f.topBlur,f.topContextMenu,f.topFocus,f.topKeyDown,f.topMouseDown,f.topMouseUp,f.topSelectionChange]}},m=null,v=null,y=null,g=!1,C={eventTypes:h,extractEvents:function(e,t,n,o){switch(e){case f.topFocus:(l(t)||"true"===t.contentEditable)&&(m=t,v=n,y=null);break;case f.topBlur:m=null,v=null,y=null;break;case f.topMouseDown:g=!0;break;case f.topContextMenu:case f.topMouseUp:return g=!1,r(o);case f.topSelectionChange:case f.topKeyDown:case f.topKeyUp:return r(o)}}};t.exports=C},{"./EventConstants":16,"./EventPropagators":21,"./ReactInputSelection":59,"./SyntheticEvent":87,"./getActiveElement":113,"./isTextInputElement":129,"./keyOf":133,"./shallowEqual":141}],82:[function(e,t,n){"use strict";var o=Math.pow(2,53),r={createReactRootIndex:function(){return Math.ceil(Math.random()*o)}};t.exports=r},{}],83:[function(e,t,n){"use strict";var o=e("./EventConstants"),r=e("./EventPluginUtils"),a=e("./EventPropagators"),i=e("./SyntheticClipboardEvent"),s=e("./SyntheticEvent"),u=e("./SyntheticFocusEvent"),c=e("./SyntheticKeyboardEvent"),l=e("./SyntheticMouseEvent"),p=e("./SyntheticDragEvent"),d=e("./SyntheticTouchEvent"),f=e("./SyntheticUIEvent"),h=e("./SyntheticWheelEvent"),m=e("./getEventCharCode"),v=e("./invariant"),y=e("./keyOf"),g=e("./warning"),C=o.topLevelTypes,E={blur:{phasedRegistrationNames:{bubbled:y({onBlur:!0}),captured:y({onBlurCapture:!0})}},click:{phasedRegistrationNames:{bubbled:y({onClick:!0}),captured:y({onClickCapture:!0})}},contextMenu:{phasedRegistrationNames:{bubbled:y({onContextMenu:!0}),captured:y({onContextMenuCapture:!0})}},copy:{phasedRegistrationNames:{bubbled:y({onCopy:!0}),captured:y({onCopyCapture:!0})}},cut:{phasedRegistrationNames:{bubbled:y({onCut:!0}),captured:y({onCutCapture:!0})}},doubleClick:{phasedRegistrationNames:{bubbled:y({onDoubleClick:!0}),captured:y({onDoubleClickCapture:!0})}},drag:{phasedRegistrationNames:{bubbled:y({onDrag:!0}),captured:y({onDragCapture:!0})}},dragEnd:{phasedRegistrationNames:{bubbled:y({onDragEnd:!0}),captured:y({onDragEndCapture:!0})}},dragEnter:{phasedRegistrationNames:{bubbled:y({onDragEnter:!0}),captured:y({onDragEnterCapture:!0})}},dragExit:{phasedRegistrationNames:{bubbled:y({onDragExit:!0}),captured:y({onDragExitCapture:!0})}},dragLeave:{phasedRegistrationNames:{bubbled:y({onDragLeave:!0}),captured:y({onDragLeaveCapture:!0})}},dragOver:{phasedRegistrationNames:{bubbled:y({onDragOver:!0}),captured:y({onDragOverCapture:!0})}},dragStart:{phasedRegistrationNames:{bubbled:y({onDragStart:!0}),captured:y({onDragStartCapture:!0})}},drop:{phasedRegistrationNames:{bubbled:y({onDrop:!0}),captured:y({onDropCapture:!0})}},focus:{phasedRegistrationNames:{bubbled:y({onFocus:!0}),captured:y({onFocusCapture:!0})}},input:{phasedRegistrationNames:{bubbled:y({onInput:!0}),captured:y({onInputCapture:!0})}},keyDown:{phasedRegistrationNames:{bubbled:y({onKeyDown:!0}),captured:y({onKeyDownCapture:!0})}},keyPress:{phasedRegistrationNames:{bubbled:y({onKeyPress:!0}),captured:y({onKeyPressCapture:!0})}},keyUp:{phasedRegistrationNames:{bubbled:y({onKeyUp:!0}),captured:y({onKeyUpCapture:!0})}},load:{phasedRegistrationNames:{bubbled:y({onLoad:!0}),captured:y({onLoadCapture:!0})}},error:{phasedRegistrationNames:{bubbled:y({onError:!0}),captured:y({onErrorCapture:!0})}},mouseDown:{phasedRegistrationNames:{bubbled:y({onMouseDown:!0}),captured:y({onMouseDownCapture:!0})}},mouseMove:{phasedRegistrationNames:{bubbled:y({onMouseMove:!0}),captured:y({onMouseMoveCapture:!0})}},mouseOut:{phasedRegistrationNames:{bubbled:y({onMouseOut:!0}),captured:y({onMouseOutCapture:!0})}},mouseOver:{phasedRegistrationNames:{bubbled:y({onMouseOver:!0}),captured:y({onMouseOverCapture:!0})}},mouseUp:{phasedRegistrationNames:{bubbled:y({onMouseUp:!0}),captured:y({onMouseUpCapture:!0})}},paste:{phasedRegistrationNames:{bubbled:y({onPaste:!0}),captured:y({onPasteCapture:!0})}},reset:{phasedRegistrationNames:{bubbled:y({onReset:!0}),captured:y({onResetCapture:!0})}},scroll:{phasedRegistrationNames:{bubbled:y({onScroll:!0}),captured:y({onScrollCapture:!0})}},submit:{phasedRegistrationNames:{bubbled:y({onSubmit:!0}),captured:y({onSubmitCapture:!0})}},touchCancel:{phasedRegistrationNames:{bubbled:y({onTouchCancel:!0}),captured:y({onTouchCancelCapture:!0})}},touchEnd:{phasedRegistrationNames:{bubbled:y({onTouchEnd:!0}),captured:y({onTouchEndCapture:!0})}},touchMove:{phasedRegistrationNames:{bubbled:y({onTouchMove:!0}),captured:y({onTouchMoveCapture:!0})}},touchStart:{phasedRegistrationNames:{bubbled:y({onTouchStart:!0}),captured:y({onTouchStartCapture:!0})}},wheel:{phasedRegistrationNames:{bubbled:y({onWheel:!0}),captured:y({onWheelCapture:!0})}}},R={topBlur:E.blur,topClick:E.click,topContextMenu:E.contextMenu,topCopy:E.copy,topCut:E.cut,topDoubleClick:E.doubleClick,topDrag:E.drag,topDragEnd:E.dragEnd,topDragEnter:E.dragEnter,topDragExit:E.dragExit,topDragLeave:E.dragLeave,topDragOver:E.dragOver,topDragStart:E.dragStart,topDrop:E.drop,topError:E.error,topFocus:E.focus,topInput:E.input,topKeyDown:E.keyDown,topKeyPress:E.keyPress,topKeyUp:E.keyUp,topLoad:E.load,topMouseDown:E.mouseDown,topMouseMove:E.mouseMove,topMouseOut:E.mouseOut,topMouseOver:E.mouseOver,topMouseUp:E.mouseUp,topPaste:E.paste,topReset:E.reset,topScroll:E.scroll,topSubmit:E.submit,topTouchCancel:E.touchCancel,topTouchEnd:E.touchEnd,topTouchMove:E.touchMove,topTouchStart:E.touchStart,topWheel:E.wheel};for(var b in R)R[b].dependencies=[b];var M={eventTypes:E,executeDispatch:function(e,t,n){var o=r.executeDispatch(e,t,n);g("boolean"!=typeof o,"Returning `false` from an event handler is deprecated and will be ignored in a future release. Instead, manually call e.stopPropagation() or e.preventDefault(), as appropriate."),!1===o&&(e.stopPropagation(),e.preventDefault())},extractEvents:function(e,t,n,o){var r=R[e];if(!r)return null;var y;switch(e){case C.topInput:case C.topLoad:case C.topError:case C.topReset:case C.topSubmit:y=s;break;case C.topKeyPress:if(0===m(o))return null;case C.topKeyDown:case C.topKeyUp:y=c;break;case C.topBlur:case C.topFocus:y=u;break;case C.topClick:if(2===o.button)return null;case C.topContextMenu:case C.topDoubleClick:case C.topMouseDown:case C.topMouseMove:case C.topMouseOut:case C.topMouseOver:case C.topMouseUp:y=l;break;case C.topDrag:case C.topDragEnd:case C.topDragEnter:case C.topDragExit:case C.topDragLeave:case C.topDragOver:case C.topDragStart:case C.topDrop:y=p;break;case C.topTouchCancel:case C.topTouchEnd:case C.topTouchMove:case C.topTouchStart:y=d;break;case C.topScroll:y=f;break;case C.topWheel:y=h;break;case C.topCopy:case C.topCut:case C.topPaste:y=i}v(y,"SimpleEventPlugin: Unhandled event type, `%s`.",e);var g=y.getPooled(r,n,o);return a.accumulateTwoPhaseDispatches(g),g}};t.exports=M},{"./EventConstants":16,"./EventPluginUtils":20,"./EventPropagators":21,"./SyntheticClipboardEvent":84,"./SyntheticDragEvent":86,"./SyntheticEvent":87,"./SyntheticFocusEvent":88,"./SyntheticKeyboardEvent":90,"./SyntheticMouseEvent":91,"./SyntheticTouchEvent":92,"./SyntheticUIEvent":93,"./SyntheticWheelEvent":94,"./getEventCharCode":114,"./invariant":126,"./keyOf":133,"./warning":145}],84:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticEvent"),a={clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}};r.augmentClass(o,a),t.exports=o},{"./SyntheticEvent":87}],85:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticEvent"),a={data:null};r.augmentClass(o,a),t.exports=o},{"./SyntheticEvent":87}],86:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticMouseEvent"),a={dataTransfer:null};r.augmentClass(o,a),t.exports=o},{"./SyntheticMouseEvent":91}],87:[function(e,t,n){"use strict";function o(e,t,n){this.dispatchConfig=e,this.dispatchMarker=t,this.nativeEvent=n;var o=this.constructor.Interface;for(var r in o)if(o.hasOwnProperty(r)){var a=o[r];this[r]=a?a(n):n[r]}var s=null!=n.defaultPrevented?n.defaultPrevented:!1===n.returnValue;this.isDefaultPrevented=s?i.thatReturnsTrue:i.thatReturnsFalse,this.isPropagationStopped=i.thatReturnsFalse}var r=e("./PooledClass"),a=e("./Object.assign"),i=e("./emptyFunction"),s=e("./getEventTarget"),u={type:null,target:s,currentTarget:i.thatReturnsNull,eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null};a(o.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e.preventDefault?e.preventDefault():e.returnValue=!1,this.isDefaultPrevented=i.thatReturnsTrue},stopPropagation:function(){var e=this.nativeEvent;e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,this.isPropagationStopped=i.thatReturnsTrue},persist:function(){this.isPersistent=i.thatReturnsTrue},isPersistent:i.thatReturnsFalse,destructor:function(){var e=this.constructor.Interface;for(var t in e)this[t]=null;this.dispatchConfig=null,this.dispatchMarker=null,this.nativeEvent=null}}),o.Interface=u,o.augmentClass=function(e,t){var n=this,o=Object.create(n.prototype);a(o,e.prototype),e.prototype=o,e.prototype.constructor=e,e.Interface=a({},n.Interface,t),e.augmentClass=n.augmentClass,r.addPoolingTo(e,r.threeArgumentPooler)},r.addPoolingTo(o,r.threeArgumentPooler),t.exports=o},{"./Object.assign":27,"./PooledClass":28,"./emptyFunction":107,"./getEventTarget":117}],88:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticUIEvent"),a={relatedTarget:null};r.augmentClass(o,a),t.exports=o},{"./SyntheticUIEvent":93}],89:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticEvent"),a={data:null};r.augmentClass(o,a),t.exports=o},{"./SyntheticEvent":87}],90:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticUIEvent"),a=e("./getEventCharCode"),i=e("./getEventKey"),s=e("./getEventModifierState"),u={key:i,location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:s,charCode:function(e){return"keypress"===e.type?a(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?a(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}};r.augmentClass(o,u),t.exports=o},{"./SyntheticUIEvent":93,"./getEventCharCode":114,"./getEventKey":115,"./getEventModifierState":116}],91:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticUIEvent"),a=e("./ViewportMetrics"),i=e("./getEventModifierState"),s={screenX:null,screenY:null,clientX:null,clientY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:i,button:function(e){var t=e.button;return"which"in e?t:2===t?2:4===t?1:0},buttons:null,relatedTarget:function(e){return e.relatedTarget||(e.fromElement===e.srcElement?e.toElement:e.fromElement)},pageX:function(e){return"pageX"in e?e.pageX:e.clientX+a.currentScrollLeft},pageY:function(e){return"pageY"in e?e.pageY:e.clientY+a.currentScrollTop}};r.augmentClass(o,s),t.exports=o},{"./SyntheticUIEvent":93,"./ViewportMetrics":96,"./getEventModifierState":116}],92:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticUIEvent"),a=e("./getEventModifierState"),i={touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:a};r.augmentClass(o,i),t.exports=o},{"./SyntheticUIEvent":93,"./getEventModifierState":116}],93:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticEvent"),a=e("./getEventTarget"),i={view:function(e){if(e.view)return e.view;var t=a(e);if(null!=t&&t.window===t)return t;var n=t.ownerDocument;return n?n.defaultView||n.parentWindow:window},detail:function(e){return e.detail||0}};r.augmentClass(o,i),t.exports=o},{"./SyntheticEvent":87,"./getEventTarget":117}],94:[function(e,t,n){"use strict";function o(e,t,n){r.call(this,e,t,n)}var r=e("./SyntheticMouseEvent"),a={deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:null,deltaMode:null};r.augmentClass(o,a),t.exports=o},{"./SyntheticMouseEvent":91}],95:[function(e,t,n){"use strict";var o=e("./invariant"),r={reinitializeTransaction:function(){this.transactionWrappers=this.getTransactionWrappers(),this.wrapperInitData?this.wrapperInitData.length=0:this.wrapperInitData=[],this._isInTransaction=!1},_isInTransaction:!1,getTransactionWrappers:null,isInTransaction:function(){return!!this._isInTransaction},perform:function(e,t,n,r,a,i,s,u){o(!this.isInTransaction(),"Transaction.perform(...): Cannot initialize a transaction when there is already an outstanding transaction.");var c,l;try{this._isInTransaction=!0,c=!0,this.initializeAll(0),l=e.call(t,n,r,a,i,s,u),c=!1}finally{try{if(c)try{this.closeAll(0)}catch(e){}else this.closeAll(0)}finally{this._isInTransaction=!1}}return l},initializeAll:function(e){for(var t=this.transactionWrappers,n=e;n<t.length;n++){var o=t[n];try{this.wrapperInitData[n]=a.OBSERVED_ERROR,this.wrapperInitData[n]=o.initialize?o.initialize.call(this):null}finally{if(this.wrapperInitData[n]===a.OBSERVED_ERROR)try{this.initializeAll(n+1)}catch(e){}}}},closeAll:function(e){o(this.isInTransaction(),"Transaction.closeAll(): Cannot close transaction when none are open.");for(var t=this.transactionWrappers,n=e;n<t.length;n++){var r,i=t[n],s=this.wrapperInitData[n];try{r=!0,s!==a.OBSERVED_ERROR&&i.close&&i.close.call(this,s),r=!1}finally{if(r)try{this.closeAll(n+1)}catch(e){}}}this.wrapperInitData.length=0}},a={Mixin:r,OBSERVED_ERROR:{}};t.exports=a},{"./invariant":126}],96:[function(e,t,n){"use strict";var o=e("./getUnboundedScrollPosition"),r={currentScrollLeft:0,currentScrollTop:0,refreshScrollValues:function(){var e=o(window);r.currentScrollLeft=e.x,r.currentScrollTop=e.y}};t.exports=r},{"./getUnboundedScrollPosition":122}],97:[function(e,t,n){"use strict";function o(e,t){if(r(null!=t,"accumulateInto(...): Accumulated items must not be null or undefined."),null==e)return t;var n=Array.isArray(e),o=Array.isArray(t);return n&&o?(e.push.apply(e,t),e):n?(e.push(t),e):o?[e].concat(t):[e,t]}var r=e("./invariant");t.exports=o},{"./invariant":126}],98:[function(e,t,n){"use strict";function o(e){for(var t=1,n=0,o=0;o<e.length;o++)t=(t+e.charCodeAt(o))%r,n=(n+t)%r;return t|n<<16}var r=65521;t.exports=o},{}],99:[function(e,t,n){function o(e){return e.replace(r,function(e,t){return t.toUpperCase()})}var r=/-(.)/g;t.exports=o},{}],100:[function(e,t,n){"use strict";function o(e){return r(e.replace(a,"ms-"))}var r=e("./camelize"),a=/^-ms-/;t.exports=o},{"./camelize":99}],101:[function(e,t,n){function o(e,t){return!(!e||!t)&&(e===t||!r(e)&&(r(t)?o(e,t.parentNode):e.contains?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}var r=e("./isTextNode");t.exports=o},{"./isTextNode":130}],102:[function(e,t,n){function o(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"length"in e&&!("setInterval"in e)&&"number"!=typeof e.nodeType&&(Array.isArray(e)||"callee"in e||"item"in e)}function r(e){return o(e)?Array.isArray(e)?e.slice():a(e):[e]}var a=e("./toArray");t.exports=r},{"./toArray":143}],103:[function(e,t,n){"use strict";function o(e){var t=a.createFactory(e);return r.createClass({displayName:"ReactFullPageComponent"+e,componentWillUnmount:function(){i(!1,"%s tried to unmount. Because of cross-browser quirks it is impossible to unmount some top-level components (eg <html>, <head>, and <body>) reliably and efficiently. To fix this, have a single top-level component that never unmounts render these elements.",this.constructor.displayName)},render:function(){return t(this.props)}})}var r=e("./ReactCompositeComponent"),a=e("./ReactElement"),i=e("./invariant");t.exports=o},{"./ReactCompositeComponent":34,"./ReactElement":52,"./invariant":126}],104:[function(e,t,n){function o(e){var t=e.match(l);return t&&t[1].toLowerCase()}function r(e,t){var n=c;u(!!c,"createNodesFromMarkup dummy not initialized");var r=o(e),a=r&&s(r);if(a){n.innerHTML=a[1]+e+a[2];for(var l=a[0];l--;)n=n.lastChild}else n.innerHTML=e;var p=n.getElementsByTagName("script");p.length&&(u(t,"createNodesFromMarkup(...): Unexpected <script> element rendered."),i(p).forEach(t));for(var d=i(n.childNodes);n.lastChild;)n.removeChild(n.lastChild);return d}var a=e("./ExecutionEnvironment"),i=e("./createArrayFrom"),s=e("./getMarkupWrap"),u=e("./invariant"),c=a.canUseDOM?document.createElement("div"):null,l=/^\s*<(\w+)/;t.exports=r},{"./ExecutionEnvironment":22,"./createArrayFrom":102,"./getMarkupWrap":118,"./invariant":126}],105:[function(e,t,n){"use strict";function o(e,t){return null==t||"boolean"==typeof t||""===t?"":isNaN(t)||0===t||a.hasOwnProperty(e)&&a[e]?""+t:("string"==typeof t&&(t=t.trim()),t+"px")}var r=e("./CSSProperty"),a=r.isUnitlessNumber;t.exports=o},{"./CSSProperty":4}],106:[function(e,t,n){function o(e,t,n,o,i){var s=!1,u=function(){return a(s,e+"."+t+" will be deprecated in a future version. Use "+e+"."+n+" instead."),s=!0,i.apply(o,arguments)};return u.displayName=e+"_"+t,r(u,i)}var r=e("./Object.assign"),a=e("./warning");t.exports=o},{"./Object.assign":27,"./warning":145}],107:[function(e,t,n){function o(e){return function(){return e}}function r(){}r.thatReturns=o,r.thatReturnsFalse=o(!1),r.thatReturnsTrue=o(!0),r.thatReturnsNull=o(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(e){return e},t.exports=r},{}],108:[function(e,t,n){"use strict";var o={};Object.freeze(o),t.exports=o},{}],109:[function(e,t,n){"use strict";function o(e){return a[e]}function r(e){return(""+e).replace(i,o)}var a={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},i=/[&><"']/g;t.exports=r},{}],110:[function(e,t,n){"use strict";function o(e,t,n){var o=e,r=!o.hasOwnProperty(n);if(s(r,"flattenChildren(...): Encountered two children with the same key, `%s`. Child keys must be unique; when two children share a key, only the first child will be used.",n),r&&null!=t){var i,u=typeof t;i="string"===u?a(t):"number"===u?a(""+t):t,o[n]=i}}function r(e){if(null==e)return e;var t={};return i(e,o,t),t}var a=e("./ReactTextComponent"),i=e("./traverseAllChildren"),s=e("./warning");t.exports=r},{"./ReactTextComponent":78,"./traverseAllChildren":144,"./warning":145}],111:[function(e,t,n){"use strict";function o(e){try{e.focus()}catch(e){}}t.exports=o},{}],112:[function(e,t,n){"use strict";var o=function(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)};t.exports=o},{}],113:[function(e,t,n){function o(){try{return document.activeElement||document.body}catch(e){return document.body}}t.exports=o},{}],114:[function(e,t,n){"use strict";function o(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}t.exports=o},{}],115:[function(e,t,n){"use strict";function o(e){if(e.key){var t=a[e.key]||e.key;if("Unidentified"!==t)return t}if("keypress"===e.type){var n=r(e);return 13===n?"Enter":String.fromCharCode(n)}return"keydown"===e.type||"keyup"===e.type?i[e.keyCode]||"Unidentified":""}var r=e("./getEventCharCode"),a={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},i={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"};t.exports=o},{"./getEventCharCode":114}],116:[function(e,t,n){"use strict";function o(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var o=a[e];return!!o&&!!n[o]}function r(e){return o}var a={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};t.exports=r},{}],117:[function(e,t,n){"use strict";function o(e){var t=e.target||e.srcElement||window;return 3===t.nodeType?t.parentNode:t}t.exports=o},{}],118:[function(e,t,n){function o(e){return a(!!i,"Markup wrapping node not initialized"),d.hasOwnProperty(e)||(e="*"),s.hasOwnProperty(e)||(i.innerHTML="*"===e?"<link />":"<"+e+"></"+e+">",s[e]=!i.firstChild),s[e]?d[e]:null}var r=e("./ExecutionEnvironment"),a=e("./invariant"),i=r.canUseDOM?document.createElement("div"):null,s={circle:!0,defs:!0,ellipse:!0,g:!0,line:!0,linearGradient:!0,path:!0,polygon:!0,polyline:!0,radialGradient:!0,rect:!0,stop:!0,text:!0},u=[1,'<select multiple="true">',"</select>"],c=[1,"<table>","</table>"],l=[3,"<table><tbody><tr>","</tr></tbody></table>"],p=[1,"<svg>","</svg>"],d={"*":[1,"?<div>","</div>"],area:[1,"<map>","</map>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],legend:[1,"<fieldset>","</fieldset>"],param:[1,"<object>","</object>"],tr:[2,"<table><tbody>","</tbody></table>"],optgroup:u,option:u,caption:c,colgroup:c,tbody:c,tfoot:c,thead:c,td:l,th:l,circle:p,defs:p,ellipse:p,g:p,line:p,linearGradient:p,path:p,polygon:p,polyline:p,radialGradient:p,rect:p,stop:p,text:p};t.exports=o},{"./ExecutionEnvironment":22,"./invariant":126}],119:[function(e,t,n){"use strict";function o(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function r(e){for(;e;){if(e.nextSibling)return e.nextSibling;e=e.parentNode}}function a(e,t){for(var n=o(e),a=0,i=0;n;){if(3==n.nodeType){if(i=a+n.textContent.length,a<=t&&i>=t)return{node:n,offset:t-a};a=i}n=o(r(n))}}t.exports=a},{}],120:[function(e,t,n){"use strict";function o(e){return e?e.nodeType===r?e.documentElement:e.firstChild:null}var r=9;t.exports=o},{}],121:[function(e,t,n){"use strict";function o(){return!a&&r.canUseDOM&&(a="textContent"in document.documentElement?"textContent":"innerText"),a}var r=e("./ExecutionEnvironment"),a=null;t.exports=o},{"./ExecutionEnvironment":22}],122:[function(e,t,n){"use strict";function o(e){return e===window?{x:window.pageXOffset||document.documentElement.scrollLeft,y:window.pageYOffset||document.documentElement.scrollTop}:{x:e.scrollLeft,y:e.scrollTop}}t.exports=o},{}],123:[function(e,t,n){function o(e){return e.replace(r,"-$1").toLowerCase()}var r=/([A-Z])/g;t.exports=o},{}],124:[function(e,t,n){"use strict";function o(e){return r(e).replace(a,"-ms-")}var r=e("./hyphenate"),a=/^ms-/;t.exports=o},{"./hyphenate":123}],125:[function(e,t,n){"use strict";function o(e,t){var n;if(r(e&&("function"==typeof e.type||"string"==typeof e.type),"Only functions or strings can be mounted as React components."),e.type._mockedReactClassConstructor){i._isLegacyCallWarningEnabled=!1;try{n=new e.type._mockedReactClassConstructor(e.props)}finally{i._isLegacyCallWarningEnabled=!0}a.isValidElement(n)&&(n=new n.type(n.props));var o=n.render;if(o)return o._isMockFunction&&!o._getMockImplementation()&&o.mockImplementation(u.getEmptyComponent),n.construct(e),n;e=u.getEmptyComponent()}return n="string"==typeof e.type?s.createInstanceForTag(e.type,e.props,t):new e.type(e.props),r("function"==typeof n.construct&&"function"==typeof n.mountComponent&&"function"==typeof n.receiveComponent,"Only React Components can be mounted."),n.construct(e),n}var r=e("./warning"),a=e("./ReactElement"),i=e("./ReactLegacyElement"),s=e("./ReactNativeComponent"),u=e("./ReactEmptyComponent");t.exports=o},{"./ReactElement":52,"./ReactEmptyComponent":54,"./ReactLegacyElement":61,"./ReactNativeComponent":66,"./warning":145}],126:[function(e,t,n){"use strict";var o=function(e,t,n,o,r,a,i,s){if(void 0===t)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,o,r,a,i,s],l=0;u=new Error("Invariant Violation: "+t.replace(/%s/g,function(){return c[l++]}))}throw u.framesToPop=1,u}};t.exports=o},{}],127:[function(e,t,n){"use strict";function o(e,t){if(!a.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,o=n in document;if(!o){var i=document.createElement("div");i.setAttribute(n,"return;"),o="function"==typeof i[n]}return!o&&r&&"wheel"===e&&(o=document.implementation.hasFeature("Events.wheel","3.0")),o}var r,a=e("./ExecutionEnvironment");a.canUseDOM&&(r=document.implementation&&document.implementation.hasFeature&&!0!==document.implementation.hasFeature("","")),t.exports=o},{"./ExecutionEnvironment":22}],128:[function(e,t,n){function o(e){return!(!e||!("function"==typeof Node?e instanceof Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}t.exports=o},{}],129:[function(e,t,n){"use strict";function o(e){return e&&("INPUT"===e.nodeName&&r[e.type]||"TEXTAREA"===e.nodeName)}var r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};t.exports=o},{}],130:[function(e,t,n){function o(e){return r(e)&&3==e.nodeType}var r=e("./isNode");t.exports=o},{"./isNode":128}],131:[function(e,t,n){"use strict";function o(e){e||(e="");var t,n=arguments.length;if(n>1)for(var o=1;o<n;o++)(t=arguments[o])&&(e=(e?e+" ":"")+t);return e}t.exports=o},{}],132:[function(e,t,n){"use strict";var o=e("./invariant"),r=function(e){var t,n={};o(e instanceof Object&&!Array.isArray(e),"keyMirror(...): Argument must be an object.");for(t in e)e.hasOwnProperty(t)&&(n[t]=t);return n};t.exports=r},{"./invariant":126}],133:[function(e,t,n){var o=function(e){var t;for(t in e)if(e.hasOwnProperty(t))return t;return null};t.exports=o},{}],134:[function(e,t,n){"use strict";function o(e,t,n){if(!e)return null;var o={};for(var a in e)r.call(e,a)&&(o[a]=t.call(n,e[a],a,e));return o}var r=Object.prototype.hasOwnProperty;t.exports=o},{}],135:[function(e,t,n){"use strict";function o(e){var t={};return function(n){return t.hasOwnProperty(n)?t[n]:t[n]=e.call(this,n)}}t.exports=o},{}],136:[function(e,t,n){"use strict";function o(e,t){r(e&&!/[^a-z0-9_]/.test(e),"You must provide an eventName using only the characters [a-z0-9_]")}var r=e("./invariant");t.exports=o},{"./invariant":126}],137:[function(e,t,n){"use strict";function o(e){return a(r.isValidElement(e),"onlyChild must be passed a children with exactly one child."),e}var r=e("./ReactElement"),a=e("./invariant");t.exports=o},{"./ReactElement":52,"./invariant":126}],138:[function(e,t,n){"use strict";var o,r=e("./ExecutionEnvironment");r.canUseDOM&&(o=window.performance||window.msPerformance||window.webkitPerformance),t.exports=o||{}},{"./ExecutionEnvironment":22}],139:[function(e,t,n){var o=e("./performance");o&&o.now||(o=Date);var r=o.now.bind(o);t.exports=r},{"./performance":138}],140:[function(e,t,n){"use strict";var o=e("./ExecutionEnvironment"),r=/^[ \r\n\t\f]/,a=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,i=function(e,t){e.innerHTML=t};if(o.canUseDOM){var s=document.createElement("div");s.innerHTML=" ",""===s.innerHTML&&(i=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),r.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML="\ufeff"+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t})}t.exports=i},{"./ExecutionEnvironment":22}],141:[function(e,t,n){"use strict";function o(e,t){if(e===t)return!0;var n;for(n in e)if(e.hasOwnProperty(n)&&(!t.hasOwnProperty(n)||e[n]!==t[n]))return!1;for(n in t)if(t.hasOwnProperty(n)&&!e.hasOwnProperty(n))return!1;return!0}t.exports=o},{}],142:[function(e,t,n){"use strict";function o(e,t){return!(!e||!t||e.type!==t.type||e.key!==t.key||e._owner!==t._owner)}t.exports=o},{}],143:[function(e,t,n){function o(e){var t=e.length;if(r(!Array.isArray(e)&&("object"==typeof e||"function"==typeof e),"toArray: Array-like object expected"),r("number"==typeof t,"toArray: Object needs a length property"),r(0===t||t-1 in e,"toArray: Object should have keys for indices"),e.hasOwnProperty)try{return Array.prototype.slice.call(e)}catch(e){}for(var n=Array(t),o=0;o<t;o++)n[o]=e[o];return n}var r=e("./invariant");t.exports=o},{"./invariant":126}],144:[function(e,t,n){"use strict";function o(e){return d[e]}function r(e,t){return e&&null!=e.key?i(e.key):t.toString(36)}function a(e){return(""+e).replace(f,o)}function i(e){return"$"+a(e)}function s(e,t,n){return null==e?0:h(e,"",0,t,n)}var u=e("./ReactElement"),c=e("./ReactInstanceHandles"),l=e("./invariant"),p=c.SEPARATOR,d={"=":"=0",".":"=1",":":"=2"},f=/[=.:]/g,h=function(e,t,n,o,a){var s,c,d=0;if(Array.isArray(e))for(var f=0;f<e.length;f++){var m=e[f];s=t+(t?":":p)+r(m,f),c=n+d,d+=h(m,s,c,o,a)}else{var v=typeof e,y=""===t,g=y?p+r(e,0):t;if(null==e||"boolean"===v)o(a,null,g,n),d=1;else if("string"===v||"number"===v||u.isValidElement(e))o(a,e,g,n),d=1;else if("object"===v){l(!e||1!==e.nodeType,"traverseAllChildren(...): Encountered an invalid child; DOM elements are not valid children of React components.");for(var C in e)e.hasOwnProperty(C)&&(s=t+(t?":":p)+i(C)+":"+r(e[C],0),c=n+d,d+=h(e[C],s,c,o,a))}}return d};t.exports=s},{"./ReactElement":52,"./ReactInstanceHandles":60,"./invariant":126}],145:[function(e,t,n){"use strict";var o=e("./emptyFunction"),r=o;r=function(e,t){for(var n=[],o=2,r=arguments.length;o<r;o++)n.push(arguments[o]);if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(!e){var a=0;console.warn("Warning: "+t.replace(/%s/g,function(){return n[a++]}))}},t.exports=r},{"./emptyFunction":107}]},{},[1])(1)});
package/extras/tests.js CHANGED
@@ -107,6 +107,15 @@ test(function applying_patches (done) {
107
107
  [[1,2,3], '[-1:-0] = [0, 0, 0]', [1, 2, 0, 0, 0]]
108
108
  ]
109
109
 
110
+ // Convert to braid patch format
111
+ for (var i=0; i<tests.length; i++) {
112
+ var match = tests[i][1].match(/(.*) = (.*)/)
113
+ tests[i][1] = {unit: 'json',
114
+ range: match[1],
115
+ content: match[2]}
116
+ }
117
+
118
+ // Test them
110
119
  for (var i=0; i<tests.length; i++) {
111
120
  var x = bus.apply_patch(tests[i][0], tests[i][1])
112
121
  assert(bus.deep_equals(x, tests[i][2]),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "statebus",
3
- "version": "7.0.28",
3
+ "version": "7.0.31",
4
4
  "description": "Synchronize state.",
5
5
  "main": "statebus.js",
6
6
  "scripts": {
@@ -15,7 +15,8 @@
15
15
  "extras/tests.js",
16
16
  "extras/tcp-bind.js",
17
17
  "extras/coffee.js",
18
- "extras/sockjs.js"
18
+ "extras/sockjs.js",
19
+ "extras/react12.min.js"
19
20
  ],
20
21
  "dependencies": {
21
22
  "bcrypt-nodejs": "0.0.3",
package/server-library.js CHANGED
@@ -229,13 +229,10 @@ function import_server (bus, make_statebus, options)
229
229
 
230
230
  var patches = req.patches().then(patches => {
231
231
  console.log("...and we see these patches:", patches)
232
- var statebus_patches = patches.map(patch =>
233
- patch.range + ' = ' + patch.content
234
- )
235
232
  var cbus = bus.bus_for_http_client(req, res)
236
233
  var key = req.url.substr(1)
237
234
  cbus.get_once(key, (obj) => {
238
- cbus.set(key, {patch: statebus_patches})
235
+ cbus.set(key, {patches})
239
236
  res.sendStatus(200)
240
237
  console.log('We just processed a patch!')
241
238
  })
@@ -463,8 +460,8 @@ function import_server (bus, make_statebus, options)
463
460
  var msg = {set: obj}
464
461
  if (t.version) msg.version = t.version
465
462
  if (t.parents) msg.parents = t.parents
466
- if (t.patch) msg.patch = t.patch
467
- if (t.patch) msg.set = msg.set.key
463
+ if (t.patches) msg.patches = t.patches
464
+ if (t.patches) msg.set = msg.set.key
468
465
  msg = JSON.stringify(msg)
469
466
 
470
467
  if (master.simulate_network_delay) {
@@ -489,7 +486,7 @@ function import_server (bus, make_statebus, options)
489
486
  ||
490
487
  (method === 'set'
491
488
  && master.validate(message, {set: '*',
492
- '?parents': 'array', '?version': 'string', '?patch': 'array'})
489
+ '?parents': 'array', '?version': 'string', '?patches': 'array'})
493
490
  && (typeof(message.set) === 'string'
494
491
  || (typeof(message.set) === 'object'
495
492
  && typeof(message.set.key === 'string'))))
@@ -522,10 +519,10 @@ function import_server (bus, make_statebus, options)
522
519
  break
523
520
  case 'set':
524
521
  message.version = message.version || client.new_version()
525
- if (message.patch) {
522
+ if (message.patches) {
526
523
  var o = bus.cache[message.set] || {key: message.set}
527
524
  try {
528
- message.set = bus.apply_patch(o.val, message.patch[0])
525
+ message.set = bus.apply_patch(o.val, message.patches[0])
529
526
  } catch (e) {
530
527
  console.error('Received bad sockjs message from '
531
528
  + conn.remoteAddress +': ', message, e)
@@ -535,7 +532,7 @@ function import_server (bus, make_statebus, options)
535
532
  client.set(message.set,
536
533
  {version: message.version,
537
534
  parents: message.parents,
538
- patch: message.patch})
535
+ patches: message.patches})
539
536
  if (our_gets_in[message.set.key]) { // Store what we've seen if we
540
537
  // might have to publish it later
541
538
  client.log('Adding', message.set.key+'#'+message.version,
package/statebus.js CHANGED
@@ -95,22 +95,22 @@
95
95
  function set (obj, t) {
96
96
  // First let's handle patches. We receive them as:
97
97
  //
98
- // set("foo", {patch: ['.foo.bar = "blah"]})
98
+ // set("foo", {patches: [{...}, ...]})
99
99
  //
100
100
  // Note the `obj` will actually be a string, set to the key in this case.
101
101
  //
102
- if (typeof obj === 'string' && t && t.patch) {
103
- if (typeof t.patch == 'string') t.patch = [t.patch]
102
+ if (typeof obj === 'string' && t && t.patches) {
103
+ if (!Array.isArray(t.patches)) t.patches = [t.patches]
104
104
  // Apply the patch locally
105
105
  var key = obj,
106
106
  obj = bus.cache[key]
107
107
 
108
- console.log('set: applying the patch!', {
108
+ console.log('set: applying the patches!', {
109
109
  key: key,
110
110
  obj: obj,
111
- patch: t.patch[0]
111
+ patches: t.patches[0]
112
112
  })
113
- obj.val = apply_patch(obj.val, t.patch[0])
113
+ obj.val = apply_patch(obj.val, t.patches[0])
114
114
  }
115
115
 
116
116
  if (!('key' in obj) || typeof obj.key !== 'string') {
@@ -188,22 +188,22 @@
188
188
 
189
189
  // Handle patches. We receive them as:
190
190
  //
191
- // set.fire("foo", {patch: ['.foo.bar = "blah"]})
191
+ // set.fire("foo", {patches: [{...}, ...]})
192
192
  //
193
193
  // Note the `obj` will actually be a string, set to the key in this case.
194
194
  //
195
195
  if (typeof obj === 'string' && t && t.patch) {
196
- if (typeof t.patch == 'string') t.patch = [t.patch]
197
- // Apply the patch locally
196
+ if (!Array.isArray(t.patches)) t.patches = [t.patches]
197
+ // Apply the patches locally
198
198
  var key = obj,
199
199
  obj = bus.cache[key]
200
200
 
201
- // console.log('set.fire: applying the patch!', {
201
+ // console.log('set.fire: applying the patches!', {
202
202
  // key: key,
203
203
  // obj: obj,
204
- // patch: t.patch[0]
204
+ // patch: t.patches[0]
205
205
  // })
206
- obj.val = apply_patch(obj.val, t.patch[0])
206
+ obj.val = apply_patch(obj.val, t.patches[0])
207
207
  }
208
208
 
209
209
  // Print a statelog entry
@@ -1357,8 +1357,10 @@
1357
1357
  var new_path = path + '[' + JSON.stringify(k) + ']'
1358
1358
  bus.set(
1359
1359
  base,
1360
- // Forward the patch too
1361
- {patch: [new_path + ' = ' + JSON.stringify(v)]}
1360
+ // Forward the patches too
1361
+ {patches: [{unit: 'json',
1362
+ range: new_path,
1363
+ content: JSON.stringify(v)}]}
1362
1364
  )
1363
1365
  return true
1364
1366
  },
@@ -1378,8 +1380,10 @@
1378
1380
  delete o[escape_field_to_bus(escape_field_to_nelson(k))]
1379
1381
  bus.set(
1380
1382
  base,
1381
- // Forward the patch too
1382
- {patch: [new_path + ' = ']}
1383
+ // Forward the patches too
1384
+ {patches: [{unit: 'json',
1385
+ range: new_path,
1386
+ content: undefined}]}
1383
1387
  )
1384
1388
  return true // Report success to Proxy
1385
1389
  }
@@ -1517,8 +1521,8 @@
1517
1521
  var x = {set: obj}
1518
1522
  if (t.version) x.version = t.version
1519
1523
  if (t.parents) x.parents = t.parents
1520
- if (t.patch) x.patch = t.patch
1521
- if (t.patch) x.set = rem_prefix(x.set.key)
1524
+ if (t.patches) x.patches = t.patches
1525
+ if (t.patches) x.set = rem_prefix(x.set.key)
1522
1526
  send(x)
1523
1527
  }
1524
1528
  bus(prefix).getter = function (key) { send({get: key}),
@@ -1619,24 +1623,24 @@
1619
1623
  bus.log('net client received', message)
1620
1624
  var t = {version: message.version,
1621
1625
  parents: message.parents,
1622
- patch: message.patch}
1626
+ patches: message.patches}
1623
1627
 
1624
1628
  var obj
1625
1629
 
1626
- // Are we receiving a patch?
1627
- if (message.patch && typeof message.set === 'string') {
1630
+ // Are we receiving a patches?
1631
+ if (message.patches && typeof message.set === 'string') {
1628
1632
  // Then message.set is a key, and we are applying a
1629
1633
  // patch to the data at that key
1630
1634
  var key = message.set
1631
1635
  obj = apply_patch(bus.cache[key] && bus.cache[key].val,
1632
- message.patch[0])
1636
+ message.patches[0])
1633
1637
  }
1634
1638
 
1635
1639
  // Then we're receiving the full state as an object
1636
1640
  else
1637
1641
  obj = message.set
1638
1642
 
1639
- if (!(t.version||t.parents||t.patch))
1643
+ if (!(t.version||t.parents||t.patches))
1640
1644
  t = undefined
1641
1645
 
1642
1646
  bus.set.fire(add_prefixes(message.set), t)
@@ -1796,9 +1800,9 @@
1796
1800
  // The final object can be a slice
1797
1801
  // Set the value in the final object
1798
1802
 
1799
- var match = patch.match(/(.*) = (.*)/),
1800
- path = match[1],
1801
- new_stuff = match[2].length ? JSON.parse(match[2]) : undefined
1803
+ console.assert(patch.unit === 'json', "Can't apply non-json patches")
1804
+
1805
+ var path = patch.range, new_stuff = JSON.parse(patch.content)
1802
1806
 
1803
1807
  var path_segment = /^(\.?([^\.\[]+))|(\[((-?\d+):)?(-?\d+)\])|\[("(\\"|[^"])*")\]/
1804
1808
  var curr_obj = obj,