diff --git a/calculator-react/build/asset-manifest.json b/calculator-react/build/asset-manifest.json
index f143c66..4226fd8 100644
--- a/calculator-react/build/asset-manifest.json
+++ b/calculator-react/build/asset-manifest.json
@@ -1,14 +1,14 @@
{
"files": {
"main.css": "/fcc-challenges/calculator-react/build/static/css/main.1b8ac635.chunk.css",
- "main.js": "/fcc-challenges/calculator-react/build/static/js/main.bfd616ae.chunk.js",
- "main.js.map": "/fcc-challenges/calculator-react/build/static/js/main.bfd616ae.chunk.js.map",
+ "main.js": "/fcc-challenges/calculator-react/build/static/js/main.78f555dc.chunk.js",
+ "main.js.map": "/fcc-challenges/calculator-react/build/static/js/main.78f555dc.chunk.js.map",
"runtime-main.js": "/fcc-challenges/calculator-react/build/static/js/runtime-main.bf967002.js",
"runtime-main.js.map": "/fcc-challenges/calculator-react/build/static/js/runtime-main.bf967002.js.map",
"static/js/2.07dbc1f4.chunk.js": "/fcc-challenges/calculator-react/build/static/js/2.07dbc1f4.chunk.js",
"static/js/2.07dbc1f4.chunk.js.map": "/fcc-challenges/calculator-react/build/static/js/2.07dbc1f4.chunk.js.map",
"index.html": "/fcc-challenges/calculator-react/build/index.html",
- "precache-manifest.25ea6938318dfa689cefd0b87f019a55.js": "/fcc-challenges/calculator-react/build/precache-manifest.25ea6938318dfa689cefd0b87f019a55.js",
+ "precache-manifest.15081527d8e72b36055d35a84948c07f.js": "/fcc-challenges/calculator-react/build/precache-manifest.15081527d8e72b36055d35a84948c07f.js",
"service-worker.js": "/fcc-challenges/calculator-react/build/service-worker.js",
"static/css/main.1b8ac635.chunk.css.map": "/fcc-challenges/calculator-react/build/static/css/main.1b8ac635.chunk.css.map",
"static/js/2.07dbc1f4.chunk.js.LICENSE.txt": "/fcc-challenges/calculator-react/build/static/js/2.07dbc1f4.chunk.js.LICENSE.txt"
@@ -17,6 +17,6 @@
"static/js/runtime-main.bf967002.js",
"static/js/2.07dbc1f4.chunk.js",
"static/css/main.1b8ac635.chunk.css",
- "static/js/main.bfd616ae.chunk.js"
+ "static/js/main.78f555dc.chunk.js"
]
}
\ No newline at end of file
diff --git a/calculator-react/build/index.html b/calculator-react/build/index.html
index 9313edc..727b08a 100644
--- a/calculator-react/build/index.html
+++ b/calculator-react/build/index.html
@@ -1 +1 @@
-
Calculator React - Build a Calculator - Front End Libraries Projects You need to enable JavaScript to run this app.
\ No newline at end of file
+Calculator React - Build a Calculator - Front End Libraries Projects You need to enable JavaScript to run this app.
\ No newline at end of file
diff --git a/calculator-react/build/precache-manifest.25ea6938318dfa689cefd0b87f019a55.js b/calculator-react/build/precache-manifest.15081527d8e72b36055d35a84948c07f.js
similarity index 82%
rename from calculator-react/build/precache-manifest.25ea6938318dfa689cefd0b87f019a55.js
rename to calculator-react/build/precache-manifest.15081527d8e72b36055d35a84948c07f.js
index 07e47e1..561a50d 100644
--- a/calculator-react/build/precache-manifest.25ea6938318dfa689cefd0b87f019a55.js
+++ b/calculator-react/build/precache-manifest.15081527d8e72b36055d35a84948c07f.js
@@ -1,10 +1,10 @@
self.__precacheManifest = (self.__precacheManifest || []).concat([
{
- "revision": "60a2129b30b27571f044270be4d55f27",
+ "revision": "bf28c05700c228dd6c17f7d3554f32be",
"url": "/fcc-challenges/calculator-react/build/index.html"
},
{
- "revision": "2ad96291c59025fc4b09",
+ "revision": "9081a437021193343ab2",
"url": "/fcc-challenges/calculator-react/build/static/css/main.1b8ac635.chunk.css"
},
{
@@ -16,8 +16,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/fcc-challenges/calculator-react/build/static/js/2.07dbc1f4.chunk.js.LICENSE.txt"
},
{
- "revision": "2ad96291c59025fc4b09",
- "url": "/fcc-challenges/calculator-react/build/static/js/main.bfd616ae.chunk.js"
+ "revision": "9081a437021193343ab2",
+ "url": "/fcc-challenges/calculator-react/build/static/js/main.78f555dc.chunk.js"
},
{
"revision": "11fa019406a5ca9e472e",
diff --git a/calculator-react/build/service-worker.js b/calculator-react/build/service-worker.js
index 99b8eaa..485a8da 100644
--- a/calculator-react/build/service-worker.js
+++ b/calculator-react/build/service-worker.js
@@ -14,7 +14,7 @@
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js");
importScripts(
- "/fcc-challenges/calculator-react/build/precache-manifest.25ea6938318dfa689cefd0b87f019a55.js"
+ "/fcc-challenges/calculator-react/build/precache-manifest.15081527d8e72b36055d35a84948c07f.js"
);
self.addEventListener('message', (event) => {
diff --git a/calculator-react/build/static/js/main.bfd616ae.chunk.js b/calculator-react/build/static/js/main.78f555dc.chunk.js
similarity index 93%
rename from calculator-react/build/static/js/main.bfd616ae.chunk.js
rename to calculator-react/build/static/js/main.78f555dc.chunk.js
index ed250fe..889bc48 100644
--- a/calculator-react/build/static/js/main.bfd616ae.chunk.js
+++ b/calculator-react/build/static/js/main.78f555dc.chunk.js
@@ -1,2 +1,2 @@
-(this["webpackJsonpcalculator-react"]=this["webpackJsonpcalculator-react"]||[]).push([[0],{24:function(t,n,e){t.exports=e(37)},33:function(t,n,e){},37:function(t,n,e){"use strict";e.r(n);var o=e(0),i=e.n(o),r=e(16),a=e.n(r),u=e(2),c=e(13),s=function(t){return{type:"SETINPUTSTRING",inputString:t}},l=function(t){return{type:"SETOPERATIONSTRING",operationString:t}},d=Object(c.b)({innerWindowWidth:function(t,n){switch(t||(t=window.innerWidth),n.type){case"SETWINDOWINNERWIDTH":return n.windowInnerWidth;default:return t}},innerWindowHeight:function(t,n){switch(t||(t=window.innerHeight),n.type){case"SETWINDOWINNERHEIGHT":return n.windowInnerHeight;default:return t}},inputString:function(t,n){switch(t||(t=""),n.type){case"SETINPUTSTRING":return n.inputString;default:return t}},operationString:function(t,n){switch(t||(t=""),n.type){case"SETOPERATIONSTRING":return n.operationString;default:return t}}}),h=Object(c.c)(d),p=(e(33),e(3)),g=e(4),b=e(1),f=e(6),v=e(5),k=e(7),C=e(8),S=e(12),m="#00293C",E="#1e656d",y="#6d261e",j="#656d1e",O="#261e6d",w="#f1f3ce",M="#f62a00",R=["*","/","-","+"],W=function(t,n,e){var o=t,i=n.includes("=")?n.split("=")[1]:n,r=i;i.length>0&&["*","/","+","-","="].includes(e)&&"."===i.slice(-1)&&(i=i.slice(0,-1));if(["1","2","3","4","5","6","7","8","9"].includes(e))0===t.length?(o=e,r=i+e):1===t.length?"0"===t[0]?(o=e,r=i.slice(0,-1)+e):"-"===t[0]?1===i.length?(o=t+e,r=t+e):(o=t+e,r=i+e):["*","/","+"].includes(t[0])?(o=e,r=i+e):(o=t+e,r=i+e):2===t.length?"-"===t[0]&&"0"===t[1]?(o="-"+e,r=i.slice(0,-1)+e):(o=t+e,r=i+e):t.length>2&&(o=t+e,r=i+e);else if("0"===e)0===t.length?(o=e,r=i+e):1===t.length?"0"!==t[0]&&(["*","/","+"].includes(t[0])?(o=e,r=i+e):(o=t+e,r=i+e)):2===t.length?("-"!==t[0]||"0"!==t[1])&&(o=t+e,r=i+e):t.length>2&&(o=t+e,r=i+e);else if("-"===e)0===i.length?(o=e,r=e):1===i.length&&R.includes(i[0])||(o=e,r=i+e);else if(["*","/","+"].includes(e))1===i.length?R.includes(i.slice(-1))||(r=i+e,o=e):i.length>1&&(o=e,r=i+e);else if("."!==e||t.includes("."))if("="===e&&i.length>0){var a=i.slice(-1);R.includes(a)||"."===a?(o=x(i.slice(0,-1)),r=i.slice(0,-1)+"="+o):r=i+"="+(o=x(i))}else"b"===e&&(1===i.length?(o=t.slice(0,-1),r=i.slice(0,-1)):i.length>1&&(R.includes(i.slice(-1))?R.includes(i.slice(-2,-1))?(o=i.slice(-2,-1),r=i.slice(0,-1)):o=(r=i.slice(0,-1)).split(/[-*/+]/).slice(-1)[0]:R.includes(i.slice(-2,-1))?(o=i.slice(-2,-1),r=i.slice(0,-1)):(o=t.slice(0,-1),r=i.slice(0,-1))));else 0===t.length?(o="0.",r=i+"0."):1===t.length?0===i.length?"-"===t[0]?(o="-0.",r=i+"-0."):(o=t+e,r=i+e):R.includes(t[0])?(o="0.",r=i+"0."):(o=t+e,r=i+e):(o=t+e,r=i+e);return[o,r]},x=function(t){var n=[];for(t.split("").forEach((function(t,e){if(0===e)n.push(t);else if(R.includes(t))n.push(t);else if("-"===n[n.length-1])if(1===e||R.includes(n[n.length-2])){var o=n[n.length-1];n[n.length-1]=o+t}else n.push(t);else if(["*","/","+"].includes(n[n.length-1]))n.push(t);else{var i=n[n.length-1];n[n.length-1]=i+t}}));R.includes(n[n.length-1]);)n.pop();var e=n.filter((function(t,e){return!R.includes(n[e+1])||!R.includes(t)}));return 1===e.length?e[0]:A(e.map((function(t){return R.includes(t)?t:t.includes(".")?parseFloat(t):parseInt(t)})))[0].toString()},A=function t(n){if(1===n.length)return n;if(n.includes("*")){var e=n.indexOf("*");return t([].concat(Object(S.a)(n.slice(0,e-1)),[n[e-1]*n[e+1]],Object(S.a)(n.slice(e+2))))}if(n.includes("/")){var o=n.indexOf("/");return t([].concat(Object(S.a)(n.slice(0,o-1)),[n[o-1]/n[o+1]],Object(S.a)(n.slice(o+2))))}if(n.includes("-")){var i=n.indexOf("-");return t([].concat(Object(S.a)(n.slice(0,i-1)),[n[i-1]-n[i+1]],Object(S.a)(n.slice(i+2))))}if(n.includes("+")){var r=n.indexOf("+");return t([].concat(Object(S.a)(n.slice(0,r-1)),[n[r-1]+n[r+1]],Object(S.a)(n.slice(r+2))))}},T=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"7"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"seven",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"7")}}]),e}(i.a.Component),D=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(T),H=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"8"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"eight",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"8")}}]),e}(i.a.Component),N=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(H),I=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"9"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"nine",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"9")}}]),e}(i.a.Component),B=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(I),U=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"4"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"four",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"4")}}]),e}(i.a.Component),z=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(U),K=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"5"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"five",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"5")}}]),e}(i.a.Component),P=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(K),G=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"6"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"six",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"6")}}]),e}(i.a.Component),L=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(G),F=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"1"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"one",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"1")}}]),e}(i.a.Component),_=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(F),J=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"2"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"two",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"2")}}]),e}(i.a.Component),q=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(J),$=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"3"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"three",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"3")}}]),e}(i.a.Component),Q=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))($),V=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"0"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:2,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",borderRadius:"0 0 0 7px",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=6,e.gridRowEnd=7,e.gridColumnStart=1,e.gridColumnEnd=3),i.a.createElement("div",{id:"zero",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"0")}}]),e}(i.a.Component),X=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(V),Y=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"."),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:2,gridRowStart:3,gridRowEnd:4,borderRight:"3px solid black",borderBottom:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=6,e.gridRowEnd=7,e.gridColumnStart=3,e.gridColumnEnd=4,e.borderBottom="unset"),i.a.createElement("div",{id:"decimal",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},".")}}]),e}(i.a.Component),Z=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(Y),tt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:O},o}return Object(g.a)(e,[{key:"handleClick",value:function(){this.props.inputStringAction(""),this.props.operationStringAction("")}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:E}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:O})}},{key:"render",value:function(){var t={gridColumnStart:1,gridColumnEnd:2,gridRowStart:2,gridRowEnd:3,borderRight:"3px solid black",borderBottom:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return i.a.createElement("div",{id:"clear",style:t,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"AC")}}]),e}(i.a.Component),nt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(tt),et=e(10),ot=e(11),it=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"/"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"divide",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.b}))}}]),e}(i.a.Component),rt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(it),at=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"*"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5),i.a.createElement("div",{id:"multiply",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.e}))}}]),e}(i.a.Component),ut=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(at),ct=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"-"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.borderRight="unset"),i.a.createElement("div",{id:"subtract",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.c}))}}]),e}(i.a.Component),st=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(ct),lt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"+"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.borderRight="unset",e.borderBottom="3px solid black"),i.a.createElement("div",{id:"add",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.d}))}}]),e}(i.a.Component),dt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(lt),ht=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:y},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"="),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:y})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:4,gridRowEnd:5,display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor,borderRadius:"0 0 7px 0",fontSize:88};return t>n&&n<400?e.fontSize=56:n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.gridRowStart=5,e.gridRowEnd=7),i.a.createElement("div",{id:"equals",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"=")}}]),e}(i.a.Component),pt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(ht),gt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"flex",flexDirection:"column",justifyContent:"center",textAlign:"right",height:"60%",fontSize:64,lineHeight:"100%"};return(t>n&&n<400||n>t&&n<850)&&(e.fontSize=36),i.a.createElement("div",{id:"display",style:e},0===this.props.inputString.length?0:this.props.inputString)}}]),e}(i.a.Component),bt=Object(u.b)((function(t){return Object(k.a)({},t)}))(gt),ft=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"flex",flexDirection:"column",justifyContent:"center",textAlign:"right",height:"40%",fontSize:48,lineHeight:"100%",color:M};return(t>n&&n<400||n>t&&n<850)&&(e.fontSize=27),i.a.createElement("div",{id:"displayOperations",style:e},0===this.props.operationString.length?0:this.props.operationString)}}]),e}(i.a.Component),vt=Object(u.b)((function(t){return Object(k.a)({},t)}))(ft),kt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:7,gridRowStart:1,gridRowEnd:2,borderBottom:"3px solid black",backgroundColor:w,borderRadius:"7px 7px 0 0",color:m,textOverflow:"clip",whiteSpace:"nowrap",overflow:"hidden"};return n>t&&(e.gridColumnEnd=5),i.a.createElement("div",{style:e},i.a.createElement(vt,null),i.a.createElement(bt,null))}}]),e}(i.a.Component),Ct=Object(u.b)((function(t){return Object(k.a)({},t)}))(kt),St=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"b"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=2,e.gridRowEnd=3,e.gridColumnStart=2,e.gridColumnEnd=3,e.borderRight="3px solid black"),i.a.createElement("div",{id:"subtract",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.a}))}}]),e}(i.a.Component),mt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(St),Et=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"grid",width:"100%",height:"100%",gridTemplateRows:"repeat(4, 1fr)",gridTemplateColumns:"repeat(6, 1fr)",fontSize:64};return t>n&&n<400?e.fontSize=48:n>t&&(e.gridTemplateRows="repeat(6, 1fr)",e.gridTemplateColumns="repeat(4, 1fr)",e.fontSize=48),i.a.createElement("div",{id:"CalculatorGrid",style:e},i.a.createElement(D,null),i.a.createElement(N,null),i.a.createElement(B,null),i.a.createElement(z,null),i.a.createElement(P,null),i.a.createElement(L,null),i.a.createElement(_,null),i.a.createElement(q,null),i.a.createElement(Q,null),i.a.createElement(X,null),i.a.createElement(Z,null),i.a.createElement(nt,null),i.a.createElement(rt,null),i.a.createElement(ut,null),i.a.createElement(st,null),i.a.createElement(dt,null),i.a.createElement(pt,null),i.a.createElement(Ct,null),i.a.createElement(mt,null))}}]),e}(i.a.Component),yt=Object(u.b)((function(t){return Object(k.a)({},t)}))(Et),jt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleKeyPress=o.handleKeyPress.bind(Object(b.a)(o)),o.handleKey=o.handleKey.bind(Object(b.a)(o)),o}return Object(g.a)(e,[{key:"handleKey",value:function(t){var n=W(this.props.inputString,this.props.operationString,t),e=Object(C.a)(n,2),o=e[0],i=e[1];o!==this.props.inputString&&this.props.inputStringAction(o),i!==this.props.operationString&&this.props.operationStringAction(i)}},{key:"handleKeyPress",value:function(t){8===t.keyCode||46===t.keyCode?this.handleKey("b"):["0","1","2","3","4","5","6","7","8","9",".","*","+","-","="].includes(t.key)?this.handleKey(t.key):"/"===t.key?(t.preventDefault(),this.handleKey(t.key)):13===t.keyCode?this.handleKey("="):27===t.keyCode&&(this.props.inputStringAction(""),this.props.operationStringAction(""))}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyPress,!1)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyPress,!1)}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e=Math.round(.1*n),o=Math.round(.1*t),r={height:"80%",width:"80%",backgroundColor:E,borderRadius:10,marginTop:e,marginBottom:e,marginLeft:o,marginRight:o,overFlow:"hidden",border:"3px solid black",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",zIndex:"1",fontFamily:"Baloo Bhai"};return t>n&&n<400?(r.height="96vh",r.width="80vw",r.marginTop="1vh",r.marginBottom="3vh",r.marginLeft="89px",r.marginRight="89px"):n>t&&(r.height="75vh",r.width="100vw",r.marginTop="12vh",r.marginBottom="unset",r.marginLeft="0px",r.marginRight="0px"),i.a.createElement("div",{id:"Calculator",style:r},i.a.createElement(yt,null))}}]),e}(i.a.Component),Ot=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(jt),wt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleResize=o.handleResize.bind(Object(b.a)(o)),o}return Object(g.a)(e,[{key:"handleResize",value:function(){this.props.innerWindowWidthAction(window.innerWidth),this.props.innerWindowHeightAction(window.innerHeight)}},{key:"componentDidMount",value:function(){window.addEventListener("resize",this.handleResize)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this.handleResize)}},{key:"render",value:function(){var t=this.props.innerWindowHeight,n=this.props.innerWindowWidth,e={backgroundColor:m,border:"none",width:149,height:0,position:"absolute",right:0},o={position:"absolute",right:0,height:149,width:149},r={textAlign:"center",backgroundColor:m,height:"100vh",width:"100vw",display:"flex",color:w,overFlow:"hidden"};return(n>t&&t<400||t>n)&&(e.width=99,o.width=99,o.height=99),i.a.createElement("div",{style:r},i.a.createElement("a",{href:"https://github.com/TrentSPalmer/fcc-challenges/tree/gh-pages/calculator-react",style:e,target:"_blank",rel:"noopener noreferrer"},i.a.createElement("img",{src:"https://github.blog/wp-content/uploads/2008/12/forkme_right_white_ffffff.png?resize=149%2C149",className:"size-full",style:o,alt:"Fork me on GitHub","data-recalc-dims":"1"})),i.a.createElement(Ot,null))}}]),e}(i.a.Component),Mt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{innerWindowWidthAction:function(n){return t(function(t){return{type:"SETWINDOWINNERWIDTH",windowInnerWidth:t}}(n))},innerWindowHeightAction:function(n){return t(function(t){return{type:"SETWINDOWINNERHEIGHT",windowInnerHeight:t}}(n))}}}))(wt);Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));a.a.render(i.a.createElement(u.a,{store:h},i.a.createElement(Mt,null)),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(t){t.unregister()})).catch((function(t){console.error(t.message)}))}},[[24,1,2]]]);
-//# sourceMappingURL=main.bfd616ae.chunk.js.map
\ No newline at end of file
+(this["webpackJsonpcalculator-react"]=this["webpackJsonpcalculator-react"]||[]).push([[0],{24:function(t,n,e){t.exports=e(37)},33:function(t,n,e){},37:function(t,n,e){"use strict";e.r(n);var o=e(0),i=e.n(o),r=e(16),a=e.n(r),u=e(2),c=e(13),s=function(t){return{type:"SETINPUTSTRING",inputString:t}},l=function(t){return{type:"SETOPERATIONSTRING",operationString:t}},d=Object(c.b)({innerWindowWidth:function(t,n){switch(t||(t=window.innerWidth),n.type){case"SETWINDOWINNERWIDTH":return n.windowInnerWidth;default:return t}},innerWindowHeight:function(t,n){switch(t||(t=window.innerHeight),n.type){case"SETWINDOWINNERHEIGHT":return n.windowInnerHeight;default:return t}},inputString:function(t,n){switch(t||(t=""),n.type){case"SETINPUTSTRING":return n.inputString;default:return t}},operationString:function(t,n){switch(t||(t=""),n.type){case"SETOPERATIONSTRING":return n.operationString;default:return t}}}),h=Object(c.c)(d),p=(e(33),e(3)),g=e(4),b=e(1),f=e(6),v=e(5),k=e(7),C=e(8),S=e(12),m="#00293C",E="#1e656d",y="#6d261e",j="#656d1e",O="#261e6d",w="#f1f3ce",M="#f62a00",R=["*","/","-","+"],W=function(t,n,e){var o=t,i=n.includes("=")?n.split("=")[1]:n,r=i;i.length>0&&["*","/","+","-","="].includes(e)&&"."===i.slice(-1)&&(i=i.slice(0,-1));if(["1","2","3","4","5","6","7","8","9"].includes(e))0===t.length?(o=e,r=i+e):1===t.length?"0"===t[0]?(o=e,r=i.slice(0,-1)+e):"-"===t[0]?1===i.length?(o=t+e,r=t+e):(o=t+e,r=i+e):["*","/","+"].includes(t[0])?(o=e,r=i+e):(o=t+e,r=i+e):2===t.length?"-"===t[0]&&"0"===t[1]?(o="-"+e,r=i.slice(0,-1)+e):(o=t+e,r=i+e):t.length>2&&(o=t+e,r=i+e);else if("0"===e)0===t.length?(o=e,r=i+e):1===t.length?"0"!==t[0]&&(["*","/","+"].includes(t[0])?(o=e,r=i+e):(o=t+e,r=i+e)):2===t.length?("-"!==t[0]||"0"!==t[1])&&(o=t+e,r=i+e):t.length>2&&(o=t+e,r=i+e);else if("-"===e)0===i.length?(o=e,r=e):1===i.length&&R.includes(i[0])||(o=e,r=i+e);else if(["*","/","+"].includes(e))1===i.length?R.includes(i.slice(-1))||(r=i+e,o=e):i.length>1&&(o=e,r=i+e);else if("."!==e||t.includes("."))if("="===e&&i.length>0){var a=i.slice(-1);R.includes(a)||"."===a?(o=x(i.slice(0,-1)),r=i.slice(0,-1)+"="+o):r=i+"="+(o=x(i))}else"b"===e&&(1===i.length?(o=t.slice(0,-1),r=i.slice(0,-1)):i.length>1&&(R.includes(i.slice(-1))?R.includes(i.slice(-2,-1))?(o=i.slice(-2,-1),r=i.slice(0,-1)):o=(r=i.slice(0,-1)).split(/[-*/+]/).slice(-1)[0]:R.includes(i.slice(-2,-1))?(o=i.slice(-2,-1),r=i.slice(0,-1)):(o=t.slice(0,-1),r=i.slice(0,-1))));else 0===t.length?(o="0.",r=i+"0."):1===t.length?0===i.length?"-"===t[0]?(o="-0.",r=i+"-0."):(o=t+e,r=i+e):R.includes(t[0])?(o="0.",r=i+"0."):(o=t+e,r=i+e):(o=t+e,r=i+e);return[o,r]},x=function(t){var n=[];for(t.split("").forEach((function(t,e){if(0===e)n.push(t);else if(R.includes(t))n.push(t);else if("-"===n[n.length-1])if(1===e||R.includes(n[n.length-2])){var o=n[n.length-1];n[n.length-1]=o+t}else n.push(t);else if(["*","/","+"].includes(n[n.length-1]))n.push(t);else{var i=n[n.length-1];n[n.length-1]=i+t}}));R.includes(n[n.length-1]);)n.pop();var e=n.filter((function(t,e){return!R.includes(n[e+1])||!R.includes(t)}));return 1===e.length?e[0]:A(e.map((function(t){return R.includes(t)?t:t.includes(".")?parseFloat(t):parseInt(t)})))[0].toString()},A=function t(n){if(1===n.length)return n;if(n.includes("*")){var e=n.indexOf("*");return t([].concat(Object(S.a)(n.slice(0,e-1)),[n[e-1]*n[e+1]],Object(S.a)(n.slice(e+2))))}if(n.includes("/")){var o=n.indexOf("/");return t([].concat(Object(S.a)(n.slice(0,o-1)),[n[o-1]/n[o+1]],Object(S.a)(n.slice(o+2))))}if(n.includes("-")){var i=n.indexOf("-");return t([].concat(Object(S.a)(n.slice(0,i-1)),[n[i-1]-n[i+1]],Object(S.a)(n.slice(i+2))))}if(n.includes("+")){var r=n.indexOf("+");return t([].concat(Object(S.a)(n.slice(0,r-1)),[n[r-1]+n[r+1]],Object(S.a)(n.slice(r+2))))}},T=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"7"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"seven",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"7")}}]),e}(i.a.Component),D=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(T),H=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"8"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"eight",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"8")}}]),e}(i.a.Component),N=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(H),I=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"9"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=3,e.gridRowEnd=4,e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"nine",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"9")}}]),e}(i.a.Component),B=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(I),U=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"4"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"four",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"4")}}]),e}(i.a.Component),z=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(U),K=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"5"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"five",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"5")}}]),e}(i.a.Component),P=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(K),G=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"6"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=4,e.gridRowEnd=5,e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"six",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"6")}}]),e}(i.a.Component),L=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(G),F=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"1"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:2,gridColumnEnd:3,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=1,e.gridColumnEnd=2),i.a.createElement("div",{id:"one",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"1")}}]),e}(i.a.Component),_=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(F),J=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"2"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:3,gridColumnEnd:4,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=2,e.gridColumnEnd=3),i.a.createElement("div",{id:"two",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"2")}}]),e}(i.a.Component),q=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(J),$=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"3"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:4,gridColumnEnd:5,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=5,e.gridRowEnd=6,e.borderBottom="3px solid black",e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"three",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"3")}}]),e}(i.a.Component),Q=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))($),V=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"0"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:2,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",borderRadius:"0 0 0 7px",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=6,e.gridRowEnd=7,e.gridColumnStart=1,e.gridColumnEnd=3),i.a.createElement("div",{id:"zero",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"0")}}]),e}(i.a.Component),X=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(V),Y=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:E},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"."),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:E})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:2,gridRowStart:3,gridRowEnd:4,borderRight:"3px solid black",borderBottom:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=6,e.gridRowEnd=7,e.gridColumnStart=3,e.gridColumnEnd=4,e.borderBottom="unset"),i.a.createElement("div",{id:"decimal",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},".")}}]),e}(i.a.Component),Z=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(Y),tt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:O},o}return Object(g.a)(e,[{key:"handleClick",value:function(){this.props.inputStringAction(""),this.props.operationStringAction("")}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:E}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:O})}},{key:"render",value:function(){var t={gridColumnStart:1,gridColumnEnd:2,gridRowStart:2,gridRowEnd:3,borderRight:"3px solid black",borderBottom:"3px solid black",display:"flex",flexDirection:"column",justifyContent:"center",backgroundColor:this.state.backgroundColor};return i.a.createElement("div",{id:"clear",style:t,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"AC")}}]),e}(i.a.Component),nt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(tt),et=e(10),ot=e(11),it=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"/"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=3,e.gridColumnEnd=4),i.a.createElement("div",{id:"divide",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.b}))}}]),e}(i.a.Component),rt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(it),at=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"*"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:2,gridRowEnd:3,borderBottom:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5),i.a.createElement("div",{id:"multiply",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.e}))}}]),e}(i.a.Component),ut=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(at),ct=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"-"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.borderRight="unset"),i.a.createElement("div",{id:"subtract",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.c}))}}]),e}(i.a.Component),st=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(ct),lt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"+"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:5,gridColumnEnd:6,gridRowStart:4,gridRowEnd:5,borderRight:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.borderRight="unset",e.borderBottom="3px solid black"),i.a.createElement("div",{id:"add",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.d}))}}]),e}(i.a.Component),dt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(lt),ht=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:y},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"="),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:y})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:4,gridRowEnd:5,display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor,borderRadius:"0 0 7px 0",fontSize:88};return t>n&&n<400?e.fontSize=56:n>t&&(e.gridColumnStart=4,e.gridColumnEnd=5,e.gridRowStart=5,e.gridRowEnd=7),i.a.createElement("div",{id:"equals",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},"=")}}]),e}(i.a.Component),pt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(ht),gt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"flex",flexDirection:"column",justifyContent:"center",textAlign:"right",height:"60%",fontSize:64,lineHeight:"100%"};return(t>n&&n<400||n>t&&n<850)&&(e.fontSize=36),i.a.createElement("div",{id:"display",style:e},0===this.props.inputString.length?0:this.props.inputString)}}]),e}(i.a.Component),bt=Object(u.b)((function(t){return Object(k.a)({},t)}))(gt),ft=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"flex",flexDirection:"column",justifyContent:"center",textAlign:"right",height:"40%",fontSize:48,lineHeight:"100%",color:M};return(t>n&&n<400||n>t&&n<850)&&(e.fontSize=27),i.a.createElement("div",{id:"displayOperations",style:e},0===this.props.operationString.length?0:this.props.operationString)}}]),e}(i.a.Component),vt=Object(u.b)((function(t){return Object(k.a)({},t)}))(ft),kt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:1,gridColumnEnd:7,gridRowStart:1,gridRowEnd:2,borderBottom:"3px solid black",backgroundColor:w,borderRadius:"7px 7px 0 0",color:m,textOverflow:"clip",whiteSpace:"nowrap",overflow:"hidden"};return n>t&&(e.gridColumnEnd=5),i.a.createElement("div",{style:e},i.a.createElement(vt,null),i.a.createElement(bt,null))}}]),e}(i.a.Component),Ct=Object(u.b)((function(t){return Object(k.a)({},t)}))(kt),St=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleClick=o.handleClick.bind(Object(b.a)(o)),o.handleMouseEvent=o.handleMouseEvent.bind(Object(b.a)(o)),o.state={backgroundColor:j},o}return Object(g.a)(e,[{key:"handleClick",value:function(){var t=W(this.props.inputString,this.props.operationString,"b"),n=Object(C.a)(t,2),e=n[0],o=n[1];e!==this.props.inputString&&this.props.inputStringAction(e),o!==this.props.operationString&&this.props.operationStringAction(o)}},{key:"handleMouseEvent",value:function(t){"mousedown"===t.type||"touchstart"===t.type?this.setState({backgroundColor:m}):"mouseup"!==t.type&&"touchend"!==t.type||this.setState({backgroundColor:j})}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={gridColumnStart:6,gridColumnEnd:7,gridRowStart:3,gridRowEnd:4,borderBottom:"3px solid black",display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",backgroundColor:this.state.backgroundColor};return n>t&&(e.gridRowStart=2,e.gridRowEnd=3,e.gridColumnStart=2,e.gridColumnEnd=3,e.borderRight="3px solid black"),i.a.createElement("div",{id:"subtract",style:e,className:"clickable",onClick:this.handleClick,onTouchStart:this.handleMouseEvent,onTouchEnd:this.handleMouseEvent,onMouseDown:this.handleMouseEvent,onMouseUp:this.handleMouseEvent},i.a.createElement(et.a,{icon:ot.a}))}}]),e}(i.a.Component),mt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(St),Et=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(){return Object(p.a)(this,e),n.apply(this,arguments)}return Object(g.a)(e,[{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e={display:"grid",width:"100%",height:"100%",gridTemplateRows:"repeat(4, 1fr)",gridTemplateColumns:"repeat(6, 1fr)",fontSize:64};return t>n&&n<400?e.fontSize=48:n>t&&(e.gridTemplateRows="repeat(6, 1fr)",e.gridTemplateColumns="repeat(4, 1fr)",e.fontSize=48),i.a.createElement("div",{id:"CalculatorGrid",style:e},i.a.createElement(D,null),i.a.createElement(N,null),i.a.createElement(B,null),i.a.createElement(z,null),i.a.createElement(P,null),i.a.createElement(L,null),i.a.createElement(_,null),i.a.createElement(q,null),i.a.createElement(Q,null),i.a.createElement(X,null),i.a.createElement(Z,null),i.a.createElement(nt,null),i.a.createElement(rt,null),i.a.createElement(ut,null),i.a.createElement(st,null),i.a.createElement(dt,null),i.a.createElement(pt,null),i.a.createElement(Ct,null),i.a.createElement(mt,null))}}]),e}(i.a.Component),yt=Object(u.b)((function(t){return Object(k.a)({},t)}))(Et),jt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleKeyPress=o.handleKeyPress.bind(Object(b.a)(o)),o.handleKey=o.handleKey.bind(Object(b.a)(o)),o}return Object(g.a)(e,[{key:"handleKey",value:function(t){var n=W(this.props.inputString,this.props.operationString,t),e=Object(C.a)(n,2),o=e[0],i=e[1];o!==this.props.inputString&&this.props.inputStringAction(o),i!==this.props.operationString&&this.props.operationStringAction(i)}},{key:"handleKeyPress",value:function(t){8===t.keyCode||46===t.keyCode?this.handleKey("b"):["0","1","2","3","4","5","6","7","8","9",".","*","+","-","="].includes(t.key)?this.handleKey(t.key):"/"===t.key?(t.preventDefault(),this.handleKey(t.key)):13===t.keyCode?this.handleKey("="):27===t.keyCode&&(this.props.inputStringAction(""),this.props.operationStringAction(""))}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyPress,!1)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyPress,!1)}},{key:"render",value:function(){var t=this.props.innerWindowWidth,n=this.props.innerWindowHeight,e=Math.round(.1*n),o=Math.round(.1*t),r={height:"80%",width:"80%",backgroundColor:E,borderRadius:10,marginTop:e,marginBottom:e,marginLeft:o,marginRight:o,overFlow:"hidden",border:"3px solid black",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",zIndex:"1",fontFamily:"Baloo Bhai"};return t>n&&n<400?(r.height="96vh",r.width="80vw",r.marginTop="1vh",r.marginBottom="3vh",r.marginLeft="89px",r.marginRight="89px"):n>t&&(r.height="75vh",r.minHeight=481,r.width="100vw",r.marginTop="12vh",r.marginBottom="unset",r.marginLeft="0px",r.marginRight="0px"),i.a.createElement("div",{id:"Calculator",style:r},i.a.createElement(yt,null))}}]),e}(i.a.Component),Ot=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{inputStringAction:function(n){return t(s(n))},operationStringAction:function(n){return t(l(n))}}}))(jt),wt=function(t){Object(f.a)(e,t);var n=Object(v.a)(e);function e(t){var o;return Object(p.a)(this,e),(o=n.call(this,t)).handleResize=o.handleResize.bind(Object(b.a)(o)),o}return Object(g.a)(e,[{key:"handleResize",value:function(){this.props.innerWindowWidthAction(window.innerWidth),this.props.innerWindowHeightAction(window.innerHeight)}},{key:"componentDidMount",value:function(){window.addEventListener("resize",this.handleResize)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this.handleResize)}},{key:"render",value:function(){var t=this.props.innerWindowHeight,n=this.props.innerWindowWidth,e={backgroundColor:m,border:"none",width:149,height:0,position:"absolute",right:0},o={position:"absolute",right:0,height:149,width:149},r={textAlign:"center",backgroundColor:m,height:"100vh",width:"100vw",display:"flex",color:w,overFlow:"hidden"};return(n>t&&t<400||t>n)&&(e.width=99,o.width=99,o.height=99),i.a.createElement("div",{style:r},i.a.createElement("a",{href:"https://github.com/TrentSPalmer/fcc-challenges/tree/gh-pages/calculator-react",style:e,target:"_blank",rel:"noopener noreferrer"},i.a.createElement("img",{src:"https://github.blog/wp-content/uploads/2008/12/forkme_right_white_ffffff.png?resize=149%2C149",className:"size-full",style:o,alt:"Fork me on GitHub","data-recalc-dims":"1"})),i.a.createElement(Ot,null))}}]),e}(i.a.Component),Mt=Object(u.b)((function(t){return Object(k.a)({},t)}),(function(t){return{innerWindowWidthAction:function(n){return t(function(t){return{type:"SETWINDOWINNERWIDTH",windowInnerWidth:t}}(n))},innerWindowHeightAction:function(n){return t(function(t){return{type:"SETWINDOWINNERHEIGHT",windowInnerHeight:t}}(n))}}}))(wt);Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));a.a.render(i.a.createElement(u.a,{store:h},i.a.createElement(Mt,null)),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(t){t.unregister()})).catch((function(t){console.error(t.message)}))}},[[24,1,2]]]);
+//# sourceMappingURL=main.78f555dc.chunk.js.map
\ No newline at end of file
diff --git a/calculator-react/build/static/js/main.78f555dc.chunk.js.map b/calculator-react/build/static/js/main.78f555dc.chunk.js.map
new file mode 100644
index 0000000..9fbea6f
--- /dev/null
+++ b/calculator-react/build/static/js/main.78f555dc.chunk.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["actions/inputStringAction.js","actions/operationStringAction.js","reducers/rootReducer.js","reducers/innerWindowWidthReducer.js","actions/innerWindowWidthAction.js","reducers/innerWindowHeightReducer.js","actions/innerWindowHeightAction.js","reducers/inputStringReducer.js","reducers/operationStringReducer.js","store.js","globals.js","Seven.js","Eight.js","Nine.js","Four.js","Five.js","Six.js","One.js","Two.js","Three.js","Zero.js","Decimal.js","Clear.js","Divide.js","Multiply.js","Subtract.js","Add.js","Equals.js","DisplayInput.js","DisplayOperations.js","Display.js","Back.js","CalculatorGrid.js","Calculator.js","App.js","serviceWorker.js","index.js"],"names":["inputStringAction","inputString","type","operationStringAction","operationString","combineReducers","innerWindowWidth","state","action","window","innerWidth","windowInnerWidth","innerWindowHeight","innerHeight","windowInnerHeight","store","createStore","rootReducer","colors","operators","makeInputAndOperationsStrings","nextChar","inputStringResult","tempOperationString","includes","split","operationStringResult","length","slice","lastOperationChar","parseAndCalculate","statementArray","forEach","item","index","push","previous","pop","duplicateOperatorsFilteredArray","filter","calculate","map","parseFloat","parseInt","toString","indexOfOperator","indexOf","Seven","props","handleClick","bind","handleMouseEvent","backgroundColor","this","e","setState","width","height","style","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","borderBottom","borderRight","display","flexDirection","justifyContent","id","className","onClick","onTouchStart","onTouchEnd","onMouseDown","onMouseUp","React","Component","connect","dispatch","Eight","Nine","Four","Five","Six","One","Two","Three","Zero","borderRadius","Decimal","Clear","Divide","alignItems","icon","faDivide","Multiply","faTimes","Subtract","faMinus","Add","faPlus","Equals","fontSize","DisplayInput","textAlign","lineHeight","DisplayOperations","color","Display","textOverflow","whiteSpace","overflow","Back","faBackspace","CalculatorGrid","gridTemplateRows","gridTemplateColumns","Calculator","handleKeyPress","handleKey","key","keyCode","preventDefault","document","addEventListener","removeEventListener","topMargin","Math","round","sideMargin","marginTop","marginBottom","marginLeft","marginRight","overFlow","border","userSelect","MozUserSelect","WebkitUserSelect","zIndex","fontFamily","App","handleResize","innerWindowWidthAction","innerWindowHeightAction","gitHubLabelStyle","position","right","attachmentStyle","href","target","rel","src","alt","data-recalc-dims","Boolean","location","hostname","match","ReactDOM","render","getElementById","navigator","serviceWorker","ready","then","registration","unregister","catch","error","console","message"],"mappings":"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","file":"static/js/main.78f555dc.chunk.js","sourcesContent":["export const SETINPUTSTRING = \"SETINPUTSTRING\";\n\nexport const inputStringAction = (inputString) => {\n return {\n type: SETINPUTSTRING,\n inputString: inputString,\n };\n};\n","export const SETOPERATIONSTRING = \"SETOPERATIONSTRING\";\n\nexport const operationStringAction = (operationString) => {\n return {\n type: SETOPERATIONSTRING,\n operationString: operationString,\n };\n};\n","import { combineReducers } from \"redux\";\nimport innerWindowWidthReducer from \"./innerWindowWidthReducer\";\nimport innerWindowHeightReducer from \"./innerWindowHeightReducer\";\nimport inputStringReducer from \"./inputStringReducer\";\nimport operationStringReducer from \"./operationStringReducer\";\n\nexport default combineReducers({\n innerWindowWidth: innerWindowWidthReducer,\n innerWindowHeight: innerWindowHeightReducer,\n inputString: inputStringReducer,\n operationString: operationStringReducer,\n});\n","import { SETWINDOWINNERWIDTH } from \"../actions/innerWindowWidthAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = window.innerWidth;\n }\n\n switch (action.type) {\n case SETWINDOWINNERWIDTH:\n return action.windowInnerWidth;\n default:\n return state;\n };\n};\n","export const SETWINDOWINNERWIDTH = \"SETWINDOWINNERWIDTH\";\n\nexport const innerWindowWidthAction = (windowInnerWidth) => {\n return {\n type: SETWINDOWINNERWIDTH,\n windowInnerWidth: windowInnerWidth,\n };\n};\n","import { SETWINDOWINNERHEIGHT } from \"../actions/innerWindowHeightAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = window.innerHeight;\n }\n\n switch (action.type) {\n case SETWINDOWINNERHEIGHT:\n return action.windowInnerHeight;\n default:\n return state;\n }\n};\n","export const SETWINDOWINNERHEIGHT = \"SETWINDOWINNERHEIGHT\";\n\nexport const innerWindowHeightAction = (windowInnerHeight) => {\n return {\n type: SETWINDOWINNERHEIGHT,\n windowInnerHeight: windowInnerHeight,\n };\n};\n","import { SETINPUTSTRING } from \"../actions/inputStringAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = '';\n }\n\n switch (action.type) {\n case SETINPUTSTRING:\n return action.inputString;\n default:\n return state;\n };\n};\n","import { SETOPERATIONSTRING } from \"../actions/operationStringAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = '';\n }\n\n switch (action.type) {\n case SETOPERATIONSTRING:\n return action.operationString;\n default:\n return state;\n };\n};\n","import { createStore } from \"redux\";\nimport rootReducer from \"./reducers/rootReducer\";\n\nconst store = createStore(rootReducer);\n\nexport default store;\n","export const colors = {\n firstColor: '#00293C',\n secondColor: '#1e656d',\n thirdColor: '#6d261e',\n fourthColor: '#656d1e',\n fifthColor: '#261e6d',\n textColor: '#f1f3ce',\n secondtextColor: '#f62a00',\n};\n\nconst operators = ['*','/','-','+'];\n\nexport const makeInputAndOperationsStrings = (inputString,operationString,nextChar) => {\n let inputStringResult = inputString;\n let tempOperationString = operationString.includes('=') ? operationString.split('=')[1] : operationString;\n let operationStringResult = tempOperationString;\n\n if (tempOperationString.length > 0 && ['*','/','+','-','='].includes(nextChar) && tempOperationString.slice(-1) === '.') {\n tempOperationString = tempOperationString.slice(0,-1);\n }\n\n const numbers = ['1','2','3','4','5','6','7','8','9'];\n\n if (numbers.includes(nextChar)) {\n if (inputString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString.length === 1) {\n if (inputString[0] === '0') {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString.slice(0,-1) + nextChar;\n } else if (inputString[0] === '-') {\n if (tempOperationString.length === 1) {\n inputStringResult = inputString + nextChar;\n operationStringResult = inputString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (['*','/','+'].includes(inputString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length === 2) {\n if (inputString[0] === '-') {\n if (inputString[1] === '0') {\n inputStringResult = '-' + nextChar;\n operationStringResult = tempOperationString.slice(0,-1) + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length > 2) {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '0') {\n if (inputString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString.length === 1) {\n if (inputString[0] !== '0') {\n if (['*','/','+'].includes(inputString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n }\n } else if (inputString.length === 2) {\n if (inputString[0] !== '-') {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString[1] !== '0') {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length > 2) {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '-') {\n if (tempOperationString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = nextChar;\n } else if (tempOperationString.length === 1) {\n if (!operators.includes(tempOperationString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (['*','/','+'].includes(nextChar)) {\n if (tempOperationString.length === 1) {\n if (!operators.includes(tempOperationString.slice(-1))) {\n operationStringResult = tempOperationString + nextChar;\n inputStringResult = nextChar;\n }\n } else if (tempOperationString.length > 1) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '.' && (!inputString.includes('.'))) {\n if (inputString.length === 0) {\n inputStringResult = '0.';\n operationStringResult = tempOperationString + '0.';\n } else if (inputString.length === 1) {\n if (tempOperationString.length === 0) {\n if (inputString[0] === '-') {\n inputStringResult = '-0.';\n operationStringResult = tempOperationString + '-0.';\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n if (operators.includes(inputString[0])) {\n inputStringResult = '0.';\n operationStringResult = tempOperationString + '0.';\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n }\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '=' && tempOperationString.length > 0) {\n const lastOperationChar = tempOperationString.slice(-1);\n if (operators.includes(lastOperationChar) || lastOperationChar === '.') {\n inputStringResult = parseAndCalculate(tempOperationString.slice(0,-1));\n operationStringResult = tempOperationString.slice(0,-1) + '=' + inputStringResult;\n } else {\n inputStringResult = parseAndCalculate(tempOperationString);\n operationStringResult = tempOperationString + '=' + inputStringResult;\n }\n } else if (nextChar === 'b') {\n if (tempOperationString.length === 1) {\n inputStringResult = inputString.slice(0,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else if (tempOperationString.length > 1) {\n if (operators.includes(tempOperationString.slice(-1))) {\n if (operators.includes(tempOperationString.slice(-2,-1))) {\n inputStringResult = tempOperationString.slice(-2,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else {\n operationStringResult = tempOperationString.slice(0,-1);\n inputStringResult = operationStringResult.split(/[-*/+]/).slice(-1)[0];\n }\n } else {\n if (operators.includes(tempOperationString.slice(-2,-1))) {\n inputStringResult = tempOperationString.slice(-2,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else {\n inputStringResult = inputString.slice(0,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n }\n }\n }\n }\n\n return [inputStringResult,operationStringResult];\n}\n\nconst parseAndCalculate = (operationString) => {\n const statementArray = [];\n operationString.split('').forEach((item,index) => {\n if (index === 0) {\n statementArray.push(item);\n } else {\n if (operators.includes(item)) {\n statementArray.push(item);\n } else {\n if (statementArray[statementArray.length - 1] === '-') {\n if (index === 1 || operators.includes(statementArray[statementArray.length - 2])) {\n const previous = statementArray[statementArray.length - 1];\n statementArray[statementArray.length - 1] = previous + item;\n } else {\n statementArray.push(item);\n }\n } else if (['*','/','+'].includes(statementArray[statementArray.length - 1])) {\n statementArray.push(item);\n } else {\n const previous = statementArray[statementArray.length - 1];\n statementArray[statementArray.length - 1] = previous + item;\n }\n }\n }\n });\n // remove trailing operators\n while (operators.includes(statementArray[statementArray.length - 1])) {\n statementArray.pop();\n }\n const duplicateOperatorsFilteredArray = statementArray.filter((item,index) => {\n return (!operators.includes(statementArray[index + 1]) || !operators.includes(item));\n });\n if (duplicateOperatorsFilteredArray.length === 1) {\n return duplicateOperatorsFilteredArray[0];\n } else {\n return calculate(duplicateOperatorsFilteredArray.map(item => {\n if (operators.includes(item)) {\n return item;\n } else {\n return item.includes('.') ? parseFloat(item) : parseInt(item);\n }\n }))[0].toString();\n }\n}\n\nconst calculate = (statementArray) => {\n if (statementArray.length === 1) {\n return statementArray;\n } else if (statementArray.includes('*')) {\n const indexOfOperator = statementArray.indexOf('*');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] * statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('/')) {\n const indexOfOperator = statementArray.indexOf('/');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] / statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('-')) {\n const indexOfOperator = statementArray.indexOf('-');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] - statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('+')) {\n const indexOfOperator = statementArray.indexOf('+');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] + statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n }\n}\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Seven extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'7');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 7
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Seven);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Eight extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'8');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 8
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Eight);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Nine extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'9');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 9
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Nine);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Four extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'4');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 4
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Four);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Five extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'5');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 5
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Five);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Six extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'6');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 6
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Six);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass One extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'1');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 1
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(One);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Two extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'2');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 2
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Two);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Three extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'3');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 3
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Three);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Zero extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'0');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n borderRadius: '0 0 0 7px',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 6;\n style['gridRowEnd'] = 7;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 0
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Zero);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Decimal extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'.');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderRight: '3px solid black',\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 6;\n style['gridRowEnd'] = 7;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n style['borderBottom'] = 'unset';\n }\n\n return (\n .
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Decimal);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Clear extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fifthColor,\n };\n };\n\n handleClick() {\n this.props.inputStringAction('');\n this.props.operationStringAction('');\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.secondColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fifthColor});\n }\n }\n\n render() {\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderRight: '3px solid black',\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor, \n };\n\n return (\n AC
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Clear);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faDivide } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Divide extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'/');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Divide);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Multiply extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'*');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Multiply);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faMinus } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Subtract extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'-');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['borderRight'] = 'unset';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Subtract);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faPlus } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Add extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'+');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['borderRight'] = 'unset';\n style['borderBottom'] = '3px solid black';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Add);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Equals extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.thirdColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'=');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.thirdColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 4,\n gridRowEnd: 5,\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n borderRadius: '0 0 7px 0',\n fontSize: 88,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 56;\n } else if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 7;\n }\n\n return (\n =
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Equals);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nclass DisplayInput extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n textAlign: 'right',\n height: '60%',\n fontSize: 64,\n lineHeight: '100%',\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 36;\n } else if (height > width && height < 850) {\n style['fontSize'] = 36;\n }\n\n return (\n {\n this.props.inputString.length === 0 ? 0 : this.props.inputString\n }
\n );\n };\n};\n\nexport default connect(mapStateToProps)(DisplayInput);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { colors } from './globals'\n\nconst mapStateToProps = (state) => ({ ...state });\n\nclass DisplayOperations extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n textAlign: 'right',\n height: '40%',\n fontSize: 48,\n lineHeight: '100%',\n color: colors.secondtextColor,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 27;\n } else if (height > width && height < 850) {\n style['fontSize'] = 27;\n }\n\n return (\n {\n this.props.operationString.length === 0 ? 0 : this.props.operationString\n }
\n );\n };\n};\n\nexport default connect(mapStateToProps)(DisplayOperations);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors } from './globals'\nimport DisplayInput from './DisplayInput';\nimport DisplayOperations from './DisplayOperations';\nconst mapStateToProps = (state) => ({ ...state });\n\nclass Display extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 7,\n gridRowStart: 1,\n gridRowEnd: 2,\n borderBottom: '3px solid black',\n backgroundColor: colors.textColor,\n borderRadius: '7px 7px 0 0',\n color: colors.firstColor,\n textOverflow: 'clip',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n };\n\n if (height > width) {\n style['gridColumnEnd'] = 5;\n }\n\n return (\n \n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps)(Display);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faBackspace } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Back extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'b');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 2;\n style['gridRowEnd'] = 3;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n style['borderRight'] = '3px solid black';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Back);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport Seven from './Seven';\nimport Eight from './Eight';\nimport Nine from './Nine';\nimport Four from './Four';\nimport Five from './Five';\nimport Six from './Six';\nimport One from './One';\nimport Two from './Two';\nimport Three from './Three';\nimport Zero from './Zero';\nimport Decimal from './Decimal';\nimport Clear from './Clear';\nimport Divide from './Divide';\nimport Multiply from './Multiply';\nimport Subtract from './Subtract';\nimport Add from './Add';\nimport Equals from './Equals';\nimport Display from './Display';\nimport Back from './Back';\nconst mapStateToProps = (state) => ({ ...state });\n\nclass CalculatorGrid extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'grid',\n width: '100%',\n height: '100%',\n gridTemplateRows: 'repeat(4, 1fr)',\n gridTemplateColumns: 'repeat(6, 1fr)',\n fontSize: 64,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 48;\n } else if (height > width) {\n style['gridTemplateRows'] = 'repeat(6, 1fr)';\n style['gridTemplateColumns'] = 'repeat(4, 1fr)';\n style['fontSize'] = 48;\n }\n\n return (\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n };\n};\n\nexport default connect(mapStateToProps)(CalculatorGrid);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport CalculatorGrid from './CalculatorGrid';\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Calculator extends React.Component {\n constructor(props) {\n super(props);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleKey= this.handleKey.bind(this);\n };\n\n handleKey(key) {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,key);\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleKeyPress(e) {\n if (e.keyCode === 8 || e.keyCode === 46) {\n this.handleKey('b');\n } else if (['0','1','2','3','4','5','6','7','8','9','.','*','+','-','='].includes(e.key)) {\n this.handleKey(e.key);\n } else if (e.key === '/') {\n e.preventDefault();\n this.handleKey(e.key);\n } else if (e.keyCode === 13) {\n this.handleKey('=');\n } else if (e.keyCode === 27) {\n this.props.inputStringAction('');\n this.props.operationStringAction('');\n }\n };\n\n componentDidMount() {\n document.addEventListener(\"keydown\", this.handleKeyPress, false);\n };\n\n componentWillUnmount() {\n document.removeEventListener(\"keydown\", this.handleKeyPress, false);\n };\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const topMargin = Math.round(height * 0.1);\n const sideMargin = Math.round(width * 0.1);\n const style = {\n height: '80%',\n width: '80%',\n backgroundColor: colors.secondColor,\n borderRadius: 10,\n marginTop: topMargin,\n marginBottom: topMargin,\n marginLeft: sideMargin,\n marginRight: sideMargin,\n overFlow: 'hidden',\n border: '3px solid black',\n userSelect: 'none',\n MozUserSelect: 'none',\n WebkitUserSelect: 'none',\n zIndex: '1',\n fontFamily: 'Baloo Bhai',\n };\n\n if (width > height && height < 400) {\n style['height'] = '96vh';\n style['width'] = '80vw';\n style['marginTop'] = '1vh';\n style['marginBottom'] = '3vh';\n style['marginLeft'] = '89px';\n style['marginRight'] = '89px';\n } else if (height > width) {\n style['height'] = '75vh';\n style['minHeight'] = 481;\n style['width'] = '100vw';\n style['marginTop'] = '12vh';\n style['marginBottom'] = 'unset';\n style['marginLeft'] = '0px';\n style['marginRight'] = '0px';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Calculator);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport Calculator from './Calculator';\nimport { colors } from './globals'\n\nimport { innerWindowWidthAction } from \"./actions/innerWindowWidthAction\";\nimport { innerWindowHeightAction } from \"./actions/innerWindowHeightAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n innerWindowWidthAction: (windowInnerWidth) => dispatch(innerWindowWidthAction(windowInnerWidth)),\n innerWindowHeightAction: (windowInnerHeight) => dispatch(innerWindowHeightAction(windowInnerHeight)),\n});\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n this.handleResize = this.handleResize.bind(this);\n };\n\n handleResize() {\n this.props.innerWindowWidthAction(window.innerWidth);\n this.props.innerWindowHeightAction(window.innerHeight);\n };\n\n componentDidMount() {\n window.addEventListener('resize',this.handleResize);\n };\n\n componentWillUnmount() {\n window.removeEventListener('resize',this.handleResize);\n };\n\n render() {\n const height = this.props.innerWindowHeight;\n const width = this.props.innerWindowWidth;\n const gitHubLabelStyle = {\n backgroundColor: colors.firstColor,\n border: 'none',\n width: 149,\n height: 0,\n position: 'absolute',\n right: 0,\n };\n\n const attachmentStyle = {\n position: 'absolute',\n right: 0,\n height: 149,\n width: 149,\n };\n\n const style = {\n textAlign: 'center',\n backgroundColor: colors.firstColor,\n height: '100vh',\n width: '100vw',\n display: 'flex',\n color: colors.textColor,\n overFlow: 'hidden',\n };\n\n if (width > height && height < 400) {\n gitHubLabelStyle['width'] = 99;\n attachmentStyle['width'] = 99;\n attachmentStyle['height'] = 99;\n } else if (height > width) {\n gitHubLabelStyle['width'] = 99;\n attachmentStyle['width'] = 99;\n attachmentStyle['height'] = 99;\n }\n\n return (\n \n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(App);\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' },\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then(registration => {\n registration.unregister();\n })\n .catch(error => {\n console.error(error.message);\n });\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from \"react-redux\";\nimport store from \"./store\";\n\nimport './index.css';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/calculator-react/build/static/js/main.bfd616ae.chunk.js.map b/calculator-react/build/static/js/main.bfd616ae.chunk.js.map
deleted file mode 100644
index 8e92b49..0000000
--- a/calculator-react/build/static/js/main.bfd616ae.chunk.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["actions/inputStringAction.js","actions/operationStringAction.js","reducers/rootReducer.js","reducers/innerWindowWidthReducer.js","actions/innerWindowWidthAction.js","reducers/innerWindowHeightReducer.js","actions/innerWindowHeightAction.js","reducers/inputStringReducer.js","reducers/operationStringReducer.js","store.js","globals.js","Seven.js","Eight.js","Nine.js","Four.js","Five.js","Six.js","One.js","Two.js","Three.js","Zero.js","Decimal.js","Clear.js","Divide.js","Multiply.js","Subtract.js","Add.js","Equals.js","DisplayInput.js","DisplayOperations.js","Display.js","Back.js","CalculatorGrid.js","Calculator.js","App.js","serviceWorker.js","index.js"],"names":["inputStringAction","inputString","type","operationStringAction","operationString","combineReducers","innerWindowWidth","state","action","window","innerWidth","windowInnerWidth","innerWindowHeight","innerHeight","windowInnerHeight","store","createStore","rootReducer","colors","operators","makeInputAndOperationsStrings","nextChar","inputStringResult","tempOperationString","includes","split","operationStringResult","length","slice","lastOperationChar","parseAndCalculate","statementArray","forEach","item","index","push","previous","pop","duplicateOperatorsFilteredArray","filter","calculate","map","parseFloat","parseInt","toString","indexOfOperator","indexOf","Seven","props","handleClick","bind","handleMouseEvent","backgroundColor","this","e","setState","width","height","style","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","borderBottom","borderRight","display","flexDirection","justifyContent","id","className","onClick","onTouchStart","onTouchEnd","onMouseDown","onMouseUp","React","Component","connect","dispatch","Eight","Nine","Four","Five","Six","One","Two","Three","Zero","borderRadius","Decimal","Clear","Divide","alignItems","icon","faDivide","Multiply","faTimes","Subtract","faMinus","Add","faPlus","Equals","fontSize","DisplayInput","textAlign","lineHeight","DisplayOperations","color","Display","textOverflow","whiteSpace","overflow","Back","faBackspace","CalculatorGrid","gridTemplateRows","gridTemplateColumns","Calculator","handleKeyPress","handleKey","key","keyCode","preventDefault","document","addEventListener","removeEventListener","topMargin","Math","round","sideMargin","marginTop","marginBottom","marginLeft","marginRight","overFlow","border","userSelect","MozUserSelect","WebkitUserSelect","zIndex","fontFamily","App","handleResize","innerWindowWidthAction","innerWindowHeightAction","gitHubLabelStyle","position","right","attachmentStyle","href","target","rel","src","alt","data-recalc-dims","Boolean","location","hostname","match","ReactDOM","render","getElementById","navigator","serviceWorker","ready","then","registration","unregister","catch","error","console","message"],"mappings":"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","file":"static/js/main.bfd616ae.chunk.js","sourcesContent":["export const SETINPUTSTRING = \"SETINPUTSTRING\";\n\nexport const inputStringAction = (inputString) => {\n return {\n type: SETINPUTSTRING,\n inputString: inputString,\n };\n};\n","export const SETOPERATIONSTRING = \"SETOPERATIONSTRING\";\n\nexport const operationStringAction = (operationString) => {\n return {\n type: SETOPERATIONSTRING,\n operationString: operationString,\n };\n};\n","import { combineReducers } from \"redux\";\nimport innerWindowWidthReducer from \"./innerWindowWidthReducer\";\nimport innerWindowHeightReducer from \"./innerWindowHeightReducer\";\nimport inputStringReducer from \"./inputStringReducer\";\nimport operationStringReducer from \"./operationStringReducer\";\n\nexport default combineReducers({\n innerWindowWidth: innerWindowWidthReducer,\n innerWindowHeight: innerWindowHeightReducer,\n inputString: inputStringReducer,\n operationString: operationStringReducer,\n});\n","import { SETWINDOWINNERWIDTH } from \"../actions/innerWindowWidthAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = window.innerWidth;\n }\n\n switch (action.type) {\n case SETWINDOWINNERWIDTH:\n return action.windowInnerWidth;\n default:\n return state;\n };\n};\n","export const SETWINDOWINNERWIDTH = \"SETWINDOWINNERWIDTH\";\n\nexport const innerWindowWidthAction = (windowInnerWidth) => {\n return {\n type: SETWINDOWINNERWIDTH,\n windowInnerWidth: windowInnerWidth,\n };\n};\n","import { SETWINDOWINNERHEIGHT } from \"../actions/innerWindowHeightAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = window.innerHeight;\n }\n\n switch (action.type) {\n case SETWINDOWINNERHEIGHT:\n return action.windowInnerHeight;\n default:\n return state;\n }\n};\n","export const SETWINDOWINNERHEIGHT = \"SETWINDOWINNERHEIGHT\";\n\nexport const innerWindowHeightAction = (windowInnerHeight) => {\n return {\n type: SETWINDOWINNERHEIGHT,\n windowInnerHeight: windowInnerHeight,\n };\n};\n","import { SETINPUTSTRING } from \"../actions/inputStringAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = '';\n }\n\n switch (action.type) {\n case SETINPUTSTRING:\n return action.inputString;\n default:\n return state;\n };\n};\n","import { SETOPERATIONSTRING } from \"../actions/operationStringAction\";\n\nexport default (state, action) => {\n if (!state) {\n state = '';\n }\n\n switch (action.type) {\n case SETOPERATIONSTRING:\n return action.operationString;\n default:\n return state;\n };\n};\n","import { createStore } from \"redux\";\nimport rootReducer from \"./reducers/rootReducer\";\n\nconst store = createStore(rootReducer);\n\nexport default store;\n","export const colors = {\n firstColor: '#00293C',\n secondColor: '#1e656d',\n thirdColor: '#6d261e',\n fourthColor: '#656d1e',\n fifthColor: '#261e6d',\n textColor: '#f1f3ce',\n secondtextColor: '#f62a00',\n};\n\nconst operators = ['*','/','-','+'];\n\nexport const makeInputAndOperationsStrings = (inputString,operationString,nextChar) => {\n let inputStringResult = inputString;\n let tempOperationString = operationString.includes('=') ? operationString.split('=')[1] : operationString;\n let operationStringResult = tempOperationString;\n\n if (tempOperationString.length > 0 && ['*','/','+','-','='].includes(nextChar) && tempOperationString.slice(-1) === '.') {\n tempOperationString = tempOperationString.slice(0,-1);\n }\n\n const numbers = ['1','2','3','4','5','6','7','8','9'];\n\n if (numbers.includes(nextChar)) {\n if (inputString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString.length === 1) {\n if (inputString[0] === '0') {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString.slice(0,-1) + nextChar;\n } else if (inputString[0] === '-') {\n if (tempOperationString.length === 1) {\n inputStringResult = inputString + nextChar;\n operationStringResult = inputString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (['*','/','+'].includes(inputString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length === 2) {\n if (inputString[0] === '-') {\n if (inputString[1] === '0') {\n inputStringResult = '-' + nextChar;\n operationStringResult = tempOperationString.slice(0,-1) + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length > 2) {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '0') {\n if (inputString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString.length === 1) {\n if (inputString[0] !== '0') {\n if (['*','/','+'].includes(inputString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n }\n } else if (inputString.length === 2) {\n if (inputString[0] !== '-') {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n } else if (inputString[1] !== '0') {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (inputString.length > 2) {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '-') {\n if (tempOperationString.length === 0) {\n inputStringResult = nextChar;\n operationStringResult = nextChar;\n } else if (tempOperationString.length === 1) {\n if (!operators.includes(tempOperationString[0])) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (['*','/','+'].includes(nextChar)) {\n if (tempOperationString.length === 1) {\n if (!operators.includes(tempOperationString.slice(-1))) {\n operationStringResult = tempOperationString + nextChar;\n inputStringResult = nextChar;\n }\n } else if (tempOperationString.length > 1) {\n inputStringResult = nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '.' && (!inputString.includes('.'))) {\n if (inputString.length === 0) {\n inputStringResult = '0.';\n operationStringResult = tempOperationString + '0.';\n } else if (inputString.length === 1) {\n if (tempOperationString.length === 0) {\n if (inputString[0] === '-') {\n inputStringResult = '-0.';\n operationStringResult = tempOperationString + '-0.';\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else {\n if (operators.includes(inputString[0])) {\n inputStringResult = '0.';\n operationStringResult = tempOperationString + '0.';\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n }\n } else {\n inputStringResult = inputString + nextChar;\n operationStringResult = tempOperationString + nextChar;\n }\n } else if (nextChar === '=' && tempOperationString.length > 0) {\n const lastOperationChar = tempOperationString.slice(-1);\n if (operators.includes(lastOperationChar) || lastOperationChar === '.') {\n inputStringResult = parseAndCalculate(tempOperationString.slice(0,-1));\n operationStringResult = tempOperationString.slice(0,-1) + '=' + inputStringResult;\n } else {\n inputStringResult = parseAndCalculate(tempOperationString);\n operationStringResult = tempOperationString + '=' + inputStringResult;\n }\n } else if (nextChar === 'b') {\n if (tempOperationString.length === 1) {\n inputStringResult = inputString.slice(0,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else if (tempOperationString.length > 1) {\n if (operators.includes(tempOperationString.slice(-1))) {\n if (operators.includes(tempOperationString.slice(-2,-1))) {\n inputStringResult = tempOperationString.slice(-2,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else {\n operationStringResult = tempOperationString.slice(0,-1);\n inputStringResult = operationStringResult.split(/[-*/+]/).slice(-1)[0];\n }\n } else {\n if (operators.includes(tempOperationString.slice(-2,-1))) {\n inputStringResult = tempOperationString.slice(-2,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n } else {\n inputStringResult = inputString.slice(0,-1);\n operationStringResult = tempOperationString.slice(0,-1);\n }\n }\n }\n }\n\n return [inputStringResult,operationStringResult];\n}\n\nconst parseAndCalculate = (operationString) => {\n const statementArray = [];\n operationString.split('').forEach((item,index) => {\n if (index === 0) {\n statementArray.push(item);\n } else {\n if (operators.includes(item)) {\n statementArray.push(item);\n } else {\n if (statementArray[statementArray.length - 1] === '-') {\n if (index === 1 || operators.includes(statementArray[statementArray.length - 2])) {\n const previous = statementArray[statementArray.length - 1];\n statementArray[statementArray.length - 1] = previous + item;\n } else {\n statementArray.push(item);\n }\n } else if (['*','/','+'].includes(statementArray[statementArray.length - 1])) {\n statementArray.push(item);\n } else {\n const previous = statementArray[statementArray.length - 1];\n statementArray[statementArray.length - 1] = previous + item;\n }\n }\n }\n });\n // remove trailing operators\n while (operators.includes(statementArray[statementArray.length - 1])) {\n statementArray.pop();\n }\n const duplicateOperatorsFilteredArray = statementArray.filter((item,index) => {\n return (!operators.includes(statementArray[index + 1]) || !operators.includes(item));\n });\n if (duplicateOperatorsFilteredArray.length === 1) {\n return duplicateOperatorsFilteredArray[0];\n } else {\n return calculate(duplicateOperatorsFilteredArray.map(item => {\n if (operators.includes(item)) {\n return item;\n } else {\n return item.includes('.') ? parseFloat(item) : parseInt(item);\n }\n }))[0].toString();\n }\n}\n\nconst calculate = (statementArray) => {\n if (statementArray.length === 1) {\n return statementArray;\n } else if (statementArray.includes('*')) {\n const indexOfOperator = statementArray.indexOf('*');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] * statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('/')) {\n const indexOfOperator = statementArray.indexOf('/');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] / statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('-')) {\n const indexOfOperator = statementArray.indexOf('-');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] - statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n } else if (statementArray.includes('+')) {\n const indexOfOperator = statementArray.indexOf('+');\n return calculate([\n ...statementArray.slice(0,indexOfOperator - 1),\n statementArray[indexOfOperator - 1] + statementArray[indexOfOperator + 1],\n ...statementArray.slice((indexOfOperator + 2),)\n ]);\n }\n}\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Seven extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'7');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 7
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Seven);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Eight extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'8');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 8
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Eight);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Nine extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'9');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 3;\n style['gridRowEnd'] = 4;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 9
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Nine);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Four extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'4');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 4
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Four);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Five extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'5');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 5
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Five);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Six extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'6');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 4;\n style['gridRowEnd'] = 5;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 6
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Six);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass One extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'1');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 2,\n gridColumnEnd: 3,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 2;\n }\n\n return (\n 1
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(One);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Two extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'2');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 3,\n gridColumnEnd: 4,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 2
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Two);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Three extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'3');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 4,\n gridColumnEnd: 5,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 6;\n style['borderBottom'] = '3px solid black';\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n 3
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Three);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Zero extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'0');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n borderRadius: '0 0 0 7px',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 6;\n style['gridRowEnd'] = 7;\n style['gridColumnStart'] = 1;\n style['gridColumnEnd'] = 3;\n }\n\n return (\n 0
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Zero);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Decimal extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.secondColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'.');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.secondColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderRight: '3px solid black',\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 6;\n style['gridRowEnd'] = 7;\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n style['borderBottom'] = 'unset';\n }\n\n return (\n .
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Decimal);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Clear extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fifthColor,\n };\n };\n\n handleClick() {\n this.props.inputStringAction('');\n this.props.operationStringAction('');\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.secondColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fifthColor});\n }\n }\n\n render() {\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 2,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderRight: '3px solid black',\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n backgroundColor: this.state.backgroundColor, \n };\n\n return (\n AC
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Clear);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faDivide } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Divide extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'/');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 3;\n style['gridColumnEnd'] = 4;\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Divide);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Multiply extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'*');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 2,\n gridRowEnd: 3,\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Multiply);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faMinus } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Subtract extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'-');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['borderRight'] = 'unset';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Subtract);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faPlus } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Add extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'+');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 5,\n gridColumnEnd: 6,\n gridRowStart: 4,\n gridRowEnd: 5,\n borderRight: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['borderRight'] = 'unset';\n style['borderBottom'] = '3px solid black';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Add);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Equals extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.thirdColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'=');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.thirdColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 4,\n gridRowEnd: 5,\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n borderRadius: '0 0 7px 0',\n fontSize: 88,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 56;\n } else if (height > width) {\n style['gridColumnStart'] = 4;\n style['gridColumnEnd'] = 5;\n style['gridRowStart'] = 5;\n style['gridRowEnd'] = 7;\n }\n\n return (\n =
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Equals);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nclass DisplayInput extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n textAlign: 'right',\n height: '60%',\n fontSize: 64,\n lineHeight: '100%',\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 36;\n } else if (height > width && height < 850) {\n style['fontSize'] = 36;\n }\n\n return (\n {\n this.props.inputString.length === 0 ? 0 : this.props.inputString\n }
\n );\n };\n};\n\nexport default connect(mapStateToProps)(DisplayInput);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { colors } from './globals'\n\nconst mapStateToProps = (state) => ({ ...state });\n\nclass DisplayOperations extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n textAlign: 'right',\n height: '40%',\n fontSize: 48,\n lineHeight: '100%',\n color: colors.secondtextColor,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 27;\n } else if (height > width && height < 850) {\n style['fontSize'] = 27;\n }\n\n return (\n {\n this.props.operationString.length === 0 ? 0 : this.props.operationString\n }
\n );\n };\n};\n\nexport default connect(mapStateToProps)(DisplayOperations);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors } from './globals'\nimport DisplayInput from './DisplayInput';\nimport DisplayOperations from './DisplayOperations';\nconst mapStateToProps = (state) => ({ ...state });\n\nclass Display extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 1,\n gridColumnEnd: 7,\n gridRowStart: 1,\n gridRowEnd: 2,\n borderBottom: '3px solid black',\n backgroundColor: colors.textColor,\n borderRadius: '7px 7px 0 0',\n color: colors.firstColor,\n textOverflow: 'clip',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n };\n\n if (height > width) {\n style['gridColumnEnd'] = 5;\n }\n\n return (\n \n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps)(Display);\n","import React from 'react';\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faBackspace } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Back extends React.Component {\n constructor(props) {\n super(props);\n this.handleClick = this.handleClick.bind(this);\n this.handleMouseEvent = this.handleMouseEvent.bind(this);\n this.state = {\n backgroundColor: colors.fourthColor,\n };\n };\n\n handleClick() {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,'b');\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleMouseEvent(e) {\n if (e.type === 'mousedown' || e.type === 'touchstart') {\n this.setState({backgroundColor: colors.firstColor});\n } else if (e.type === 'mouseup' || e.type === 'touchend') {\n this.setState({backgroundColor: colors.fourthColor});\n }\n }\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n gridColumnStart: 6,\n gridColumnEnd: 7,\n gridRowStart: 3,\n gridRowEnd: 4,\n borderBottom: '3px solid black',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: this.state.backgroundColor,\n };\n\n if (height > width) {\n style['gridRowStart'] = 2;\n style['gridRowEnd'] = 3;\n style['gridColumnStart'] = 2;\n style['gridColumnEnd'] = 3;\n style['borderRight'] = '3px solid black';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Back);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport Seven from './Seven';\nimport Eight from './Eight';\nimport Nine from './Nine';\nimport Four from './Four';\nimport Five from './Five';\nimport Six from './Six';\nimport One from './One';\nimport Two from './Two';\nimport Three from './Three';\nimport Zero from './Zero';\nimport Decimal from './Decimal';\nimport Clear from './Clear';\nimport Divide from './Divide';\nimport Multiply from './Multiply';\nimport Subtract from './Subtract';\nimport Add from './Add';\nimport Equals from './Equals';\nimport Display from './Display';\nimport Back from './Back';\nconst mapStateToProps = (state) => ({ ...state });\n\nclass CalculatorGrid extends React.Component {\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const style = {\n display: 'grid',\n width: '100%',\n height: '100%',\n gridTemplateRows: 'repeat(4, 1fr)',\n gridTemplateColumns: 'repeat(6, 1fr)',\n fontSize: 64,\n };\n\n if (width > height && height < 400) {\n style['fontSize'] = 48;\n } else if (height > width) {\n style['gridTemplateRows'] = 'repeat(6, 1fr)';\n style['gridTemplateColumns'] = 'repeat(4, 1fr)';\n style['fontSize'] = 48;\n }\n\n return (\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n };\n};\n\nexport default connect(mapStateToProps)(CalculatorGrid);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport { colors,makeInputAndOperationsStrings } from './globals'\nimport CalculatorGrid from './CalculatorGrid';\nimport { inputStringAction } from \"./actions/inputStringAction\";\nimport { operationStringAction } from \"./actions/operationStringAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n inputStringAction: (inputString) => dispatch(inputStringAction(inputString)),\n operationStringAction: (operationString) => dispatch(operationStringAction(operationString)),\n});\n\nclass Calculator extends React.Component {\n constructor(props) {\n super(props);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleKey= this.handleKey.bind(this);\n };\n\n handleKey(key) {\n const [inputString,operationString] = makeInputAndOperationsStrings(this.props.inputString,this.props.operationString,key);\n if (inputString !== this.props.inputString) {\n this.props.inputStringAction(inputString);\n }\n if (operationString !== this.props.operationString) {\n this.props.operationStringAction(operationString);\n }\n }\n\n handleKeyPress(e) {\n if (e.keyCode === 8 || e.keyCode === 46) {\n this.handleKey('b');\n } else if (['0','1','2','3','4','5','6','7','8','9','.','*','+','-','='].includes(e.key)) {\n this.handleKey(e.key);\n } else if (e.key === '/') {\n e.preventDefault();\n this.handleKey(e.key);\n } else if (e.keyCode === 13) {\n this.handleKey('=');\n } else if (e.keyCode === 27) {\n this.props.inputStringAction('');\n this.props.operationStringAction('');\n }\n };\n\n componentDidMount() {\n document.addEventListener(\"keydown\", this.handleKeyPress, false);\n };\n\n componentWillUnmount() {\n document.removeEventListener(\"keydown\", this.handleKeyPress, false);\n };\n\n render() {\n const width = this.props.innerWindowWidth;\n const height = this.props.innerWindowHeight;\n const topMargin = Math.round(height * 0.1);\n const sideMargin = Math.round(width * 0.1);\n const style = {\n height: '80%',\n width: '80%',\n backgroundColor: colors.secondColor,\n borderRadius: 10,\n marginTop: topMargin,\n marginBottom: topMargin,\n marginLeft: sideMargin,\n marginRight: sideMargin,\n overFlow: 'hidden',\n border: '3px solid black',\n userSelect: 'none',\n MozUserSelect: 'none',\n WebkitUserSelect: 'none',\n zIndex: '1',\n fontFamily: 'Baloo Bhai',\n };\n\n if (width > height && height < 400) {\n style['height'] = '96vh';\n style['width'] = '80vw';\n style['marginTop'] = '1vh';\n style['marginBottom'] = '3vh';\n style['marginLeft'] = '89px';\n style['marginRight'] = '89px';\n } else if (height > width) {\n style['height'] = '75vh';\n style['width'] = '100vw';\n style['marginTop'] = '12vh';\n style['marginBottom'] = 'unset';\n style['marginLeft'] = '0px';\n style['marginRight'] = '0px';\n }\n\n return (\n \n \n
\n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Calculator);\n","import React from 'react';\nimport { connect } from \"react-redux\";\n\nimport Calculator from './Calculator';\nimport { colors } from './globals'\n\nimport { innerWindowWidthAction } from \"./actions/innerWindowWidthAction\";\nimport { innerWindowHeightAction } from \"./actions/innerWindowHeightAction\";\n\nconst mapStateToProps = (state) => ({ ...state });\n\nconst mapDispatchToProps = (dispatch) => ({\n innerWindowWidthAction: (windowInnerWidth) => dispatch(innerWindowWidthAction(windowInnerWidth)),\n innerWindowHeightAction: (windowInnerHeight) => dispatch(innerWindowHeightAction(windowInnerHeight)),\n});\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n this.handleResize = this.handleResize.bind(this);\n };\n\n handleResize() {\n this.props.innerWindowWidthAction(window.innerWidth);\n this.props.innerWindowHeightAction(window.innerHeight);\n };\n\n componentDidMount() {\n window.addEventListener('resize',this.handleResize);\n };\n\n componentWillUnmount() {\n window.removeEventListener('resize',this.handleResize);\n };\n\n render() {\n const height = this.props.innerWindowHeight;\n const width = this.props.innerWindowWidth;\n const gitHubLabelStyle = {\n backgroundColor: colors.firstColor,\n border: 'none',\n width: 149,\n height: 0,\n position: 'absolute',\n right: 0,\n };\n\n const attachmentStyle = {\n position: 'absolute',\n right: 0,\n height: 149,\n width: 149,\n };\n\n const style = {\n textAlign: 'center',\n backgroundColor: colors.firstColor,\n height: '100vh',\n width: '100vw',\n display: 'flex',\n color: colors.textColor,\n overFlow: 'hidden',\n };\n\n if (width > height && height < 400) {\n gitHubLabelStyle['width'] = 99;\n attachmentStyle['width'] = 99;\n attachmentStyle['height'] = 99;\n } else if (height > width) {\n gitHubLabelStyle['width'] = 99;\n attachmentStyle['width'] = 99;\n attachmentStyle['height'] = 99;\n }\n\n return (\n \n );\n };\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(App);\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' },\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then(registration => {\n registration.unregister();\n })\n .catch(error => {\n console.error(error.message);\n });\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from \"react-redux\";\nimport store from \"./store\";\n\nimport './index.css';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/calculator-react/src/Calculator.js b/calculator-react/src/Calculator.js
index ac535ff..7552224 100644
--- a/calculator-react/src/Calculator.js
+++ b/calculator-react/src/Calculator.js
@@ -86,6 +86,7 @@ class Calculator extends React.Component {
style['marginRight'] = '89px';
} else if (height > width) {
style['height'] = '75vh';
+ style['minHeight'] = 481;
style['width'] = '100vw';
style['marginTop'] = '12vh';
style['marginBottom'] = 'unset';