aboutsummaryrefslogblamecommitdiffstats
path: root/webui/src/index.tsx
blob: c64daf0c755b576ac7d43e93e93a64afaa42a364 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
                                                          
                                                              
                                        



                               



                                                 
 
                        
                                                           

                               

                                 
                  




                                                       
   



                                  




                                                

                    
                                 
  
import { createMuiTheme } from '@material-ui/core/styles';
import ThemeProvider from '@material-ui/styles/ThemeProvider';
import ApolloClient from 'apollo-boost';
import {
  IntrospectionFragmentMatcher,
  InMemoryCache,
} from 'apollo-cache-inmemory';
import React from 'react';
import { ApolloProvider } from 'react-apollo';
import ReactDOM from 'react-dom';
import { BrowserRouter } from 'react-router-dom';

import App from './App';
import introspectionQueryResultData from './fragmentTypes';

const theme = createMuiTheme();

const client = new ApolloClient({
  uri: '/graphql',
  cache: new InMemoryCache({
    fragmentMatcher: new IntrospectionFragmentMatcher({
      introspectionQueryResultData,
    }),
  }),
});

ReactDOM.render(
  <ApolloProvider client={client}>
    <BrowserRouter>
      <ThemeProvider theme={theme}>
        <React.Suspense fallback={'Loading…'}>
          <App />
        </React.Suspense>
      </ThemeProvider>
    </BrowserRouter>
  </ApolloProvider>,
  document.getElementById('root')
);