├── .babelrc ├── .eslintrc ├── .gitignore ├── .travis.yml ├── dist ├── index.html ├── scripts │ ├── app.fb1b7914515e61e0f5ac.js │ └── app.fb1b7914515e61e0f5ac.js.map └── styles │ ├── app.fb1b7914515e61e0f5ac.css │ └── app.fb1b7914515e61e0f5ac.css.map ├── package-lock.json ├── package.json ├── push.sh ├── readme.md ├── server.js ├── src ├── app │ ├── actions │ │ └── index.js │ ├── components │ │ ├── App.jsx │ │ ├── about │ │ │ ├── About.jsx │ │ │ └── about.scss │ │ ├── bundle.scss │ │ ├── common │ │ │ ├── Header.jsx │ │ │ ├── base │ │ │ │ ├── global.scss │ │ │ │ └── variables.scss │ │ │ └── header.scss │ │ └── home │ │ │ ├── Home.jsx │ │ │ └── home.scss │ ├── index.js │ └── reducers │ │ └── index.js └── index.html ├── static └── .gitkeep ├── test ├── components │ └── app_test.js └── test_helper.js └── webpack.config.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react", "es2015", "stage-1"] 3 | } 4 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "airbnb", 3 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /.idea 3 | .DS_Store 4 | bundle.js 5 | npm-debug.log -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "node" 4 | script: 5 | - npm run test 6 | - npm run lint -------------------------------------------------------------------------------- /dist/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Express, React, Redux, SCSS 10 | 11 | 12 |
13 | 14 | 15 | -------------------------------------------------------------------------------- /dist/scripts/app.fb1b7914515e61e0f5ac.js: -------------------------------------------------------------------------------- 1 | !function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){e.exports=n(127)},function(e,t,n){"use strict";function r(e,t,n,r,o,a,i,u){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,a,i,u],c=0;s=new Error(t.replace(/%s/g,function(){return l[c++]})),s.name="Invariant Violation"}throw s.framesToPop=1,s}}e.exports=r},function(e,t,n){"use strict";var r=n(10),o=r;e.exports=o},function(e,t,n){"use strict";e.exports=n(191)},function(e,t){"use strict";function n(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function r(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;10>n;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map(function(e){return t[e]});if("0123456789"!==r.join(""))return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(e){o[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(a){return!1}}var o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=r()?Object.assign:function(e,t){for(var r,i,u=n(e),s=1;s2?n-2:0),o=2;n>o;o++)r[o-2]=arguments[o];u["default"].apply(void 0,[e,t].concat(r))}function a(){s={}}t.__esModule=!0,t["default"]=o,t._resetWarned=a;var i=n(12),u=r(i),s={}},function(e,t){"use strict";var n=!("undefined"==typeof window||!window.document||!window.document.createElement),r={canUseDOM:n,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:n&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:n&&!!window.screen,isInWorker:!n};e.exports=r},function(e,t,n){"use strict";var r=function(e,t,n,r,o,a,i,u){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,a,i,u],c=0;s=new Error(t.replace(/%s/g,function(){return l[c++]})),s.name="Invariant Violation"}throw s.framesToPop=1,s}};e.exports=r},function(e,t,n){"use strict";var r=n(211);e.exports={debugTool:r}},function(e,t){"use strict";function n(e){return function(){return e}}var r=function(){};r.thatReturns=n,r.thatReturnsFalse=n(!1),r.thatReturnsTrue=n(!0),r.thatReturnsNull=n(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(e){return e},e.exports=r},function(e,t,n){"use strict";var r=n(4),o=n(19),a=(n(2),n(59),"function"==typeof Symbol&&Symbol["for"]&&Symbol["for"]("react.element")||60103),i={key:!0,ref:!0,__self:!0,__source:!0},u=function(e,t,n,r,o,i,u){var s={$$typeof:a,type:e,key:t,ref:n,props:u,_owner:i};return s};u.createElement=function(e,t,n){var r,a={},s=null,l=null,c=null,p=null;if(null!=t){l=void 0===t.ref?null:t.ref,s=void 0===t.key?null:""+t.key,c=void 0===t.__self?null:t.__self,p=void 0===t.__source?null:t.__source;for(r in t)t.hasOwnProperty(r)&&!i.hasOwnProperty(r)&&(a[r]=t[r])}var d=arguments.length-2;if(1===d)a.children=n;else if(d>1){for(var f=Array(d),h=0;d>h;h++)f[h]=arguments[h+2];a.children=f}if(e&&e.defaultProps){var v=e.defaultProps;for(r in v)void 0===a[r]&&(a[r]=v[r])}return u(e,s,l,c,p,o.current,a)},u.createFactory=function(e){var t=u.createElement.bind(null,e);return t.type=e,t},u.cloneAndReplaceKey=function(e,t){var n=u(e.type,t,e.ref,e._self,e._source,e._owner,e.props);return n},u.cloneElement=function(e,t,n){var a,s=r({},e.props),l=e.key,c=e.ref,p=e._self,d=e._source,f=e._owner;if(null!=t){void 0!==t.ref&&(c=t.ref,f=o.current),void 0!==t.key&&(l=""+t.key);var h;e.type&&e.type.defaultProps&&(h=e.type.defaultProps);for(a in t)t.hasOwnProperty(a)&&!i.hasOwnProperty(a)&&(void 0===t[a]&&void 0!==h?s[a]=h[a]:s[a]=t[a])}var v=arguments.length-2;if(1===v)s.children=n;else if(v>1){for(var m=Array(v),g=0;v>g;g++)m[g]=arguments[g+2];s.children=m}return u(e.type,l,c,p,d,f,s)},u.isValidElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},e.exports=u},function(e,t,n){"use strict";var r=function(){};e.exports=r},function(e,t,n){"use strict";function r(){M.ReactReconcileTransaction&&C?void 0:m(!1)}function o(){this.reinitializeTransaction(),this.dirtyComponentsLength=null,this.callbackQueue=p.getPooled(),this.reconcileTransaction=M.ReactReconcileTransaction.getPooled(!0)}function a(e,t,n,o,a,i){r(),C.batchedUpdates(e,t,n,o,a,i)}function i(e,t){return e._mountOrder-t._mountOrder}function u(e){var t=e.dirtyComponentsLength;t!==g.length?m(!1):void 0,g.sort(i),y++;for(var n=0;t>n;n++){var r=g[n],o=r._pendingCallbacks;r._pendingCallbacks=null;var a;if(f.logTopLevelRenders){var u=r;r._currentElement.props===r._renderedComponent._currentElement&&(u=r._renderedComponent),a="React update: "+u.getName(),console.time(a)}if(h.performUpdateIfNecessary(r,e.reconcileTransaction,y),a&&console.timeEnd(a),o)for(var s=0;s should not have a "'+t+'" prop'):void 0}t.__esModule=!0,t.routes=t.route=t.components=t.component=t.history=void 0,t.falsy=r;var o=n(3),a=o.PropTypes.func,i=o.PropTypes.object,u=o.PropTypes.arrayOf,s=o.PropTypes.oneOfType,l=o.PropTypes.element,c=o.PropTypes.shape,p=o.PropTypes.string,d=(t.history=c({listen:a.isRequired,push:a.isRequired,replace:a.isRequired,go:a.isRequired,goBack:a.isRequired,goForward:a.isRequired}),t.component=s([a,p])),f=(t.components=s([d,i]),t.route=s([i,l]));t.routes=s([f,u(f)])},function(e,t,n){"use strict";function r(e,t){return(e&t)===t}var o=n(1),a={MUST_USE_PROPERTY:1,HAS_SIDE_EFFECTS:2,HAS_BOOLEAN_VALUE:4,HAS_NUMERIC_VALUE:8,HAS_POSITIVE_NUMERIC_VALUE:24,HAS_OVERLOADED_BOOLEAN_VALUE:32,injectDOMPropertyConfig:function(e){var t=a,n=e.Properties||{},i=e.DOMAttributeNamespaces||{},s=e.DOMAttributeNames||{},l=e.DOMPropertyNames||{},c=e.DOMMutationMethods||{};e.isCustomAttribute&&u._isCustomAttributeFunctions.push(e.isCustomAttribute);for(var p in n){u.properties.hasOwnProperty(p)?o(!1):void 0;var d=p.toLowerCase(),f=n[p],h={attributeName:d,attributeNamespace:null,propertyName:p,mutationMethod:null,mustUseProperty:r(f,t.MUST_USE_PROPERTY),hasSideEffects:r(f,t.HAS_SIDE_EFFECTS),hasBooleanValue:r(f,t.HAS_BOOLEAN_VALUE),hasNumericValue:r(f,t.HAS_NUMERIC_VALUE),hasPositiveNumericValue:r(f,t.HAS_POSITIVE_NUMERIC_VALUE),hasOverloadedBooleanValue:r(f,t.HAS_OVERLOADED_BOOLEAN_VALUE)};if(!h.mustUseProperty&&h.hasSideEffects?o(!1):void 0,h.hasBooleanValue+h.hasNumericValue+h.hasOverloadedBooleanValue<=1?void 0:o(!1),s.hasOwnProperty(p)){var v=s[p];h.attributeName=v}i.hasOwnProperty(p)&&(h.attributeNamespace=i[p]),l.hasOwnProperty(p)&&(h.propertyName=l[p]),c.hasOwnProperty(p)&&(h.mutationMethod=c[p]),u.properties[p]=h}}},i=":A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",u={ID_ATTRIBUTE_NAME:"data-reactid",ROOT_ATTRIBUTE_NAME:"data-reactroot",ATTRIBUTE_NAME_START_CHAR:i,ATTRIBUTE_NAME_CHAR:i+"\\-.0-9\\uB7\\u0300-\\u036F\\u203F-\\u2040",properties:{},getPossibleStandardName:null,_isCustomAttributeFunctions:[],isCustomAttribute:function(e){for(var t=0;tp;++p)s=r[p],"*"===s||"**"===s?(c=Array.isArray(t.splat)?t.splat[u++]:t.splat,null!=c||o>0?void 0:(0,d["default"])(!1),null!=c&&(a+=encodeURI(c))):"("===s?o+=1:")"===s?o-=1:":"===s.charAt(0)?(l=s.substring(1),c=t[l],null!=c||o>0?void 0:(0,d["default"])(!1),null!=c&&(a+=encodeURIComponent(c))):a+=s;return a.replace(/\/+/g,"/")}t.__esModule=!0,t.compilePattern=i,t.matchPattern=u,t.getParamNames=s,t.getParams=l,t.formatPattern=c;var p=n(8),d=r(p),f={}},function(e,t,n){"use strict";function r(e){if(v){var t=e.node,n=e.children;if(n.length)for(var r=0;r1?r-1:0),a=1;r>a;a++)o[a-1]=arguments[a];var i=_.createLocation.apply(_,[n(e,e.query)].concat(o));return e.query&&(i.query=e.query),t(i)}function g(e,t,n){"string"==typeof t&&(t=p.parsePath(t)),u(i({state:e},t,{query:n}))}function y(e,t,n){"string"==typeof t&&(t=p.parsePath(t)),s(i({state:e},t,{query:n}))}var b=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],_=e(b),C=b.stringifyQuery,E=b.parseQueryString;return"function"!=typeof C&&(C=o),"function"!=typeof E&&(E=v),i({},_,{listenBefore:r,listen:a,push:u,replace:s,createPath:l,createHref:d,createLocation:m,pushState:f["default"](g,"pushState is deprecated; use push instead"),replaceState:f["default"](y,"replaceState is deprecated; use replace instead")})}}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;t-1?void 0:i(!1),!l.plugins[n]){t.extractEvents?void 0:i(!1),l.plugins[n]=t;var r=t.eventTypes;for(var a in r)o(r[a],t,a)?void 0:i(!1)}}}function o(e,t,n){l.eventNameDispatchConfigs.hasOwnProperty(n)?i(!1):void 0,l.eventNameDispatchConfigs[n]=e;var r=e.phasedRegistrationNames;if(r){for(var o in r)if(r.hasOwnProperty(o)){var u=r[o];a(u,t,n)}return!0}return e.registrationName?(a(e.registrationName,t,n),!0):!1}function a(e,t,n){l.registrationNameModules[e]?i(!1):void 0,l.registrationNameModules[e]=t,l.registrationNameDependencies[e]=t.eventTypes[n].dependencies}var i=n(1),u=null,s={},l={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},possibleRegistrationNames:null,injectEventPluginOrder:function(e){u?i(!1):void 0,u=Array.prototype.slice.call(e),r()},injectEventPluginsByName:function(e){var t=!1;for(var n in e)if(e.hasOwnProperty(n)){var o=e[n];s.hasOwnProperty(n)&&s[n]===o||(s[n]?i(!1):void 0,s[n]=o,t=!0)}t&&r()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return l.registrationNameModules[t.registrationName]||null;for(var n in t.phasedRegistrationNames)if(t.phasedRegistrationNames.hasOwnProperty(n)){var r=l.registrationNameModules[t.phasedRegistrationNames[n]];if(r)return r}return null},_resetEventPlugins:function(){u=null;for(var e in s)s.hasOwnProperty(e)&&delete s[e];l.plugins.length=0;var t=l.eventNameDispatchConfigs;for(var n in t)t.hasOwnProperty(n)&&delete t[n];var r=l.registrationNameModules;for(var o in r)r.hasOwnProperty(o)&&delete r[o]}};e.exports=l},function(e,t,n){"use strict";function r(e){return Object.prototype.hasOwnProperty.call(e,m)||(e[m]=h++,d[e[m]]={}),d[e[m]]}var o,a=n(4),i=n(14),u=n(37),s=n(214),l=n(112),c=n(242),p=n(65),d={},f=!1,h=0,v={topAbort:"abort",topAnimationEnd:c("animationend")||"animationend",topAnimationIteration:c("animationiteration")||"animationiteration",topAnimationStart:c("animationstart")||"animationstart",topBlur:"blur",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",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",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topScroll:"scroll",topSeeked:"seeked",topSeeking:"seeking",topSelectionChange:"selectionchange",topStalled:"stalled",topSuspend:"suspend",topTextInput:"textInput",topTimeUpdate:"timeupdate",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topTransitionEnd:c("transitionend")||"transitionend",topVolumeChange:"volumechange",topWaiting:"waiting",topWheel:"wheel"},m="_reactListenersID"+String(Math.random()).slice(2),g=a({},s,{ReactEventListener:null,injection:{ 2 | injectReactEventListener:function(e){e.setHandleTopLevel(g.handleTopLevel),g.ReactEventListener=e}},setEnabled:function(e){g.ReactEventListener&&g.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!g.ReactEventListener||!g.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,o=r(n),a=u.registrationNameDependencies[e],s=i.topLevelTypes,l=0;l":">","<":"<",'"':""","'":"'"},a=/[&><"']/g;e.exports=r},function(e,t){"use strict";function n(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function r(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function o(){return window.location.href.split("#")[1]||""}function a(e){window.location.replace(window.location.pathname+window.location.search+"#"+e)}function i(){return window.location.pathname+window.location.search+window.location.hash}function u(e){e&&window.history.go(e)}function s(e,t){t(window.confirm(e))}function l(){var e=navigator.userAgent;return-1===e.indexOf("Android 2.")&&-1===e.indexOf("Android 4.0")||-1===e.indexOf("Mobile Safari")||-1!==e.indexOf("Chrome")||-1!==e.indexOf("Windows Phone")?window.history&&"pushState"in window.history:!1}function c(){var e=navigator.userAgent;return-1===e.indexOf("Firefox")}t.__esModule=!0,t.addEventListener=n,t.removeEventListener=r,t.getHashPath=o,t.replaceHashPath=a,t.getWindowPath=i,t.go=u,t.getUserConfirmation=s,t.supportsHistory=l,t.supportsGoWithoutReloadUsingHash=c},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){return function(){return e.apply(this,arguments)}}t.__esModule=!0;var a=n(12);r(a);t["default"]=o,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,n){var r=e(t,n);e.length<2&&n(r)}t.__esModule=!0;var a=n(12);r(a);t["default"]=o,e.exports=t["default"]},function(e,t,n){function r(e){if(!i(e)||d.call(e)!=u||a(e))return!1;var t=o(e);if(null===t)return!0;var n=c.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==p}var o=n(151),a=n(152),i=n(153),u="[object Object]",s=Object.prototype,l=Function.prototype.toString,c=s.hasOwnProperty,p=l.call(Object),d=s.toString;e.exports=r},function(e,t){"use strict";function n(e,t,n){function r(){return i=!0,u?void(l=[].concat(Array.prototype.slice.call(arguments))):void n.apply(this,arguments)}function o(){if(!i&&(s=!0,!u)){for(u=!0;!i&&e>a&&s;)s=!1,t.call(this,a++,o,r);return u=!1,i?void n.apply(this,l):void(a>=e&&s&&(i=!0,n()))}}var a=0,i=!1,u=!1,s=!1,l=void 0;o()}function r(e,t,n){function r(e,t,r){i||(t?(i=!0,n(t)):(a[e]=r,i=++u===o,i&&n(null,a)))}var o=e.length,a=[];if(0===o)return n(null,a);var i=!1,u=0;e.forEach(function(e,n){t(e,n,function(e,t){r(n,e,t)})})}t.__esModule=!0,t.loopAsync=n,t.mapAsync=r},function(e,t,n){"use strict";function r(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t["default"]=e,t}function o(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0,t.router=t.routes=t.route=t.components=t.component=t.location=t.history=t.falsy=t.locationShape=t.routerShape=void 0;var a=n(3),i=n(35),u=(o(i),n(21)),s=r(u),l=n(6),c=(o(l),a.PropTypes.func),p=a.PropTypes.object,d=a.PropTypes.shape,f=a.PropTypes.string,h=t.routerShape=d({push:c.isRequired,replace:c.isRequired,go:c.isRequired,goBack:c.isRequired,goForward:c.isRequired,setRouteLeaveHook:c.isRequired,isActive:c.isRequired}),v=t.locationShape=d({pathname:f.isRequired,search:f.isRequired,state:p,action:f.isRequired,key:f}),m=t.falsy=s.falsy,g=t.history=s.history,y=t.location=v,b=t.component=s.component,_=t.components=s.components,C=t.route=s.route,E=(t.routes=s.routes,t.router=h),P={falsy:m,history:g,location:y,component:b,components:_,route:C,router:E};t["default"]=P},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!0;return!1}function a(e,t){function n(t){var n=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],r=arguments.length<=2||void 0===arguments[2]?null:arguments[2],o=void 0;return n&&n!==!0||null!==r?(t={pathname:t,query:n},o=r||!1):(t=e.createLocation(t),o=n),(0,f["default"])(t,o,C.location,C.routes,C.params)}function r(t){return e.createLocation(t,s.REPLACE)}function a(e,n){E&&E.location===e?u(E,n):(0,g["default"])(t,e,function(t,r){t?n(t):r?u(i({},r,{location:e}),n):n()})}function u(e,t){function n(n,r){return n||r?o(n,r):void(0,v["default"])(e,function(n,r){n?t(n):t(null,null,C=i({},e,{components:r}))})}function o(e,n){e?t(e):t(null,r(n))}var a=(0,c["default"])(C,e),u=a.leaveRoutes,s=a.changeRoutes,l=a.enterRoutes;(0,p.runLeaveHooks)(u),u.filter(function(e){return-1===l.indexOf(e)}).forEach(y),(0,p.runChangeHooks)(s,C,e,function(t,r){return t||r?o(t,r):void(0,p.runEnterHooks)(l,e,n)})}function l(e){var t=arguments.length<=1||void 0===arguments[1]?!0:arguments[1];return e.__id__||t&&(e.__id__=P++)}function d(e){return e.reduce(function(e,t){return e.push.apply(e,x[l(t)]),e},[])}function h(e,n){(0,g["default"])(t,e,function(t,r){if(null==r)return void n();E=i({},r,{location:e});for(var o=d((0,c["default"])(C,E).leaveRoutes),a=void 0,u=0,s=o.length;null==a&&s>u;++u)a=o[u](e);n(a)})}function m(){if(C.routes){for(var e=d(C.routes),t=void 0,n=0,r=e.length;"string"!=typeof t&&r>n;++n)t=e[n]();return t}}function y(e){var t=l(e,!1);t&&(delete x[t],o(x)||(w&&(w(),w=null),T&&(T(),T=null)))}function b(t,n){var r=l(t),a=x[r];if(a)-1===a.indexOf(n)&&a.push(n);else{var i=!o(x);x[r]=[n],i&&(w=e.listenBefore(h),e.listenBeforeUnload&&(T=e.listenBeforeUnload(m)))}return function(){var e=x[r];if(e){var o=e.filter(function(e){return e!==n});0===o.length?y(t):x[r]=o}}}function _(t){return e.listen(function(n){C.location===n?t(null,C):a(n,function(n,r,o){n?t(n):r?e.transitionTo(r):o&&t(null,o)})})}var C={},E=void 0,P=1,x=Object.create(null),w=void 0,T=void 0;return{isActive:n,match:a,listenBeforeLeavingRoute:b,listen:_}}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;tt||e.hasOverloadedBooleanValue&&t===!1}var a=n(22),i=(n(5),n(204),n(9),n(244)),u=(n(2),new RegExp("^["+a.ATTRIBUTE_NAME_START_CHAR+"]["+a.ATTRIBUTE_NAME_CHAR+"]*$")),s={},l={},c={createMarkupForID:function(e){return a.ID_ATTRIBUTE_NAME+"="+i(e)},setAttributeForID:function(e,t){e.setAttribute(a.ID_ATTRIBUTE_NAME,t)},createMarkupForRoot:function(){return a.ROOT_ATTRIBUTE_NAME+'=""'},setAttributeForRoot:function(e){e.setAttribute(a.ROOT_ATTRIBUTE_NAME,"")},createMarkupForProperty:function(e,t){var n=a.properties.hasOwnProperty(e)?a.properties[e]:null;if(n){if(o(n,t))return"";var r=n.attributeName;return n.hasBooleanValue||n.hasOverloadedBooleanValue&&t===!0?r+'=""':r+"="+i(t)}return a.isCustomAttribute(e)?null==t?"":e+"="+i(t):null},createMarkupForCustomAttribute:function(e,t){return r(e)&&null!=t?e+"="+i(t):""},setValueForProperty:function(e,t,n){var r=a.properties.hasOwnProperty(t)?a.properties[t]:null;if(r){var i=r.mutationMethod;if(i)i(e,n);else{if(o(r,n))return void this.deleteValueForProperty(e,t);if(r.mustUseProperty){var u=r.propertyName;r.hasSideEffects&&""+e[u]==""+n||(e[u]=n)}else{var s=r.attributeName,l=r.attributeNamespace;l?e.setAttributeNS(l,s,""+n):r.hasBooleanValue||r.hasOverloadedBooleanValue&&n===!0?e.setAttribute(s,""):e.setAttribute(s,""+n)}}}else if(a.isCustomAttribute(t))return void c.setValueForAttribute(e,t,n)},setValueForAttribute:function(e,t,n){if(r(t)){null==n?e.removeAttribute(t):e.setAttribute(t,""+n)}},deleteValueForProperty:function(e,t){var n=a.properties.hasOwnProperty(t)?a.properties[t]:null;if(n){var r=n.mutationMethod;if(r)r(e,void 0);else if(n.mustUseProperty){var o=n.propertyName;n.hasBooleanValue?e[o]=!1:n.hasSideEffects&&""+e[o]==""||(e[o]="")}else e.removeAttribute(n.attributeName)}else a.isCustomAttribute(t)&&e.removeAttribute(t)}};e.exports=c},function(e,t,n){"use strict";function r(e){return e===y.topMouseUp||e===y.topTouchEnd||e===y.topTouchCancel}function o(e){return e===y.topMouseMove||e===y.topTouchMove}function a(e){return e===y.topMouseDown||e===y.topTouchStart}function i(e,t,n,r){var o=e.type||"unknown-event";e.currentTarget=b.getNodeFromInstance(r),t?v.invokeGuardedCallbackWithCatch(o,n,e):v.invokeGuardedCallback(o,n,e),e.currentTarget=null}function u(e,t){var n=e._dispatchListeners,r=e._dispatchInstances;if(Array.isArray(n))for(var o=0;o=32||13===t?t:0}e.exports=n},function(e,t){"use strict";function n(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var r=o[e];return r?!!n[r]:!1}function r(e){return n}var o={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};e.exports=r},function(e,t){"use strict";function n(e){var t=e.target||e.srcElement||window;return t.correspondingUseElement&&(t=t.correspondingUseElement),3===t.nodeType?t.parentNode:t}e.exports=n},function(e,t){"use strict";function n(e){var t=e&&(r&&e[r]||e[o]);return"function"==typeof t?t:void 0}var r="function"==typeof Symbol&&Symbol.iterator,o="@@iterator";e.exports=n},function(e,t,n){"use strict";/** 3 | * Checks if an event is supported in the current execution environment. 4 | * 5 | * NOTE: This will not work correctly for non-generic events such as `change`, 6 | * `reset`, `load`, `error`, and `select`. 7 | * 8 | * Borrows from Modernizr. 9 | * 10 | * @param {string} eventNameSuffix Event name, e.g. "click". 11 | * @param {?boolean} capture Check if the capture phase is supported. 12 | * @return {boolean} True if the event is supported. 13 | * @internal 14 | * @license Modernizr 3.0.0pre (Custom Build) | MIT 15 | */ 16 | function r(e,t){if(!a.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,r=n in document;if(!r){var i=document.createElement("div");i.setAttribute(n,"return;"),r="function"==typeof i[n]}return!r&&o&&"wheel"===e&&(r=document.implementation.hasFeature("Events.wheel","3.0")),r}var o,a=n(7);a.canUseDOM&&(o=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0),e.exports=r},function(e,t,n){"use strict";var r=n(7),o=/^[ \r\n\t\f]/,a=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,i=n(60),u=i(function(e,t){e.innerHTML=t});if(r.canUseDOM){var s=document.createElement("div");s.innerHTML=" ",""===s.innerHTML&&(u=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),o.test(t)||"<"===t[0]&&a.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t}),s=null}e.exports=u},function(e,t){"use strict";function n(e,t){var n=null===e||e===!1,r=null===t||t===!1;if(n||r)return n===r;var o=typeof e,a=typeof t;return"string"===o||"number"===o?"string"===a||"number"===a:"object"===a&&e.type===t.type&&e.key===t.key}e.exports=n},function(e,t,n){"use strict";function r(e,t){return e&&"object"==typeof e&&null!=e.key?l.escape(e.key):t.toString(36)}function o(e,t,n,a){var d=typeof e;if("undefined"!==d&&"boolean"!==d||(e=null),null===e||"string"===d||"number"===d||i.isValidElement(e))return n(a,e,""===t?c+r(e,0):t),1;var f,h,v=0,m=""===t?c:t+p;if(Array.isArray(e))for(var g=0;g":i.innerHTML="<"+e+">",u[e]=!i.firstChild),u[e]?d[e]:null}var o=n(7),a=n(1),i=o.canUseDOM?document.createElement("div"):null,u={},s=[1,'"],l=[1,"","
"],c=[3,"","
"],p=[1,'',""],d={"*":[1,"?
","
"],area:[1,"",""],col:[2,"","
"],legend:[1,"
","
"],param:[1,"",""],tr:[2,"","
"],optgroup:s,option:s,caption:l,colgroup:l,tbody:l,tfoot:l,thead:l,td:c,th:c},f=["circle","clipPath","defs","ellipse","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","text","tspan"];f.forEach(function(e){d[e]=p,u[e]=!0}),e.exports=r},function(e,t){"use strict";function n(e,t){return e===t?0!==e||1/e===1/t:e!==e&&t!==t}function r(e,t){if(n(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var r=Object.keys(e),a=Object.keys(t);if(r.length!==a.length)return!1;for(var i=0;i=0&&0===window.sessionStorage.length)return;throw n}}function i(e){var t=void 0;try{t=window.sessionStorage.getItem(o(e))}catch(n){if(n.name===c)return null}if(t)try{return JSON.parse(t)}catch(n){}return null}t.__esModule=!0,t.saveState=a,t.readState=i;var u=n(12),s=(r(u),"@@History/"),l=["QuotaExceededError","QUOTA_EXCEEDED_ERR"],c="SecurityError"},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){function t(e){return s.canUseDOM?void 0:u["default"](!1),n.listen(e)}var n=p["default"](a({getUserConfirmation:l.getUserConfirmation},e,{go:l.go}));return a({},n,{listen:t})}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t1?t-1:0),a=1;t>a;a++)o[a-1]=arguments[a];return n(b.createLocation.apply(b,[r(e)].concat(o)))}function m(e,t){"string"==typeof t&&(t=s.parsePath(t)),l(a({state:e},t))}function g(e,t){"string"==typeof t&&(t=s.parsePath(t)),p(a({state:e},t))}var y=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],b=e(y),_=y.basename,C=!1;return a({},b,{listenBefore:o,listen:i,push:l,replace:p,createPath:f,createHref:h,createLocation:v,pushState:d["default"](m,"pushState is deprecated; use push instead"),replaceState:d["default"](g,"replaceState is deprecated; use replace instead")})}}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function a(e){return 0===e.button}function i(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function u(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}function s(e,t){var n=t.query,r=t.hash,o=t.state;return n||r||o?{pathname:e,query:n,hash:r,state:o}:e}t.__esModule=!0;var l=Object.assign||function(e){for(var t=1;t=0;r--){var o=e[r],a=o.path||"";if(n=a.replace(/\/*$/,"/")+n,0===a.indexOf("/"))break}return"/"+n}},propTypes:{path:d,from:d,to:d.isRequired,query:f,state:f,onEnter:c.falsy,children:c.falsy},render:function(){(0,u["default"])(!1)}});t["default"]=h,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){return i({},e,{setRouteLeaveHook:t.listenBeforeLeavingRoute,isActive:t.isActive})}function a(e,t){return e=i({},e,t)}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;t.")}var i=h[e]||(h[e]={});if(i[o])return null;i[o]=!0;var u={parentOrOwner:o,url:" See https://fb.me/react-warning-keys for more information.",childOwner:null};return t&&t._owner&&t._owner!==p.current&&(u.childOwner=" It was passed a child from "+t._owner.getName()+"."),u}function i(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;nr;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length===t.length?-1:n}function o(e){return e?e.nodeType===k?e.documentElement:e.firstChild:null}function a(e){return e.getAttribute&&e.getAttribute(R)||""}function i(e,t,n,r,o){var a;if(b.logTopLevelRenders){var i=e._currentElement.props,u=i.type;a="React mount: "+("string"==typeof u?u:u.displayName||u.name),console.time(a)}var s=C.mountComponent(e,n,null,m(e,t),o);a&&console.timeEnd(a),e._renderedComponent._topLevelWrapper=e,U._mountImageIntoNode(s,t,e,r,n)}function u(e,t,n,r){var o=P.ReactReconcileTransaction.getPooled(!n&&g.useCreateElement);o.perform(i,null,e,t,o,n,r),P.ReactReconcileTransaction.release(o)}function s(e,t,n){for(C.unmountComponent(e,n),t.nodeType===k&&(t=t.documentElement);t.lastChild;)t.removeChild(t.lastChild)}function l(e){var t=o(e);if(t){var n=v.getInstanceFromNode(t);return!(!n||!n._nativeParent)}}function c(e){var t=o(e),n=t&&v.getInstanceFromNode(t);return n&&!n._nativeParent?n:null}function p(e){var t=c(e);return t?t._nativeContainerInfo._topLevelWrapper:null}var d=n(25),f=n(22),h=n(38),v=(n(19),n(5)),m=n(197),g=n(201),y=n(11),b=n(102),_=(n(9),n(217)),C=n(26),E=n(110),P=n(13),x=n(30),w=n(117),T=n(1),M=n(66),O=n(67),R=(n(2),f.ID_ATTRIBUTE_NAME),S=f.ROOT_ATTRIBUTE_NAME,N=1,k=9,A=11,I={},D=1,L=function(){this.rootID=D++};L.prototype.isReactComponent={},L.prototype.render=function(){return this.props};var U={TopLevelWrapper:L,_instancesByReactRootID:I,scrollMonitor:function(e,t){t()},_updateRootComponent:function(e,t,n,r){return U.scrollMonitor(n,function(){E.enqueueElementInternal(e,t),r&&E.enqueueCallbackInternal(e,r)}),e},_renderNewRootComponent:function(e,t,n,r){!t||t.nodeType!==N&&t.nodeType!==k&&t.nodeType!==A?T(!1):void 0,h.ensureScrollValueMonitoring();var o=w(e);P.batchedUpdates(u,o,t,n,r);var a=o._instance.rootID;return I[a]=o,o},renderSubtreeIntoContainer:function(e,t,n,r){return null==e||null==e._reactInternalInstance?T(!1):void 0,U._renderSubtreeIntoContainer(e,t,n,r)},_renderSubtreeIntoContainer:function(e,t,n,r){E.validateCallback(r,"ReactDOM.render"),y.isValidElement(t)?void 0:T(!1);var i=y(L,null,null,null,null,null,t),u=p(n);if(u){var s=u._currentElement,c=s.props;if(O(c,t)){var d=u._renderedComponent.getPublicInstance(),f=r&&function(){r.call(d)};return U._updateRootComponent(u,i,n,f),d}U.unmountComponentAtNode(n)}var h=o(n),v=h&&!!a(h),m=l(n),g=v&&!u&&!m,b=U._renderNewRootComponent(i,n,g,null!=e?e._reactInternalInstance._processChildContext(e._reactInternalInstance._context):x)._renderedComponent.getPublicInstance();return r&&r.call(b),b},render:function(e,t,n){return U._renderSubtreeIntoContainer(null,e,t,n)},unmountComponentAtNode:function(e){!e||e.nodeType!==N&&e.nodeType!==k&&e.nodeType!==A?T(!1):void 0;var t=p(e);if(!t){l(e),1===e.nodeType&&e.hasAttribute(S);return!1}return delete I[t._instance.rootID],P.batchedUpdates(s,t,e,!1),!0},_mountImageIntoNode:function(e,t,n,a,i){if(!t||t.nodeType!==N&&t.nodeType!==k&&t.nodeType!==A?T(!1):void 0,a){var u=o(t);if(_.canReuseMarkup(e,u))return void v.precacheNode(n,u);var s=u.getAttribute(_.CHECKSUM_ATTR_NAME);u.removeAttribute(_.CHECKSUM_ATTR_NAME);var l=u.outerHTML;u.setAttribute(_.CHECKSUM_ATTR_NAME,s);var c=e,p=r(c,l);" (client) "+c.substring(p-20,p+20)+"\n (server) "+l.substring(p-20,p+20);t.nodeType===k?T(!1):void 0}if(t.nodeType===k?T(!1):void 0,i.useCreateElement){for(;t.lastChild;)t.removeChild(t.lastChild);d.insertTreeBefore(t,e,null)}else M(t,e),v.precacheNode(n,t.firstChild)}};e.exports=U},function(e,t,n){"use strict";var r=n(31),o=r({INSERT_MARKUP:null,MOVE_EXISTING:null,REMOVE_NODE:null,SET_MARKUP:null,TEXT_CONTENT:null});e.exports=o},function(e,t,n){"use strict";function r(e){if("function"==typeof e.type)return e.type;var t=e.type,n=p[t];return null==n&&(p[t]=n=l(t)),n}function o(e){return c?void 0:s(!1),new c(e)}function a(e){return new d(e)}function i(e){return e instanceof d}var u=n(4),s=n(1),l=null,c=null,p={},d=null,f={injectGenericComponentClass:function(e){c=e},injectTextComponentClass:function(e){d=e},injectComponentClasses:function(e){u(p,e)}},h={getComponentClassForElement:r,createInternalComponent:o,createInstanceForText:a,isTextComponent:i,injection:f};e.exports=h},function(e,t,n){"use strict";var r=n(11),o=n(1),a={NATIVE:0,COMPOSITE:1,EMPTY:2,getType:function(e){return null===e||e===!1?a.EMPTY:r.isValidElement(e)?"function"==typeof e.type?a.COMPOSITE:a.NATIVE:void o(!1)}};e.exports=a},function(e,t,n){"use strict";function r(e,t){}var o=(n(2),{isMounted:function(e){return!1},enqueueCallback:function(e,t){},enqueueForceUpdate:function(e){r(e,"forceUpdate")},enqueueReplaceState:function(e,t){r(e,"replaceState")},enqueueSetState:function(e,t){r(e,"setState")}});e.exports=o},function(e,t,n){"use strict";function r(e,t){return e===t?0!==e||1/e===1/t:e!==e&&t!==t}function o(e){function t(t,n,r,o,a,i){if(o=o||P,i=i||r,null==n[r]){var u=_[a];return t?new Error("Required "+u+" `"+i+"` was not specified in "+("`"+o+"`.")):null}return e(n,r,o,a,i)}var n=t.bind(null,!1);return n.isRequired=t.bind(null,!0),n}function a(e){function t(t,n,r,o,a){var i=t[n],u=m(i);if(u!==e){var s=_[o],l=g(i);return new Error("Invalid "+s+" `"+a+"` of type "+("`"+l+"` supplied to `"+r+"`, expected ")+("`"+e+"`."))}return null}return o(t)}function i(){return o(C.thatReturns(null))}function u(e){function t(t,n,r,o,a){if("function"!=typeof e)return new Error("Property `"+a+"` of component `"+r+"` has invalid PropType notation inside arrayOf.");var i=t[n];if(!Array.isArray(i)){var u=_[o],s=m(i);return new Error("Invalid "+u+" `"+a+"` of type "+("`"+s+"` supplied to `"+r+"`, expected an array."))}for(var l=0;l>",x={array:a("array"),bool:a("boolean"),func:a("function"),number:a("number"),object:a("object"),string:a("string"),any:i(),arrayOf:u,element:s(),instanceOf:l,node:f(),objectOf:p,oneOf:c,oneOfType:d,shape:h};e.exports=x},function(e,t,n){"use strict";function r(e){i.enqueueUpdate(e)}function o(e,t){var n=a.get(e);return n?n:null}var a=(n(19),n(58)),i=n(13),u=n(1),s=(n(2),{isMounted:function(e){var t=a.get(e);return t?!!t._renderedComponent:!1},enqueueCallback:function(e,t,n){s.validateCallback(t,n);var a=o(e);return a?(a._pendingCallbacks?a._pendingCallbacks.push(t):a._pendingCallbacks=[t],void r(a)):null},enqueueCallbackInternal:function(e,t){e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t],r(e)},enqueueForceUpdate:function(e){var t=o(e,"forceUpdate");t&&(t._pendingForceUpdate=!0,r(t))},enqueueReplaceState:function(e,t){var n=o(e,"replaceState");n&&(n._pendingStateQueue=[t],n._pendingReplaceState=!0,r(n))},enqueueSetState:function(e,t){var n=o(e,"setState");if(n){var a=n._pendingStateQueue||(n._pendingStateQueue=[]);a.push(t),r(n)}},enqueueElementInternal:function(e,t){e._pendingElement=t,r(e)},validateCallback:function(e,t){e&&"function"!=typeof e?u(!1):void 0}});e.exports=s},function(e,t){"use strict";e.exports="15.1.0"},function(e,t){"use strict";var n={currentScrollLeft:0,currentScrollTop:0,refreshScrollValues:function(e){n.currentScrollLeft=e.x,n.currentScrollTop=e.y}};e.exports=n},function(e,t,n){"use strict";function r(e,t){if(null==t?o(!1):void 0,null==e)return t;var n=Array.isArray(e),r=Array.isArray(t);return n&&r?(e.push.apply(e,t),e):n?(e.push(t),e):r?[e].concat(t):[e,t]}var o=n(1);e.exports=r},function(e,t){"use strict";var n=function(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)};e.exports=n},function(e,t,n){"use strict";function r(e){for(var t;(t=e._renderedNodeType)===o.COMPOSITE;)e=e._renderedComponent;return t===o.NATIVE?e._renderedComponent:t===o.EMPTY?null:void 0}var o=n(107);e.exports=r},function(e,t,n){"use strict";function r(){return!a&&o.canUseDOM&&(a="textContent"in document.documentElement?"textContent":"innerText"),a}var o=n(7),a=null;e.exports=r},function(e,t,n){"use strict";function r(e){return"function"==typeof e&&"undefined"!=typeof e.prototype&&"function"==typeof e.prototype.mountComponent&&"function"==typeof e.prototype.receiveComponent}function o(e){var t,n=null===e||e===!1;if(n)t=u.create(o);else if("object"==typeof e){var a=e;!a||"function"!=typeof a.type&&"string"!=typeof a.type?l(!1):void 0,t="string"==typeof a.type?s.createInternalComponent(a):r(a.type)?new a.type(a):new c(a)}else"string"==typeof e||"number"==typeof e?t=s.createInstanceForText(e):l(!1);t._mountIndex=0,t._mountImage=null;return t}var a=n(4),i=n(193),u=n(101),s=n(106),l=(n(9),n(1)),c=(n(2),function(e){this.construct(e)});a(c.prototype,i.Mixin,{_instantiateReactComponent:o});e.exports=o},function(e,t){"use strict";function n(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&r[e.type]||"textarea"===t)}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};e.exports=n},function(e,t,n){"use strict";var r=n(7),o=n(43),a=n(66),i=function(e,t){e.textContent=t};r.canUseDOM&&("textContent"in document.documentElement||(i=function(e,t){a(e,o(t))})),e.exports=i},function(e,t){"use strict";function n(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];if(0===t.length)return function(e){return e};var r=function(){var e=t[t.length-1],n=t.slice(0,-1);return{v:function(){return n.reduceRight(function(e,t){return t(e)},e.apply(void 0,arguments))}}}();return"object"==typeof r?r.v:void 0}t.__esModule=!0,t["default"]=n},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,n){function r(){g===m&&(g=m.slice())}function a(){return v}function u(e){if("function"!=typeof e)throw new Error("Expected listener to be a function.");var t=!0;return r(),g.push(e),function(){if(t){t=!1,r();var n=g.indexOf(e);g.splice(n,1)}}}function c(e){if(!(0,i["default"])(e))throw new Error("Actions must be plain objects. Use custom middleware for async actions.");if("undefined"==typeof e.type)throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?');if(y)throw new Error("Reducers may not dispatch actions.");try{y=!0,v=h(v,e)}finally{y=!1}for(var t=m=g,n=0;n0&&"number"!=typeof e[0]):!1}function a(e,t,n){var a,c;if(r(e)||r(t))return!1;if(e.prototype!==t.prototype)return!1;if(s(e))return s(t)?(e=i.call(e),t=i.call(t),l(e,t,n)):!1;if(o(e)){if(!o(t))return!1;if(e.length!==t.length)return!1;for(a=0;a=0;a--)if(p[a]!=d[a])return!1;for(a=p.length-1;a>=0;a--)if(c=p[a],!l(e[c],t[c],n))return!1;return typeof e==typeof t}var i=Array.prototype.slice,u=n(131),s=n(130),l=e.exports=function(e,t,n){return n||(n={}),e===t?!0:e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():!e||!t||"object"!=typeof e&&"object"!=typeof t?n.strict?e===t:e==t:a(e,t,n)}},function(e,t){function n(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function r(e){return e&&"object"==typeof e&&"number"==typeof e.length&&Object.prototype.hasOwnProperty.call(e,"callee")&&!Object.prototype.propertyIsEnumerable.call(e,"callee")||!1}var o="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();t=e.exports=o?n:r,t.supported=n,t.unsupported=r},function(e,t){function n(e){var t=[];for(var n in e)t.push(n);return t}t=e.exports="function"==typeof Object.keys?Object.keys:n,t.shim=n},function(e,t){},function(e,t){"use strict";function n(e){return e.replace(r,function(e,t){return t.toUpperCase()})}var r=/-(.)/g;e.exports=n},function(e,t,n){"use strict";function r(e){return o(e.replace(a,"ms-"))}var o=n(133),a=/^-ms-/;e.exports=r},function(e,t,n){"use strict";function r(e,t){return e&&t?e===t?!0:o(e)?!1:o(t)?r(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(16&e.compareDocumentPosition(t)):!1:!1}var o=n(142);e.exports=r},function(e,t,n){"use strict";function r(e){var t=e.length;if(Array.isArray(e)||"object"!=typeof e&&"function"!=typeof e?i(!1):void 0,"number"!=typeof t?i(!1):void 0,0===t||t-1 in e?void 0:i(!1),"function"==typeof e.callee?i(!1):void 0,e.hasOwnProperty)try{return Array.prototype.slice.call(e)}catch(n){}for(var r=Array(t),o=0;t>o;o++)r[o]=e[o];return r}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 a(e){return o(e)?Array.isArray(e)?e.slice():r(e):[e]}var i=n(1);e.exports=a},function(e,t,n){"use strict";function r(e){var t=e.match(c);return t&&t[1].toLowerCase()}function o(e,t){var n=l;l?void 0:s(!1);var o=r(e),a=o&&u(o);if(a){n.innerHTML=a[1]+e+a[2];for(var c=a[0];c--;)n=n.lastChild}else n.innerHTML=e;var p=n.getElementsByTagName("script");p.length&&(t?void 0:s(!1),i(p).forEach(t));for(var d=Array.from(n.childNodes);n.lastChild;)n.removeChild(n.lastChild);return d}var a=n(7),i=n(136),u=n(74),s=n(1),l=a.canUseDOM?document.createElement("div"):null,c=/^\s*<(\w+)/;e.exports=o},function(e,t){"use strict";function n(e){return e===window?{x:window.pageXOffset||document.documentElement.scrollLeft,y:window.pageYOffset||document.documentElement.scrollTop}:{x:e.scrollLeft,y:e.scrollTop}}e.exports=n},function(e,t){"use strict";function n(e){return e.replace(r,"-$1").toLowerCase()}var r=/([A-Z])/g;e.exports=n},function(e,t,n){"use strict";function r(e){return o(e).replace(a,"-ms-")}var o=n(139),a=/^ms-/;e.exports=r},function(e,t){"use strict";function n(e){return!(!e||!("function"==typeof Node?e instanceof Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}e.exports=n},function(e,t,n){"use strict";function r(e){return o(e)&&3==e.nodeType}var o=n(141);e.exports=r},function(e,t){"use strict";function n(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;e.exports=n},function(e,t){"use strict";function n(e){var t={};return function(n){return t.hasOwnProperty(n)||(t[n]=e.call(this,n)),t[n]}}e.exports=n},function(e,t,n){"use strict";var r,o=n(7);o.canUseDOM&&(r=window.performance||window.msPerformance||window.webkitPerformance),e.exports=r||{}},function(e,t,n){"use strict";var r,o=n(145);r=o.now?function(){return o.now()}:function(){return Date.now()},e.exports=r},function(e,t){"use strict";function n(e,t,n){function o(){return u=!0,s?void(c=[].concat(r.call(arguments))):void n.apply(this,arguments)}function a(){if(!u&&(l=!0,!s)){for(s=!0;!u&&e>i&&l;)l=!1,t.call(this,i++,a,o);return s=!1,u?void n.apply(this,c):void(i>=e&&l&&(u=!0,n()))}}var i=0,u=!1,s=!1,l=!1,c=void 0;a()}t.__esModule=!0;var r=Array.prototype.slice;t.loopAsync=n},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(){function e(e){try{e=e||window.history.state||{}}catch(t){e={}}var n=p.getWindowPath(),r=e,o=r.key,i=void 0;o?i=d.readState(o):(i=null,o=b.createKey(),g&&window.history.replaceState(a({},e,{key:o}),null));var u=l.parsePath(n);return b.createLocation(a({},u,{state:i}),void 0,o)}function t(t){function n(t){void 0!==t.state&&r(e(t.state))}var r=t.transitionTo;return p.addEventListener(window,"popstate",n),function(){p.removeEventListener(window,"popstate",n)}}function n(e){var t=e.basename,n=e.pathname,r=e.search,o=e.hash,a=e.state,i=e.action,u=e.key;if(i!==s.POP){d.saveState(u,a);var l=(t||"")+n+r+o,c={key:u};if(i===s.PUSH){if(y)return window.location.href=l,!1;window.history.pushState(c,null,l)}else{if(y)return window.location.replace(l),!1;window.history.replaceState(c,null,l)}}}function r(e){1===++_&&(C=t(b));var n=b.listenBefore(e);return function(){n(),0===--_&&C()}}function o(e){1===++_&&(C=t(b));var n=b.listen(e);return function(){n(),0===--_&&C()}}function i(e){1===++_&&(C=t(b)),b.registerTransitionHook(e)}function f(e){b.unregisterTransitionHook(e),0===--_&&C()}var v=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];c.canUseDOM?void 0:u["default"](!1);var m=v.forceRefresh,g=p.supportsHistory(),y=!g||m,b=h["default"](a({},v,{getCurrentLocation:e,finishTransition:n,saveState:d.saveState})),_=0,C=void 0;return a({},b,{listenBefore:r,listen:o,registerTransitionHook:i,unregisterTransitionHook:f})}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t=0&&t=0&&m, "+('or explicitly pass "store" as a prop to "'+n+'".'));var s=i.store.getState();return i.state={storeState:s},i.clearCache(),i}return i(u,r),u.prototype.shouldComponentUpdate=function(){return!b||this.haveOwnPropsChanged||this.hasStoreStateChanged},u.prototype.computeStateProps=function(e,t){if(!this.finalMapStateToProps)return this.configureFinalMapState(e,t);var n=e.getState(),r=this.doStatePropsDependOnOwnProps?this.finalMapStateToProps(n,t):this.finalMapStateToProps(n);return r},u.prototype.configureFinalMapState=function(e,t){var n=d(e.getState(),t),r="function"==typeof n;return this.finalMapStateToProps=r?n:d,this.doStatePropsDependOnOwnProps=1!==this.finalMapStateToProps.length,r?this.computeStateProps(e,t):n},u.prototype.computeDispatchProps=function(e,t){if(!this.finalMapDispatchToProps)return this.configureFinalMapDispatch(e,t);var n=e.dispatch,r=this.doDispatchPropsDependOnOwnProps?this.finalMapDispatchToProps(n,t):this.finalMapDispatchToProps(n);return r},u.prototype.configureFinalMapDispatch=function(e,t){var n=h(e.dispatch,t),r="function"==typeof n;return this.finalMapDispatchToProps=r?n:h,this.doDispatchPropsDependOnOwnProps=1!==this.finalMapDispatchToProps.length,r?this.computeDispatchProps(e,t):n},u.prototype.updateStatePropsIfNeeded=function(){var e=this.computeStateProps(this.store,this.props);return this.stateProps&&(0,v["default"])(e,this.stateProps)?!1:(this.stateProps=e,!0)},u.prototype.updateDispatchPropsIfNeeded=function(){var e=this.computeDispatchProps(this.store,this.props);return this.dispatchProps&&(0,v["default"])(e,this.dispatchProps)?!1:(this.dispatchProps=e,!0)},u.prototype.updateMergedPropsIfNeeded=function(){var e=t(this.stateProps,this.dispatchProps,this.props);return this.mergedProps&&R&&(0,v["default"])(e,this.mergedProps)?!1:(this.mergedProps=e,!0)},u.prototype.isSubscribed=function(){return"function"==typeof this.unsubscribe; 18 | },u.prototype.trySubscribe=function(){l&&!this.unsubscribe&&(this.unsubscribe=this.store.subscribe(this.handleChange.bind(this)),this.handleChange())},u.prototype.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null)},u.prototype.componentDidMount=function(){this.trySubscribe()},u.prototype.componentWillReceiveProps=function(e){b&&(0,v["default"])(e,this.props)||(this.haveOwnPropsChanged=!0)},u.prototype.componentWillUnmount=function(){this.tryUnsubscribe(),this.clearCache()},u.prototype.clearCache=function(){this.dispatchProps=null,this.stateProps=null,this.mergedProps=null,this.haveOwnPropsChanged=!0,this.hasStoreStateChanged=!0,this.haveStatePropsBeenPrecalculated=!1,this.statePropsPrecalculationError=null,this.renderedElement=null,this.finalMapDispatchToProps=null,this.finalMapStateToProps=null},u.prototype.handleChange=function(){if(this.unsubscribe){var e=this.store.getState(),t=this.state.storeState;if(!b||t!==e){if(b&&!this.doStatePropsDependOnOwnProps){var n=s(this.updateStatePropsIfNeeded,this);if(!n)return;n===M&&(this.statePropsPrecalculationError=M.value),this.haveStatePropsBeenPrecalculated=!0}this.hasStoreStateChanged=!0,this.setState({storeState:e})}}},u.prototype.getWrappedInstance=function(){return(0,P["default"])(E,"To access the wrapped instance, you need to specify { withRef: true } as the fourth argument of the connect() call."),this.refs.wrappedInstance},u.prototype.render=function(){var t=this.haveOwnPropsChanged,n=this.hasStoreStateChanged,r=this.haveStatePropsBeenPrecalculated,o=this.statePropsPrecalculationError,a=this.renderedElement;if(this.haveOwnPropsChanged=!1,this.hasStoreStateChanged=!1,this.haveStatePropsBeenPrecalculated=!1,this.statePropsPrecalculationError=null,o)throw o;var i=!0,u=!0;b&&a&&(i=n||t&&this.doStatePropsDependOnOwnProps,u=t&&this.doDispatchPropsDependOnOwnProps);var s=!1,l=!1;r?s=!0:i&&(s=this.updateStatePropsIfNeeded()),u&&(l=this.updateDispatchPropsIfNeeded());var d=!0;return d=s||l||t?this.updateMergedPropsIfNeeded():!1,!d&&a?a:(E?this.renderedElement=(0,p.createElement)(e,c({},this.mergedProps,{ref:"wrappedInstance"})):this.renderedElement=(0,p.createElement)(e,this.mergedProps),this.renderedElement)},u}(p.Component);return r.displayName=n,r.WrappedComponent=e,r.contextTypes={store:f["default"]},r.propTypes={store:f["default"]},(0,C["default"])(r,e)}}var c=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function a(e){return!e||!e.__v2_compatible__}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;ta;a++)o[a]=arguments[a];if(e.apply(t,o),e.lengtht;++t)e[t].onLeave&&e[t].onLeave.call(e[t])}t.__esModule=!0,t.runEnterHooks=s,t.runChangeHooks=l,t.runLeaveHooks=c;var p=n(48),d=n(6);r(d)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0;var o=Object.assign||function(e){for(var t=1;tn;n++)t[n]=arguments[n];var r=t.map(function(e){return e.renderRouterContext}).filter(function(e){return e}),u=t.map(function(e){return e.renderRouteComponent}).filter(function(e){return e}),l=function(){var e=arguments.length<=0||void 0===arguments[0]?a.createElement:arguments[0];return function(t,n){return u.reduceRight(function(e,t){return t(e,n)},e(t,n))}};return function(e){return r.reduceRight(function(t,n){return n(t,e)},i["default"].createElement(s["default"],o({},e,{createElement:l(e.createElement)})))}},e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}t.__esModule=!0;var o=n(148),a=r(o),i=n(88),u=r(i);t["default"]=(0,u["default"])(a["default"]),e.exports=t["default"]},function(e,t,n){"use strict";function r(e,t,n){if(!e.path)return!1;var r=(0,a.getParamNames)(e.path);return r.some(function(e){return t.params[e]!==n.params[e]})}function o(e,t){var n=e&&e.routes,o=t.routes,a=void 0,i=void 0,u=void 0;return n?!function(){var s=!1;a=n.filter(function(n){if(s)return!0;var a=-1===o.indexOf(n)||r(n,e,t);return a&&(s=!0),a}),a.reverse(),u=[],i=[],o.forEach(function(e){var t=-1===n.indexOf(e),r=-1!==a.indexOf(e);t||r?u.push(e):i.push(e)})}():(a=[],i=[],u=o),{leaveRoutes:a,changeRoutes:i,enterRoutes:u}}t.__esModule=!0;var a=n(24);t["default"]=o,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,n){if(t.component||t.components)return void n(null,t.component||t.components);var r=t.getComponent||t.getComponents;if(!r)return void n();var o=e.location,a=void 0;a=i({},e,o),r.call(t,a,n)}function a(e,t){(0,u.mapAsync)(e.routes,function(t,n,r){o(e,t,r)},t)}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;ti;++i){var s=t[i],c=s.path||"";if("/"===c.charAt(0)&&(r=e,o=[],a=[]),null!==r&&c){var p=(0,l.matchPattern)(c,r);if(p?(r=p.remainingPathname,o=[].concat(o,p.paramNames),a=[].concat(a,p.paramValues)):r=null,""===r)return o.every(function(e,t){return String(a[t])===String(n[e])})}}return!1}function i(e,t){return null==t?null==e:null==e?!0:r(e,t)}function u(e,t,n,r,u){var s=e.pathname,l=e.query;return null==n?!1:("/"!==s.charAt(0)&&(s="/"+s),o(s,n.pathname)||!t&&a(s,r,u)?i(l,n.query):!1)}t.__esModule=!0;var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};t["default"]=u;var l=n(24);e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function a(e,t){var n=e.history,r=e.routes,a=e.location,u=o(e,["history","routes","location"]);n||a?void 0:(0,s["default"])(!1),n=n?n:(0,c["default"])(u);var l=(0,d["default"])(n,(0,f.createRoutes)(r)),p=void 0;a?a=n.createLocation(a):p=n.listen(function(e){a=e});var v=(0,h.createRouterObject)(n,l);n=(0,h.createRoutingHistory)(n,l),l.match(a,function(e,r,o){t(e,r,o&&i({},o,{history:n,router:v,matchContext:{history:n,transitionManager:l,router:v}})),p&&p()})}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function a(e){return function(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=t.routes,r=o(t,["routes"]),a=(0,s["default"])(e)(r),u=(0,c["default"])(a,n);return i({},a,u)}}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;t8&&11>=P),T=32,M=String.fromCharCode(T),O=f.topLevelTypes,R={beforeInput:{phasedRegistrationNames:{bubbled:b({onBeforeInput:null}),captured:b({onBeforeInputCapture:null})},dependencies:[O.topCompositionEnd,O.topKeyPress,O.topTextInput,O.topPaste]},compositionEnd:{phasedRegistrationNames:{bubbled:b({onCompositionEnd:null}),captured:b({onCompositionEndCapture:null})},dependencies:[O.topBlur,O.topCompositionEnd,O.topKeyDown,O.topKeyPress,O.topKeyUp,O.topMouseDown]},compositionStart:{phasedRegistrationNames:{bubbled:b({onCompositionStart:null}),captured:b({onCompositionStartCapture:null})},dependencies:[O.topBlur,O.topCompositionStart,O.topKeyDown,O.topKeyPress,O.topKeyUp,O.topMouseDown]},compositionUpdate:{phasedRegistrationNames:{bubbled:b({onCompositionUpdate:null}),captured:b({onCompositionUpdateCapture:null})},dependencies:[O.topBlur,O.topCompositionUpdate,O.topKeyDown,O.topKeyPress,O.topKeyUp,O.topMouseDown]}},S=!1,N=null,k={eventTypes:R,extractEvents:function(e,t,n,r){return[l(e,t,n,r),d(e,t,n,r)]}};e.exports=k},function(e,t,n){"use strict";var r=n(91),o=n(7),a=(n(9),n(134),n(237)),i=n(140),u=n(144),s=(n(2),u(function(e){return i(e)})),l=!1,c="cssFloat";if(o.canUseDOM){var p=document.createElement("div").style;try{p.font=""}catch(d){l=!0}void 0===document.documentElement.style.cssFloat&&(c="styleFloat")}var f={createMarkupForStyles:function(e,t){var n="";for(var r in e)if(e.hasOwnProperty(r)){var o=e[r];null!=o&&(n+=s(r)+":",n+=a(r,o,t)+";")}return n||null},setValueForStyles:function(e,t,n){var o=e.style;for(var i in t)if(t.hasOwnProperty(i)){var u=a(i,t[i],n);if("float"!==i&&"cssFloat"!==i||(i=c),u)o[i]=u;else{var s=l&&r.shorthandPropertyExpansions[i];if(s)for(var p in s)o[p]="";else o[i]=""}}}};e.exports=f},function(e,t,n){"use strict";function r(e){var t=e.nodeName&&e.nodeName.toLowerCase();return"select"===t||"input"===t&&"file"===e.type}function o(e){var t=x.getPooled(S.change,k,e,w(e));_.accumulateTwoPhaseDispatches(t),P.batchedUpdates(a,t)}function a(e){b.enqueueEvents(e),b.processEventQueue(!1)}function i(e,t){N=e,k=t,N.attachEvent("onchange",o)}function u(){N&&(N.detachEvent("onchange",o),N=null,k=null)}function s(e,t){return e===R.topChange?t:void 0}function l(e,t,n){e===R.topFocus?(u(),i(t,n)):e===R.topBlur&&u()}function c(e,t){N=e,k=t,A=e.value,I=Object.getOwnPropertyDescriptor(e.constructor.prototype,"value"),Object.defineProperty(N,"value",U),N.attachEvent?N.attachEvent("onpropertychange",d):N.addEventListener("propertychange",d,!1)}function p(){N&&(delete N.value,N.detachEvent?N.detachEvent("onpropertychange",d):N.removeEventListener("propertychange",d,!1),N=null,k=null,A=null,I=null)}function d(e){if("value"===e.propertyName){var t=e.srcElement.value;t!==A&&(A=t,o(e))}}function f(e,t){return e===R.topInput?t:void 0}function h(e,t,n){e===R.topFocus?(p(),c(t,n)):e===R.topBlur&&p()}function v(e,t){return e!==R.topSelectionChange&&e!==R.topKeyUp&&e!==R.topKeyDown||!N||N.value===A?void 0:(A=N.value,k)}function m(e){return e.nodeName&&"input"===e.nodeName.toLowerCase()&&("checkbox"===e.type||"radio"===e.type)}function g(e,t){return e===R.topClick?t:void 0}var y=n(14),b=n(27),_=n(28),C=n(7),E=n(5),P=n(13),x=n(15),w=n(63),T=n(65),M=n(118),O=n(16),R=y.topLevelTypes,S={change:{phasedRegistrationNames:{bubbled:O({onChange:null}),captured:O({onChangeCapture:null})},dependencies:[R.topBlur,R.topChange,R.topClick,R.topFocus,R.topInput,R.topKeyDown,R.topKeyUp,R.topSelectionChange]}},N=null,k=null,A=null,I=null,D=!1;C.canUseDOM&&(D=T("change")&&(!("documentMode"in document)||document.documentMode>8));var L=!1;C.canUseDOM&&(L=T("input")&&(!("documentMode"in document)||document.documentMode>11));var U={get:function(){return I.get.call(this)},set:function(e){A=""+e,I.set.call(this,e)}},j={eventTypes:S,extractEvents:function(e,t,n,o){var a,i,u=t?E.getNodeFromInstance(t):window;if(r(u)?D?a=s:i=l:M(u)?L?a=f:(a=v,i=h):m(u)&&(a=g),a){var c=a(e,t);if(c){var p=x.getPooled(S.change,c,n,o);return p.type="change",_.accumulateTwoPhaseDispatches(p),p}}i&&i(e,u,t)}};e.exports=j},function(e,t,n){"use strict";function r(e){return e.substring(1,e.indexOf(" "))}var o=n(25),a=n(7),i=n(137),u=n(10),s=n(74),l=n(1),c=/^(<[^ \/>]+)/,p="data-danger-index",d={dangerouslyRenderMarkup:function(e){a.canUseDOM?void 0:l(!1);for(var t,n={},o=0;oe&&n[e]===o[e];e++);var i=r-e;for(t=1;i>=t&&n[r-t]===o[a-t];t++);var u=t>1?1-t:void 0;return this._fallbackText=o.slice(e,u),this._fallbackText}}),a.addPoolingTo(r),e.exports=r},function(e,t,n){"use strict";var r=n(22),o=r.injection.MUST_USE_PROPERTY,a=r.injection.HAS_BOOLEAN_VALUE,i=r.injection.HAS_SIDE_EFFECTS,u=r.injection.HAS_NUMERIC_VALUE,s=r.injection.HAS_POSITIVE_NUMERIC_VALUE,l=r.injection.HAS_OVERLOADED_BOOLEAN_VALUE,c={isCustomAttribute:RegExp.prototype.test.bind(new RegExp("^(data|aria)-["+r.ATTRIBUTE_NAME_CHAR+"]*$")),Properties:{accept:0,acceptCharset:0,accessKey:0,action:0,allowFullScreen:a,allowTransparency:0,alt:0,async:a,autoComplete:0,autoPlay:a,capture:a,cellPadding:0,cellSpacing:0,charSet:0,challenge:0,checked:o|a,cite:0,classID:0,className:0,cols:s,colSpan:0,content:0,contentEditable:0,contextMenu:0,controls:a,coords:0,crossOrigin:0,data:0,dateTime:0,"default":a,defer:a,dir:0,disabled:a,download:l,draggable:0,encType:0,form:0,formAction:0,formEncType:0,formMethod:0,formNoValidate:a,formTarget:0,frameBorder:0,headers:0,height:0,hidden:a,high:0,href:0,hrefLang:0,htmlFor:0,httpEquiv:0,icon:0,id:0,inputMode:0,integrity:0,is:0,keyParams:0,keyType:0,kind:0,label:0,lang:0,list:0,loop:a,low:0,manifest:0,marginHeight:0,marginWidth:0,max:0,maxLength:0,media:0,mediaGroup:0,method:0,min:0,minLength:0,multiple:o|a,muted:o|a,name:0,nonce:0,noValidate:a,open:a,optimum:0,pattern:0,placeholder:0,poster:0,preload:0,profile:0,radioGroup:0,readOnly:a,rel:0,required:a,reversed:a,role:0,rows:s,rowSpan:u,sandbox:0,scope:0,scoped:a,scrolling:0,seamless:a,selected:o|a,shape:0,size:s,sizes:0,span:s,spellCheck:0,src:0,srcDoc:0,srcLang:0,srcSet:0,start:u,step:0,style:0,summary:0,tabIndex:0,target:0,title:0,type:0,useMap:0,value:o|i,width:0,wmode:0,wrap:0,about:0,datatype:0,inlist:0,prefix:0,property:0,resource:0,"typeof":0,vocab:0,autoCapitalize:0,autoCorrect:0,autoSave:0,color:0,itemProp:0,itemScope:a,itemType:0,itemID:0,itemRef:0,results:0,security:0,unselectable:0},DOMAttributeNames:{acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv"},DOMPropertyNames:{}};e.exports=c},function(e,t,n){"use strict";var r=n(4),o=n(94),a=n(96),i=n(95),u=n(200),s=n(11),l=(n(100),n(109)),c=n(111),p=n(243),d=(n(2),s.createElement),f=s.createFactory,h=s.cloneElement,v=r,m={Children:{map:o.map,forEach:o.forEach,count:o.count,toArray:o.toArray,only:p},Component:a,createElement:d,cloneElement:h,isValidElement:s.isValidElement,PropTypes:l,createClass:i.createClass,createFactory:f,createMixin:function(e){return e},DOM:u,version:c,__spread:v};e.exports=m},function(e,t,n){"use strict";function r(e,t,n){var r=void 0===e[n];null!=t&&r&&(e[n]=a(t))}var o=n(26),a=n(117),i=(n(54),n(67)),u=n(68),s=(n(2),{instantiateChildren:function(e,t,n){if(null==e)return null;var o={};return u(e,r,o),o},updateChildren:function(e,t,n,r,u){if(t||e){var s,l;for(s in t)if(t.hasOwnProperty(s)){l=e&&e[s];var c=l&&l._currentElement,p=t[s];if(null!=l&&i(c,p))o.receiveComponent(l,p,r,u),t[s]=l;else{l&&(n[s]=o.getNativeNode(l),o.unmountComponent(l,!1));var d=a(p);t[s]=d}}for(s in e)!e.hasOwnProperty(s)||t&&t.hasOwnProperty(s)||(l=e[s],n[s]=o.getNativeNode(l),o.unmountComponent(l,!1))}},unmountChildren:function(e,t){for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];o.unmountComponent(r,t)}}});e.exports=s},function(e,t,n){"use strict";function r(e){var t=e._currentElement._owner||null;if(t){var n=t.getName();if(n)return" Check the render method of `"+n+"`."}return""}function o(e){}function a(e,t){}function i(e){return e.prototype&&e.prototype.isReactComponent}var u=n(4),s=n(56),l=n(19),c=n(11),p=n(57),d=n(58),f=(n(9),n(107)),h=n(40),v=(n(39),n(26)),m=n(110),g=n(30),y=n(1),b=n(67);n(2);o.prototype.render=function(){var e=d.get(this)._currentElement.type,t=e(this.props,this.context,this.updater); 19 | return a(e,t),t};var _=1,C={construct:function(e){this._currentElement=e,this._rootNodeID=null,this._instance=null,this._nativeParent=null,this._nativeContainerInfo=null,this._updateBatchNumber=null,this._pendingElement=null,this._pendingStateQueue=null,this._pendingReplaceState=!1,this._pendingForceUpdate=!1,this._renderedNodeType=null,this._renderedComponent=null,this._context=null,this._mountOrder=0,this._topLevelWrapper=null,this._pendingCallbacks=null,this._calledComponentWillUnmount=!1},mountComponent:function(e,t,n,r){this._context=r,this._mountOrder=_++,this._nativeParent=t,this._nativeContainerInfo=n;var u,s=this._processProps(this._currentElement.props),l=this._processContext(r),p=this._currentElement.type,f=this._constructComponent(s,l);i(p)||null!=f&&null!=f.render||(u=f,a(p,u),null===f||f===!1||c.isValidElement(f)?void 0:y(!1),f=new o(p));f.props=s,f.context=l,f.refs=g,f.updater=m,this._instance=f,d.set(f,this);var h=f.state;void 0===h&&(f.state=h=null),"object"!=typeof h||Array.isArray(h)?y(!1):void 0,this._pendingStateQueue=null,this._pendingReplaceState=!1,this._pendingForceUpdate=!1;var v;return v=f.unstable_handleError?this.performInitialMountWithErrorHandling(u,t,n,e,r):this.performInitialMount(u,t,n,e,r),f.componentDidMount&&e.getReactMountReady().enqueue(f.componentDidMount,f),v},_constructComponent:function(e,t){return this._constructComponentWithoutOwner(e,t)},_constructComponentWithoutOwner:function(e,t){var n,r=this._currentElement.type;return n=i(r)?new r(e,t,m):r(e,t,m)},performInitialMountWithErrorHandling:function(e,t,n,r,o){var a,i=r.checkpoint();try{a=this.performInitialMount(e,t,n,r,o)}catch(u){r.rollback(i),this._instance.unstable_handleError(u),this._pendingStateQueue&&(this._instance.state=this._processPendingState(this._instance.props,this._instance.context)),i=r.checkpoint(),this._renderedComponent.unmountComponent(!0),r.rollback(i),a=this.performInitialMount(e,t,n,r,o)}return a},performInitialMount:function(e,t,n,r,o){var a=this._instance;a.componentWillMount&&(a.componentWillMount(),this._pendingStateQueue&&(a.state=this._processPendingState(a.props,a.context))),void 0===e&&(e=this._renderValidatedComponent()),this._renderedNodeType=f.getType(e),this._renderedComponent=this._instantiateReactComponent(e);var i=v.mountComponent(this._renderedComponent,r,t,n,this._processChildContext(o));return i},getNativeNode:function(){return v.getNativeNode(this._renderedComponent)},unmountComponent:function(e){if(this._renderedComponent){var t=this._instance;if(t.componentWillUnmount&&!t._calledComponentWillUnmount)if(t._calledComponentWillUnmount=!0,e){var n=this.getName()+".componentWillUnmount()";p.invokeGuardedCallback(n,t.componentWillUnmount.bind(t))}else t.componentWillUnmount();this._renderedComponent&&(v.unmountComponent(this._renderedComponent,e),this._renderedNodeType=null,this._renderedComponent=null,this._instance=null),this._pendingStateQueue=null,this._pendingReplaceState=!1,this._pendingForceUpdate=!1,this._pendingCallbacks=null,this._pendingElement=null,this._context=null,this._rootNodeID=null,this._topLevelWrapper=null,d.remove(t)}},_maskContext:function(e){var t=this._currentElement.type,n=t.contextTypes;if(!n)return g;var r={};for(var o in n)r[o]=e[o];return r},_processContext:function(e){var t=this._maskContext(e);return t},_processChildContext:function(e){var t=this._currentElement.type,n=this._instance,r=n.getChildContext&&n.getChildContext();if(r){"object"!=typeof t.childContextTypes?y(!1):void 0;for(var o in r)o in t.childContextTypes?void 0:y(!1);return u({},e,r)}return e},_processProps:function(e){return e},_checkPropTypes:function(e,t,n){var o=this.getName();for(var a in e)if(e.hasOwnProperty(a)){var i;try{"function"!=typeof e[a]?y(!1):void 0,i=e[a](t,a,o,n)}catch(u){i=u}if(i instanceof Error){r(this);n===h.prop}}},receiveComponent:function(e,t,n){var r=this._currentElement,o=this._context;this._pendingElement=null,this.updateComponent(t,r,e,o,n)},performUpdateIfNecessary:function(e){null!=this._pendingElement?v.receiveComponent(this,this._pendingElement,e,this._context):null!==this._pendingStateQueue||this._pendingForceUpdate?this.updateComponent(e,this._currentElement,this._currentElement,this._context,this._context):this._updateBatchNumber=null},updateComponent:function(e,t,n,r,o){var a,i,u=this._instance,s=!1;this._context===o?a=u.context:(a=this._processContext(o),s=!0),t===n?i=n.props:(i=this._processProps(n.props),s=!0),s&&u.componentWillReceiveProps&&u.componentWillReceiveProps(i,a);var l=this._processPendingState(i,a),c=!0;!this._pendingForceUpdate&&u.shouldComponentUpdate&&(c=u.shouldComponentUpdate(i,l,a)),this._updateBatchNumber=null,c?(this._pendingForceUpdate=!1,this._performComponentUpdate(n,i,l,a,e,o)):(this._currentElement=n,this._context=o,u.props=i,u.state=l,u.context=a)},_processPendingState:function(e,t){var n=this._instance,r=this._pendingStateQueue,o=this._pendingReplaceState;if(this._pendingReplaceState=!1,this._pendingStateQueue=null,!r)return n.state;if(o&&1===r.length)return r[0];for(var a=u({},o?r[0]:n.state),i=o?1:0;i=0||null!=t.is}function p(e){var t=e.type;l(t),this._currentElement=e,this._tag=t.toLowerCase(),this._namespaceURI=null,this._renderedChildren=null,this._previousStyle=null,this._previousStyleCopy=null,this._nativeNode=null,this._nativeParent=null,this._rootNodeID=null,this._domID=null,this._nativeContainerInfo=null,this._wrapperState=null,this._topLevelWrapper=null,this._flags=0}var d=n(4),f=n(182),h=n(184),v=n(25),m=n(93),g=n(22),y=n(52),b=n(14),_=n(27),C=n(37),E=n(38),P=n(97),x=n(195),w=n(98),T=n(5),M=n(203),O=n(205),R=n(99),S=n(208),N=(n(9),n(218)),k=n(222),A=(n(10),n(43)),I=n(1),D=(n(65),n(16)),L=(n(75),n(69),n(2),w),U=_.deleteListener,j=T.getNodeFromInstance,F=E.listenTo,B=C.registrationNameModules,V={string:!0,number:!0},H=D({style:null}),q=D({__html:null}),W={children:null,dangerouslySetInnerHTML:null,suppressContentEditableWarning:null},K=11,z={topAbort:"abort",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topSeeked:"seeked",topSeeking:"seeking",topStalled:"stalled",topSuspend:"suspend",topTimeUpdate:"timeupdate",topVolumeChange:"volumechange",topWaiting:"waiting"},Y={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},G={listing:!0,pre:!0,textarea:!0},X=d({menuitem:!0},Y),Q=/^[a-zA-Z][a-zA-Z:_\.\-\d]*$/,$={},Z={}.hasOwnProperty,J=1;p.displayName="ReactDOMComponent",p.Mixin={mountComponent:function(e,t,n,o){this._rootNodeID=J++,this._domID=n._idCounter++,this._nativeParent=t,this._nativeContainerInfo=n;var a=this._currentElement.props;switch(this._tag){case"iframe":case"object":case"img":case"form":case"video":case"audio":this._wrapperState={listeners:null},e.getReactMountReady().enqueue(u,this);break;case"button":a=x.getNativeProps(this,a,t);break;case"input":M.mountWrapper(this,a,t),a=M.getNativeProps(this,a),e.getReactMountReady().enqueue(u,this);break;case"option":O.mountWrapper(this,a,t),a=O.getNativeProps(this,a);break;case"select":R.mountWrapper(this,a,t),a=R.getNativeProps(this,a),e.getReactMountReady().enqueue(u,this);break;case"textarea":S.mountWrapper(this,a,t),a=S.getNativeProps(this,a),e.getReactMountReady().enqueue(u,this)}r(this,a);var s,l;null!=t?(s=t._namespaceURI,l=t._tag):n._tag&&(s=n._namespaceURI,l=n._tag),(null==s||s===m.svg&&"foreignobject"===l)&&(s=m.html),s===m.html&&("svg"===this._tag?s=m.svg:"math"===this._tag&&(s=m.mathml)),this._namespaceURI=s;var c;if(e.useCreateElement){var p,d=n._ownerDocument;if(s===m.html)if("script"===this._tag){var h=d.createElement("div"),g=this._currentElement.type;h.innerHTML="<"+g+">",p=h.removeChild(h.firstChild)}else p=d.createElement(this._currentElement.type,a.is||null);else p=d.createElementNS(s,this._currentElement.type);T.precacheNode(this,p),this._flags|=L.hasCachedChildNodes,this._nativeParent||y.setAttributeForRoot(p),this._updateDOMProperties(null,a,e);var b=v(p);this._createInitialChildren(e,a,o,b),c=b}else{var _=this._createOpenTagMarkupAndPutListeners(e,a),C=this._createContentMarkup(e,a,o);c=!C&&Y[this._tag]?_+"/>":_+">"+C+""}switch(this._tag){case"button":case"input":case"select":case"textarea":a.autoFocus&&e.getReactMountReady().enqueue(f.focusDOMComponent,this);break;case"option":e.getReactMountReady().enqueue(i,this)}return c},_createOpenTagMarkupAndPutListeners:function(e,t){var n="<"+this._currentElement.type;for(var r in t)if(t.hasOwnProperty(r)){var a=t[r];if(null!=a)if(B.hasOwnProperty(r))a&&o(this,r,a,e);else{r===H&&(a&&(a=this._previousStyleCopy=d({},t.style)),a=h.createMarkupForStyles(a,this));var i=null;null!=this._tag&&c(this._tag,t)?W.hasOwnProperty(r)||(i=y.createMarkupForCustomAttribute(r,a)):i=y.createMarkupForProperty(r,a),i&&(n+=" "+i)}}return e.renderToStaticMarkup?n:(this._nativeParent||(n+=" "+y.createMarkupForRoot()),n+=" "+y.createMarkupForID(this._domID))},_createContentMarkup:function(e,t,n){var r="",o=t.dangerouslySetInnerHTML;if(null!=o)null!=o.__html&&(r=o.__html);else{var a=V[typeof t.children]?t.children:null,i=null!=a?null:t.children;if(null!=a)r=A(a);else if(null!=i){var u=this.mountChildren(i,e,n);r=u.join("")}}return G[this._tag]&&"\n"===r.charAt(0)?"\n"+r:r},_createInitialChildren:function(e,t,n,r){var o=t.dangerouslySetInnerHTML;if(null!=o)null!=o.__html&&v.queueHTML(r,o.__html);else{var a=V[typeof t.children]?t.children:null,i=null!=a?null:t.children;if(null!=a)v.queueText(r,a);else if(null!=i)for(var u=this.mountChildren(i,e,n),s=0;s"},receiveComponent:function(){},getNativeNode:function(){return a.getNodeFromInstance(this)},unmountComponent:function(){a.uncacheNode(this)}}),e.exports=i},function(e,t,n){"use strict";function r(e){return o.createFactory(e)}var o=n(11),a=(n(100),n(143)),i=a({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",hgroup:"hgroup",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",clipPath:"clipPath",defs:"defs",ellipse:"ellipse",g:"g",image:"image",line:"line",linearGradient:"linearGradient",mask:"mask",path:"path",pattern:"pattern",polygon:"polygon",polyline:"polyline",radialGradient:"radialGradient",rect:"rect",stop:"stop",svg:"svg",text:"text",tspan:"tspan"},r);e.exports=i},function(e,t){"use strict";var n={useCreateElement:!0};e.exports=n},function(e,t,n){"use strict";var r=n(51),o=n(5),a={dangerouslyProcessChildrenUpdates:function(e,t){var n=o.getNodeFromInstance(e);r.processUpdates(n,t)}};e.exports=a},function(e,t,n){"use strict";function r(){this._rootNodeID&&d.updateWrapper(this)}function o(e){var t=this._currentElement.props,n=s.executeOnChange(t,e);c.asap(r,this);var o=t.name;if("radio"===t.type&&null!=o){for(var a=l.getNodeFromInstance(this),i=a;i.parentNode;)i=i.parentNode;for(var u=i.querySelectorAll("input[name="+JSON.stringify(""+o)+'][type="radio"]'),d=0;dt.end?(n=t.end,r=t.start):(n=t.start,r=t.end),o.moveToElementText(e),o.moveStart("character",n),o.setEndPoint("EndToStart",o),o.moveEnd("character",r-n),o.select()}function u(e,t){if(window.getSelection){var n=window.getSelection(),r=e[c()].length,o=Math.min(t.start,r),a=void 0===t.end?o:Math.min(t.end,r);if(!n.extend&&o>a){var i=a;a=o,o=i}var u=l(e,o),s=l(e,a);if(u&&s){var p=document.createRange();p.setStart(u.node,u.offset),n.removeAllRanges(),o>a?(n.addRange(p),n.extend(s.node,s.offset)):(p.setEnd(s.node,s.offset),n.addRange(p))}}}var s=n(7),l=n(241),c=n(116),p=s.canUseDOM&&"selection"in document&&!("getSelection"in window),d={getOffsets:p?o:a,setOffsets:p?i:u};e.exports=d},function(e,t,n){"use strict";var r=n(4),o=n(51),a=n(25),i=n(5),u=(n(9),n(43)),s=n(1),l=(n(69),function(e){this._currentElement=e,this._stringText=""+e,this._nativeNode=null,this._nativeParent=null,this._domID=null,this._mountIndex=0,this._closingComment=null,this._commentNodes=null});r(l.prototype,{mountComponent:function(e,t,n,r){var o=n._idCounter++,s=" react-text: "+o+" ",l=" /react-text ";if(this._domID=o,this._nativeParent=t,e.useCreateElement){var c=n._ownerDocument,p=c.createComment(s),d=c.createComment(l),f=a(c.createDocumentFragment());return a.queueChild(f,a(p)),this._stringText&&a.queueChild(f,a(c.createTextNode(this._stringText))),a.queueChild(f,a(d)),i.precacheNode(this,p),this._closingComment=d,f}var h=u(this._stringText);return e.renderToStaticMarkup?h:""+h+""},receiveComponent:function(e,t){if(e!==this._currentElement){this._currentElement=e;var n=""+e;if(n!==this._stringText){this._stringText=n;var r=this.getNativeNode();o.replaceDelimitedText(r[0],r[1],n)}}},getNativeNode:function(){var e=this._commentNodes;if(e)return e;if(!this._closingComment)for(var t=i.getNodeFromInstance(this),n=t.nextSibling;;){if(null==n?s(!1):void 0,8===n.nodeType&&" /react-text "===n.nodeValue){this._closingComment=n;break}n=n.nextSibling}return e=[this._nativeNode,this._closingComment],this._commentNodes=e,e},unmountComponent:function(){this._closingComment=null,this._commentNodes=null,i.uncacheNode(this)}}),e.exports=l},function(e,t,n){"use strict";function r(){this._rootNodeID&&d.updateWrapper(this)}function o(e){var t=this._currentElement.props,n=s.executeOnChange(t,e);return c.asap(r,this),n}var a=n(4),i=n(36),u=n(52),s=n(55),l=n(5),c=n(13),p=n(1),d=(n(2),{getNativeProps:function(e,t){null!=t.dangerouslySetInnerHTML?p(!1):void 0;var n=a({},i.getNativeProps(e,t),{defaultValue:void 0,value:void 0,children:e._wrapperState.initialValue,onChange:e._wrapperState.onChange});return n},mountWrapper:function(e,t){var n=t.defaultValue,r=t.children;null!=r&&(null!=n?p(!1):void 0,Array.isArray(r)&&(r.length<=1?void 0:p(!1),r=r[0]),n=""+r),null==n&&(n="");var a=s.getValue(t);e._wrapperState={initialValue:""+(null!=a?a:n),listeners:null,onChange:o.bind(e)}},updateWrapper:function(e){var t=e._currentElement.props,n=s.getValue(t);null!=n&&u.setValueForProperty(l.getNodeFromInstance(e),"value",""+n)}});e.exports=d},function(e,t,n){"use strict";function r(e,t){"_nativeNode"in e?void 0:s(!1),"_nativeNode"in t?void 0:s(!1);for(var n=0,r=e;r;r=r._nativeParent)n++;for(var o=0,a=t;a;a=a._nativeParent)o++;for(;n-o>0;)e=e._nativeParent,n--;for(;o-n>0;)t=t._nativeParent,o--;for(var i=n;i--;){if(e===t)return e;e=e._nativeParent,t=t._nativeParent}return null}function o(e,t){"_nativeNode"in e?void 0:s(!1),"_nativeNode"in t?void 0:s(!1);for(;t;){if(t===e)return!0;t=t._nativeParent}return!1}function a(e){return"_nativeNode"in e?void 0:s(!1),e._nativeParent}function i(e,t,n){for(var r=[];e;)r.push(e),e=e._nativeParent;var o;for(o=r.length;o-- >0;)t(r[o],!1,n);for(o=0;o0;)n(s[l],!1,a)}var s=n(1);e.exports={isAncestor:o,getLowestCommonAncestor:r,getParentInstance:a,traverseTwoPhase:i,traverseEnterLeave:u}},function(e,t,n){"use strict";var r,o=(n(22),n(37),n(2),{onCreateMarkupForProperty:function(e,t){r(e)},onSetValueForProperty:function(e,t,n){r(t)},onDeleteValueForProperty:function(e,t){r(t)}});e.exports=o},function(e,t,n){"use strict";function r(e,t,n,r,o,a){}function o(e){}var a=(n(7),n(146),n(2),[]),i={addDevtool:function(e){a.push(e)},removeDevtool:function(e){for(var t=0;t/,a=/^<\!\-\-/,i={CHECKSUM_ATTR_NAME:"data-react-checksum",addChecksumToMarkup:function(e){var t=r(e);return a.test(e)?e:e.replace(o," "+i.CHECKSUM_ATTR_NAME+'="'+t+'"$&')},canReuseMarkup:function(e,t){var n=t.getAttribute(i.CHECKSUM_ATTR_NAME);n=n&&parseInt(n,10);var o=r(e);return o===n}};e.exports=i},function(e,t,n){"use strict";function r(e,t,n){return{type:p.INSERT_MARKUP,content:e,fromIndex:null,fromNode:null,toIndex:n,afterNode:t}}function o(e,t,n){return{type:p.MOVE_EXISTING,content:null,fromIndex:e._mountIndex,fromNode:d.getNativeNode(e),toIndex:n,afterNode:t}}function a(e,t){return{type:p.REMOVE_NODE,content:null,fromIndex:e._mountIndex,fromNode:t,toIndex:null,afterNode:null}}function i(e){return{type:p.SET_MARKUP,content:e,fromIndex:null,fromNode:null,toIndex:null,afterNode:null}}function u(e){return{type:p.TEXT_CONTENT,content:e,fromIndex:null,fromNode:null,toIndex:null,afterNode:null}}function s(e,t){return t&&(e=e||[],e.push(t)),e}function l(e,t){c.processChildrenUpdates(e,t)}var c=n(56),p=(n(9),n(105)),d=(n(19),n(26)),f=n(192),h=(n(10),n(239)),v=n(1),m={Mixin:{_reconcilerInstantiateChildren:function(e,t,n){return f.instantiateChildren(e,t,n)},_reconcilerUpdateChildren:function(e,t,n,r,o){var a;return a=h(t),f.updateChildren(e,a,n,r,o),a},mountChildren:function(e,t,n){var r=this._reconcilerInstantiateChildren(e,t,n);this._renderedChildren=r;var o=[],a=0;for(var i in r)if(r.hasOwnProperty(i)){var u=r[i],s=d.mountComponent(u,t,this,this._nativeContainerInfo,n);u._mountIndex=a++,o.push(s)}return o},updateTextContent:function(e){var t=this._renderedChildren;f.unmountChildren(t,!1);for(var n in t)t.hasOwnProperty(n)&&v(!1);var r=[u(e)];l(this,r)},updateMarkup:function(e){var t=this._renderedChildren;f.unmountChildren(t,!1);for(var n in t)t.hasOwnProperty(n)&&v(!1);var r=[i(e)];l(this,r)},updateChildren:function(e,t,n){this._updateChildren(e,t,n)},_updateChildren:function(e,t,n){var r=this._renderedChildren,o={},a=this._reconcilerUpdateChildren(r,e,o,t,n);if(a||r){var i,u=null,c=0,p=0,f=null;for(i in a)if(a.hasOwnProperty(i)){var h=r&&r[i],v=a[i];h===v?(u=s(u,this.moveChild(h,f,p,c)),c=Math.max(h._mountIndex,c),h._mountIndex=p):(h&&(c=Math.max(h._mountIndex,c)),u=s(u,this._mountChildAtIndex(v,f,p,t,n))),p++,f=d.getNativeNode(v)}for(i in o)o.hasOwnProperty(i)&&(u=s(u,this._unmountChild(r[i],o[i])));u&&l(this,u),this._renderedChildren=a}},unmountChildren:function(e){var t=this._renderedChildren;f.unmountChildren(t,e),this._renderedChildren=null},moveChild:function(e,t,n,r){return e._mountIndexo;){for(var u=Math.min(o+4096,i);u>o;o+=4)n+=(t+=e.charCodeAt(o))+(t+=e.charCodeAt(o+1))+(t+=e.charCodeAt(o+2))+(t+=e.charCodeAt(o+3));t%=r,n%=r}for(;a>o;o++)n+=t+=e.charCodeAt(o);return t%=r,n%=r,t|n<<16}var r=65521;e.exports=n},function(e,t,n){"use strict";function r(e,t,n){var r=null==t||"boolean"==typeof t||""===t;if(r)return"";var o=isNaN(t);if(o||0===t||a.hasOwnProperty(e)&&a[e])return""+t;if("string"==typeof t){t=t.trim()}return t+"px"}var o=n(91),a=(n(2),o.isUnitlessNumber);e.exports=r},function(e,t,n){"use strict";function r(e){if(null==e)return null;if(1===e.nodeType)return e;var t=a.get(e);return t?(t=i(t),t?o.getNodeFromInstance(t):null):void u(("function"==typeof e.render,!1))}var o=(n(19),n(5)),a=n(58),i=n(115),u=n(1);n(2);e.exports=r},function(e,t,n){"use strict";function r(e,t,n){var r=e,o=void 0===r[n];o&&null!=t&&(r[n]=t)}function o(e){if(null==e)return e;var t={};return a(e,r,t),t}var a=(n(54),n(68));n(2);e.exports=o},function(e,t,n){"use strict";function r(e){if(e.key){var t=a[e.key]||e.key;if("Unidentified"!==t)return t}if("keypress"===e.type){var n=o(e);return 13===n?"Enter":String.fromCharCode(n)}return"keydown"===e.type||"keyup"===e.type?i[e.keyCode]||"Unidentified":""}var o=n(61),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"};e.exports=r},function(e,t){"use strict";function n(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 o(e,t){for(var o=n(e),a=0,i=0;o;){if(3===o.nodeType){if(i=a+o.textContent.length,t>=a&&i>=t)return{node:o,offset:t-a};a=i}o=n(r(o))}}e.exports=o},function(e,t,n){"use strict";function r(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n["ms"+e]="MS"+t,n["O"+e]="o"+t.toLowerCase(),n}function o(e){if(u[e])return u[e];if(!i[e])return e;var t=i[e];for(var n in t)if(t.hasOwnProperty(n)&&n in s)return u[e]=t[n];return""}var a=n(7),i={animationend:r("Animation","AnimationEnd"),animationiteration:r("Animation","AnimationIteration"),animationstart:r("Animation","AnimationStart"),transitionend:r("Transition","TransitionEnd")},u={},s={};a.canUseDOM&&(s=document.createElement("div").style,"AnimationEvent"in window||(delete i.animationend.animation,delete i.animationiteration.animation,delete i.animationstart.animation),"TransitionEvent"in window||delete i.transitionend.transition),e.exports=o},function(e,t,n){"use strict";function r(e){return o.isValidElement(e)?void 0:a(!1),e}var o=n(11),a=n(1);e.exports=r},function(e,t,n){"use strict";function r(e){return'"'+o(e)+'"'}var o=n(43);e.exports=r},function(e,t,n){"use strict";var r=n(104);e.exports=r.renderSubtreeIntoContainer},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return function(e){return function(n,r,o){var i=e(n,r,o),s=i.dispatch,l=[],c={getState:i.getState,dispatch:function(e){return s(e)}};return l=t.map(function(e){return e(c)}),s=u["default"].apply(void 0,l)(i.dispatch),a({},i,{dispatch:s})}}}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t DEPRECATED. This project is not maintained anymore. 2 | 3 | [![Build Status](https://travis-ci.org/DimiMikadze/express-react-redux-starter.svg?branch=master)](https://travis-ci.org/DimiMikadze/express-react-redux-starter) 4 | 5 | # Starter for Express, React, Redux, SCSS applications 6 | 7 | ## Features 8 | 9 | - Webpack development and production environment configuration 10 | - Webpack SCSS configuration 11 | - React Hot loader 12 | - React Router configuration 13 | - React, Redux configuration 14 | - Testing environment configured with Mocha and Chai 15 | - Linting with Airbnb eslint configuration 16 | 17 | ## Getting Started 18 | 19 | Clone Repo 20 | 21 | ```` 22 | git clone https://github.com/DimiMikadze/express-react-redux-starter.git 23 | ```` 24 | 25 | npm install dependencies 26 | 27 | ```` 28 | cd express-react-redux-starter 29 | 30 | npm install 31 | ```` 32 | 33 | ### Start development server with hot reloading 34 | 35 | ```` 36 | npm run dev 37 | ```` 38 | 39 | ### Testing 40 | 41 | Run test once 42 | 43 | ```` 44 | npm run test 45 | ```` 46 | 47 | Test watch 48 | 49 | ```` 50 | npm run test:watch 51 | ```` 52 | 53 | ### Linting 54 | 55 | For linting i'm using Eslint with Airbnb Eslint configuration 56 | 57 | ```` 58 | npm run lint 59 | ```` 60 | 61 | ### Production 62 | 63 | Build for production 64 | 65 | ```` 66 | npm run build 67 | ```` 68 | 69 | Start production server 70 | 71 | ```` 72 | npm run start 73 | ```` 74 | 75 | Note: I'm using pm2 for production server, you should install it on server via 'npm install pm2 -g'. 76 | if you don't want to use pm2, just change pm2 with node in package.json file in scripts section. 77 | 78 | ### Contributing 79 | 80 | contributions are welcome! 81 | 82 | ### License 83 | 84 | MIT 85 | -------------------------------------------------------------------------------- /server.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const app = express(); 3 | 4 | app.use(express.static('./')); 5 | app.use(express.static('dist')); 6 | 7 | app.get('*', (req, res) => { 8 | res.sendFile(`${__dirname}/dist/index.html`); 9 | }); 10 | 11 | const port = process.env.PORT || 3000; 12 | 13 | app.listen(port, () => { 14 | console.log('app listening on', port); 15 | }); -------------------------------------------------------------------------------- /src/app/actions/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DimiMikadze/express-react-redux-starter/c2fda6e786086a34e40fb54a4dcb43afd5c2bc3c/src/app/actions/index.js -------------------------------------------------------------------------------- /src/app/components/App.jsx: -------------------------------------------------------------------------------- 1 | import React, { PropTypes } from 'react'; 2 | import Header from './common/Header'; 3 | 4 | function App({ children }) { 5 | return ( 6 |
7 |
8 | {children} 9 |
10 | ); 11 | } 12 | 13 | App.propTypes = { children: PropTypes.object }; 14 | 15 | export default App; 16 | -------------------------------------------------------------------------------- /src/app/components/about/About.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | function About() { 4 | return ( 5 |
6 |

About

7 |
8 | ) 9 | } 10 | 11 | export default About; 12 | -------------------------------------------------------------------------------- /src/app/components/about/about.scss: -------------------------------------------------------------------------------- 1 | .about { 2 | 3 | h1 { 4 | color: $light-green; 5 | } 6 | } -------------------------------------------------------------------------------- /src/app/components/bundle.scss: -------------------------------------------------------------------------------- 1 | @import './common/base/variables'; 2 | @import './common/base/global'; 3 | @import './common/header'; 4 | @import './home/home'; 5 | @import './about/about'; 6 | -------------------------------------------------------------------------------- /src/app/components/common/Header.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Link } from 'react-router'; 3 | 4 | function Header() { 5 | return ( 6 |
7 | 17 |
18 | ) 19 | } 20 | 21 | export default Header; 22 | -------------------------------------------------------------------------------- /src/app/components/common/base/global.scss: -------------------------------------------------------------------------------- 1 | @import url(https://fonts.googleapis.com/css?family=Nunito:400,300); 2 | 3 | body { 4 | margin: 0; 5 | padding: 0; 6 | font-family: 'Nunito', sans-serif; 7 | font-size: 16px; 8 | } 9 | 10 | .container { 11 | width: 100%; 12 | text-align: center; 13 | } -------------------------------------------------------------------------------- /src/app/components/common/base/variables.scss: -------------------------------------------------------------------------------- 1 | $gray: #5b5b5b; 2 | $light-gray: #e0e2e2; 3 | $light-blue: #288feb; 4 | $light-green: #28cb75; -------------------------------------------------------------------------------- /src/app/components/common/header.scss: -------------------------------------------------------------------------------- 1 | header { 2 | width: 100%; 3 | padding: 0; 4 | border-bottom: 1px solid $light-gray; 5 | margin-bottom: 40px; 6 | 7 | nav { 8 | 9 | ul { 10 | text-align: center; 11 | 12 | li { 13 | display: inline; 14 | margin-right: 60px; 15 | 16 | a { 17 | color: #333; 18 | text-decoration: none; 19 | 20 | &:hover { 21 | color: $light-blue; 22 | text-decoration: underline; 23 | } 24 | } 25 | } 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /src/app/components/home/Home.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | function Home() { 4 | return ( 5 |
6 |

Home

7 |
8 | ) 9 | } 10 | 11 | export default Home; 12 | -------------------------------------------------------------------------------- /src/app/components/home/home.scss: -------------------------------------------------------------------------------- 1 | .home { 2 | 3 | h1 { 4 | color: $light-blue; 5 | } 6 | } -------------------------------------------------------------------------------- /src/app/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import { Provider } from 'react-redux'; 4 | import { createStore, applyMiddleware } from 'redux'; 5 | import { Router, Route, IndexRoute, browserHistory } from 'react-router'; 6 | 7 | import App from './components/App'; 8 | import Home from './components/home/Home'; 9 | import About from './components/about/About'; 10 | 11 | import reducers from './reducers'; 12 | 13 | import './components/bundle.scss'; 14 | 15 | const createStoreWithMiddleware = applyMiddleware()(createStore); 16 | const store = createStoreWithMiddleware(reducers); 17 | 18 | ReactDOM.render( 19 | 20 | window.scrollTo(0, 0)} history={browserHistory}> 21 | 22 | ; 23 | 24 | 25 | 26 | 27 | , document.getElementById('react-root')); 28 | -------------------------------------------------------------------------------- /src/app/reducers/index.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from 'redux'; 2 | 3 | const rootReducer = combineReducers({ 4 | state: (state = {}) => state, 5 | }); 6 | 7 | export default rootReducer; 8 | -------------------------------------------------------------------------------- /src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Express, React, Redux, SCSS 10 | 11 | 12 |
13 | 14 | 15 | -------------------------------------------------------------------------------- /static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DimiMikadze/express-react-redux-starter/c2fda6e786086a34e40fb54a4dcb43afd5c2bc3c/static/.gitkeep -------------------------------------------------------------------------------- /test/components/app_test.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-undef, no-unused-expressions */ 2 | import { renderComponent, expect } from '../test_helper'; 3 | import App from '../../src/app/components/App'; 4 | 5 | describe('App', () => { 6 | let component; 7 | 8 | beforeEach(() => { 9 | component = renderComponent(App); 10 | }); 11 | 12 | it('renders something', () => { 13 | expect(component).to.exist; 14 | }); 15 | }); 16 | -------------------------------------------------------------------------------- /test/test_helper.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable func-names */ 2 | import _$ from 'jquery'; 3 | import React from 'react'; 4 | import ReactDOM from 'react-dom'; 5 | import TestUtils from 'react-addons-test-utils'; 6 | import jsdom from 'jsdom'; 7 | import chai, { expect } from 'chai'; 8 | import chaiJquery from 'chai-jquery'; 9 | import { Provider } from 'react-redux'; 10 | import { createStore } from 'redux'; 11 | import reducers from '../src/app/reducers'; 12 | 13 | global.document = jsdom.jsdom(''); 14 | global.window = global.document.defaultView; 15 | global.navigator = { 16 | userAgent: 'node.js', 17 | }; 18 | 19 | const $ = _$(window); 20 | 21 | chaiJquery(chai, chai.util, $); 22 | 23 | function renderComponent(ComponentClass, props = {}, state = {}) { 24 | const componentInstance = TestUtils.renderIntoDocument( 25 | 26 | 27 | 28 | ); 29 | 30 | return $(ReactDOM.findDOMNode(componentInstance)); 31 | } 32 | 33 | $.fn.simulate = function (eventName, value) { 34 | if (value) { 35 | this.val(value); 36 | } 37 | TestUtils.Simulate[eventName](this[0]); 38 | }; 39 | 40 | export { renderComponent, expect }; 41 | -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | var Path = require('path'); 2 | var HtmlWebpackPlugin = require('html-webpack-plugin'); 3 | var Webpack = require('webpack'); 4 | var ExtractTextPlugin = require('extract-text-webpack-plugin'); 5 | 6 | var isProduction = process.env.NODE_ENV === 'production'; 7 | var cssOutputPath = isProduction ? '/styles/app.[hash].css' : '/styles/app.css'; 8 | var jsOutputPath = isProduction ? '/scripts/app.[hash].js' : '/scripts/app.js'; 9 | var ExtractSASS = new ExtractTextPlugin(cssOutputPath); 10 | var port = isProduction ? process.env.PORT || 8080 : process.env.PORT || 3000; 11 | 12 | // ------------------------------------------ 13 | // Base 14 | // ------------------------------------------ 15 | var webpackConfig = { 16 | resolve: { 17 | extensions: ['', '.js', '.jsx'], 18 | }, 19 | plugins: [ 20 | new Webpack.DefinePlugin({ 21 | 'process.env': { 22 | NODE_ENV: JSON.stringify(isProduction ? 'production' : 'development'), 23 | }, 24 | }), 25 | new HtmlWebpackPlugin({ 26 | template: Path.join(__dirname, './src/index.html'), 27 | }), 28 | ], 29 | module: { 30 | loaders: [{ 31 | test: /.jsx?$/, 32 | include: Path.join(__dirname, './src/app'), 33 | loader: 'babel', 34 | }], 35 | }, 36 | }; 37 | 38 | // ------------------------------------------ 39 | // Entry points 40 | // ------------------------------------------ 41 | webpackConfig.entry = !isProduction 42 | ? ['webpack-dev-server/client?http://localhost:' + port, 43 | 'webpack/hot/dev-server', 44 | Path.join(__dirname, './src/app/index')] 45 | : [Path.join(__dirname, './src/app/index')]; 46 | 47 | // ------------------------------------------ 48 | // Bundle output 49 | // ------------------------------------------ 50 | webpackConfig.output = { 51 | path: Path.join(__dirname, './dist'), 52 | filename: jsOutputPath, 53 | }; 54 | 55 | // ------------------------------------------ 56 | // Devtool 57 | // ------------------------------------------ 58 | webpackConfig.devtool = isProduction ? 'source-map' : 'cheap-eval-source-map'; 59 | 60 | // ------------------------------------------ 61 | // Module 62 | // ------------------------------------------ 63 | isProduction 64 | ? webpackConfig.module.loaders.push({ 65 | test: /\.scss$/, 66 | loader: ExtractSASS.extract(['css', 'sass']), 67 | }) 68 | : webpackConfig.module.loaders.push({ 69 | test: /\.scss$/, 70 | loaders: ['style', 'css', 'sass'], 71 | }); 72 | 73 | // ------------------------------------------ 74 | // Plugins 75 | // ------------------------------------------ 76 | isProduction 77 | ? webpackConfig.plugins.push( 78 | new Webpack.optimize.OccurenceOrderPlugin(), 79 | new Webpack.optimize.UglifyJsPlugin({ 80 | compressor: { 81 | warnings: false, 82 | }, 83 | }), 84 | ExtractSASS 85 | ) 86 | : webpackConfig.plugins.push( 87 | new Webpack.HotModuleReplacementPlugin() 88 | ); 89 | 90 | // ------------------------------------------ 91 | // Development server 92 | // ------------------------------------------ 93 | if (!isProduction) { 94 | webpackConfig.devServer = { 95 | contentBase: Path.join(__dirname, './'), 96 | hot: true, 97 | port: port, 98 | inline: true, 99 | progress: true, 100 | historyApiFallback: true, 101 | }; 102 | } 103 | 104 | module.exports = webpackConfig; --------------------------------------------------------------------------------