=d?p=0:(-1===p||d component higher in the tree to provide a loading indicator or placeholder to display."+lt(u))}Do=!0,c=ci(c,u),a=l;do{switch(a.tag){case 3:u=c,a.effectTag|=2048,a.expirationTime=o,ii(a,o=xo(a,u,o));break e;case 1:if(u=c,l=a.type,h=a.stateNode,0==(64&a.effectTag)&&("function"==typeof l.getDerivedStateFromError||null!==h&&"function"==typeof h.componentDidCatch&&(null===jo||!jo.has(h)))){a.effectTag|=2048,a.expirationTime=o,ii(a,o=_o(a,u,o));break e}}a=a.return}while(null!==a)}Ao=Wo(i);continue}r=!0,As(t)}}break}if(No=!1,di=fi=pi=Co.currentDispatcher=null,r)ko=null,e.finishedWork=null;else if(null!==Ao)e.finishedWork=null;else{if(null===(r=e.current.alternate)&&s("281"),ko=null,Do){if(i=e.latestPendingTime,o=e.latestSuspendedTime,a=e.latestPingedTime,0!==i&&it?0:t)):(e.pendingCommitExpirationTime=n,e.finishedWork=r)}}function $o(e,t){for(var n=e.return;null!==n;){switch(n.tag){case 1:var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===jo||!jo.has(r)))return ri(n,e=_o(n,e=ci(t,e),1073741823)),void Ko(n,1073741823);break;case 3:return ri(n,e=xo(n,e=ci(t,e),1073741823)),void Ko(n,1073741823)}n=n.return}3===e.tag&&(ri(e,n=xo(e,n=ci(t,e),1073741823)),Ko(e,1073741823))}function Xo(e,t){return 0!==Oo?e=Oo:No?e=Bo?1073741823:Mo:1&t.mode?(e=hs?1073741822-10*(1+((1073741822-e+15)/10|0)):1073741822-25*(1+((1073741822-e+500)/25|0)),null!==ko&&e===Mo&&--e):e=1073741823,hs&&(0===ss||e=o){o=i=r,e.didError=!1;var s=e.latestPingedTime;(0===s||s>o)&&(e.latestPingedTime=o),Kr(o,e)}else Xr(e,i=Xo(i=Es(),t));0!=(1&t.mode)&&e===ko&&Mo===r&&(ko=null),Zo(t,i),0==(1&t.mode)&&(Zo(n,i),1===n.tag&&null!==n.stateNode&&((t=ti(i)).tag=2,ri(n,t))),0!==(n=e.expirationTime)&&Ss(e,n)}function Zo(e,t){e.expirationTimeMo&&zo(),Xr(e,t),No&&!Bo&&ko===e||Ss(e,e.expirationTime),vs>ms&&(vs=0,s("185")))}function Qo(e,t,n,r,i){var o=Oo;Oo=1073741823;try{return e(t,n,r,i)}finally{Oo=o}}var Jo=null,es=null,ts=0,ns=void 0,rs=!1,is=null,os=0,ss=0,as=!1,ls=null,us=!1,cs=!1,hs=!1,ps=null,fs=o.unstable_now(),ds=1073741822-(fs/10|0),gs=ds,ms=50,vs=0,ys=null;function ws(){ds=1073741822-((o.unstable_now()-fs)/10|0)}function Ts(e,t){if(0!==ts){if(te.expirationTime&&(e.expirationTime=t),rs||(us?cs&&(is=e,os=1073741823,Os(e,1073741823,!1)):1073741823===t?Cs(1073741823,!1):Ts(e,t))}function xs(){var e=0,t=null;if(null!==es)for(var n=es,r=Jo;null!==r;){var i=r.expirationTime;if(0===i){if((null===n||null===es)&&s("244"),r===r.nextScheduledRoot){Jo=es=r.nextScheduledRoot=null;break}if(r===Jo)Jo=i=r.nextScheduledRoot,es.nextScheduledRoot=i,r.nextScheduledRoot=null;else{if(r===es){(es=n).nextScheduledRoot=Jo,r.nextScheduledRoot=null;break}n.nextScheduledRoot=r.nextScheduledRoot,r.nextScheduledRoot=null}r=n.nextScheduledRoot}else{if(i>e&&(e=i,t=r),r===es)break;if(1073741823===e)break;n=r,r=r.nextScheduledRoot}}is=t,os=e}var _s=!1;function Ps(){return!!_s||!!o.unstable_shouldYield()&&(_s=!0)}function Is(){try{if(!Ps()&&null!==Jo){ws();var e=Jo;do{var t=e.expirationTime;0!==t&&ds<=t&&(e.nextExpirationTimeToWorkOn=ds),e=e.nextScheduledRoot}while(e!==Jo)}Cs(0,!0)}finally{_s=!1}}function Cs(e,t){if(xs(),t)for(ws(),gs=ds;null!==is&&0!==os&&e<=os&&!(_s&&ds>os);)Os(is,os,ds>os),xs(),ws(),gs=ds;else for(;null!==is&&0!==os&&e<=os;)Os(is,os,!1),xs();if(t&&(ts=0,ns=null),0!==os&&Ts(is,os),vs=0,ys=null,null!==ps)for(e=ps,ps=null,t=0;t=n&&(null===ps?ps=[r]:ps.push(r),r._defer))return e.finishedWork=t,void(e.expirationTime=0);e.finishedWork=null,e===ys?vs++:(ys=e,vs=0),Bo=No=!0,e.current===t&&s("177"),0===(n=e.pendingCommitExpirationTime)&&s("261"),e.pendingCommitExpirationTime=0,r=t.expirationTime;var i=t.childExpirationTime;if(r=i>r?i:r,e.didError=!1,0===r?(e.earliestPendingTime=0,e.latestPendingTime=0,e.earliestSuspendedTime=0,e.latestSuspendedTime=0,e.latestPingedTime=0):(0!==(i=e.latestPendingTime)&&(i>r?e.earliestPendingTime=e.latestPendingTime=0:e.earliestPendingTime>r&&(e.earliestPendingTime=e.latestPendingTime)),0===(i=e.earliestSuspendedTime)?Xr(e,r):ri&&Xr(e,r)),Kr(0,e),Co.current=null,1w&&(T=w,w=y,y=T),T=Ln(S,y),b=Ln(S,w),T&&b&&(1!==_.rangeCount||_.anchorNode!==T.node||_.anchorOffset!==T.offset||_.focusNode!==b.node||_.focusOffset!==b.offset)&&((x=x.createRange()).setStart(T.node,T.offset),_.removeAllRanges(),y>w?(_.addRange(x),_.extend(b.node,b.offset)):(x.setEnd(b.node,b.offset),_.addRange(x))))),x=[];for(_=S;_=_.parentNode;)1===_.nodeType&&x.push({element:_,left:_.scrollLeft,top:_.scrollTop});for("function"==typeof S.focus&&S.focus(),S=0;SP?t:P)&&(jo=null),e.expirationTime=t,e.finishedWork=null}function As(e){null===is&&s("246"),is.expirationTime=0,as||(as=!0,ls=e)}function ks(e,t){var n=us;us=!0;try{return e(t)}finally{(us=n)||rs||Cs(1073741823,!1)}}function Ms(e,t){if(us&&!cs){cs=!0;try{return e(t)}finally{cs=!1}}return e(t)}function Ls(e,t,n){if(hs)return e(t,n);us||rs||0===ss||(Cs(ss,!1),ss=0);var r=hs,i=us;us=hs=!0;try{return e(t,n)}finally{hs=r,(us=i)||rs||Cs(1073741823,!1)}}function Ds(e,t,n,r,i){var o=t.current;e:if(n){n=n._reactInternalFiber;t:{2===tn(n)&&1===n.tag||s("170");var a=n;do{switch(a.tag){case 3:a=a.stateNode.context;break t;case 1:if(Or(a.type)){a=a.stateNode.__reactInternalMemoizedMergedChildContext;break t}}a=a.return}while(null!==a);s("171"),a=void 0}if(1===n.tag){var l=n.type;if(Or(l)){n=Mr(n,l,a);break e}}n=a}else n=_r;return null===t.context?t.context=n:t.pendingContext=n,t=i,(i=ti(r)).payload={element:e},null!==(t=void 0===t?null:t)&&(i.callback=t),Vo(),ri(o,i),Ko(o,r),r}function Fs(e,t,n,r){var i=t.current;return Ds(e,t,n,i=Xo(Es(),i),r)}function Bs(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 5:default:return e.child.stateNode}}function Us(e){var t=1073741822-25*(1+((1073741822-Es()+500)/25|0));t>=Ro&&(t=Ro-1),this._expirationTime=Ro=t,this._root=e,this._callbacks=this._next=null,this._hasChildren=this._didComplete=!1,this._children=null,this._defer=!0}function Hs(){this._callbacks=null,this._didCommit=!1,this._onCommit=this._onCommit.bind(this)}function js(e,t,n){e={current:t=Hr(3,null,null,t?3:0),containerInfo:e,pendingChildren:null,earliestPendingTime:0,latestPendingTime:0,earliestSuspendedTime:0,latestSuspendedTime:0,latestPingedTime:0,didError:!1,pendingCommitExpirationTime:0,finishedWork:null,timeoutHandle:-1,context:null,pendingContext:null,hydrate:n,nextExpirationTimeToWorkOn:0,expirationTime:0,firstBatch:null,nextScheduledRoot:null},this._internalRoot=t.stateNode=e}function zs(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Vs(e,t,n,r,i){zs(n)||s("200");var o=n._reactRootContainer;if(o){if("function"==typeof i){var a=i;i=function(){var e=Bs(o._internalRoot);a.call(e)}}null!=e?o.legacy_renderSubtreeIntoContainer(e,t,i):o.render(t,i)}else{if(o=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new js(e,!1,t)}(n,r),"function"==typeof i){var l=i;i=function(){var e=Bs(o._internalRoot);l.call(e)}}Ms(function(){null!=e?o.legacy_renderSubtreeIntoContainer(e,t,i):o.render(t,i)})}return Bs(o._internalRoot)}function Ws(e,t){var n=2=t;)n=r,r=r._next;e._next=r,null!==n&&(n._next=e)}return e},Ae=ks,ke=Ls,Me=function(){rs||0===ss||(Cs(ss,!1),ss=0)};var Gs={createPortal:Ws,findDOMNode:function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternalFiber;return void 0===t&&("function"==typeof e.render?s("188"):s("268",Object.keys(e))),e=null===(e=rn(t))?null:e.stateNode},hydrate:function(e,t,n){return Vs(null,e,t,!0,n)},render:function(e,t,n){return Vs(null,e,t,!1,n)},unstable_renderSubtreeIntoContainer:function(e,t,n,r){return(null==e||void 0===e._reactInternalFiber)&&s("38"),Vs(e,t,n,!1,r)},unmountComponentAtNode:function(e){return zs(e)||s("40"),!!e._reactRootContainer&&(Ms(function(){Vs(null,null,e,!1,function(){e._reactRootContainer=null})}),!0)},unstable_createPortal:function(){return Ws.apply(void 0,arguments)},unstable_batchedUpdates:ks,unstable_interactiveUpdates:Ls,flushSync:function(e,t){rs&&s("187");var n=us;us=!0;try{return Qo(e,t)}finally{us=n,Cs(1073741823,!1)}},unstable_flushControlled:function(e){var t=us;us=!0;try{Qo(e)}finally{(us=t)||rs||Cs(1073741823,!1)}},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{Events:[D,F,B,R.injectEventPluginsByName,y,W,function(e){P(e,V)},Oe,Ne,Cn,N]},unstable_createRoot:function(e,t){return zs(e)||s("299","unstable_createRoot"),new js(e,!0,null!=t&&!0===t.hydrate)}};!function(e){var t=e.findFiberByHostInstance;(function(e){if("undefined"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)return!0;try{var n=t.inject(e);Fr=Ur(function(e){return t.onCommitFiberRoot(n,e)}),Br=Ur(function(e){return t.onCommitFiberUnmount(n,e)})}catch(e){}})(i({},e,{findHostInstanceByFiber:function(e){return null===(e=rn(e))?null:e.stateNode},findFiberByHostInstance:function(e){return t?t(e):null}}))}({findFiberByHostInstance:L,bundleType:0,version:"16.6.3",rendererPackageName:"react-dom"});var qs={default:Gs},$s=qs&&Gs||qs;e.exports=$s.default||$s},function(e,t,n){"use strict";e.exports=n(19)},function(e,t,n){"use strict";
+/** @license React v16.6.1
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */Object.defineProperty(t,"__esModule",{value:!0});var r=null,i=!1,o=3,s=-1,a=-1,l=!1,u=!1;function c(){if(!l){var e=r.expirationTime;u?v():u=!0,m(f,e)}}function h(){var e=r,t=r.next;if(r===t)r=null;else{var n=r.previous;r=n.next=t,t.previous=n}e.next=e.previous=null,n=e.callback,t=e.expirationTime,e=e.priorityLevel;var i=o,s=a;o=e,a=t;try{var l=n()}finally{o=i,a=s}if("function"==typeof l)if(l={callback:l,priorityLevel:e,expirationTime:t,next:null,previous:null},null===r)r=l.next=l.previous=l;else{n=null,e=r;do{if(e.expirationTime>=t){n=e;break}e=e.next}while(e!==r);null===n?n=r:n===r&&(r=l,c()),(t=n.previous).next=n.previous=l,l.next=n,l.previous=t}}function p(){if(-1===s&&null!==r&&1===r.priorityLevel){l=!0;try{do{h()}while(null!==r&&1===r.priorityLevel)}finally{l=!1,null!==r?c():u=!1}}}function f(e){l=!0;var n=i;i=e;try{if(e)for(;null!==r;){var o=t.unstable_now();if(!(r.expirationTime<=o))break;do{h()}while(null!==r&&r.expirationTime<=o)}else if(null!==r)do{h()}while(null!==r&&!y())}finally{l=!1,i=n,null!==r?c():u=!1,p()}}var d,g,m,v,y,w=Date,T="function"==typeof setTimeout?setTimeout:void 0,b="function"==typeof clearTimeout?clearTimeout:void 0,E="function"==typeof requestAnimationFrame?requestAnimationFrame:void 0,S="function"==typeof cancelAnimationFrame?cancelAnimationFrame:void 0;function x(e){d=E(function(t){b(g),e(t)}),g=T(function(){S(d),e(t.unstable_now())},100)}if("object"==typeof performance&&"function"==typeof performance.now){var _=performance;t.unstable_now=function(){return _.now()}}else t.unstable_now=function(){return w.now()};if("undefined"!=typeof window&&window._schedMock){var P=window._schedMock;m=P[0],v=P[1],y=P[2]}else if("undefined"==typeof window||"function"!=typeof window.addEventListener){var I=null,C=-1,R=function(e,t){if(null!==I){var n=I;I=null;try{C=t,n(e)}finally{C=-1}}};m=function(e,t){-1!==C?setTimeout(m,0,e,t):(I=e,setTimeout(R,t,!0,t),setTimeout(R,1073741823,!1,1073741823))},v=function(){I=null},y=function(){return!1},t.unstable_now=function(){return-1===C?0:C}}else{"undefined"!=typeof console&&("function"!=typeof E&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),"function"!=typeof S&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"));var O=null,N=!1,A=-1,k=!1,M=!1,L=0,D=33,F=33;y=function(){return L<=t.unstable_now()};var B="__reactIdleCallback$"+Math.random().toString(36).slice(2);window.addEventListener("message",function(e){if(e.source===window&&e.data===B){N=!1,e=O;var n=A;O=null,A=-1;var r=t.unstable_now(),i=!1;if(0>=L-r){if(!(-1!==n&&n<=r))return k||(k=!0,x(U)),O=e,void(A=n);i=!0}if(null!==e){M=!0;try{e(i)}finally{M=!1}}}},!1);var U=function(e){if(null!==O){x(U);var t=e-L+F;tt&&(t=8),F=tt?window.postMessage(B,"*"):k||(k=!0,x(U))},v=function(){O=null,N=!1,A=-1}}t.unstable_ImmediatePriority=1,t.unstable_UserBlockingPriority=2,t.unstable_NormalPriority=3,t.unstable_IdlePriority=5,t.unstable_LowPriority=4,t.unstable_runWithPriority=function(e,n){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=o,i=s;o=e,s=t.unstable_now();try{return n()}finally{o=r,s=i,p()}},t.unstable_scheduleCallback=function(e,n){var i=-1!==s?s:t.unstable_now();if("object"==typeof n&&null!==n&&"number"==typeof n.timeout)n=i+n.timeout;else switch(o){case 1:n=i+-1;break;case 2:n=i+250;break;case 5:n=i+1073741823;break;case 4:n=i+1e4;break;default:n=i+5e3}if(e={callback:e,priorityLevel:o,expirationTime:n,next:null,previous:null},null===r)r=e.next=e.previous=e,c();else{i=null;var a=r;do{if(a.expirationTime>n){i=a;break}a=a.next}while(a!==r);null===i?i=r:i===r&&(r=e,c()),(n=i.previous).next=i.previous=e,e.next=i,e.previous=n}return e},t.unstable_cancelCallback=function(e){var t=e.next;if(null!==t){if(t===e)r=null;else{e===r&&(r=t);var n=e.previous;n.next=t,t.previous=n}e.next=e.previous=null}},t.unstable_wrapCallback=function(e){var n=o;return function(){var r=o,i=s;o=n,s=t.unstable_now();try{return e.apply(this,arguments)}finally{o=r,s=i,p()}}},t.unstable_getCurrentPriorityLevel=function(){return o},t.unstable_shouldYield=function(){return!i&&(null!==r&&r.expirationTime=0&&l.splice(t,1)}function d(e){var t=document.createElement("style");if(void 0===e.attrs.type&&(e.attrs.type="text/css"),void 0===e.attrs.nonce){var r=function(){0;return n.nc}();r&&(e.attrs.nonce=r)}return g(t,e.attrs),p(e,t),t}function g(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function m(e,t){var n,r,i,o;if(t.transform&&e.css){if(!(o=t.transform(e.css)))return function(){};e.css=o}if(t.singleton){var l=a++;n=s||(s=d(t)),r=y.bind(null,n,l,!1),i=y.bind(null,n,l,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",g(t,e.attrs),p(e,t),t}(t),r=function(e,t,n){var r=n.css,i=n.sourceMap,o=void 0===t.convertToAbsoluteUrls&&i;(t.convertToAbsoluteUrls||o)&&(r=u(r));i&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */");var s=new Blob([r],{type:"text/css"}),a=e.href;e.href=URL.createObjectURL(s),a&&URL.revokeObjectURL(a)}.bind(null,n,t),i=function(){f(n),n.href&&URL.revokeObjectURL(n.href)}):(n=d(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),i=function(){f(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else i()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=i()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=h(e,t);return c(n,t),function(e){for(var i=[],o=0;o=0||(i[n]=e[n]);return i}var m=n(9),v=n.n(m),y=n(3),w=n.n(y),T=n(4),b=null,E={notify:function(){}};var S=function(){function e(e,t,n){this.store=e,this.parentSub=t,this.onStateChange=n,this.unsubscribe=null,this.listeners=E}var t=e.prototype;return t.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},t.notifyNestedSubs=function(){this.listeners.notify()},t.isSubscribed=function(){return Boolean(this.unsubscribe)},t.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=function(){var e=[],t=[];return{clear:function(){t=b,e=b},notify:function(){for(var n=e=t,r=0;r, or explicitly pass "'+C+'" as a prop to "'+i+'".'),r.initSelector(),r.initSubscription(),r}a(s,n);var l=s.prototype;return l.getChildContext=function(){var e,t=this.propsMode?null:this.subscription;return(e={})[A]=t||this.context[A],e},l.componentDidMount=function(){E&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},l.componentWillReceiveProps=function(e){this.selector.run(e)},l.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},l.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=P,this.store=null,this.selector.run=P,this.selector.shouldComponentUpdate=!1},l.getWrappedInstance=function(){return w()(O,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+p+"() call."),this.wrappedInstance},l.setWrappedInstance=function(e){this.wrappedInstance=e},l.initSelector=function(){var t=e(this.store.dispatch,o);this.selector=function(e,t){var n={run:function(r){try{var i=e(t.getState(),r);(i!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=i,n.error=null)}catch(e){n.shouldComponentUpdate=!0,n.error=e}}};return n}(t,this.store),this.selector.run(this.props)},l.initSubscription=function(){if(E){var e=(this.propsMode?this.props:this.context)[A];this.subscription=new S(this.store,e,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},l.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(_)):this.notifyNestedSubs()},l.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},l.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},l.addExtraProps=function(e){if(!(O||y||this.propsMode&&this.subscription))return e;var t=d({},e);return O&&(t.ref=this.setWrappedInstance),y&&(t[y]=this.renderCount++),this.propsMode&&this.subscription&&(t[A]=this.subscription),t},l.render=function(){var e=this.selector;if(e.shouldComponentUpdate=!1,e.error)throw e.error;return Object(r.createElement)(t,this.addExtraProps(e.props))},s}(r.Component);return s.WrappedComponent=t,s.displayName=i,s.childContextTypes=L,s.contextTypes=M,s.propTypes=M,v()(s,t)}}var C=Object.prototype.hasOwnProperty;function R(e,t){return e===t?0!==e||0!==t||1/e==1/t:e!=e&&t!=t}function O(e,t){if(R(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var i=0;i=0;r--){var i=t[r](e);if(i)return i}return function(t,r){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function Z(e,t){return e===t}var K=function(e){var t=void 0===e?{}:e,n=t.connectHOC,r=void 0===n?I:n,i=t.mapStateToPropsFactories,o=void 0===i?V:i,s=t.mapDispatchToPropsFactories,a=void 0===s?z:s,l=t.mergePropsFactories,u=void 0===l?G:l,c=t.selectorFactory,h=void 0===c?X:c;return function(e,t,n,i){void 0===i&&(i={});var s=i,l=s.pure,c=void 0===l||l,p=s.areStatesEqual,f=void 0===p?Z:p,m=s.areOwnPropsEqual,v=void 0===m?O:m,y=s.areStatePropsEqual,w=void 0===y?O:y,T=s.areMergedPropsEqual,b=void 0===T?O:T,E=g(s,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),S=Y(e,o,"mapStateToProps"),x=Y(t,a,"mapDispatchToProps"),_=Y(n,u,"mergeProps");return r(h,d({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:S,initMapDispatchToProps:x,initMergeProps:_,pure:c,areStatesEqual:f,areOwnPropsEqual:v,areStatePropsEqual:w,areMergedPropsEqual:b},E))}}(),Q=n(2);function J(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ee(e,t){for(var n=0;n {
+ const app = express();
+ app.set('view engine', 'ejs');
+ app.set('views', __dirname + '/views');
+ app.use(favicon(__dirname + '/favicon.ico'));
+ app.get('/', (req, res) => {
+ res.render('index', {
+ apps,
+ });
+ });
+ app.use('/static', express.static(path.join(__dirname, '../dist')));
+
+ app.get('/:bundle', (req, res) => {
+ const bundle = req.params.bundle;
+ res.render('app-template', {
+ bundle,
+ });
+ });
+
+ app.listen(port, () => {
+ console.log(`server running at localhost:${port}, go refresh and see magic`);
+ });
+ },
+};
diff --git a/packages/mirador3-e2e-tests/src/start.js b/packages/mirador3-e2e-tests/src/start.js
new file mode 100644
index 0000000..821466d
--- /dev/null
+++ b/packages/mirador3-e2e-tests/src/start.js
@@ -0,0 +1,3 @@
+const server = require('./server');
+
+server.start(Number(process.env.PORT || 4000));
diff --git a/packages/mirador3-e2e-tests/src/views/app-template.ejs b/packages/mirador3-e2e-tests/src/views/app-template.ejs
new file mode 100644
index 0000000..29226eb
--- /dev/null
+++ b/packages/mirador3-e2e-tests/src/views/app-template.ejs
@@ -0,0 +1,21 @@
+
+
+
+ Mirador
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/mirador3-e2e-tests/src/views/index.ejs b/packages/mirador3-e2e-tests/src/views/index.ejs
new file mode 100644
index 0000000..96f82f7
--- /dev/null
+++ b/packages/mirador3-e2e-tests/src/views/index.ejs
@@ -0,0 +1,18 @@
+
+
+
+ Sample Apps
+
+
+
+
+
+ Apps
+
+
+
+
diff --git a/packages/mirador3-e2e-tests/webpack.config.js b/packages/mirador3-e2e-tests/webpack.config.js
new file mode 100644
index 0000000..0d852fa
--- /dev/null
+++ b/packages/mirador3-e2e-tests/webpack.config.js
@@ -0,0 +1,74 @@
+const path = require('path');
+const webpack = require('webpack');
+const apps = require('./apps');
+
+const isProduction = process.env.NODE_ENV === 'production';
+const entries = {
+};
+apps.forEach((app) => {
+ entries[app] = [
+ path.join(__dirname, '/src/apps/'+app),
+ ];
+ !isProduction && entries[app].unshift(
+ 'webpack-hot-middleware/client?reload=true',
+ );
+});
+console.log(entries);
+
+module.exports = {
+ devtool: 'eval',
+ entry: entries,
+ output: {
+ path: path.join(__dirname, 'dist'),
+ filename: '[name].bundle.js',
+ publicPath: '/static',
+ },
+ plugins: isProduction ? [
+ new webpack.DefinePlugin({
+ 'process.env': {
+ NODE_ENV: JSON.stringify(process.env.NODE_ENV),
+ },
+ }),
+ ] : [
+ new webpack.HotModuleReplacementPlugin(),
+ new webpack.NoEmitOnErrorsPlugin(),
+ ],
+ resolve: {
+ extensions: ['.js', '.ts', '.tsx', '.webpack.js', '.web.js'],
+ modules: [
+ path.resolve(__dirname, './node_modules'),
+ ],
+ },
+ module: {
+ rules: [
+ {
+ oneOf: [
+ {
+ test: /\.jsx?$/,
+ exclude: /(node_modules)/,
+ loader: 'babel-loader',
+ },
+ {
+ test: /\.scss$/,
+ use: [
+ 'style-loader', // creates style nodes from JS strings
+ 'css-loader', // translates CSS into CommonJS
+ 'sass-loader', // compiles Sass to CSS, using Node Sass by default
+ ],
+ },
+ {
+ loader: require.resolve('file-loader'),
+ // Exclude `js` files to keep "css" loader working as it injects
+ // it's runtime that would otherwise be processed through "file" loader.
+ // Also exclude `html` and `json` extensions so they get processed
+ // by webpacks internal loaders.
+ exclude: [/\.(js|mjs|jsx|ts|tsx)$/, /\.html$/, /\.json$/],
+ options: {
+ name: 'static/media/[name].[hash:8].[ext]',
+ },
+ },
+ ],
+ },
+ ],
+ },
+};