(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{339:function(e,t,a){e.exports=a(711)},711:function(e,t,a){"use strict";a.r(t);var n=a(1),r=a.n(n),s=a(29),l=a.n(s),o=a(30),i=a(34),c=a(50),u=a(49),d=a(51),m=(a(344),a(27)),h=a(145),p=a.n(h),g=a(334),f=a.n(g),v=a(192),y=a.n(v),b=a(40),E=a.n(b),C=a(335),w=a.n(C),P=a(197),O=a.n(P),k=a(719),S=a(717),x=a(720),j=function(e){return r.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 98.905998 93.557997",version:"1.1",style:e.style},r.a.createElement("g",{id:"g13",transform:"translate(-153.533,-203.047)"},r.a.createElement("g",{id:"g29"},r.a.createElement("g",{id:"g27"},r.a.createElement("polygon",{id:"polygon7",points:"252.439,241.924 234.556,288.703 185.103,296.605 153.533,257.728 171.416,210.949 220.869,203.047 ",style:{fill:"#ff8000"}}),r.a.createElement("g",{id:"g11",transform:"translate(167.24355,224.20734)"},r.a.createElement("text",{id:"text9",style:{fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",fontStretch:"normal",fontSize:75,fontFamily:"TypoPRO Fantasque Sans Mono",fill:"#ffeade"},transform:"translate(0.586,49.072)"},"Cr"))))))},D=a(155),B=a.n(D),N=Object(m.createMuiTheme)({palette:{primary:{light:B.a[300],main:B.a[500],dark:B.a[700],contrastText:"#fff"}},typography:{useNextVariants:!0}}),R=a(75),M=(a(405),a(431),a(305)),T=a(118),I=a.n(T),L=a(53),z=a.n(L),A=a(73),G=a.n(A),W=a(95),F=a.n(W),H=a(42),V=a.n(H),_=a(153),U=a.n(_),q=a(56),Y=a.n(q),$=a(96),J=(a(306),"https://www.googleapis.com/calendar/v3"),K=Object.freeze({invalidSyncToken:Symbol("invalidSyncToken"),notLoggedIn:Symbol("notLoggedIn"),notLoggedOut:Symbol("notLoggedOut"),otherError:Symbol("otherError")});function X(e){return Object.entries(e).filter(function(e){var t=Object($.a)(e,2);t[0];return t[1]}).map(function(e){var t=Object($.a)(e,2),a=t[0],n=t[1];return"".concat(encodeURIComponent(a),"=").concat(encodeURIComponent(n))}).join("&")}var Q=null;function Z(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return new Promise(function(t){return chrome.identity.getAuthToken({interactive:e},function(e){return t([e,!chrome.runtime.lastError])})}).then(function(e){var t=Object($.a)(e,2),a=t[0];if(t[1])return a;throw K.notLoggedIn})}function ee(){return null===Q?Z(!1).then(function(){return Q=!0}).catch(function(){return Q=!1}).then(function(){return Q}):Promise.resolve(Q)}function te(){return ee().then(function(e){if(e)return Z(!1);throw K.notLoggedIn})}function ae(){return te().then(function(e){return fetch("https://accounts.google.com/o/oauth2/revoke?".concat(X({token:e})),{method:"GET",async:!0}).then(function(t){if(200===t.status)return function(e){return new Promise(function(t){return chrome.identity.removeCachedAuthToken({token:e},function(){return t()})})}(e);throw K.otherError})}).then(function(){return Q=!1})}function ne(e){return fetch("".concat(J,"/users/me/calendarList?").concat(X({access_token:e})),{method:"GET",async:!0}).then(function(e){return e.json()}).then(function(e){return e.items})}function re(e){return fetch("".concat(J,"/colors?").concat(X({access_token:e})),{method:"GET",async:!0}).then(function(e){return e.json()})}var se="updatePatterns",le="getPatterns",oe="updateCalendars",ie="getCalendars",ce="getCalEvents",ue=Object.freeze({updatePatterns:Symbol(se),getPatterns:Symbol(le),updateCalendars:Symbol(oe),getCalendars:Symbol(ie),getCalEvents:Symbol(ce)});function de(e){switch(e){case ue.updatePatterns:return se;case ue.getPatterns:return le;case ue.updateCalendars:return oe;case ue.getCalendars:return ie;case ue.getCalEvents:return ce;default:console.error("unreachable")}}var me=function(){function e(t,a,n){Object(o.a)(this,e),this.id=t,this.type=a,this.data=n}return Object(i.a)(e,[{key:"genResp",value:function(t){return new e(this.id,this.type,t)}},{key:"deflate",value:function(){return{id:this.id,type:de(this.type),data:this.data}}}]),e}();me.inflate=function(e){return new me(e.id,function(e){switch(e){case se:return ue.updatePatterns;case le:return ue.getPatterns;case oe:return ue.updateCalendars;case ie:return ue.getCalendars;case ce:return ue.getCalEvents;default:console.error("unreachable")}}(e.type),e.data)};var he=function e(t){var a=this;Object(o.a)(this,e),this.sendMsg=function(e){var t,n,r=e.type,s=e.data,l=a.requestCallback,o=new Promise(function(e){t=e});return n=l.ids.length>0?l.ids.pop():l.maxId++,l.inFlight[n]=t,a.port.postMessage(new me(n,r,s).deflate()),o};var n=chrome.runtime.connect({name:t});n.onMessage.addListener(function(e){console.log(e);var t=(e.type,a.requestCallback),n=t.inFlight[e.id];console.assert(void 0!==n),t.ids.push(e.id),n(e)}),this.port=n,this.requestCallback={inFlight:{},ids:[],maxId:0}},pe=function(){function e(t,a,n,r){Object(o.a)(this,e),this.id=t,this.isRegex=a,this.value=n,this.label=r}return Object(i.a)(e,[{key:"regex",get:function(){return new RegExp(this.isRegex?this.value:"^".concat(this.value,"$"))}},{key:"isEmpty",get:function(){return null===this.label}}]),e}();pe.emptyPattern=function(){return new pe(0,!0,"",null)},pe.anyPattern=function(){return new pe("any",!0,".*","Any")},pe.revive=function(e){return new pe(e.id,e.isRegex,e.value,e.label)};var ge=function e(t,a,n,r){Object(o.a)(this,e),this.name=t,this.idx=a,this.cal=n,this.event=r};ge.defaultPatternEntry=function(e){return new ge("",e,pe.emptyPattern(),pe.anyPattern())},ge.revive=function(e){return new ge(e.name,e.idx,pe.revive(e.cal),pe.revive(e.event))};var fe=a(318),ve=a.n(fe),ye=a(718),be=a(713),Ee=a(712),Ce=a(596);function we(e){var t=e.cx,a=e.cy,n=e.x,s=e.y,l=e.fill,o=e.name,i="middle",c=0,u=0;return nt+2&&(c=5,i="start"),sa+2&&(u=10),r.a.createElement("text",{x:n,y:s,dx:c,dy:u,fill:l,textAnchor:i},"".concat(o))}var Pe=Object(m.withStyles)(function(e){return{pieChart:{margin:"0 auto"}}})(function(e){return r.a.createElement(V.a,{container:!0,spacing:0},r.a.createElement(V.a,{item:!0,xs:12,lg:6},r.a.createElement("div",{className:e.classes.patternTableWrapper},r.a.createElement(ye.a,{width:400,height:250,className:e.classes.pieChart},r.a.createElement(be.a,{data:e.patternGraphData,dataKey:"value",cx:200,cy:125,outerRadius:60,fill:ve.a[300],label:we}),r.a.createElement(Ee.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))),r.a.createElement(V.a,{item:!0,xs:12,lg:6},r.a.createElement("div",{className:e.classes.patternTableWrapper},r.a.createElement(ye.a,{width:400,height:250,className:e.classes.pieChart},r.a.createElement(be.a,{data:e.calendarGraphData,dataKey:"value",cx:200,cy:125,innerRadius:40,outerRadius:70,fill:I.a[300],label:we},e.calendarGraphData.map(function(e,t){return r.a.createElement(Ce.a,{key:t,fill:e.color})})),r.a.createElement(Ee.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))))}),Oe=a(150),ke=a.n(Oe),Se=a(151),xe=a.n(Se),je=a(152),De=a.n(je),Be=a(64),Ne=a.n(Be),Re=a(74),Me=a.n(Re),Te=a(191),Ie=a.n(Te),Le=a(320),ze=a.n(Le),Ae=a(319),Ge=a.n(Ae),We=a(144),Fe=a.n(We),He=a(188),Ve=a.n(He),_e=function(e){function t(){return Object(o.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"render",value:function(){var e=this,t=this.props.classes,a=[],n=this.props.options,s=new pe.emptyPattern;for(var l in n[s.id]=s,n){var o=n[l].isEmpty?r.a.createElement("span",{style:{color:this.props.theme.palette.primary.dark}},"Custom"):n[l].label;a.push(r.a.createElement(Ve.a,{key:l,value:l},o))}var i=this.props.value.isRegex?t.fieldRegex:t.fieldNoRegex;return r.a.createElement(G.a,null,r.a.createElement("span",null,r.a.createElement(Fe.a,{value:this.props.value.id,onChange:function(t){var a;a=null==n[t.target.value].label?new pe(0,!0,e.props.value.isRegex?e.props.value.value:"^".concat(e.props.value.value,"$"),null):n[t.target.value],e.props.onChange({target:{value:a}})},className:i},a),null==this.props.value.label&&r.a.createElement(ke.a,{value:this.props.value.value,onChange:function(t){return e.props.onChange({target:{value:new pe(0,!0,t.target.value,null)}})}})))}}]),t}(r.a.Component),Ue=Object(m.withStyles)(function(e){return{fieldNoRegex:{width:200},fieldRegex:{marginRight:"0.5em"}}})(_e);var qe=[{label:"Name",field:"name",elem:ke.a},{label:"Calendar",field:"cal",elem:Object(m.withTheme)(N)(function(e){var t={};for(var a in e.calendars)t[a]=new pe(a,!1,e.calendars[a].name,e.calendars[a].name);return r.a.createElement(Ue,{value:e.value,options:t,onChange:e.onChange,theme:e.theme})})},{label:"Event",field:"event",elem:Object(m.withTheme)(N)(function(e){var t=pe.anyPattern(),a={};return a[t.id]=t,r.a.createElement(Ue,{value:e.value,options:a,onChange:e.onChange,theme:e.theme})})}],Ye=function(e){function t(){var e,a;Object(o.a)(this,t);for(var n=arguments.length,r=new Array(n),s=0;s0&&r.a.createElement(Ne.a,{style:{height:48*c}},r.a.createElement(Me.a,{colSpan:qe.length}))))),r.a.createElement(ze.a,{rowsPerPageOptions:[5,10,25],component:"div",count:s.length,rowsPerPage:o,page:i,backIconButtonProps:{"aria-label":"Previous Page"},nextIconButtonProps:{"aria-label":"Next Page"},onChangePage:this.handleChangePage,onChangeRowsPerPage:this.handleChangeRowsPerPage}))}}]),t}(r.a.Component),$e=Object(m.withStyles)(function(e){return{deleteButtonShow:{position:"absolute",right:0,height:48},deleteButtonHide:{display:"none"},deleteIcon:{height:"100%",cursor:"pointer"},patternTableWrapper:{overflowX:"auto",overflowY:"hidden"},patternTable:{minWidth:600}}})(Ye),Je=a(338),Ke=a(5),Xe=a.n(Ke),Qe=a(323),Ze=a.n(Qe),et=a(324),tt=a.n(et),at=a(194),nt=a.n(at),rt=a(321),st=a.n(rt),lt=a(322),ot=a.n(lt),it=a(325),ct=a.n(it),ut={error:st.a,warning:ot.a};var dt=Object(m.withStyles)(function(e){return{error:{backgroundColor:e.palette.error.dark},warning:{backgroundColor:Ze.a[700]},icon:{fontSize:20},iconVariant:{opacity:.9,marginRight:e.spacing.unit},message:{display:"flex",alignItems:"center"}}})(function(e){var t=e.classes,a=e.className,n=e.message,s=e.variant,l=e.open,o=e.onClose,i=Object(Je.a)(e,["classes","className","message","variant","open","onClose"]),c=ut[s];return r.a.createElement(tt.a,{anchorOrigin:{vertical:"top",horizontal:"center"},open:l,autoHideDuration:1e4,onClose:o},r.a.createElement(nt.a,Object.assign({className:Xe()(t[s],a),"aria-describedby":"snackbar-content",message:r.a.createElement("span",{id:"snackbar-content",className:t.message},r.a.createElement(c,{className:Xe()(t.icon,t.iconVariant)}),n),action:[r.a.createElement(Y.a,{key:"close","aria-label":"Close",color:"inherit",className:t.close,onClick:o},r.a.createElement(ct.a,{className:t.icon}))]},i)))}),mt=[{name:"Work",value:10,color:I.a[300]},{name:"Wasted",value:10,color:I.a[300]}];var ht=function(e){function t(e){var a;return Object(o.a)(this,t),(a=Object(c.a)(this,Object(u.a)(t).call(this,e))).state={patterns:[],calendars:{},startDate:null,endDate:null,patternGraphData:mt,calendarGraphData:mt,snackBarOpen:!1,snackBarMsg:"unknown",snackBarVariant:"error"},a.updatePattern=function(e,t,n){var r=a.state.patterns;r[t][e]=n,a.msgClient.sendMsg({type:ue.updatePatterns,data:{id:"analyze",patterns:r}}).then(function(){return a.setState({patterns:r})})},a.removePattern=function(e){var t=a.state.patterns;t.splice(e,1);for(var n=0;n0&&n.push(a.getCalEvents(s,e,t).then(function(e){return{id:s,events:e,patterns:l}}))};for(var l in r)s(l);Promise.all(n).then(function(e){console.log(e);var t={},n={},s={},l={};e.forEach(function(e){t[e.id]=e.events,n[e.id]=e.patterns});for(var o=0;o