(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{324:function(e,t,a){e.exports=a(688)},688:function(e,t,a){"use strict";a.r(t);var n=a(1),r=a.n(n),l=a(29),s=a.n(l),o=a(30),i=a(34),c=a(50),u=a(48),d=a(51),m=(a(329),a(28)),h=a(141),p=a.n(h),g=a(320),f=a.n(g),v=a(190),y=a.n(v),E=a(49),b=a.n(E),P=a(321),C=a.n(P),w=a(193),O=a.n(w),x=a(696),S=a(694),j=a(697),k=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(151),R=a.n(D),T=Object(m.createMuiTheme)({palette:{primary:{light:R.a[300],main:R.a[500],dark:R.a[700],contrastText:"#fff"}},typography:{useNextVariants:!0}}),I=a(72),L=(a(390),a(416),a(301)),N=a(111),M=a.n(N),B=a(92),z=a.n(B),A=a(69),G=a.n(A),W=a(91),F=a.n(W),H=a(41),_=a.n(H),U=a(149),q=a.n(U),$=a(70),J=a.n($),K=a(93),V=(a(302),"https://www.googleapis.com/calendar/v3"),Y=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(K.a)(e,2);t[0];return t[1]}).map(function(e){var t=Object(K.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(K.a)(e,2),a=t[0];if(t[1])return a;throw Y.notLoggedIn})}function ee(){return null===Q?Z(!1).then(function(){Q=!0}).catch(function(){Q=!1,console.log("here")}).then(function(){return Q}):Promise.resolve(Q)}function te(){return ee().then(function(e){if(e)return Z(!1);throw Y.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 Y.otherError})}).then(function(){return Q=!1})}function ne(e){return fetch("".concat(V,"/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(V,"/colors?").concat(X({access_token:e})),{method:"GET",async:!0}).then(function(e){return e.json()})}var le="updatePatterns",se="getPatterns",oe="updateCalendars",ie="getCalendars",ce="getCalEvents",ue=Object.freeze({updatePatterns:Symbol(le),getPatterns:Symbol(se),updateCalendars:Symbol(oe),getCalendars:Symbol(ie),getCalEvents:Symbol(ce)});function de(e){switch(e){case ue.updatePatterns:return le;case ue.getPatterns:return se;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 le:return ue.updatePatterns;case se: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,l=e.data,s=a.requestCallback,o=new Promise(function(e){t=e});return n=s.ids.length>0?s.ids.pop():s.maxId++,s.inFlight[n]=t,a.port.postMessage(new me(n,r,l).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(314),ve=a.n(fe),ye=a(695),Ee=a(689),be=a(690),Pe=a(581);function Ce(e){var t=e.cx,a=e.cy,n=e.x,l=e.y,s=e.fill,o=e.name,i="middle",c=0,u=0;return nt+2&&(c=5,i="start"),la+2&&(u=10),r.a.createElement("text",{x:n,y:l,dx:c,dy:u,fill:s,textAnchor:i},"".concat(o))}var we=Object(m.withStyles)(function(e){return{pieChart:{margin:"0 auto"}}})(function(e){return r.a.createElement(_.a,{container:!0,spacing:0},r.a.createElement(_.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(Ee.a,{data:e.patternGraphData,dataKey:"value",cx:200,cy:125,outerRadius:60,fill:ve.a[300],label:Ce}),r.a.createElement(be.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))),r.a.createElement(_.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(Ee.a,{data:e.calendarGraphData,dataKey:"value",cx:200,cy:125,innerRadius:40,outerRadius:70,fill:M.a[300],label:Ce},e.calendarGraphData.map(function(e,t){return r.a.createElement(Pe.a,{key:t,fill:e.color})})),r.a.createElement(be.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))))}),Oe=a(146),xe=a.n(Oe),Se=a(147),je=a.n(Se),ke=a(148),De=a.n(ke),Re=a(62),Te=a.n(Re),Ie=a(71),Le=a.n(Ie),Ne=a(189),Me=a.n(Ne),Be=a(316),ze=a.n(Be),Ae=a(315),Ge=a.n(Ae),We=a(140),Fe=a.n(We),He=a(186),_e=a.n(He),Ue=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,l=new pe.emptyPattern;for(var s in n[l.id]=l,n){var o=n[s].isEmpty?r.a.createElement("span",{style:{color:this.props.theme.palette.primary.dark}},"Custom"):n[s].label;a.push(r.a.createElement(_e.a,{key:s,value:s},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(xe.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),qe=Object(m.withStyles)(function(e){return{fieldNoRegex:{width:200},fieldRegex:{marginRight:"0.5em"}}})(Ue);var $e=[{label:"Name",field:"name",elem:xe.a},{label:"Calendar",field:"cal",elem:Object(m.withTheme)(T)(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(qe,{value:e.value,options:t,onChange:e.onChange,theme:e.theme})})},{label:"Event",field:"event",elem:Object(m.withTheme)(T)(function(e){var t=pe.anyPattern(),a={};return a[t.id]=t,r.a.createElement(qe,{value:e.value,options:a,onChange:e.onChange,theme:e.theme})})}],Je=function(e){function t(){var e,a;Object(o.a)(this,t);for(var n=arguments.length,r=new Array(n),l=0;l0&&r.a.createElement(Te.a,{style:{height:48*c}},r.a.createElement(Le.a,{colSpan:$e.length}))))),r.a.createElement(ze.a,{rowsPerPageOptions:[5,10,25],component:"div",count:l.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),Ke=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}}})(Je),Ve=[{name:"Work",value:10,color:M.a[300]},{name:"Wasted",value:10,color:M.a[300]}];var Ye=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:Ve,calendarGraphData:Ve},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(l,e,t).then(function(e){return{id:l,events:e,patterns:s}}))};for(var s in r)l(s);Promise.all(n).then(function(e){console.log(e);var t={},n={},l={},s={};e.forEach(function(e){t[e.id]=e.events,n[e.id]=e.patterns});for(var o=0;o