1(this.webpackJsonpreminder=this.webpackJsonpreminder||[]).push([[0],{199:function(e,t,a){e.exports=a(384)},383:function(e,t,a){},384:function(e,t,a){"use strict";a.r(t);var n=a(0),r=a.n(n),c=a(15),o=a.n(c),l=a(26),i=a(44),u=a(17),m=function(e,t){var a;switch(t.type){case"DELETE_TRANSACTION":return a=e.filter((function(e){return e.id!==t.payload})),localStorage.setItem("transactions",JSON.stringify(a)),a;case"ADD_TRANSACTION":return a=[t.payload].concat(Object(u.a)(e)),localStorage.setItem("transactions",JSON.stringify(a)),a;default:return e}},s=JSON.parse(localStorage.getItem("transactions"))||[{amount:500,category:"Salary",type:"Income",date:"2020-11-16",id:"44c68123-5b86-4cc8-b915-bb9e16cebe6a"},{amount:225,category:"Investments",type:"Income",date:"2020-11-16",id:"33b295b8-a8cb-49f0-8f0d-bb268686de1a"},{amount:50,category:"Salary",type:"Income",date:"2020-11-13",id:"270304a8-b11d-4e16-9341-33df641ede64"},{amount:123,category:"Car",type:"Expense",date:"2020-11-16",id:"0f72e66e-e144-4a72-bbc1-c3c92018635e"},{amount:50,category:"Pets",type:"Expense",date:"2020-11-13",id:"c5647dde-d857-463d-8b4e-1c866cc5f83e"},{amount:500,category:"Travel",type:"Expense",date:"2020-11-13",id:"365a4ebd-9892-4471-ad55-36077e4121a9"},{amount:50,category:"Investments",type:"Income",date:"2020-11-23",id:"80cf7e33-fc3e-4f9f-a2aa-ecf140711460"},{amount:500,category:"Savings",type:"Income",date:"2020-11-23",id:"ef090181-21d1-4568-85c4-5646232085b2"},{amount:5,category:"Savings",type:"Income",date:"2020-11-23",id:"037a35a3-40ec-4212-abe0-cc485a98aeee"}],d=Object(n.createContext)(s),p=function(e){var t=e.children,a=Object(n.useReducer)(m,s),c=Object(i.a)(a,2),o=c[0],l=c[1],u=o.reduce((function(e,t){return"Expense"===t.type?e-t.amount:e+t.amount}),0);return r.a.createElement(d.Provider,{value:{transactions:o,balance:u,deleteTransaction:function(e){l({type:"DELETE_TRANSACTION",payload:e})},addTransaction:function(e){l({type:"ADD_TRANSACTION",payload:e})}}},t)},f=a(431),y=a(131),b=a(425),E=a(427),g=a(428),O=a(46),v=a(189),h=a(422),j=Object(h.a)((function(){return{income:{borderBottom:"10px solid rgba(0, 255, 0, 0.5)"},expense:{borderBottom:"10px solid rgba(255, 0, 0, 0.5)"}}})),x=["#123123","#154731","#165f40","#16784f","#14915f","#10ac6e","#0bc77e","#04e38d","#00ff9d"],C=["#b50d12","#bf2f1f","#c9452c","#d3583a","#dc6a48","#e57c58","#ee8d68","#f79d79","#ffae8a","#cc474b","#f55b5f"],I=[{type:"Business",amount:0,color:x[0]},{type:"Investments",amount:0,color:x[1]},{type:"Extra income",amount:0,color:x[2]},{type:"Deposits",amount:0,color:x[3]},{type:"Lottery",amount:0,color:x[4]},{type:"Gifts",amount:0,color:x[5]},{type:"Salary",amount:0,color:x[6]},{type:"Savings",amount:0,color:x[7]},{type:"Rental income",amount:0,color:x[8]}],T=[{type:"Bills",amount:0,color:C[0]},{type:"Car",amount:0,color:C[1]},{type:"Clothes",amount:0,color:C[2]},{type:"Travel",amount:0,color:C[3]},{type:"Food",amount:0,color:C[4]},{type:"Shopping",amount:0,color:C[5]},{type:"House",amount:0,color:C[6]},{type:"Entertainment",amount:0,color:C[7]},{type:"Phone",amount:0,color:C[8]},{type:"Pets",amount:0,color:C[9]},{type:"Other",amount:0,color:C[10]}],N=function(e){I.forEach((function(e){return e.amount=0})),T.forEach((function(e){return e.amount=0}));var t=Object(n.useContext)(d).transactions.filter((function(t){return t.type===e})),a=t.reduce((function(e,t){return e+t.amount}),0),r="Income"===e?I:T;t.forEach((function(e){var t=r.find((function(t){return t.type===e.category}));t&&(t.amount+=e.amount)}));var c=r.filter((function(e){return e.amount>0})),o={datasets:[{data:c.map((function(e){return e.amount})),backgroundColor:c.map((function(e){return e.color}))}],labels:c.map((function(e){return e.type}))};return{filteredCategories:c,total:a,chartData:o}},S=function(e){var t=e.title,a=e.subheader,n=N(t),c=n.total,o=n.chartData,l=j();return r.a.createElement(b.a,{className:"Income"===t?l.income:l.expense},r.a.createElement(E.a,{title:t,subheader:a}),r.a.createElement(g.a,null,r.a.createElement(O.a,{variant:"h5"},"$",c),r.a.createElement(v.a,{data:o})))},k=a(444),w=Object(h.a)((function(e){return{media:{height:0,paddingTop:"56.25%"},expand:{transform:"rotate(0deg)",marginLeft:"auto",transition:e.transitions.create("transform",{duration:e.transitions.duration.shortest})},expandOpen:{transform:"rotate(180deg)"},cartContent:{paddingTop:0},divider:{margin:"20px 0"}}})),A=a(11),D=a(432),B=a(448),P=a(445),R=a(436),_=a(450),F=a(437),J=a(153),L=a(447),W=a(446),$=Object(h.a)((function(e){return{root:{width:"100%","& > * + *":{marginTop:e.spacing(2)}}}})),H=function(e){var t=e.open,a=e.setOpen,n=$(),c=function(e,t){"clickaway"!==t&&a(!1)};return r.a.createElement("div",{className:n.root}
1,r.a.createElement(L.a,{anchorOrigin:{vertical:"top",horizontal:"right"},open:t,autoHideDuration:6e3,onClose:c},r.a.createElement(W.a,{onClose:c,severity:"success",elevation:6,variant:"filled"},"Transaction successfully created.")))},M=function(e){var t=new Date(e),a="".concat(t.getMonth()+1),n="".concat(t.getDate()),r=t.getFullYear();return a.length<2&&(a="0".concat(a)),n.length<2&&(n="0".concat(n)),[r,a,n].join("-")},G=Object(h.a)((function(){return{radioGroup:{display:"flex",justifyContent:"center",marginBottom:"-10px"},button:{marginTop:"20px"}}})),z={amount:"",category:"",type:"Income",date:M(new Date)},U=function(){var e=G(),t=Object(n.useContext)(d).addTransaction,a=Object(n.useState)(z),c=Object(i.a)(a,2),o=c[0],u=c[1],m=Object(l.useSpeechContext)().segment,s=r.a.useState(!1),p=Object(i.a)(s,2),y=p[0],b=p[1],E=function(){!Number.isNaN(Number(o.amount))&&o.date.includes("-")&&(I.map((function(e){return e.type})).includes(o.category)?u(Object(A.a)(Object(A.a)({},o),{},{type:"Income"})):T.map((function(e){return e.type})).includes(o.category)&&u(Object(A.a)(Object(A.a)({},o),{},{type:"Expense"})),b(!0),t(Object(A.a)(Object(A.a)({},o),{},{amount:Number(o.amount),id:Object(J.a)()})),u(z))};Object(n.useEffect)((function(){if(m){if("add_expense"===m.intent.intent)u(Object(A.a)(Object(A.a)({},o),{},{type:"Expense"}));else if("add_income"===m.intent.intent)u(Object(A.a)(Object(A.a)({},o),{},{type:"Income"}));else{if(m.isFinal&&"create_transaction"===m.intent.intent)return E();if(m.isFinal&&"cancel_transaction"===m.intent.intent)return u(z)}m.entities.forEach((function(e){var t="".concat(e.value.charAt(0)).concat(e.value.slice(1).toLowerCase());switch(e.type){case"amount":u(Object(A.a)(Object(A.a)({},o),{},{amount:e.value}));break;case"category":I.map((function(e){return e.type})).includes(t)?u(Object(A.a)(Object(A.a)({},o),{},{type:"Income",category:t})):T.map((function(e){return e.type})).includes(t)&&u(Object(A.a)(Object(A.a)({},o),{},{type:"Expense",category:t}));break;case"date":u(Object(A.a)(Object(A.a)({},o),{},{date:e.value}))}})),m.isFinal&&o.amount&&o.category&&o.type&&o.date&&E()}}),[m]);var g="Income"===o.type?I:T;return r.a.createElement(f.a,{container:!0,spacing:2},r.a.createElement(H,{open:y,setOpen:b}),r.a.createElement(f.a,{item:!0,xs:12},r.a.createElement(O.a,{align:"center",variant:"subtitle2",gutterBottom:!0},m?r.a.createElement("div",{className:"segment"},m.words.map((function(e){return e.value})).join(" ")):null)),r.a.createElement(f.a,{item:!0,xs:6},r.a.createElement(D.a,{fullWidth:!0},r.a.createElement(B.a,null,"Type"),r.a.createElement(P.a,{value:o.type,onChange:function(e){return u(Object(A.a)(Object(A.a)({},o),{},{type:e.target.value}))}},r.a.createElement(R.a,{value:"Income"},"Income"),r.a.createElement(R.a,{value:"Expense"},"Expense")))),r.a.createElement(f.a,{item:!0,xs:6},r.a.createElement(D.a,{fullWidth:!0},r.a.createElement(B.a,null,"Category"),r.a.createElement(P.a,{value:o.category,onChange:function(e){return u(Object(A.a)(Object(A.a)({},o),{},{category:e.target.value}))}},g.map((function(e){return r.a.createElement(R.a,{key:e.type,value:e.type},e.type)}))))),r.a.createElement(f.a,{item:!0,xs:6},r.a.createElement(_.a,{type:"number",label:"Amount",value:o.amount,onChange:function(e){return u(Object(A.a)(Object(A.a)({},o),{},{amount:e.target.value}))},fullWidth:!0})),r.a.createElement(f.a,{item:!0,xs:6},r.a.createElement(_.a,{fullWidth:!0,label:"Date",type:"date",value:o.date,onChange:function(e){return u(Object(A.a)(Object(A.a)({},o),{},{date:M(e.target.value)}))}})),r.a.createElement(F.a,{className:e.button,variant:"outlined",color:"primary",fullWidth:!0,onClick:E},"Create"))},V=a(435),Y=a(438),q=a(387),K=a(439),Q=a(451),X=a(441),Z=a(442),ee=a(430),te=a(440),ae=a(443),ne=a(97),re=a(96),ce=Object(h.a)((function(e){return{avatarIncome:{color:"#fff",backgroundColor:ne.a[500]},avatarExpense:{color:e.palette.getContrastText(re.a[500]),backgroundColor:re.a[500]},list:{maxHeight:"150px",overflow:"auto"}}})),oe=function(){var e=ce(),t=Object(n.useContext)(d),a=t.transactions,c=t.deleteTransaction;return r.a.createElement(V.a,{dense:!1,className:e.list},a.map((function(t){return r.a.createElement(Y.a,{direction:"down",in:!0,mountOnEnter:!0,unmountOnExit:!0,key:t.id},r.a.createElement(q.a,null,r.a.createElement(K.a,null,r.a.createElement(Q.a,{className:"Income"===t.type?e.avatarIncome:e.avatarExpense}
1,r.a.createElement(te.a,null))),r.a.createElement(X.a,{primary:t.category,secondary:"$".concat(t.amount," - ").concat(t.date)}),r.a.createElement(Z.a,null,r.a.createElement(ee.a,{edge:"end","aria-label":"delete",onClick:function(){return c(t.id)}},r.a.createElement(ae.a,null)))))})))},le=Math.round(Math.random()),ie=function(){return r.a.createElement("div",{elevation:3,style:{textAlign:"center",padding:"0 10%"}},"Try saying: ",r.a.createElement("br",null),"Add ",le?"Income ":"Expense ","for ",le?"$100 ":"$50 ","in Category ",le?"Salary ":"Travel ","for ",le?"Monday ":"Thursday ")},ue=function(){var e=w(),t=Object(n.useContext)(d).balance;return r.a.createElement(b.a,{className:e.root},r.a.createElement(E.a,{title:"Expense Tracker",subheader:"Powered by Speechly"}),r.a.createElement(g.a,null,r.a.createElement(O.a,{align:"center",variant:"h5"},"Total Balance $",t),r.a.createElement(O.a,{variant:"subtitle1",style:{lineHeight:"1.5em",marginTop:"20px"}},r.a.createElement(ie,null)),r.a.createElement(k.a,{className:e.divider}),r.a.createElement(U,null)),r.a.createElement(g.a,{className:e.cartContent},r.a.createElement(f.a,{container:!0,spacing:2},r.a.createElement(f.a,{item:!0,xs:12},r.a.createElement(oe,null)))))},me=a(16),se=Object(h.a)((function(e){return{desktop:Object(me.a)({},e.breakpoints.up("sm"),{display:"none"}),mobile:Object(me.a)({},e.breakpoints.down("sm"),{display:"none"}),main:Object(me.a)({},e.breakpoints.up("sm"),{paddingBottom:"5%"}),last:Object(me.a)({},e.breakpoints.down("sm"),{marginBottom:e.spacing(3),paddingBottom:"200px"}),grid:{"& > *":{margin:e.spacing(2)}}}})),de=function(){var e=se(),t=Object(l.useSpeechContext)().speechState,a=Object(n.useRef)(null);return Object(n.useEffect)((function(){t===l.SpeechState.Recording&&a.current.scrollIntoView()}),[t]),r.a.createElement("div",null,r.a.createElement(f.a,{className:e.grid,container:!0,spacing:0,alignItems:"center",justify:"center",style:{height:"100vh"}},r.a.createElement(f.a,{item:!0,xs:12,sm:4,className:e.mobile},r.a.createElement(S,{title:"Income"})),r.a.createElement(f.a,{ref:a,item:!0,xs:12,sm:3,className:e.main},r.a.createElement(ue,null)),r.a.createElement(f.a,{item:!0,xs:12,sm:4,className:e.desktop},r.a.createElement(S,{title:"Income"})),r.a.createElement(f.a,{item:!0,xs:12,sm:4,className:e.last},r.a.createElement(S,{title:"Expense"})),r.a.createElement(y.PushToTalkButtonContainer,null,r.a.createElement(y.PushToTalkButton,null))))};a(383);o.a.render(r.a.createElement(l.SpeechProvider,{appId:"7c4aee08-1073-4a32-b862-ebe1850e0732",language:"en-US"},r.a.createElement(p,null,r.a.createElement(de,null))),document.getElementById("root"))}},[[199,1,2]]]); 2//# sourceMappingURL=main.9ad3f2d7.chunk.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.