aboutsummaryrefslogtreecommitdiff
path: root/build/static/js/main.f88964ab.chunk.js
diff options
context:
space:
mode:
Diffstat (limited to 'build/static/js/main.f88964ab.chunk.js')
-rw-r--r--build/static/js/main.f88964ab.chunk.js2
1 files changed, 0 insertions, 2 deletions
diff --git a/build/static/js/main.f88964ab.chunk.js b/build/static/js/main.f88964ab.chunk.js
deleted file mode 100644
index 05d81ef..0000000
--- a/build/static/js/main.f88964ab.chunk.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{309:function(e,t,a){e.exports=a(663)},663:function(e,t,a){"use strict";a.r(t);var n=a(1),r=a.n(n),s=a(28),l=a.n(s),i=a(102),o=a(101),c=a(34),u=a(38),m=a(78),d=a(74),p=a(79),h=(a(314),a(316),a(342),a(286)),g=a(31),f=a(99),v=a.n(f),E=a(307),y=a.n(E),b=a(306),w=a.n(b),P=a(173),C=a.n(P),x=a(81),O=a.n(x),j=a(177),S=a.n(j),k=a(93),D=a.n(k),R=a(104),N=a.n(R),T=a(41),B=a.n(T),I=a(308),M=a.n(I),G=a(174),W=a.n(G),F=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"))))))},z=(a(287),"https://www.googleapis.com/calendar/v3");function A(e){return Object.entries(e).filter(function(e){var t=Object(i.a)(e,2);t[0];return t[1]}).map(function(e){var t=Object(i.a)(e,2),a=t[0],n=t[1];return"".concat(encodeURIComponent(a),"=").concat(encodeURIComponent(n))}).join("&")}function _(){return new Promise(function(e){return chrome.identity.getAuthToken({interactive:!0},function(t){return e(t)})})}function q(e){return fetch("".concat(z,"/users/me/calendarList?").concat(A({access_token:e})),{method:"GET",async:!0}).then(function(e){return e.json()}).then(function(e){return e.items})}function L(e){return fetch("".concat(z,"/colors?").concat(A({access_token:e})),{method:"GET",async:!0}).then(function(e){return e.json()})}var U="updatePatterns",$="getPatterns",H="updateCalendars",J="getCalendars",K="getCalEvents",V=Object.freeze({updatePatterns:Symbol(U),getPatterns:Symbol($),updateCalendars:Symbol(H),getCalendars:Symbol(J),getCalEvents:Symbol(K)});function X(e){switch(e){case V.updatePatterns:return U;case V.getPatterns:return $;case V.updateCalendars:return H;case V.getCalendars:return J;case V.getCalEvents:return K}}var Y=function(){function e(t,a,n){Object(c.a)(this,e),this.id=t,this.type=a,this.data=n}return Object(u.a)(e,[{key:"genResp",value:function(t){return new e(this.id,this.type,t)}},{key:"deflate",value:function(){return{id:this.id,type:X(this.type),data:this.data}}}]),e}();Y.inflate=function(e){return new Y(e.id,function(e){switch(e){case U:return V.updatePatterns;case $:return V.getPatterns;case H:return V.updateCalendars;case J:return V.getCalendars;case K:return V.getCalEvents}}(e.type),e.data)};var Q=function e(t){var a=this;Object(c.a)(this,e),this.sendMsg=function(e){var t,n,r=e.type,s=e.data,l=a.requestCallback,i=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 Y(n,r,s).deflate()),i};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}},Z=function(){function e(t,a,n,r){Object(c.a)(this,e),this.id=t,this.isRegex=a,this.value=n,this.label=r}return Object(u.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}();Z.emptyPattern=function(){return new Z(0,!0,"",null)},Z.anyPattern=function(){return new Z("any",!0,".*","Any")},Z.revive=function(e){return new Z(e.id,e.isRegex,e.value,e.label)};var ee=function e(t,a,n,r){Object(c.a)(this,e),this.name=t,this.idx=a,this.cal=n,this.event=r};ee.defaultPatternEntry=function(e){return new ee("",e,Z.emptyPattern(),Z.anyPattern())},ee.revive=function(e){return new ee(e.name,e.idx,Z.revive(e.cal),Z.revive(e.event))};var te=a(300),ae=a.n(te),ne=a(667),re=a(665),se=a(664),le=a(562);function ie(e){var t=e.cx,a=e.cy,n=e.x,s=e.y,l=e.fill,i=e.name,o="middle",c=0,u=0;return n<t-2?(c=-5,o="end"):n>t+2&&(c=5,o="start"),s<a-2?u=-5:s>a+2&&(u=10),r.a.createElement("text",{x:n,y:s,dx:c,dy:u,fill:l,textAnchor:o},"".concat(i))}var oe=Object(g.withStyles)(function(e){return{pieChart:{margin:"0 auto"}}})(function(e){return r.a.createElement(B.a,{container:!0,spacing:0},r.a.createElement(B.a,{item:!0,xs:12,lg:6},r.a.createElement("div",{className:e.classes.patternTableWrapper},r.a.createElement(ne.a,{width:400,height:250,className:e.classes.pieChart},r.a.createElement(re.a,{data:e.patternGraphData,dataKey:"value",cx:200,cy:125,outerRadius:60,fill:ae.a[300],label:ie}),r.a.createElement(se.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))),r.a.createElement(B.a,{item:!0,xs:12,lg:6},r.a.createElement("div",{className:e.classes.patternTableWrapper},r.a.createElement(ne.a,{width:400,height:250,className:e.classes.pieChart},r.a.createElement(re.a,{data:e.calendarGraphData,dataKey:"value",cx:200,cy:125,innerRadius:40,outerRadius:70,fill:v.a[300],label:ie},e.calendarGraphData.map(function(e,t){return r.a.createElement(le.a,{key:t,fill:e.color})})),r.a.createElement(se.a,{formatter:function(e){return"".concat(e.toFixed(2)," hr")}})))))}),ce=a(137),ue=a.n(ce),me=a(302),de=a.n(me),pe=a(304),he=a.n(pe),ge=a(140),fe=a.n(ge),ve=a(100),Ee=a.n(ve),ye=a(303),be=a.n(ye),we=a(305),Pe=a.n(we),Ce=a(301),xe=a.n(Ce),Oe=a(132),je=a.n(Oe),Se=a(172),ke=a.n(Se),De=function(e){function t(){return Object(c.a)(this,t),Object(m.a)(this,Object(d.a)(t).apply(this,arguments))}return Object(p.a)(t,e),Object(u.a)(t,[{key:"render",value:function(){var e=this,t=this.props.classes,a=[],n=this.props.options,s=new Z.emptyPattern;for(var l in n[s.id]=s,n){var i=n[l].isEmpty?r.a.createElement("span",{style:{color:this.props.theme.palette.primary.dark}},"Custom"):n[l].label;a.push(r.a.createElement(ke.a,{key:l,value:l},i))}var o=this.props.value.isRegex?t.fieldRegex:t.fieldNoRegex;return r.a.createElement(D.a,null,r.a.createElement("span",null,r.a.createElement(je.a,{value:this.props.value.id,onChange:function(t){var a;a=null==n[t.target.value].label?new Z(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:o},a),null==this.props.value.label&&r.a.createElement(ue.a,{value:this.props.value.value,onChange:function(t){return e.props.onChange({target:{value:new Z(0,!0,t.target.value,null)}})}})))}}]),t}(r.a.Component),Re=Object(g.withStyles)(function(e){return{fieldNoRegex:{width:200},fieldRegex:{marginRight:"0.5em"}}})(De);var Ne=a(139),Te=a.n(Ne),Be=Object(g.createMuiTheme)({palette:{primary:{light:Te.a[300],main:Te.a[500],dark:Te.a[700],contrastText:"#fff"}},typography:{useNextVariants:!0}}),Ie=[{label:"Name",field:"name",elem:ue.a},{label:"Calendar",field:"cal",elem:Object(g.withTheme)(Be)(function(e){var t={};for(var a in e.calendars)t[a]=new Z(a,!1,e.calendars[a].name,e.calendars[a].name);return r.a.createElement(Re,{value:e.value,options:t,onChange:e.onChange,theme:e.theme})})},{label:"Event",field:"event",elem:Object(g.withTheme)(Be)(function(e){var t=Z.anyPattern(),a={};return a[t.id]=t,r.a.createElement(Re,{value:e.value,options:a,onChange:e.onChange,theme:e.theme})})}],Me=function(e){function t(){var e,a;Object(c.a)(this,t);for(var n=arguments.length,r=new Array(n),s=0;s<n;s++)r[s]=arguments[s];return(a=Object(m.a)(this,(e=Object(d.a)(t)).call.apply(e,[this].concat(r)))).state={page:0,rowsPerPage:5},a.handleChangePage=function(e,t){a.setState({page:t})},a.handleChangeRowsPerPage=function(e){a.setState({rowsPerPage:e.target.value})},a}return Object(p.a)(t,e),Object(u.a)(t,[{key:"render",value:function(){var e=this,t=this.props,a=t.classes,n=t.calendars,s=t.patterns,l=this.state,i=l.rowsPerPage,o=l.page,c=i-Math.min(i,s.length-o*i),u=s.slice(o*i,(o+1)*i).map(function(t){return r.a.createElement(fe.a,{onMouseOver:function(){return e.setState({activePattern:t.idx})},onMouseOut:function(){return e.setState({activePattern:null})}},Ie.map(function(a){var s=a.elem;return r.a.createElement(Ee.a,null,r.a.createElement(s,{value:t[a.field],calendars:n,onChange:function(n){return e.props.onUpdatePattern(a.field,t.idx,n.target.value)}}))}),r.a.createElement("span",{className:e.state.activePattern===t.idx?a.deleteButtonShow:a.deleteButtonHide},r.a.createElement(xe.a,{className:a.deleteIcon,onClick:function(){return e.props.onRemovePattern(t.idx)}})))});return r.a.createElement("div",null,r.a.createElement("div",{className:a.patternTableWrapper},r.a.createElement(de.a,{className:a.patternTable},r.a.createElement(be.a,null,r.a.createElement(fe.a,null,Ie.map(function(e,t){return r.a.createElement(Ee.a,{key:t},e.label)}))),r.a.createElement(he.a,null,u,c>0&&r.a.createElement(fe.a,{style:{height:48*c}},r.a.createElement(Ee.a,{colSpan:Ie.length}))))),r.a.createElement(Pe.a,{rowsPerPageOptions:[5,10,25],component:"div",count:s.length,rowsPerPage:i,page:o,backIconButtonProps:{"aria-label":"Previous Page"},nextIconButtonProps:{"aria-label":"Next Page"},onChangePage:this.handleChangePage,onChangeRowsPerPage:this.handleChangeRowsPerPage}))}}]),t}(r.a.Component),Ge=Object(g.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}}})(Me),We=[{name:"Work",value:10,color:v.a[300]},{name:"Wasted",value:10,color:v.a[300]}];var Fe=function(e){function t(e){var a;return Object(c.a)(this,t),(a=Object(m.a)(this,Object(d.a)(t).call(this,e))).state={patterns:[],calendars:[],timeRange:null,token:_(),patternGraphData:We,calendarGraphData:We,activePattern:null},a.updatePattern=function(e,t,n){var r=a.state.patterns;r[t][e]=n,a.setState({patterns:r}),a.msgClient.sendMsg({type:V.updatePatterns,data:r})},a.removePattern=function(e){var t=a.state.patterns;t.splice(e,1);for(var n=0;n<t.length;n++)t[n].idx=n;a.setState({patterns:t}),a.msgClient.sendMsg({type:V.updatePatterns,data:t})},a.newPattern=function(){for(var e=[ee.defaultPatternEntry(0)].concat(Object(o.a)(a.state.patterns)),t=1;t<e.length;t++)e[t].idx=t;a.setState({patterns:e}),a.msgClient.sendMsg({type:V.updatePatterns,data:e})},a.loadPatterns=function(e){a.setState({patterns:e}),a.msgClient.sendMsg({type:V.updatePatterns,data:e})},a.loadCalendars=function(e){a.setState({calendars:e}),a.msgClient.sendMsg({type:V.updateCalendars,data:e})},a.getCalEvents=function(e,t,n){return a.msgClient.sendMsg({type:V.getCalEvents,data:{id:e,start:t.getTime(),end:n.getTime()}}).then(function(e){return e.data.map(function(e){return{id:e.id,start:new Date(e.start),end:new Date(e.end)}})})},a.analyze=function(){if(a.state.startDate&&a.state.endDate){var e=a.state.startDate.startOf("day").toDate(),t=a.state.endDate.startOf("day").toDate(),n=[],r=a.state.calendars,s=function(s){var l=function(e,t){return e.filter(function(e){return e.cal.regex.test(t)})}(a.state.patterns,r[s].name);l.length>0&&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 i=0;i<a.state.patterns.length;i++)s[i]=0;var o=function(e){if(!t[e])return"continue";t[e].forEach(function(t){n[e].forEach(function(a){if(a.event.regex.test(t.summary)){l.hasOwnProperty(e)||(l[e]=0);var n=(t.end-t.start)/6e4;s[a.idx]+=n,l[e]+=n}})})};for(var c in r)o(c);for(var u=[],m=[],d=0;d<a.state.patterns.length;d++)u.push({name:a.state.patterns[d].name,value:s[d]/60});for(var c in l)m.push({name:r[c].name,value:l[c]/60,color:r[c].color.background});console.log(u,m),a.setState({patternGraphData:u,calendarGraphData:m})})}else alert("Please choose a valid time range.")},a.load=function(){var e=a.state.token,t=e.then(L).then(function(e){return e.calendar}),n=e.then(q);Promise.all([t,n]).then(function(e){var t=Object(i.a)(e,2),n=t[0],r=t[1],s={};r.forEach(function(e){s[e.id]={name:e.summary,color:n[e.colorId]}}),a.loadCalendars(s),a.loadPatterns(r.map(function(e,t){return new ee(e.summary,t,new Z(e.id,!1,e.summary,e.summary),Z.anyPattern())}))})},a.msgClient=new Q("main"),a.msgClient.sendMsg({type:V.getPatterns}).then(function(e){a.setState({patterns:e.data.map(function(e){return ee.revive(e)})})}),a.msgClient.sendMsg({type:V.getCalendars}).then(function(e){a.setState({calendars:e.data})}),a}return Object(p.a)(t,e),Object(u.a)(t,[{key:"render",value:function(){var e=this,t=this.props.classes;return r.a.createElement(g.MuiThemeProvider,{theme:Be},r.a.createElement("div",{className:t.root},r.a.createElement(w.a,{position:"absolute",className:t.appBar},r.a.createElement(C.a,{className:t.toolbar},r.a.createElement(O.a,{component:"h1",variant:"h6",color:"inherit",noWrap:!0,className:t.title},r.a.createElement(F,{style:{width:"2em",verticalAlign:"bottom",marginRight:"0.2em"}}),"Chromicle"))),r.a.createElement("main",{className:t.content},r.a.createElement("div",{className:t.appBarSpacer}),r.a.createElement(B.a,{container:!0,spacing:16},r.a.createElement(y.a,null),r.a.createElement(B.a,{item:!0,md:6,xs:12},r.a.createElement(D.a,{fullWidth:!0},r.a.createElement(N.a,null,r.a.createElement(O.a,{variant:"h6",component:"h1",gutterBottom:!0},"Event Patterns",r.a.createElement(W.a,{style:{marginBottom:"0.12em",marginLeft:"0.5em"},onClick:function(){return e.newPattern()}},r.a.createElement(M.a,null))),r.a.createElement(Ge,{patterns:this.state.patterns,calendars:this.state.calendars,onRemovePattern:this.removePattern,onUpdatePattern:this.updatePattern})),r.a.createElement(N.a,null,r.a.createElement(O.a,{variant:"h6",component:"h1",gutterBottom:!0},"Time Range"),r.a.createElement("div",{style:{textAlign:"center"}},r.a.createElement(h.DateRangePicker,{startDate:this.state.startDate,startDateId:"start_date_id",endDate:this.state.endDate,endDateId:"end_date_id",onDatesChange:function(t){var a=t.startDate,n=t.endDate;e.setState({startDate:a,endDate:n})},focusedInput:this.state.focusedInput,onFocusChange:function(t){return e.setState({focusedInput:t})},isOutsideRange:function(){return!1}}))),r.a.createElement("div",{className:t.buttonSpacer}),r.a.createElement(B.a,{container:!0,spacing:16},r.a.createElement(B.a,{item:!0,md:6,xs:12},r.a.createElement(N.a,null,r.a.createElement(S.a,{variant:"contained",color:"primary",onClick:this.load},"Load"))),r.a.createElement(B.a,{item:!0,md:6,xs:12},r.a.createElement(N.a,null,r.a.createElement(S.a,{variant:"contained",color:"primary",onClick:this.analyze},"Analyze")))))),r.a.createElement(B.a,{item:!0,md:6,xs:12},r.a.createElement(O.a,{variant:"h6",component:"h1",gutterBottom:!0},"Graph"),r.a.createElement(oe,{patternGraphData:this.state.patternGraphData,calendarGraphData:this.state.calendarGraphData}))))))}}]),t}(r.a.Component),ze=Object(g.withStyles)(function(e){return{root:{display:"flex",height:"100vh"},appBar:{zIndex:e.zIndex.drawer+1,transition:e.transitions.create(["width","margin"],{easing:e.transitions.easing.sharp,duration:e.transitions.duration.leavingScreen})},title:{flexGrow:1},sectionTitle:{flex:"0 0 auto"},appBarSpacer:e.mixins.toolbar,content:{flexGrow:1,padding:3*e.spacing.unit,overflow:"auto"},buttonSpacer:{marginBottom:4*e.spacing.unit},fab:{margin:e.spacing.unit}}})(Fe);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}$/));l.a.render(r.a.createElement(ze,null),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then(function(e){e.unregister()})}},[[309,2,1]]]);
-//# sourceMappingURL=main.f88964ab.chunk.js.map \ No newline at end of file