diff --git a/src/components/ToolButtonList/index.tsx b/src/components/ToolButtonList/index.tsx index 59f43a6..68a69b9 100644 --- a/src/components/ToolButtonList/index.tsx +++ b/src/components/ToolButtonList/index.tsx @@ -15,6 +15,12 @@ interface State { show: boolean; } +// Default server URL (mostly useful while development) +let serverUrl: string = "http://gl-backend.svtz.ru:5000"; +if ("REACT_APP_SERVER_PROTOCOL" in process.env && "REACT_APP_SERVER_HOST" in process.env && "REACT_APP_SERVER_PORT" in process.env) { + serverUrl = process.env.REACT_APP_SERVER_PROTOCOL + '://' + process.env.REACT_APP_SERVER_HOST + ':' + process.env.REACT_APP_SERVER_PORT; +} + export class ToolButtonList extends Component<{}, State> { public toolButtons?: { @@ -58,9 +64,9 @@ export class ToolButtonList extends Component<{}, State> { }); } - private setGraphCreationList() { + private setGraphCreationList() { const setImg = (title: string): string => - `http://gl-backend.svtz.ru:5000/odata/downloadImage(name='${title}.png')`; + `${serverUrl}/odata/downloadImage(name='${title}.png')`; let list: { [index: string]: () => void } = {}; list[setImg('add_vertex')] = () => { console.log(adapter); @@ -80,7 +86,7 @@ export class ToolButtonList extends Component<{}, State> { private setDefaultButtonList() { const setImg = (title: string): string => - `http://gl-backend.svtz.ru:5000/odata/downloadImage(name='${title}.png')`; + `${serverUrl}/odata/downloadImage(name='${title}.png')`; let list: { [index: string]: () => void } = {}; list[setImg('Help')] = () => { this.dispatch({ diff --git a/src/redux/store.ts b/src/redux/store.ts index e826ea0..b7fbd7a 100644 --- a/src/redux/store.ts +++ b/src/redux/store.ts @@ -4,10 +4,16 @@ import { composeWithDevTools } from 'redux-devtools-extension'; import rootReducer, { RootState } from './rootReducer'; import { init } from 'graphlabs.core.notifier'; +// '!': https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-0.html#non-null-assertion-operator +// http://gl-backend.svtz.ru:5000 is default server URL (mostly useful while development) +let serverProtocol: string = 'REACT_APP_SERVER_PROTOCOL' in process.env ? process.env.REACT_APP_SERVER_PROTOCOL! : 'http'; +let serverHost: string = 'REACT_APP_SERVER_HOST' in process.env ? process.env.REACT_APP_SERVER_HOST! : 'gl-backend.svtz.ru'; +let serverPort: number = 'REACT_APP_SERVER_PORT' in process.env ? parseInt(process.env.REACT_APP_SERVER_PORT!) : 5000; + init({ - protocol: 'http', - host: 'gl-backend.svtz.ru', - port: 5000, + protocol: serverProtocol, + host: serverHost, + port: serverPort, path: 'odata/taskVariantLogs' });