diff --git a/package.json b/package.json index 38ee397f..85065f7d 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "tinode-webapp", "description": "Tinode messenger for the web", - "version": "0.15.6-rc2", + "version": "0.15.6-rc4", "devDependencies": { "babel-cli": "^6.26.0", "babel-preset-env": "^1.7.0", diff --git a/umd/index.dev.js b/umd/index.dev.js index 7c20f554..ccd10974 100644 --- a/umd/index.dev.js +++ b/umd/index.dev.js @@ -20245,6 +20245,7 @@ ReactDOM.render( if (typeof require == 'function') { if (typeof React == 'undefined') { var React = require('react'); + var ReactDOM = require('react-dom'); } if (typeof Tinode == 'undefined') { var Tinode = require('tinode-sdk'); @@ -25105,7 +25106,7 @@ class SendMessage extends React.PureComponent { /* This is just a static page to display when no conversation is selected. */ class LogoView extends React.PureComponent { render() { - var version = APP_NAME + " (" + Tinode.getLibrary() + "-" + new Date(document.lastModified).toISOString() + ")"; + var version = APP_NAME + " (" + Tinode.getLibrary() + ")"; return React.createElement( 'div', { id: 'dummy-view', className: this.props.hideSelf ? 'nodisplay' : null }, @@ -25119,7 +25120,7 @@ class LogoView extends React.PureComponent { React.createElement( 'h2', null, - 'Tinode Demo Chat' + 'Tinode Web' ) ), React.createElement( @@ -25951,7 +25952,7 @@ class TinodeWeb extends React.Component { handleNewTopicRequest(peerName, pub, priv, tags) { var topicName = peerName || this.state.tinode.newGroupTopicName(); if (!peerName) { - this.setState({ newGroupTopicParams: { desc: { public: pub, private: priv }, tags: tags } }, () => { + this.setState({ newGroupTopicParams: { desc: { public: pub, private: { comment: priv } }, tags: tags } }, () => { this.handleTopicSelected(topicName); }); } else { @@ -26231,7 +26232,7 @@ class TinodeWeb extends React.Component { module.exports = TinodeWeb; -},{"react":23,"tinode-sdk":24}],27:[function(require,module,exports){ +},{"react":23,"react-dom":20,"tinode-sdk":24}],27:[function(require,module,exports){ // shim for using process in browser var process = module.exports = {}; diff --git a/umd/index.prod.js b/umd/index.prod.js index c91effcd..a4c6915c 100644 --- a/umd/index.prod.js +++ b/umd/index.prod.js @@ -1 +1 @@ -!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Webapp=e()}}(function(){return function(){return function e(t,n,r){function a(o,s){if(!n[o]){if(!t[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(i)return i(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){return a(t[o][1][e]||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o2?n-2:0),a=2;a1?t-1:0),r=1;r-1||n(!1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e),!T[r]){t.extractEvents||n(!1,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e),T[r]=t;var a=t.eventTypes;for(var i in a)S(a[i],t,i)||n(!1,"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",i,e)}}}function S(e,t,r){x.hasOwnProperty(r)&&n(!1,"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",r),x[r]=e;var a=e.phasedRegistrationNames;if(a){for(var i in a){if(a.hasOwnProperty(i))k(a[i],t,r)}return!0}return!!e.registrationName&&(k(e.registrationName,t,r),!0)}function k(e,t,r){_[e]&&n(!1,"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e),_[e]=t,P[e]=t.eventTypes[r].dependencies;var a=e.toLowerCase();N[a]=e,"onDoubleClick"===e&&(N.ondblclick=e)}var T=[],x={},_={},P={},N={};function M(e){w&&n(!1,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."),w=Array.prototype.slice.call(e),C()}function R(e){var t=!1;for(var r in e)if(e.hasOwnProperty(r)){var a=e[r];E.hasOwnProperty(r)&&E[r]===a||(E[r]&&n(!1,"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",r),E[r]=a,t=!0)}t&&C()}var U=Object.freeze({plugins:T,eventNameDispatchConfigs:x,registrationNameModules:_,registrationNameDependencies:P,possibleRegistrationNames:N,injectEventPluginOrder:M,injectEventPluginsByName:R}),D=null,I=null,A=null,O=function(e){D=e.getFiberCurrentPropsFromNode,I=e.getInstanceFromNode,(A=e.getNodeFromInstance)&&I||a(!1,"EventPluginUtils.injection.injectComponentTree(...): Injected module is missing getNodeFromInstance or getInstanceFromNode.")},F=void 0;function L(e,t,n,r){var a=e.type||"unknown-event";e.currentTarget=A(r),b.invokeGuardedCallbackAndCatchFirstError(a,n,void 0,e),e.currentTarget=null}function j(e,t){return null==t&&n(!1,"accumulateInto(...): Accumulated items must not be null or undefined."),null==e?t:Array.isArray(e)?Array.isArray(t)?(e.push.apply(e,t),e):(e.push(t),e):Array.isArray(t)?[e].concat(t):[e,t]}function z(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)}F=function(e){var t=e._dispatchListeners,n=e._dispatchInstances,r=Array.isArray(t),i=r?t.length:t?1:0,o=Array.isArray(n),s=o?n.length:n?1:0;(o!==r||s!==i)&&a(!1,"EventPluginUtils: Invalid `event`.")};var W=null,q=function(e,t){e&&(!function(e,t){var n=e._dispatchListeners,r=e._dispatchInstances;if(F(e),Array.isArray(n))for(var a=0;a0;)t(r[a],"captured",n);for(a=0;a0;)e=we(e),n--;for(;a-n>0;)t=we(t),a--;for(var o=n;o--;){if(e===t||e===t.alternate)return e;e=we(e),t=we(t)}return null}(e,t):null,o=[];e&&e!==i;){var s=e.alternate;if(null!==s&&s===i)break;o.push(e),e=we(e)}for(var l=[];t&&t!==i;){var c=t.alternate;if(null!==c&&c===i)break;l.push(t),t=we(t)}for(var u=0;u0;)n(l[d],"captured",a)}function Se(e,t,n){e||a(!1,"Dispatching inst must not be null");var r=function(e,t,n){return G(e,t.dispatchConfig.phasedRegistrationNames[n])}(e,n,t);r&&(n._dispatchListeners=j(n._dispatchListeners,r),n._dispatchInstances=j(n._dispatchInstances,e))}function ke(e){e&&e.dispatchConfig.phasedRegistrationNames&&Ee(e._targetInst,Se,e)}function Te(e){if(e&&e.dispatchConfig.phasedRegistrationNames){var t=e._targetInst;Ee(t?we(t):null,Se,e)}}function xe(e,t,n){if(e&&n&&n.dispatchConfig.registrationName){var r=G(e,n.dispatchConfig.registrationName);r&&(n._dispatchListeners=j(n._dispatchListeners,r),n._dispatchInstances=j(n._dispatchInstances,e))}}function _e(e){e&&e.dispatchConfig.registrationName&&xe(e._targetInst,0,e)}function Pe(e){z(e,ke)}function Ne(e,t,n,r){Ce(n,r,xe,e,t)}var Me=Object.freeze({accumulateTwoPhaseDispatches:Pe,accumulateTwoPhaseDispatchesSkipTarget:function(e){z(e,Te)},accumulateEnterLeaveDispatches:Ne,accumulateDirectDispatches:function(e){z(e,_e)}});function Re(e){return e}function Ue(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n["ms"+e]="MS"+t,n["O"+e]="o"+t.toLowerCase(),n}var De={animationend:Ue("Animation","AnimationEnd"),animationiteration:Ue("Animation","AnimationIteration"),animationstart:Ue("Animation","AnimationStart"),transitionend:Ue("Transition","TransitionEnd")},Ie={},Ae={};function Oe(e){if(Ie[e])return Ie[e];if(!De[e])return e;var t=De[e];for(var n in t)if(t.hasOwnProperty(n)&&n in Ae)return Ie[e]=t[n];return e}i.canUseDOM&&(Ae=document.createElement("div").style,"AnimationEvent"in window||(delete De.animationend.animation,delete De.animationiteration.animation,delete De.animationstart.animation),"TransitionEvent"in window||delete De.transitionend.transition);var Fe=Re("abort"),Le=Re(Oe("animationend")),je=Re(Oe("animationiteration")),ze=Re(Oe("animationstart")),We=Re("blur"),qe=Re("canplay"),Ve=Re("canplaythrough"),Be=Re("cancel"),He=Re("change"),Ge=Re("click"),Ke=Re("close"),$e=Re("compositionend"),Qe=Re("compositionstart"),Ye=Re("compositionupdate"),Xe=Re("contextmenu"),Je=Re("copy"),Ze=Re("cut"),et=Re("dblclick"),tt=Re("drag"),nt=Re("dragend"),rt=Re("dragenter"),at=Re("dragexit"),it=Re("dragleave"),ot=Re("dragover"),st=Re("dragstart"),lt=Re("drop"),ct=Re("durationchange"),ut=Re("emptied"),dt=Re("encrypted"),pt=Re("ended"),ht=Re("error"),ft=Re("focus"),mt=Re("gotpointercapture"),gt=Re("input"),vt=Re("invalid"),bt=Re("keydown"),yt=Re("keypress"),wt=Re("keyup"),Et=Re("load"),Ct=Re("loadstart"),St=Re("loadeddata"),kt=Re("loadedmetadata"),Tt=Re("lostpointercapture"),xt=Re("mousedown"),_t=Re("mousemove"),Pt=Re("mouseout"),Nt=Re("mouseover"),Mt=Re("mouseup"),Rt=Re("paste"),Ut=Re("pause"),Dt=Re("play"),It=Re("playing"),At=Re("pointercancel"),Ot=Re("pointerdown"),Ft=Re("pointermove"),Lt=Re("pointerout"),jt=Re("pointerover"),zt=Re("pointerup"),Wt=Re("progress"),qt=Re("ratechange"),Vt=Re("reset"),Bt=Re("scroll"),Ht=Re("seeked"),Gt=Re("seeking"),Kt=Re("selectionchange"),$t=Re("stalled"),Qt=Re("submit"),Yt=Re("suspend"),Xt=Re("textInput"),Jt=Re("timeupdate"),Zt=Re("toggle"),en=Re("touchcancel"),tn=Re("touchend"),nn=Re("touchmove"),rn=Re("touchstart"),an=Re(Oe("transitionend")),on=Re("volumechange"),sn=Re("waiting"),ln=Re("wheel"),cn=[Fe,qe,Ve,ct,ut,dt,pt,ht,St,kt,Ct,Ut,Dt,It,Wt,qt,Ht,Gt,$t,Yt,Jt,on,sn];function un(e){return function(e){return e}(e)}var dn=null;function pn(){return!dn&&i.canUseDOM&&(dn="textContent"in document.documentElement?"textContent":"innerText"),dn}var hn={_root:null,_startText:null,_fallbackText:null};function fn(){if(hn._fallbackText)return hn._fallbackText;var e=void 0,t=hn._startText,n=t.length,r=void 0,a=mn(),i=a.length;for(e=0;e1?1-r:void 0;return hn._fallbackText=a.slice(e,s),hn._fallbackText}function mn(){return"value"in hn._root?hn._root.value:hn._root[pn()]}var gn=!1,vn=10,bn=["dispatchConfig","_targetInst","nativeEvent","isDefaultPrevented","isPropagationStopped","_dispatchListeners","_dispatchInstances"],yn={type:null,target:null,currentTarget:s.thatReturnsNull,eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null};function wn(e,t,n,r){delete this.nativeEvent,delete this.preventDefault,delete this.stopPropagation,this.dispatchConfig=e,this._targetInst=t,this.nativeEvent=n;var a=this.constructor.Interface;for(var i in a)if(a.hasOwnProperty(i)){delete this[i];var o=a[i];o?this[i]=o(n):"target"===i?this.target=r:this[i]=n[i]}var l=null!=n.defaultPrevented?n.defaultPrevented:!1===n.returnValue;return this.isDefaultPrevented=l?s.thatReturnsTrue:s.thatReturnsFalse,this.isPropagationStopped=s.thatReturnsFalse,this}function En(e,t){var n="function"==typeof t;return{configurable:!0,set:function(e){return r(n?"setting the method":"setting the property","This is effectively a no-op"),e},get:function(){return r(n?"accessing the method":"accessing the property",n?"This is a no-op function":"This is set to null"),t}};function r(t,n){a(!1,"This synthetic event is reused for performance reasons. If you're seeing this, you're %s `%s` on a released/nullified synthetic event. %s. If you must keep the original synthetic event around, use event.persist(). See https://fb.me/react-event-pooling for more information.",t,e,n)}}function Cn(e,t,n,r){if(this.eventPool.length){var a=this.eventPool.pop();return this.call(a,e,t,n,r),a}return new this(e,t,n,r)}function Sn(e){e instanceof this||n(!1,"Trying to release an event instance into a pool of a different type."),e.destructor(),this.eventPool.length8&&Rn<=11),In=32,An=String.fromCharCode(In),On={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:[$e,yt,Xt,Rt]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:[We,$e,bt,yt,wt,xt]},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:[We,Qe,bt,yt,wt,xt]},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:[We,Ye,bt,yt,wt,xt]}},Fn=!1;function Ln(e,t){switch(e){case wt:return-1!==Pn.indexOf(t.keyCode);case bt:return t.keyCode!==Nn;case yt:case xt:case We:return!0;default:return!1}}function jn(e){var t=e.detail;return"object"==typeof t&&"data"in t?t.data:null}var zn=!1;function Wn(e,t,n,r){var a=void 0,i=void 0;if(Mn?a=function(e){switch(e){case Qe:return On.compositionStart;case $e:return On.compositionEnd;case Ye:return On.compositionUpdate}}(e):zn?Ln(e,n)&&(a=On.compositionEnd):function(e,t){return e===bt&&t.keyCode===Nn}(e,n)&&(a=On.compositionStart),!a)return null;Dn&&(zn||a!==On.compositionStart?a===On.compositionEnd&&zn&&(i=fn()):zn=function(e){return hn._root=e,hn._startText=mn(),!0}(r));var o=xn.getPooled(a,t,n,r);if(i)o.data=i;else{var s=jn(n);null!==s&&(o.data=s)}return Pe(o),o}function qn(e,t){if(zn){if(e===$e||!Mn&&Ln(e,t)){var n=fn();return hn._root=null,hn._startText=null,hn._fallbackText=null,zn=!1,n}return null}switch(e){case Rt:return null;case yt:if(!function(e){return(e.ctrlKey||e.altKey||e.metaKey)&&!(e.ctrlKey&&e.altKey)}(t)){if(t.char&&t.char.length>1)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case $e:return Dn?null:t.data;default:return null}}function Vn(e,t,n,r){var a=void 0;if(!(a=Un?function(e,t){switch(e){case $e:return jn(t);case yt:return t.which!==In?null:(Fn=!0,An);case Xt:var n=t.data;return n===An&&Fn?null:n;default:return null}}(e,n):qn(e,n)))return null;var i=_n.getPooled(On.beforeInput,t,n,r);return i.data=a,Pe(i),i}var Bn={eventTypes:On,extractEvents:function(e,t,n,r){var a=Wn(e,t,n,r),i=Vn(e,t,n,r);return null===a?i:null===i?a:[a,i]}},Hn=null,Gn=null,Kn=null;function $n(e){var t=I(e);if(t){Hn&&"function"==typeof Hn.restoreControlledState||n(!1,"Fiber needs to be injected to handle a fiber target for controlled events. This error is likely caused by a bug in React. Please file an issue.");var r=D(t.stateNode);Hn.restoreControlledState(t.stateNode,t.type,r)}}var Qn={injectFiberControlledHostComponent:function(e){Hn=e}};function Yn(e){Gn?Kn?Kn.push(e):Kn=[e]:Gn=e}function Xn(){return null!==Gn||null!==Kn}function Jn(){if(Gn){var e=Gn,t=Kn;if(Gn=null,Kn=null,$n(e),t)for(var n=0;n2&&("o"===e[0]||"O"===e[0])&&("n"===e[1]||"N"===e[1]))}function ra(e,t,n,r){if(null!==n&&n.type===qr)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":if(r)return!1;if(null!==n)return!n.acceptsBooleans;var a=e.toLowerCase().slice(0,5);return"data-"!==a&&"aria-"!==a;default:return!1}}function aa(e,t,n,r){if(null===t||void 0===t)return!0;if(ra(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case Br:return!t;case Hr:return!1===t;case Gr:return isNaN(t);case Kr:return isNaN(t)||t<1}return!1}function ia(e){return sa.hasOwnProperty(e)?sa[e]:null}function oa(e,t,n,r,a){this.acceptsBooleans=t===Vr||t===Br||t===Hr,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t}var sa={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach(function(e){sa[e]=new oa(e,qr,!1,e,null)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0],n=e[1];sa[t]=new oa(t,1,!1,n,null)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){sa[e]=new oa(e,Vr,!1,e.toLowerCase(),null)}),["autoReverse","externalResourcesRequired","preserveAlpha"].forEach(function(e){sa[e]=new oa(e,Vr,!1,e,null)}),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach(function(e){sa[e]=new oa(e,Br,!1,e.toLowerCase(),null)}),["checked","multiple","muted","selected"].forEach(function(e){sa[e]=new oa(e,Br,!0,e.toLowerCase(),null)}),["capture","download"].forEach(function(e){sa[e]=new oa(e,Hr,!1,e.toLowerCase(),null)}),["cols","rows","size","span"].forEach(function(e){sa[e]=new oa(e,Kr,!1,e.toLowerCase(),null)}),["rowSpan","start"].forEach(function(e){sa[e]=new oa(e,Gr,!1,e.toLowerCase(),null)});var la=/[\-\:]([a-z])/g,ca=function(e){return e[1].toUpperCase()};function ua(e,t,n,r){if(r.mustUseProperty)return e[r.propertyName];var a=r.attributeName,i=null;if(r.type===Hr){if(e.hasAttribute(a)){var o=e.getAttribute(a);return""===o||(aa(t,n,r,!1)?o:o===""+n?n:o)}}else if(e.hasAttribute(a)){if(aa(t,n,r,!1))return e.getAttribute(a);if(r.type===Br)return n;i=e.getAttribute(a)}return aa(t,n,r,!1)?null===i?n:i:i===""+n?n:i}function da(e,t,n){if(ta(t)){if(!e.hasAttribute(t))return void 0===n?void 0:null;var r=e.getAttribute(t);return r===""+n?n:r}}function pa(e,t,n,r){var a=ia(t);if(!na(t,a,r))if(aa(t,n,a,r)&&(n=null),r||null===a){if(ta(t)){var i=t;null===n?e.removeAttribute(i):e.setAttribute(i,""+n)}}else if(a.mustUseProperty){var o=a.propertyName;if(null===n){var s=a.type;e[o]=s!==Br&&""}else e[o]=n}else{var l=a.attributeName,c=a.attributeNamespace;if(null===n)e.removeAttribute(l);else{var u=a.type,d=void 0;d=u===Br||u===Hr&&!0===n?"":""+n,c?e.setAttributeNS(c,l,d):e.setAttribute(l,d)}}}["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach(function(e){var t=e.replace(la,ca);sa[t]=new oa(t,1,!1,e,null)}),["xlink:actuate","xlink:arcrole","xlink:href","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(e){var t=e.replace(la,ca);sa[t]=new oa(t,1,!1,e,"http://www.w3.org/1999/xlink")}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(la,ca);sa[t]=new oa(t,1,!1,e,"http://www.w3.org/XML/1998/namespace")}),sa.tabIndex=new oa("tabIndex",1,!1,"tabindex",null);var ha={checkPropTypes:null},fa={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},ma={value:function(e,t,n){return!e[t]||fa[e.type]||e.onChange||e.readOnly||e.disabled?null: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){return!e[t]||e.onChange||e.readOnly||e.disabled?null: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`.")}};ha.checkPropTypes=function(e,t,n){l(ma,t,"prop",e,n)};var ga=Wr.getCurrentFiberOwnerName,va=Wr.getCurrentFiberStackAddendum,ba=!1,ya=!1,wa=!1,Ea=!1;function Ca(e){return"checkbox"===e.type||"radio"===e.type?null!=e.checked:null!=e.value}function Sa(e,t){var n=e,r=t.checked;return o({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=r?r:n._wrapperState.initialChecked})}function ka(e,t){ha.checkPropTypes("input",t,va),void 0===t.checked||void 0===t.defaultChecked||ya||(a(!1,"%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://fb.me/react-controlled-components",ga()||"A component",t.type),ya=!0),void 0===t.value||void 0===t.defaultValue||ba||(a(!1,"%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://fb.me/react-controlled-components",ga()||"A component",t.type),ba=!0);var n=e,r=null==t.defaultValue?"":t.defaultValue;n._wrapperState={initialChecked:null!=t.checked?t.checked:t.defaultChecked,initialValue:Ma(null!=t.value?t.value:r),controlled:Ca(t)}}function Ta(e,t){var n=e,r=t.checked;null!=r&&pa(n,"checked",r,!1)}function xa(e,t){var n=e,r=Ca(t);n._wrapperState.controlled||!r||Ea||(a(!1,"A component is changing an uncontrolled input of type %s to be controlled. Input elements should not switch from uncontrolled to controlled (or vice versa). Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://fb.me/react-controlled-components%s",t.type,va()),Ea=!0),!n._wrapperState.controlled||r||wa||(a(!1,"A component is changing a controlled input of type %s to be uncontrolled. Input elements should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://fb.me/react-controlled-components%s",t.type,va()),wa=!0),Ta(e,t);var i=Ma(t.value);null!=i&&("number"===t.type?(0===i&&""===n.value||n.value!=i)&&(n.value=""+i):n.value!==""+i&&(n.value=""+i)),t.hasOwnProperty("value")?Na(n,t.type,i):t.hasOwnProperty("defaultValue")&&Na(n,t.type,Ma(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(n.defaultChecked=!!t.defaultChecked)}function _a(e,t,n){var r=e;if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var a=""+r._wrapperState.initialValue,i=r.value;n||a!==i&&(r.value=a),r.defaultValue=a}var o=r.name;""!==o&&(r.name=""),r.defaultChecked=!r.defaultChecked,r.defaultChecked=!r.defaultChecked,""!==o&&(r.name=o)}function Pa(e,t){var r=e;xa(r,t),function(e,t){var r=t.name;if("radio"===t.type&&null!=r){for(var a=e;a.parentNode;)a=a.parentNode;for(var i=a.querySelectorAll("input[name="+JSON.stringify(""+r)+'][type="radio"]'),o=0;o9));var Ha={eventTypes:Ra,_isInputEventSupported:La,extractEvents:function(e,t,n,r){var a,i,o,s,l=t?ge(t):window,c=void 0,u=void 0;if("select"===(i=(a=l).nodeName&&a.nodeName.toLowerCase())||"input"===i&&"file"===a.type?c=Fa:sr(l)?La?c=Ba:(c=qa,u=Wa):function(e){var t=e.nodeName;return t&&"input"===t.toLowerCase()&&("checkbox"===e.type||"radio"===e.type)}(l)&&(c=Va),c){var d=c(e,t);if(d)return Ua(d,n,r)}u&&u(e,l,t),e===We&&(s=(o=l)._wrapperState)&&s.controlled&&"number"===o.type&&Na(o,"number",o.value)}},Ga=Tn.extend({view:null,detail:null}),Ka={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function $a(e){var t=this.nativeEvent;if(t.getModifierState)return t.getModifierState(e);var n=Ka[e];return!!n&&!!t[n]}function Qa(e){return $a}var Ya=Ga.extend({screenX:null,screenY:null,clientX:null,clientY:null,pageX:null,pageY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:Qa,button:null,buttons:null,relatedTarget:function(e){return e.relatedTarget||(e.fromElement===e.srcElement?e.toElement:e.fromElement)}}),Xa=Ya.extend({pointerId:null,width:null,height:null,pressure:null,tiltX:null,tiltY:null,pointerType:null,isPrimary:null}),Ja={mouseEnter:{registrationName:"onMouseEnter",dependencies:[Pt,Nt]},mouseLeave:{registrationName:"onMouseLeave",dependencies:[Pt,Nt]},pointerEnter:{registrationName:"onPointerEnter",dependencies:[Lt,jt]},pointerLeave:{registrationName:"onPointerLeave",dependencies:[Lt,jt]}},Za={eventTypes:Ja,extractEvents:function(e,t,n,r){var a=e===Nt||e===jt,i=e===Pt||e===Lt;if(a&&(n.relatedTarget||n.fromElement))return null;if(!i&&!a)return null;var o=void 0;if(r.window===r)o=r;else{var s=r.ownerDocument;o=s?s.defaultView||s.parentWindow:window}var l=void 0,c=void 0;if(i){l=t;var u=n.relatedTarget||n.toElement;c=u?fe(u):null}else l=null,c=t;if(l===c)return null;var d=void 0,p=void 0,h=void 0,f=void 0;e===Pt||e===Nt?(d=Ya,p=Ja.mouseLeave,h=Ja.mouseEnter,f="mouse"):e!==Lt&&e!==jt||(d=Xa,p=Ja.pointerLeave,h=Ja.pointerEnter,f="pointer");var m=null==l?o:ge(l),g=null==c?o:ge(c),v=d.getPooled(p,l,n,r);v.type=f+"leave",v.target=m,v.relatedTarget=g;var b=d.getPooled(h,c,n,r);return b.type=f+"enter",b.target=g,b.relatedTarget=m,Ne(v,b,l,c),[v,b]}};function ei(e){return e._reactInternalFiber}var ti=0,ni=1,ri=2,ai=4,ii=6,oi=8,si=16,li=32,ci=64,ui=128,di=256,pi=511,hi=512,fi=1024,mi=1,gi=2,vi=3;function bi(e){var t=e;if(e.alternate)for(;t.return;)t=t.return;else{if((t.effectTag&ri)!==ti)return mi;for(;t.return;)if(((t=t.return).effectTag&ri)!==ti)return mi}return t.tag===Z?gi:vi}function yi(e){return bi(e)===gi}function wi(e){bi(e)!==gi&&n(!1,"Unable to find node on an unmounted component.")}function Ei(e){var t=e.alternate;if(!t){var r=bi(e);return r===vi&&n(!1,"Unable to find node on an unmounted component."),r===mi?null:e}for(var a=e,i=t;;){var o=a.return,s=o?o.alternate:null;if(!o||!s)break;if(o.child===s.child){for(var l=o.child;l;){if(l===a)return wi(o),e;if(l===i)return wi(o),t;l=l.sibling}n(!1,"Unable to find node on an unmounted component.")}if(a.return!==i.return)a=o,i=s;else{for(var c=!1,u=o.child;u;){if(u===a){c=!0,a=o,i=s;break}if(u===i){c=!0,i=o,a=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===a){c=!0,a=s,i=o;break}if(u===i){c=!0,i=s,a=o;break}u=u.sibling}c||n(!1,"Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}a.alternate!==i&&n(!1,"Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}return a.tag!==Z&&n(!1,"Unable to find node on an unmounted component."),a.stateNode.current===a?e:t}function Ci(e){var t=Ei(e);if(!t)return null;for(var n=t;;){if(n.tag===te||n.tag===ne)return n;if(n.child)n.child.return=n,n=n.child;else{if(n===t)return null;for(;!n.sibling;){if(!n.return||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}}return null}var Si=Tn.extend({animationName:null,elapsedTime:null,pseudoElement:null}),ki=Tn.extend({clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ti=Ga.extend({relatedTarget:null});function xi(e){var t=void 0,n=e.keyCode;return"charCode"in e?0===(t=e.charCode)&&13===n&&(t=13):t=n,10===t&&(t=13),t>=32||13===t?t:0}var _i={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Pi={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"};var Ni=Ga.extend({key:function(e){if(e.key){var t=_i[e.key]||e.key;if("Unidentified"!==t)return t}if("keypress"===e.type){var n=xi(e);return 13===n?"Enter":String.fromCharCode(n)}return"keydown"===e.type||"keyup"===e.type?Pi[e.keyCode]||"Unidentified":""},location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:Qa,charCode:function(e){return"keypress"===e.type?xi(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?xi(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Mi=Ya.extend({dataTransfer:null}),Ri=Ga.extend({touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:Qa}),Ui=Tn.extend({propertyName:null,elapsedTime:null,pseudoElement:null}),Di=Ya.extend({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}),Ii=[[Fe,"abort"],[Le,"animationEnd"],[je,"animationIteration"],[ze,"animationStart"],[qe,"canPlay"],[Ve,"canPlayThrough"],[tt,"drag"],[rt,"dragEnter"],[at,"dragExit"],[it,"dragLeave"],[ot,"dragOver"],[ct,"durationChange"],[ut,"emptied"],[dt,"encrypted"],[pt,"ended"],[ht,"error"],[mt,"gotPointerCapture"],[Et,"load"],[St,"loadedData"],[kt,"loadedMetadata"],[Ct,"loadStart"],[Tt,"lostPointerCapture"],[_t,"mouseMove"],[Pt,"mouseOut"],[Nt,"mouseOver"],[It,"playing"],[Ft,"pointerMove"],[Lt,"pointerOut"],[jt,"pointerOver"],[Wt,"progress"],[Bt,"scroll"],[Gt,"seeking"],[$t,"stalled"],[Yt,"suspend"],[Jt,"timeUpdate"],[Zt,"toggle"],[nn,"touchMove"],[an,"transitionEnd"],[sn,"waiting"],[ln,"wheel"]],Ai={},Oi={};function Fi(e,t){var n=e[0],r=e[1],a="on"+(r[0].toUpperCase()+r.slice(1)),i={phasedRegistrationNames:{bubbled:a,captured:a+"Capture"},dependencies:[n],isInteractive:t};Ai[r]=i,Oi[n]=i}[[We,"blur"],[Be,"cancel"],[Ge,"click"],[Ke,"close"],[Xe,"contextMenu"],[Je,"copy"],[Ze,"cut"],[et,"doubleClick"],[nt,"dragEnd"],[st,"dragStart"],[lt,"drop"],[ft,"focus"],[gt,"input"],[vt,"invalid"],[bt,"keyDown"],[yt,"keyPress"],[wt,"keyUp"],[xt,"mouseDown"],[Mt,"mouseUp"],[Rt,"paste"],[Ut,"pause"],[Dt,"play"],[At,"pointerCancel"],[Ot,"pointerDown"],[zt,"pointerUp"],[qt,"rateChange"],[Vt,"reset"],[Ht,"seeked"],[Qt,"submit"],[en,"touchCancel"],[tn,"touchEnd"],[rn,"touchStart"],[on,"volumeChange"]].forEach(function(e){Fi(e,!0)}),Ii.forEach(function(e){Fi(e,!1)});var Li=[Fe,Be,qe,Ve,Ke,ct,ut,dt,pt,ht,gt,vt,Et,St,kt,Ct,Ut,Dt,It,Wt,qt,Vt,Ht,Gt,$t,Qt,Yt,Jt,Zt,on,sn],ji={eventTypes:Ai,isInteractiveTopLevelEventType:function(e){var t=Oi[e];return void 0!==t&&!0===t.isInteractive},extractEvents:function(e,t,n,r){var i=Oi[e];if(!i)return null;var o=void 0;switch(e){case yt:if(0===xi(n))return null;case bt:case wt:o=Ni;break;case We:case ft:o=Ti;break;case Ge:if(2===n.button)return null;case et:case xt:case _t:case Mt:case Pt:case Nt:case Xe:o=Ya;break;case tt:case nt:case rt:case at:case it:case ot:case st:case lt:o=Mi;break;case en:case tn:case nn:case rn:o=Ri;break;case Le:case je:case ze:o=Si;break;case an:o=Ui;break;case Bt:o=Ga;break;case ln:o=Di;break;case Je:case Ze:case Rt:o=ki;break;case mt:case Tt:case At:case Ot:case Ft:case Lt:case jt:case zt:o=Xa;break;default:-1===Li.indexOf(e)&&a(!1,"SimpleEventPlugin: Unhandled event type, `%s`. This warning is likely caused by a bug in React. Please file an issue.",e),o=Tn}var s=o.getPooled(i,t,n,r);return Pe(s),s}},zi=ji.isInteractiveTopLevelEventType,Wi=10,qi=[];function Vi(e){for(;e.return;)e=e.return;return e.tag!==Z?null:e.stateNode.containerInfo}function Bi(e){var t=e.targetInst,n=t;do{if(!n){e.ancestors.push(n);break}var r=Vi(n);if(!r)break;e.ancestors.push(n),n=fe(r)}while(n);for(var a=0;a=t)return{node:n,offset:t-r};r=a}n=ro(ao(n))}}function oo(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;try{n.nodeType,a.nodeType}catch(e){return null}return function(e,t,n,r,a){var i=0,o=-1,s=-1,l=0,c=0,u=e,d=null;e:for(;;){for(var p=null;u!==t||0!==n&&u.nodeType!==cr||(o=i+n),u!==r||0!==a&&u.nodeType!==cr||(s=i+a),u.nodeType===cr&&(i+=u.nodeValue.length),null!==(p=u.firstChild);)d=u,u=p;for(;;){if(u===e)break e;if(d===t&&++l===n&&(o=i),d===r&&++c===a&&(s=i),null!==(p=u.nextSibling))break;d=(u=d).parentNode}u=p}if(-1===o||-1===s)return null;return{start:o,end:s}}(e,n,r,a,i)}function so(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function lo(){var e=c();return{focusedElem:e,selectionRange:so(e)?function(e){var t=void 0;t="selectionStart"in e?{start:e.selectionStart,end:e.selectionEnd}:oo(e);return t||{start:0,end:0}}(e):null}}function co(e){var t,n=c(),r=e.focusedElem,a=e.selectionRange;if(n!==r&&(t=r,d(document.documentElement,t))){null!==a&&so(r)&&function(e,t){var n=t.start,r=t.end;void 0===r&&(r=n);"selectionStart"in e?(e.selectionStart=n,e.selectionEnd=Math.min(r,e.value.length)):function(e,t){if(window.getSelection){var n=window.getSelection(),r=e[pn()].length,a=Math.min(t.start,r),i=void 0===t.end?a:Math.min(t.end,r);if(!n.extend&&a>i){var o=i;i=a,a=o}var s=io(e,a),l=io(e,i);if(s&&l){if(1===n.rangeCount&&n.anchorNode===s.node&&n.anchorOffset===s.offset&&n.focusNode===l.node&&n.focusOffset===l.offset)return;var c=document.createRange();c.setStart(s.node,s.offset),n.removeAllRanges(),a>i?(n.addRange(c),n.extend(l.node,l.offset)):(c.setEnd(l.node,l.offset),n.addRange(c))}}}(e,t)}(r,a);for(var i=[],o=r;o=o.parentNode;)o.nodeType===lr&&i.push({element:o,left:o.scrollLeft,top:o.scrollTop});"function"==typeof r.focus&&r.focus();for(var s=0;s0?e:0}},Fo=function(e,t){var n=e.scheduledCallback,r=!1;try{n(t),r=!0}finally{xo(e),r||(Ro=!0,window.postMessage(Lo,"*"))}},Lo="__reactIdleCallback$"+Math.random().toString(36).slice(2);window.addEventListener("message",function(e){if(e.source===window&&e.data===Lo&&(Ro=!1,null!==Po)){!function(){if(null!==Po){var e=So();if(!(-1===Mo||Mo>e)){for(var t=-1,n=[],r=Po;null!==r;){var a=r.timeoutTime;-1!==a&&a<=e?n.push(r):-1!==a&&(-1===t||a0){Oo.didTimeout=!0;for(var i=0,o=n.length;i0&&null!==Po;){var n=Po;Oo.didTimeout=!1,Fo(n,Oo),t=So()}null!==Po&&(Uo||(Uo=!0,_o(jo)))}},!1);var jo=function(e){Uo=!1;var t=e-Do+Ao;t instead of setting `selected` on