├── .babelrc ├── .eslintrc ├── .gitattributes ├── .gitignore ├── LICENSE ├── dist ├── 6a25db45ac1a74f9577454a1092ba905.png ├── bundle.js ├── bundle.js.map └── index.html ├── package-lock.json ├── package.json ├── readme.md ├── src ├── App.jsx ├── actions │ └── index.js ├── components │ ├── Form │ │ ├── Form.css │ │ └── index.jsx │ └── Graph │ │ ├── Graph.css │ │ └── index.jsx ├── graphic │ ├── intelecy_text_logo.png │ ├── spinning_logo_1.gif │ └── spinning_logo_2.gif ├── index.js ├── reducers │ └── form.js └── store.js ├── webpack.common.js ├── webpack.dev.js └── webpack.prod.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | "env", 4 | "react", 5 | "stage-0" 6 | ] 7 | } -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "airbnb", 3 | "rules": { 4 | "func-names": [ 5 | "error", 6 | "never" 7 | ], 8 | "linebreak-style": 0, 9 | "global-require": 0, 10 | "react/prop-types": 0, 11 | "eslint linebreak-style": [ 12 | 0, 13 | "error", 14 | "windows" 15 | ], 16 | "react/jsx-filename-extension": [ 17 | 1, 18 | { 19 | "extensions": [ 20 | ".js", 21 | ".jsx" 22 | ] 23 | } 24 | ] 25 | }, 26 | "env": { 27 | "browser": true, 28 | "node": true 29 | } 30 | } -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Guido Vizoso 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /dist/6a25db45ac1a74f9577454a1092ba905.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perborgen/react-challenge/83bff46880446481b13f4c644a091dead4257714/dist/6a25db45ac1a74f9577454a1092ba905.png -------------------------------------------------------------------------------- /dist/bundle.js: -------------------------------------------------------------------------------- 1 | !function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=40)}([function(e,t,n){e.exports=n(30)()},function(e,t,n){"use strict";e.exports=n(39)},function(e,t,n){"use strict";e.exports=function(e,t,n,r,o,i,a,u){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,u],s=0;(l=new Error(t.replace(/%s/g,function(){return c[s++]}))).name="Invariant Violation"}throw l.framesToPop=1,l}}},function(e,t,n){"use strict";n.r(t);var r=n(1),o=n(0),i=n.n(o),a=i.a.shape({trySubscribe:i.a.func.isRequired,tryUnsubscribe:i.a.func.isRequired,notifyNestedSubs:i.a.func.isRequired,isSubscribed:i.a.func.isRequired}),u=i.a.shape({subscribe:i.a.func.isRequired,dispatch:i.a.func.isRequired,getState:i.a.func.isRequired});function l(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"store",n=arguments[1]||t+"Subscription",o=function(e){function o(n,r){!function(e,t){if(!(e instanceof o))throw new TypeError("Cannot call a class as a function")}(this);var i=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,n,r));return i[t]=n.store,i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(o,e),o.prototype.getChildContext=function(){var e;return(e={})[t]=this[t],e[n]=null,e},o.prototype.render=function(){return r.Children.only(this.props.children)},o}(r.Component);return o.propTypes={store:u.isRequired,children:i.a.element.isRequired},o.childContextTypes=((e={})[t]=u.isRequired,e[n]=a,e),o}var c=l(),s=n(14),f=n.n(s),d=n(2),p=n.n(d),h=null,m={notify:function(){}},v=function(){function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.store=t,this.parentSub=n,this.onStateChange=r,this.unsubscribe=null,this.listeners=m}return e.prototype.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},e.prototype.notifyNestedSubs=function(){this.listeners.notify()},e.prototype.isSubscribed=function(){return Boolean(this.unsubscribe)},e.prototype.trySubscribe=function(){var e,t;this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=(e=[],t=[],{clear:function(){t=h,e=h},notify:function(){for(var n=e=t,r=0;r1&&void 0!==arguments[1]?arguments[1]:{},i=o.getDisplayName,l=void 0===i?function(e){return"ConnectAdvanced("+e+")"}:i,c=o.methodName,s=void 0===c?"connectAdvanced":c,d=o.renderCountProp,h=void 0===d?void 0:d,m=o.shouldHandleStateChanges,x=void 0===m||m,k=o.storeKey,E=void 0===k?"store":k,C=o.withRef,S=void 0!==C&&C,_=function(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}(o,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef"]),T=E+"Subscription",P=g++,O=((t={})[E]=u,t[T]=a,t),N=((n={})[T]=a,n);return function(t){p()("function"==typeof t,"You must pass a component to the function returned by "+s+". Instead received "+JSON.stringify(t));var n=t.displayName||t.name||"Component",o=l(n),i=y({},_,{getDisplayName:l,methodName:s,renderCountProp:h,shouldHandleStateChanges:x,storeKey:E,withRef:S,displayName:o,wrappedComponentName:n,WrappedComponent:t}),a=function(n){function a(e,t){!function(e,t){if(!(e instanceof a))throw new TypeError("Cannot call a class as a function")}(this);var r=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,n.call(this,e,t));return r.version=P,r.state={},r.renderCount=0,r.store=e[E]||t[E],r.propsMode=Boolean(e[E]),r.setWrappedInstance=r.setWrappedInstance.bind(r),p()(r.store,'Could not find "'+E+'" in either the context or props of "'+o+'". Either wrap the root component in a , or explicitly pass "'+E+'" as a prop to "'+o+'".'),r.initSelector(),r.initSubscription(),r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(a,n),a.prototype.getChildContext=function(){var e,t=this.propsMode?null:this.subscription;return(e={})[T]=t||this.context[T],e},a.prototype.componentDidMount=function(){x&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},a.prototype.componentWillReceiveProps=function(e){this.selector.run(e)},a.prototype.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},a.prototype.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=w,this.store=null,this.selector.run=w,this.selector.shouldComponentUpdate=!1},a.prototype.getWrappedInstance=function(){return p()(S,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+s+"() call."),this.wrappedInstance},a.prototype.setWrappedInstance=function(e){this.wrappedInstance=e},a.prototype.initSelector=function(){var t=e(this.store.dispatch,i);this.selector=function(e,t){var n={run:function(r){try{var o=e(t.getState(),r);(o!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=o,n.error=null)}catch(e){n.shouldComponentUpdate=!0,n.error=e}}};return n}(t,this.store),this.selector.run(this.props)},a.prototype.initSubscription=function(){if(x){var e=(this.propsMode?this.props:this.context)[T];this.subscription=new v(this.store,e,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},a.prototype.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(b)):this.notifyNestedSubs()},a.prototype.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},a.prototype.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},a.prototype.addExtraProps=function(e){if(!(S||h||this.propsMode&&this.subscription))return e;var t=y({},e);return S&&(t.ref=this.setWrappedInstance),h&&(t[h]=this.renderCount++),this.propsMode&&this.subscription&&(t[T]=this.subscription),t},a.prototype.render=function(){var e=this.selector;if(e.shouldComponentUpdate=!1,e.error)throw e.error;return Object(r.createElement)(t,this.addExtraProps(e.props))},a}(r.Component);return a.WrappedComponent=t,a.displayName=o,a.childContextTypes=N,a.contextTypes=O,a.propTypes=O,f()(a,t)}}var k=Object.prototype.hasOwnProperty;function E(e,t){return e===t?0!==e||0!==t||1/e==1/t:e!=e&&t!=t}function C(e,t){if(E(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var o=0;o=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(t,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),a=n(e,i),u=r(e,i),l=o(e,i);return(i.pure?function(e,t,n,r,o){var i=o.areStatesEqual,a=o.areOwnPropsEqual,u=o.areStatePropsEqual,l=!1,c=void 0,s=void 0,f=void 0,d=void 0,p=void 0;function h(o,l){var h,m,v=!a(l,s),y=!i(o,c);return c=o,s=l,v&&y?(f=e(c,s),t.dependsOnOwnProps&&(d=t(r,s)),p=n(f,d,s)):v?(e.dependsOnOwnProps&&(f=e(c,s)),t.dependsOnOwnProps&&(d=t(r,s)),p=n(f,d,s)):y?(h=e(c,s),m=!u(h,f),f=h,m&&(p=n(f,d,s)),p):p}return function(o,i){return l?h(o,i):(f=e(c=o,s=i),d=t(r,s),p=n(f,d,s),l=!0,p)}}:function(e,t,n,r){return function(o,i){return n(e(o,i),t(r,i),i)}})(a,u,l,e,i)}var W=Object.assign||function(e){for(var t=1;t=0;r--){var o=t[r](e);if(o)return o}return function(t,r){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function H(e,t){return e===t}var q=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.connectHOC,n=void 0===t?x:t,r=e.mapStateToPropsFactories,o=void 0===r?A:r,i=e.mapDispatchToPropsFactories,a=void 0===i?D:i,u=e.mergePropsFactories,l=void 0===u?z:u,c=e.selectorFactory,s=void 0===c?B:c;return function(e,t,r){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},u=i.pure,c=void 0===u||u,f=i.areStatesEqual,d=void 0===f?H:f,p=i.areOwnPropsEqual,h=void 0===p?C:p,m=i.areStatePropsEqual,v=void 0===m?C:m,y=i.areMergedPropsEqual,g=void 0===y?C:y,b=function(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}(i,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),w=V(e,o,"mapStateToProps"),x=V(t,a,"mapDispatchToProps"),k=V(r,l,"mergeProps");return n(s,W({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:w,initMapDispatchToProps:x,initMergeProps:k,pure:c,areStatesEqual:d,areOwnPropsEqual:h,areStatePropsEqual:v,areMergedPropsEqual:g},b))}}();n.d(t,"Provider",function(){return c}),n.d(t,"createProvider",function(){return l}),n.d(t,"connectAdvanced",function(){return x}),n.d(t,"connect",function(){return q})},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function r(e){return function(){return e}}var o=function(){};o.thatReturns=r,o.thatReturnsFalse=r(!1),o.thatReturnsTrue=r(!0),o.thatReturnsNull=r(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(e){return e},e.exports=o},function(e,t,n){"use strict";e.exports=function(e,t,n,r,o,i,a,u){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,u],s=0;(l=new Error(t.replace(/%s/g,function(){return c[s++]}))).name="Invariant Violation"}throw l.framesToPop=1,l}}},function(e,t,n){"use strict";(function(e,r){var o,i=n(12);o="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:r;var a=Object(i.a)(o);t.a=a}).call(this,n(4),n(28)(e))},function(e,t,n){var r,o,i={},a=(r=function(){return window&&document&&document.all&&!window.atob},function(){return void 0===o&&(o=r.apply(this,arguments)),o}),u=function(e){var t={};return function(e){if("function"==typeof e)return e();if(void 0===t[e]){var n=function(e){return document.querySelector(e)}.call(this,e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}}(),l=null,c=0,s=[],f=n(20);function d(e,t){for(var n=0;n=0&&s.splice(t,1)}function v(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),y(t,e.attrs),h(e,t),t}function y(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function g(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var a=c++;n=l||(l=v(t)),r=x.bind(null,n,a,!1),o=x.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",y(t,e.attrs),h(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=f(r)),o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var a=new Blob([r],{type:"text/css"}),u=e.href;e.href=URL.createObjectURL(a),u&&URL.revokeObjectURL(u)}.bind(null,n,t),o=function(){m(n),n.href&&URL.revokeObjectURL(n.href)}):(n=v(t),r=function(e,t){var n=t.css,r=t.media;if(r&&e.setAttribute("media",r),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){m(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=a()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=p(e,t);return d(n,t),function(e){for(var r=[],o=0;o0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1];if(u)throw u;for(var r=!1,o={},i=0;i=1?(this.setState({showErr:!1}),this.props.displayNameHandler(this.state.name)):this.setState({showErr:!0})}},{key:"render",value:function(){var e=this;return o.default.createElement("div",{className:"presentation"},o.default.createElement("img",{src:a.default,alt:"Pineapple icon",className:"pineapple"}),o.default.createElement("h1",null,"React-Redux Boilerplate"),o.default.createElement("input",{type:"text",placeholder:"Enter your name",value:this.state.name,onChange:this.handleChange}),o.default.createElement("p",{className:"error-msg"},this.state.showErr?"Field cannot be empty":""),o.default.createElement("button",{onClick:function(t){return e.submitName()}},"Trigger action"),o.default.createElement("p",null,"Issues:"," ",o.default.createElement("a",{href:"https://github.com/guidovizoso/react-boilerplate/issues"},"https://github.com/guidovizoso/react-boilerplate/issues")),o.default.createElement("p",null,"Guido Vizoso ","<",o.default.createElement("a",{href:"https://www.linkedin.com/in/guidovizoso/"},"https://www.linkedin.com/in/guidovizoso/"),">"),o.default.createElement("div",{className:"credits"},o.default.createElement("p",null,"Image: Cocktail by ",o.default.createElement("a",{href:"https://thenounproject.com/olgamur_2015/",rel:"noopener noreferrer",target:"_blank"},"Olga")," from the Noun Project")))}}]),t}();t.default=(0,i.connect)(null,function(e){return{displayNameHandler:function(t){e((0,u.displayName)(t))}}})(c)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=a(n(1)),o=a(n(23)),i=a(n(17));function a(e){return e&&e.__esModule?e:{default:e}}t.default=function(){return r.default.createElement("div",null,r.default.createElement(o.default,null),r.default.createElement(i.default,null))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1];switch(t.type){case"INITIAL_STATE":return t.state;case"DISPLAY_NAME":return r({},e,{name:t.name});default:return e}}},function(e,t,n){(function(e){!function(t){"use strict";function n(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function r(e,t){Object.defineProperty(this,"kind",{value:e,enumerable:!0}),t&&t.length&&Object.defineProperty(this,"path",{value:t,enumerable:!0})}function o(e,t,n){o.super_.call(this,"E",e),Object.defineProperty(this,"lhs",{value:t,enumerable:!0}),Object.defineProperty(this,"rhs",{value:n,enumerable:!0})}function i(e,t){i.super_.call(this,"N",e),Object.defineProperty(this,"rhs",{value:t,enumerable:!0})}function a(e,t){a.super_.call(this,"D",e),Object.defineProperty(this,"lhs",{value:t,enumerable:!0})}function u(e,t,n){u.super_.call(this,"A",e),Object.defineProperty(this,"index",{value:t,enumerable:!0}),Object.defineProperty(this,"item",{value:n,enumerable:!0})}function l(e,t,n){var r=e.slice((n||t)+1||e.length);return e.length=t<0?e.length+t:t,e.push.apply(e,r),e}function c(e){var t=void 0===e?"undefined":x(e);return"object"!==t?t:e===Math?"math":null===e?"null":Array.isArray(e)?"array":"[object Date]"===Object.prototype.toString.call(e)?"date":"function"==typeof e.toString&&/^\/.*\//.test(e.toString())?"regexp":"object"}function s(e,t,n,r,f,d,p){f=f||[],p=p||[];var h=f.slice(0);if(void 0!==d){if(r){if("function"==typeof r&&r(h,d))return;if("object"===(void 0===r?"undefined":x(r))){if(r.prefilter&&r.prefilter(h,d))return;if(r.normalize){var m=r.normalize(h,d,e,t);m&&(e=m[0],t=m[1])}}}h.push(d)}"regexp"===c(e)&&"regexp"===c(t)&&(e=e.toString(),t=t.toString());var v=void 0===e?"undefined":x(e),y=void 0===t?"undefined":x(t),g="undefined"!==v||p&&p[p.length-1].lhs&&p[p.length-1].lhs.hasOwnProperty(d),b="undefined"!==y||p&&p[p.length-1].rhs&&p[p.length-1].rhs.hasOwnProperty(d);if(!g&&b)n(new i(h,t));else if(!b&&g)n(new a(h,e));else if(c(e)!==c(t))n(new o(h,e,t));else if("date"===c(e)&&e-t!=0)n(new o(h,e,t));else if("object"===v&&null!==e&&null!==t)if(p.filter(function(t){return t.lhs===e}).length)e!==t&&n(new o(h,e,t));else{if(p.push({lhs:e,rhs:t}),Array.isArray(e)){var w;for(e.length,w=0;w=t.length?n(new u(h,w,new a(void 0,e[w]))):s(e[w],t[w],n,r,h,w,p);for(;w=0?(s(e[o],t[o],n,r,h,o,p),E=l(E,a)):s(e[o],void 0,n,r,h,o,p)}),E.forEach(function(e){s(void 0,t[e],n,r,h,e,p)})}p.length=p.length-1}else e!==t&&("number"===v&&isNaN(e)&&isNaN(t)||n(new o(h,e,t)))}function f(e,t,n,r){return r=r||[],s(e,t,function(e){e&&r.push(e)},n),r.length?r:void 0}function d(e,t,n){if(e&&t&&n&&n.kind){for(var r=e,o=-1,i=n.path?n.path.length-1:0;++o0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign({},S,e),n=t.logger,r=t.stateTransformer,o=t.errorTransformer,i=t.predicate,a=t.logErrors,u=t.diffPredicate;if(void 0===n)return function(){return function(e){return function(t){return e(t)}}};if(e.getState&&e.dispatch)return console.error("[redux-logger] redux-logger not installed. Make sure to pass logger instance as middleware:\n// Logger with default options\nimport { logger } from 'redux-logger'\nconst store = createStore(\n reducer,\n applyMiddleware(logger)\n)\n// Or you can create your own logger with custom options http://bit.ly/redux-logger-options\nimport createLogger from 'redux-logger'\nconst logger = createLogger({\n // ...options\n});\nconst store = createStore(\n reducer,\n applyMiddleware(logger)\n)\n"),function(){return function(e){return function(t){return e(t)}}};var l=[];return function(e){var n=e.getState;return function(e){return function(c){if("function"==typeof i&&!i(n,c))return e(c);var s={};l.push(s),s.started=w.now(),s.startedTime=new Date,s.prevState=r(n()),s.action=c;var f=void 0;if(a)try{f=e(c)}catch(e){s.error=o(e)}else f=e(c);s.took=w.now()-s.started,s.nextState=r(n());var d=t.diff&&"function"==typeof u?u(n,c):t.diff;if(function(e,t){var n=t.logger,r=t.actionTransformer,o=t.titleFormatter,i=void 0===o?function(e){var t=e.timestamp,n=e.duration;return function(e,r,o){var i=["action"];return i.push("%c"+String(e.type)),t&&i.push("%c@ "+r),n&&i.push("%c(in "+o.toFixed(2)+" ms)"),i.join(" ")}}(t):o,a=t.collapsed,u=t.colors,l=t.level,c=t.diff,s=void 0===t.titleFormatter;e.forEach(function(o,f){var d=o.started,m=o.startedTime,v=o.action,y=o.prevState,g=o.error,w=o.took,x=o.nextState,k=e[f+1];k&&(x=k.prevState,w=k.started-d);var E=r(v),C="function"==typeof a?a(function(){return x},v,o):a,S=b(m),_=u.title?"color: "+u.title(E)+";":"",T=["color: gray; font-weight: lighter;"];T.push(_),t.timestamp&&T.push("color: gray; font-weight: lighter;"),t.duration&&T.push("color: gray; font-weight: lighter;");var P=i(E,S,w);try{C?u.title&&s?n.groupCollapsed.apply(n,["%c "+P].concat(T)):n.groupCollapsed(P):u.title&&s?n.group.apply(n,["%c "+P].concat(T)):n.group(P)}catch(e){n.log(P)}var O=h(l,E,[y],"prevState"),N=h(l,E,[E],"action"),j=h(l,E,[g,y],"error"),R=h(l,E,[x],"nextState");if(O)if(u.prevState){var I="color: "+u.prevState(y)+"; font-weight: bold";n[O]("%c prev state",I,y)}else n[O]("prev state",y);if(N)if(u.action){var M="color: "+u.action(E)+"; font-weight: bold";n[N]("%c action ",M,E)}else n[N]("action ",E);if(g&&j)if(u.error){var U="color: "+u.error(g,y)+"; font-weight: bold;";n[j]("%c error ",U,g)}else n[j]("error ",g);if(R)if(u.nextState){var D="color: "+u.nextState(x)+"; font-weight: bold";n[R]("%c next state",D,x)}else n[R]("next state",x);c&&p(y,x,n,C);try{n.groupEnd()}catch(e){n.log("—— log end ——")}})}(l,Object.assign({},t,{diff:d})),l.length=0,s.error)throw s.error;return f}}}}var v,y,g=function(e,t){return function(e,t){return new Array(t+1).join("0")}(0,t-e.toString().length)+e},b=function(e){return g(e.getHours(),2)+":"+g(e.getMinutes(),2)+":"+g(e.getSeconds(),2)+"."+g(e.getMilliseconds(),3)},w="undefined"!=typeof performance&&null!==performance&&"function"==typeof performance.now?performance:Date,x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},k=function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:{},t=e.dispatch,n=e.getState;return"function"==typeof t||"function"==typeof n?m()({dispatch:t,getState:n}):void console.error("\n[redux-logger v3] BREAKING CHANGE\n[redux-logger v3] Since 3.0.0 redux-logger exports by default logger with default settings.\n[redux-logger v3] Change\n[redux-logger v3] import createLogger from 'redux-logger'\n[redux-logger v3] to\n[redux-logger v3] import { createLogger } from 'redux-logger'\n")};t.defaults=S,t.createLogger=m,t.logger=_,t.default=_,Object.defineProperty(t,"__esModule",{value:!0})}(t)}).call(this,n(4))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(13),o=(i(n(26)),i(n(25)));function i(e){return e&&e.__esModule?e:{default:e}}t.default=function(){return(0,r.createStore)((0,r.combineReducers)({presentation:o.default}))}},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";var r=n(5),o=n(6),i=n(29);e.exports=function(){function e(e,t,n,r,a,u){u!==i&&o(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types")}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=r,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports=function(e){var t=(e?e.ownerDocument||e:document).defaultView||window;return!(!e||!("function"==typeof t.Node?e instanceof t.Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}},function(e,t,n){"use strict";var r=n(31);e.exports=function(e){return r(e)&&3==e.nodeType}},function(e,t,n){"use strict";var r=n(32);e.exports=function e(t,n){return!(!t||!n)&&(t===n||!r(t)&&(r(n)?e(t,n.parentNode):"contains"in t?t.contains(n):!!t.compareDocumentPosition&&!!(16&t.compareDocumentPosition(n))))}},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty;function o(e,t){return e===t?0!==e||0!==t||1/e==1/t:e!=e&&t!=t}e.exports=function(e,t){if(o(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(var a=0;athis.eventPool.length&&this.eventPool.push(e)}function Ee(e){e.eventPool=[],e.getPooled=xe,e.release=ke}a(we.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=u.thatReturnsTrue)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=u.thatReturnsTrue)},persist:function(){this.isPersistent=u.thatReturnsTrue},isPersistent:u.thatReturnsFalse,destructor:function(){var e,t=this.constructor.Interface;for(e in t)this[e]=null;for(t=0;t=Pe),je=String.fromCharCode(32),Re={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:["compositionend","keypress","textInput","paste"]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:"blur compositionend keydown keypress keyup mousedown".split(" ")},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:"blur compositionstart keydown keypress keyup mousedown".split(" ")},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:"blur compositionupdate keydown keypress keyup mousedown".split(" ")}},Ie=!1;function Me(e,t){switch(e){case"keyup":return-1!==_e.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"blur":return!0;default:return!1}}function Ue(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var De=!1,Ae={eventTypes:Re,extractEvents:function(e,t,n,r){var o=void 0,i=void 0;if(Te)e:{switch(e){case"compositionstart":o=Re.compositionStart;break e;case"compositionend":o=Re.compositionEnd;break e;case"compositionupdate":o=Re.compositionUpdate;break e}o=void 0}else De?Me(e,n)&&(o=Re.compositionEnd):"keydown"===e&&229===n.keyCode&&(o=Re.compositionStart);return o?(Ne&&(De||o!==Re.compositionStart?o===Re.compositionEnd&&De&&(i=ve()):(me._root=r,me._startText=ye(),De=!0)),o=Ce.getPooled(o,t,n,r),i?o.data=i:null!==(i=Ue(n))&&(o.data=i),ee(o),i=o):i=null,(e=Oe?function(e,t){switch(e){case"compositionend":return Ue(t);case"keypress":return 32!==t.which?null:(Ie=!0,je);case"textInput":return(e=t.data)===je&&Ie?null:e;default:return null}}(e,n):function(e,t){if(De)return"compositionend"===e||!Te&&Me(e,t)?(e=ve(),me._root=null,me._startText=null,me._fallbackText=null,De=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1