Compare commits

..

5 Commits

Author SHA1 Message Date
ef3b9935a8 Update '.gitignore' 2018-08-04 21:13:14 +00:00
502121b536 Apache htaccess redirection 2018-08-04 21:12:20 +00:00
4039a74fd7 Update '.env' 2018-08-04 21:11:01 +00:00
Malar Kannan
b3358023f1 static serving under path 2018-08-03 21:57:25 +05:30
Malar Kannan
dc9c0d5e59 added configurable root directory in .env* files 2018-08-03 00:11:20 +05:30
8 changed files with 30 additions and 16 deletions

3
.env Normal file
View File

@@ -0,0 +1,3 @@
GENERATE_SOURCEMAP=false
REACT_APP_API_HOST="http://localhost:5000/test/"
REACT_APP_API_DIR="/test/"

2
.env.development Normal file
View File

@@ -0,0 +1,2 @@
REACT_APP_API_HOST="http://localhost:3000/"
REACT_APP_API_DIR="/"

1
.gitignore vendored
View File

@@ -66,6 +66,7 @@ build/Release
# Dependency directories
node_modules/
jspm_packages/
build/
# Typescript v1 declaration files
typings/

4
public/.htaccess Normal file
View File

@@ -0,0 +1,4 @@
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html [QSA,L]

2
src/Config.tsx Normal file
View File

@@ -0,0 +1,2 @@
export const apiHost = process.env.REACT_APP_API_HOST
export const apiDir = process.env.REACT_APP_API_DIR

View File

@@ -8,22 +8,23 @@ import { Container, Navbar, NavbarItem, NavbarMenu, Section } from 'bloomer';
import * as local from 'localforage';
import ServerTabLoader from './ServerTabLoader';
import ChartLoader from './ChartLoader';
import { apiDir } from './Config';
const navButton = (name: string, link: string) => (
<Link to={link}>{name}</Link>
);
const RedirectCharts = () => (<Redirect to='/charts' />);
const RedirectCharts = () => (<Redirect to={apiDir+'charts'} />);
class RouteMenu extends React.Component {
constructor(props: any) {
super(props);
this.state = {
tabList:[],
tabList: [],
chartList: [],
colorMaps:{}
colorMaps: {}
}
fetch('/config.json')
fetch(apiDir+'config.json')
.then((response) => response.text())
.then((jsonStr) => {
const jsonObj = JSON.parse(jsonStr);
@@ -38,23 +39,23 @@ class RouteMenu extends React.Component {
}
public render() {
const ConfiguredChart = () => (<ChartLoader {...this.state}/>);
const ConfiguredServerTab = () => (<ServerTabLoader {...this.state}/>);
const ConfiguredChart = () => (<ChartLoader {...this.state} />);
const ConfiguredServerTab = () => (<ServerTabLoader {...this.state} />);
return (
<Router>
<div>
<Container isFluid={true} isMarginless={true} isFullWidth={true}>
<Navbar style={{ backgroundColor:'#00D1B2' }}>
<Navbar style={{ backgroundColor: '#00D1B2' }}>
<NavbarMenu isActive={true}>
<NavbarItem >{navButton('Charts', '/charts')}</NavbarItem>
<NavbarItem>{navButton('Tables', '/tables')}</NavbarItem>
<NavbarItem >{navButton('Charts', apiDir + 'charts')}</NavbarItem>
<NavbarItem>{navButton('Tables', apiDir + 'tables')}</NavbarItem>
</NavbarMenu>
</Navbar>
</Container>
<Section isPaddingless={true}>
<Route exact={true} path="/" component={RedirectCharts} />
<Route path="/charts" component={ConfiguredChart} />
<Route path="/tables" component={ConfiguredServerTab} />
<Route exact={true} path={apiDir} component={RedirectCharts} />
<Route path={apiDir + "charts"} component={ConfiguredChart} />
<Route path={apiDir + "tables"} component={ConfiguredServerTab} />
</Section>
</div>
</Router>

View File

@@ -3,6 +3,7 @@ import { Tips } from "./Utils";
import * as _ from 'lodash';
import { Button } from 'bloomer';
// const randomColor = require('randomcolor');
import { apiDir } from './Config';
const reactcsv = require('react-csv');
const CSVLink = reactcsv.CSVLink;
import * as Papa from 'papaparse';
@@ -27,7 +28,7 @@ export default class ServerTable extends React.Component<any, any> {
colColorMap
});
}
Papa.parse(this.props.csvFile, {
Papa.parse(apiDir + this.props.csvFile, {
header: true,
download: true,
skipEmptyLines: true,

View File

@@ -2,10 +2,10 @@ import * as React from 'react';
import * as ReactDOM from 'react-dom';
import App from './App';
import './index.css';
import registerServiceWorker from './registerServiceWorker';
// import registerServiceWorker from './registerServiceWorker';
ReactDOM.render(
<App />,
document.getElementById('root') as HTMLElement
);
registerServiceWorker();
// registerServiceWorker();