aboutsummaryrefslogblamecommitdiff
path: root/src/App.js
blob: 2f9624fab448e5a59a39a9ddddf39c3a2a6c78cd (plain) (tree)
1
2
3
4
5
6
7
8
9
10

                                   


                                             
                                              
                                                                 


                                                                            




                                                        











                                                                   

                                                         
                          



                                                         



                                                                           







                                


                              


     

                                            
                                         







                          





















                                                                   



                           
                   
                     
      

                                   





                            


     






                                         
                                   









                                              
                                                        

                                                                                 






















                                                           
                        
                                                                                    




                                                 










                                                            
                                                           








                                                                          
                                                                                                   

                                                                   
                                                             
                                           
                                                                       

























                                                                                                               
                                                               

                                  
                                                 








                                                                


                                                                                 
















                                                                                                       
                                                                                                      











                                                                         


                                                                                       
                                 

                                                                 
                                 
                                                                                                                              





                                                                                                


                                                                 
                                           
                                             
                                                     

                                                                                                           
                                                                                                               
                                                  
                                                                                     


                                                                                                    









                                                                                  
                          

















































                                                                                                                            
                           
                                                                 
                                                                     












                                             
import React from 'react';
import PropTypes from 'prop-types';
import 'typeface-roboto';
import 'react-dates/initialize';
import 'react-dates/lib/css/_datepicker.css';
import { DateRangePicker } from 'react-dates';
import { withStyles, withTheme } from '@material-ui/core/styles';
import { MuiThemeProvider, createMuiTheme } from '@material-ui/core/styles';
import orange from '@material-ui/core/colors/orange';
import cyan from '@material-ui/core/colors/cyan';
import CssBaseline from '@material-ui/core/CssBaseline';
import AppBar from '@material-ui/core/AppBar';
import Toolbar from '@material-ui/core/Toolbar';
import TextField from '@material-ui/core/TextField';
import Typography from '@material-ui/core/Typography';
import Table from '@material-ui/core/Table';
import TableBody from '@material-ui/core/TableBody';
import TableRow from '@material-ui/core/TableRow';
import TableCell from '@material-ui/core/TableCell';
import TableHead from '@material-ui/core/TableHead';
import TablePagination from '@material-ui/core/TablePagination';
import Paper from '@material-ui/core/Paper';
import Button from '@material-ui/core/Button';
import FormControl from '@material-ui/core/FormControl';
import FormGroup from '@material-ui/core/FormGroup';
import Grid from '@material-ui/core/Grid';
import DeleteOutlinedIcon from '@material-ui/icons/DeleteOutlined';
import AddCircleIcon from '@material-ui/icons/AddCircle';
import IconButton from '@material-ui/core/IconButton';
import Logo from './Logo';
import * as gapi from './gapi';
import { Pattern, PatternEntry } from './pattern';
import PieChart from './Chart';
import { CalendarField, EventField } from './RegexField';

const default_chart_data = [{name: 'Work', value: 10, color: cyan[300]},
                            {name: 'Wasted', value: 10, color: cyan[300]}];

const theme = createMuiTheme({
    palette: {
        primary: {
            light: orange[300],
            main: orange[500],
            dark: orange[700],
            contrastText: "#fff"
        }
    },
    typography: {
        useNextVariants: true,
    }
});

function filterPatterns(patterns, calName) {
    return patterns.filter(p => {
        return p.cal.regex.test(calName);
    });
}

const styles = theme => ({
    root: {
        display: 'flex',
        height