1
0
Fork 0
mirror of https://git.rwth-aachen.de/acs/public/villas/web/ synced 2025-03-09 00:00:01 +01:00

Merge branch 'new-api-restructuring' into new-api-add-scenario

# Conflicts:
#	src/app.js
This commit is contained in:
Sonja Happ 2019-08-20 15:06:42 +02:00
commit 67b7b876fd
118 changed files with 367 additions and 367 deletions

View file

@ -1,22 +1,22 @@
import { expect } from 'chai';
import createControls from '../../../components/dialogs/edit-widget-control-creator';
import EditWidgetTextControl from '../../../components/dialogs/edit-widget-text-control';
import EditWidgetColorControl from '../../../components/dialogs/edit-widget-color-control';
import EditWidgetTimeControl from '../../../components/dialogs/edit-widget-time-control';
import EditImageWidgetControl from '../../../components/dialogs/edit-widget-image-control';
import EditWidgetSimulationControl from '../../../components/dialogs/edit-widget-simulation-control';
import EditWidgetSignalControl from '../../../components/dialogs/edit-widget-signal-control';
import EditWidgetSignalsControl from '../../../components/dialogs/edit-widget-signals-control';
import EditWidgetOrientation from '../../../components/dialogs/edit-widget-orientation';
import EditWidgetTextSizeControl from '../../../components/dialogs/edit-widget-text-size-control';
import EditWidgetAspectControl from '../../../components/dialogs/edit-widget-aspect-control';
import EditWidgetCheckboxControl from '../../../components/dialogs/edit-widget-checkbox-control';
import EditWidgetMinMaxControl from '../../../components/dialogs/edit-widget-min-max-control';
import EditWidgetColorZonesControl from '../../../components/dialogs/edit-widget-color-zones-control';
import EditWidgetHTMLContent from '../../../components/dialogs/edit-widget-html-content';
import EditWidgetNumberControl from '../../../components/dialogs/edit-widget-number-control';
import createControls from '../../widget/edit-widget-control-creator';
import EditWidgetTextControl from '../../widget/edit-widget-text-control';
import EditWidgetColorControl from '../../widget/edit-widget-color-control';
import EditWidgetTimeControl from '../../widget/edit-widget-time-control';
import EditImageWidgetControl from '../../widget/edit-widget-image-control';
import EditWidgetSimulationControl from '../../widget/edit-widget-simulation-control';
import EditWidgetSignalControl from '../../widget/edit-widget-signal-control';
import EditWidgetSignalsControl from '../../widget/edit-widget-signals-control';
import EditWidgetOrientation from '../../widget/edit-widget-orientation';
import EditWidgetTextSizeControl from '../../widget/edit-widget-text-size-control';
import EditWidgetAspectControl from '../../widget/edit-widget-aspect-control';
import EditWidgetCheckboxControl from '../../widget/edit-widget-checkbox-control';
import EditWidgetMinMaxControl from '../../widget/edit-widget-min-max-control';
import EditWidgetColorZonesControl from '../../widget/edit-widget-color-zones-control';
import EditWidgetHTMLContent from '../../widget/edit-widget-html-content';
import EditWidgetNumberControl from '../../widget/edit-widget-number-control';
describe('edit widget control creator', () => {
it('should not return null', () => {

View file

@ -28,30 +28,30 @@ import { Redirect, Route } from 'react-router-dom';
import { Col } from 'react-bootstrap';
import { Hidden } from 'react-grid-system'
import AppDispatcher from '../app-dispatcher';
import ScenarioStore from '../stores/scenario-store';
import SimulatorStore from '../stores/simulator-store';
import UserStore from '../stores/user-store';
import NotificationsDataManager from '../data-managers/notifications-data-manager';
import AppDispatcher from './common/app-dispatcher';
import ScenarioStore from './scenario/scenario-store';
import SimulatorStore from './simulator/simulator-store';
import UserStore from './user/user-store';
import NotificationsDataManager from './common/data-managers/notifications-data-manager';
import Home from '../components/home';
import Header from '../components/header';
import Footer from '../components/footer';
import SidebarMenu from '../components/menu-sidebar';
import HeaderMenu from '../components/header-menu';
import Home from './common/home';
import Header from './common/header';
import Footer from './common/footer';
import SidebarMenu from './common/menu-sidebar';
import HeaderMenu from './common/header-menu';
//import Projects from './projects';
//import Project from './project';
import Simulators from './simulators';
import Visualization from './visualization';
//import Simulations from './simulations';
//import Simulation from './simulation';
import Scenarios from './scenarios'
import Scenario from './scenario'
import SimulationModel from './simulation-model';
import Users from './users';
//import Projects from './project/projects';
//import Project from './project/project';
import Simulators from './simulator/simulators';
import Visualization from './visualization/visualization';
//import Simulations from './simulation/simulations';
//import Simulation from './simulation/simulation';
import Scenarios from './scenario/scenarios';
import Scenario from './scenario/scenario';
import SimulationModel from './simulationmodel/simulation-model';
import Users from './user/users';
import '../styles/app.css';
import './styles/app.css';
class App extends React.Component {
@ -167,6 +167,6 @@ class App extends React.Component {
//<Route exact path="/simulations" component={Simulations} />
//<Route path="/simulations/:simulation" component={Simulation} />
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('./common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(App));
//DragDropContext(HTML5Backend)(Container.create(App));

View file

@ -21,7 +21,7 @@
import { ReduceStore } from 'flux/utils';
import AppDispatcher from '../app-dispatcher';
import AppDispatcher from './app-dispatcher';
class ArrayStore extends ReduceStore {
constructor(type, dataManager) {

View file

@ -26,7 +26,7 @@ import React from 'react';
//import RestAPI from '../api/rest-api';
import config from '../config';
import UserStore from "../stores/user-store";
import UserStore from "../user/user-store";
class Home extends React.Component {
constructor(props) {

View file

@ -19,8 +19,8 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import FilesDataManager from '../data-managers/files-data-manager';
import ArrayStore from '../common/array-store';
import FilesDataManager from './files-data-manager';
class FileStore extends ArrayStore {
constructor() {

View file

@ -19,9 +19,9 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestAPI from '../api/rest-api';
import AppDispatcher from '../app-dispatcher';
import RestDataManager from '../common/data-managers/rest-data-manager';
import RestAPI from '../common/api/rest-api';
import AppDispatcher from '../common/app-dispatcher';
class FilesDataManager extends RestDataManager {
constructor() {

View file

@ -23,10 +23,10 @@ import React from 'react';
import { Container } from 'flux/utils';
import { FormGroup, FormControl, FormLabel, Button, ProgressBar, Col } from 'react-bootstrap';
import FileStore from '../stores/file-store';
import UserStore from '../stores/user-store';
import FileStore from './file-store';
import UserStore from '../user/user-store';
import AppDispatcher from '../app-dispatcher';
import AppDispatcher from '../common/app-dispatcher';
class SelectFile extends React.Component {
static getStores() {
@ -107,12 +107,12 @@ class SelectFile extends React.Component {
}
render() {
const fileOptions = this.state.files.map(f =>
const fileOptions = this.state.files.map(f =>
<option key={f._id} value={f._id}>{f.name}</option>
);
const progressBarStyle = {
marginLeft: '100px',
marginLeft: '100px',
marginTop: '-25px'
};
@ -121,7 +121,7 @@ class SelectFile extends React.Component {
<Col componentClass={FormLabel} sm={3} md={2}>
{this.props.name}
</Col>
<Col sm={9} md={10}>
<FormControl disabled={this.props.disabled} componentClass='select' placeholder='Select file' onChange={this.handleChange}>
{fileOptions}
@ -148,5 +148,5 @@ class SelectFile extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(SelectFile));

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class EditProjectDialog extends React.Component {
valid: true;

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class NewProjectDialog extends React.Component {
valid: false;

View file

@ -19,7 +19,7 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import ProjectsDataManager from '../data-managers/projects-data-manager';
import ArrayStore from '../common/array-store';
import ProjectsDataManager from './projects-data-manager';
export default new ArrayStore('projects', ProjectsDataManager);

View file

@ -24,20 +24,20 @@ import { Container } from 'flux/utils';
import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import AppDispatcher from '../app-dispatcher';
import ProjectStore from '../stores/project-store';
import UserStore from '../stores/user-store';
import VisualizationStore from '../stores/visualization-store';
import SimulationStore from '../stores/simulation-store';
import AppDispatcher from '../common/app-dispatcher';
import ProjectStore from './project-store';
import UserStore from '../user/user-store';
import VisualizationStore from '../visualization/visualization-store';
import SimulationStore from '../simulation/simulation-store';
import Icon from '../components/icon';
import CustomTable from '../components/table';
import TableColumn from '../components/table-column';
import NewVisualzationDialog from '../components/dialogs/new-visualization';
import EditVisualizationDialog from '../components/dialogs/edit-visualization';
import ImportVisualizationDialog from '../components/dialogs/import-visualization';
import Icon from '../common/icon';
import CustomTable from '../common/table';
import TableColumn from '../common/table-column';
import NewVisualzationDialog from '../visualization/new-visualization';
import EditVisualizationDialog from '../visualization/edit-visualization';
import ImportVisualizationDialog from '../visualization/import-visualization';
import DeleteDialog from '../components/dialogs/delete-dialog';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Visualizations extends Component {
static getStores() {
@ -231,5 +231,5 @@ class Visualizations extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Visualizations), {withProps: true});

View file

@ -19,6 +19,6 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestDataManager from '../common/data-managers/rest-data-manager';
export default new RestDataManager('project', '/projects');

View file

@ -23,18 +23,18 @@ import React from 'react';
import { Container } from 'flux/utils';
import { Button } from 'react-bootstrap';
import AppDispatcher from '../app-dispatcher';
import ProjectStore from '../stores/project-store';
import UserStore from '../stores/user-store';
import SimulationStore from '../stores/simulation-store';
import AppDispatcher from '../common/app-dispatcher';
import ProjectStore from './project-store';
import UserStore from '../user/user-store';
import SimulationStore from '../simulation/simulation-store';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import NewProjectDialog from '../components/dialogs/new-project';
import EditProjectDialog from '../components/dialogs/edit-project';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import NewProjectDialog from './new-project';
import EditProjectDialog from './edit-project';
import DeleteDialog from '../components/dialogs/delete-dialog';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Projects extends React.Component {
static getStores() {
@ -156,5 +156,5 @@ class Projects extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Projects));

View file

@ -22,9 +22,9 @@
import React from 'react';
import { BrowserRouter, Route, Switch } from 'react-router-dom';
import App from './containers/app';
import Login from './containers/login';
import Logout from './containers/logout';
import App from './app';
import Login from './user/login';
import Logout from './user/logout';
class Root extends React.Component {
render() {

View file

@ -22,8 +22,8 @@
import React from 'react';
import {FormGroup, FormControl, FormLabel, Col} from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class EditScenarioDialog extends React.Component {
valid = true;

View file

@ -22,8 +22,8 @@
import React from 'react';
import {FormGroup, FormControl, FormLabel, Col} from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class ImportScenarioDialog extends React.Component {
valid = false;

View file

@ -22,8 +22,8 @@
import React from 'react';
import {FormGroup, FormControl, FormLabel, Col} from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class NewScenarioDialog extends React.Component {
valid = false;

View file

@ -0,0 +1,63 @@
/**
* File: scenario-store.js
* Author: Sonja Happ <sonja.happ@eonerc.rwth-aachen.de>
* Date: 20.08.2019
*
* This file is part of VILLASweb.
*
* VILLASweb is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* VILLASweb is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
************************************************************s*****************/
import ScenariosDataManager from './scenarios-data-manager';
import ArrayStore from '../common/array-store';
//import UsersDataManager from "../user/users-data-manager";
//import SimulatorDataDataManager from "../simulator/simulator-data-data-manager";
//import AppDispatcher from "../common/app-dispatcher";
export default new ArrayStore('scenarios', ScenariosDataManager);
// class ScenariosStore extends ReduceStore {
// constructor() {
// super('scenarios', ScenariosDataManager);
// }
//
// getInitialState() {
// return {
// scenarios: [],
//
// };
// }
//
// reduce(state, action) {
// switch (action.type) {
// case 'scenarios/load-models':
// // request simulation model data of scenario
// ScenariosDataManager.getSimulationModels(action.token, action.scenarioID);
//
// return Object.assign({}, state, { token: action.token, simulationmodels: action.simulationmodels});
//
// case 'scenarios/load-dashboards':
// // request dashboard data of scenario
// ScenariosDataManager.getDashboards(action.token, action.scenarioID);
//
// return Object.assign({}, state, { token: action.token, dashboards: action.dashboards});
// default:
// return state;
// }
// }
// }
//
// export default new ScenariosStore();

View file

@ -25,19 +25,19 @@ import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import _ from 'lodash';
import ScenarioStore from '../stores/scenario-store';
import SimulatorStore from '../stores/simulator-store';
import SimulationModelStore from '../stores/simulation-model-store';
import UserStore from '../stores/user-store';
import AppDispatcher from '../app-dispatcher';
import ScenarioStore from './scenario-store';
import SimulatorStore from '../simulator/simulator-store';
import SimulationModelStore from '../simulationmodel/simulation-model-store';
import UserStore from '../user/user-store';
import AppDispatcher from '../common/app-dispatcher';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import ImportSimulationModelDialog from '../components/dialogs/import-simulation-model';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import ImportSimulationModelDialog from '../simulationmodel/import-simulation-model';
import SimulatorAction from '../components/simulator-action';
import DeleteDialog from '../components/dialogs/delete-dialog';
import SimulatorAction from '../simulator/simulator-action';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Scenario extends React.Component {
static getStores() {
@ -293,5 +293,5 @@ class Scenario extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Scenario), { withProps: true });

View file

@ -19,9 +19,9 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestAPI from "../api/rest-api";
import AppDispatcher from "../app-dispatcher";
import RestDataManager from '../common/data-managers/rest-data-manager';
import RestAPI from "../common/api/rest-api";
import AppDispatcher from "../common/app-dispatcher";
class ScenariosDataManager extends RestDataManager {
constructor() {

View file

@ -24,21 +24,21 @@ import { Container } from 'flux/utils';
import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import AppDispatcher from '../app-dispatcher';
import ScenarioStore from '../stores/scenario-store';
import UserStore from '../stores/user-store';
import SimulatorStore from '../stores/simulator-store';
import SimulationModelStore from '../stores/simulation-model-store';
import AppDispatcher from '../common/app-dispatcher';
import ScenarioStore from './scenario-store';
import UserStore from '../user/user-store';
import SimulatorStore from '../simulator/simulator-store';
import SimulationModelStore from '../simulationmodel/simulation-model-store';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import NewScenarioDialog from '../components/dialogs/new-scenario';
import EditScenarioDialog from '../components/dialogs/edit-scenario';
import ImportScenarioDialog from '../components/dialogs/import-scenario';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import NewScenarioDialog from './new-scenario';
import EditScenarioDialog from './edit-scenario';
import ImportScenarioDialog from './import-scenario';
import SimulatorAction from '../components/simulator-action';
import DeleteDialog from '../components/dialogs/delete-dialog';
import SimulatorAction from '../simulator/simulator-action';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Scenarios extends Component {
static getStores() {
@ -324,5 +324,5 @@ class Scenarios extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Scenarios));

View file

@ -22,8 +22,8 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class EditSimulationDialog extends React.Component {
valid = true;

View file

@ -22,8 +22,8 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class ImportSimulationDialog extends React.Component {
valid = false;
@ -47,7 +47,7 @@ class ImportSimulationDialog extends React.Component {
return;
}
if (this.valid && this.props.onClose != null) {
this.props.onClose(this.state);
}
@ -62,7 +62,7 @@ class ImportSimulationDialog extends React.Component {
return;
}
this.setState({ [e.target.id]: e.target.value });
}

View file

@ -22,8 +22,8 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class NewSimulationDialog extends React.Component {
valid = false;
@ -42,7 +42,7 @@ class NewSimulationDialog extends React.Component {
if (this.props.onClose != null) {
this.props.onClose();
}
return;
}

View file

@ -19,7 +19,7 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import SimulationsDataManager from '../data-managers/simulations-data-manager';
import ArrayStore from '../common/array-store';
import SimulationsDataManager from './simulations-data-manager';
export default new ArrayStore('simulations', SimulationsDataManager);

View file

@ -25,19 +25,19 @@ import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import _ from 'lodash';
import SimulationStore from '../stores/simulation-store';
import SimulatorStore from '../stores/simulator-store';
import SimulationModelStore from '../stores/simulation-model-store';
import UserStore from '../stores/user-store';
import AppDispatcher from '../app-dispatcher';
import SimulationStore from './simulation-store';
import SimulatorStore from '../simulator/simulator-store';
import SimulationModelStore from '../simulationmodel/simulation-model-store';
import UserStore from '../user/user-store';
import AppDispatcher from '../common/app-dispatcher';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import ImportSimulationModelDialog from '../components/dialogs/import-simulation-model';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import ImportSimulationModelDialog from '../simulationmodel/import-simulation-model';
import SimulatorAction from '../components/simulator-action';
import DeleteDialog from '../components/dialogs/delete-dialog';
import SimulatorAction from '../simulator/simulator-action';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Simulation extends React.Component {
static getStores() {
@ -285,5 +285,5 @@ class Simulation extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Simulation), { withProps: true });

View file

@ -19,6 +19,6 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestDataManager from '../common/data-managers/rest-data-manager';
export default new RestDataManager('simulation', '/simulations', [ '_id', 'name', 'projects', 'models', 'startParameters' ]);

View file

@ -24,21 +24,21 @@ import { Container } from 'flux/utils';
import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import AppDispatcher from '../app-dispatcher';
import SimulationStore from '../stores/simulation-store';
import UserStore from '../stores/user-store';
import SimulatorStore from '../stores/simulator-store';
import SimulationModelStore from '../stores/simulation-model-store';
import AppDispatcher from '../common/app-dispatcher';
import SimulationStore from './simulation-store';
import UserStore from '../user/user-store';
import SimulatorStore from '../simulator/simulator-store';
import SimulationModelStore from '../simulationmodel/simulation-model-store';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import NewSimulationDialog from '../components/dialogs/new-simulation';
import EditSimulationDialog from '../components/dialogs/edit-simulation';
import ImportSimulationDialog from '../components/dialogs/import-simulation';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import NewSimulationDialog from './new-simulation';
import EditSimulationDialog from './edit-simulation';
import ImportSimulationDialog from './import-simulation';
import SimulatorAction from '../components/simulator-action';
import DeleteDialog from '../components/dialogs/delete-dialog';
import SimulatorAction from '../simulator/simulator-action';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Simulations extends Component {
static getStores() {
@ -325,5 +325,5 @@ class Simulations extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Simulations));

View file

@ -23,7 +23,7 @@ import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import _ from 'lodash';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class ImportSimulationModelDialog extends React.Component {
imported = false;

View file

@ -24,8 +24,8 @@ import PropTypes from 'prop-types';
import { FormGroup, FormControl, FormLabel, FormText } from 'react-bootstrap';
import validator from 'validator';
import Table from './table';
import TableColumn from './table-column';
import Table from '../common/table';
import TableColumn from '../common/table-column';
class SignalMapping extends React.Component {
constructor(props) {

View file

@ -19,7 +19,7 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import SimulationModelsDataManager from '../data-managers/simulation-models-data-manager';
import ArrayStore from '../common/array-store';
import SimulationModelsDataManager from './simulation-models-data-manager';
export default new ArrayStore('simulationModels', SimulationModelsDataManager);

View file

@ -23,15 +23,15 @@ import React from 'react';
import { Container } from 'flux/utils';
import { Button, Col, Form, FormLabel } from 'react-bootstrap';
import SimulationModelStore from '../stores/simulation-model-store';
import UserStore from '../stores/user-store';
import AppDispatcher from '../app-dispatcher';
import SimulationModelStore from './simulation-model-store';
import UserStore from '../user/user-store';
import AppDispatcher from '../common/app-dispatcher';
import SelectSimulator from './select-simulator';
import SelectFile from './select-file';
import SignalMapping from '../components/signal-mapping';
import EditableHeader from '../components/editable-header';
import ParametersEditor from '../components/parameters-editor';
import SelectSimulator from '../simulator/select-simulator';
import SelectFile from '../file/select-file';
import SignalMapping from './signal-mapping';
import EditableHeader from '../common/editable-header';
import ParametersEditor from '../common/parameters-editor';
class SimulationModel extends React.Component {
static getStores() {
@ -168,5 +168,5 @@ class SimulationModel extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(SimulationModel), { withProps: true });

View file

@ -19,8 +19,8 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import AppDispatcher from '../app-dispatcher';
import RestDataManager from '../common/data-managers/rest-data-manager';
import AppDispatcher from '../common/app-dispatcher';
class SimulationModelDataManager extends RestDataManager {
constructor() {

View file

@ -23,8 +23,8 @@ import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import _ from 'lodash';
import Dialog from './dialog';
import ParametersEditor from '../parameters-editor';
import Dialog from '../common/dialogs/dialog';
import ParametersEditor from '../common/parameters-editor';
class EditSimulatorDialog extends React.Component {
valid = true;

View file

@ -23,7 +23,7 @@ import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import _ from 'lodash';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class ImportSimulatorDialog extends React.Component {
valid = false;
@ -42,7 +42,7 @@ class ImportSimulatorDialog extends React.Component {
onClose(canceled) {
if (canceled === false) {
if (this.valid) {
const data = {
const data = {
properties: {
name: this.state.name
},
@ -83,10 +83,10 @@ class ImportSimulatorDialog extends React.Component {
// read simulator
const simulator = JSON.parse(event.target.result);
self.imported = true;
self.setState({
name: _.get(simulator, 'properties.name') || _.get(simulator, 'rawProperties.name'),
self.setState({
name: _.get(simulator, 'properties.name') || _.get(simulator, 'rawProperties.name'),
endpoint: _.get(simulator, 'properties.endpoint') || _.get(simulator, 'rawProperties.endpoint'),
uuid: simulator.uuid
uuid: simulator.uuid
});
};

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class NewSimulatorDialog extends React.Component {
valid = false;

View file

@ -24,7 +24,7 @@ import { Container } from 'flux/utils';
import { FormGroup, FormControl, FormLabel, Col } from 'react-bootstrap';
import _ from 'lodash';
import SimulatorStore from '../stores/simulator-store';
import SimulatorStore from './simulator-store';
class SelectSimulator extends React.Component {
static getStores() {
@ -67,7 +67,7 @@ class SelectSimulator extends React.Component {
}
render() {
const simulatorOptions = this.state.simulators.map(s =>
const simulatorOptions = this.state.simulators.map(s =>
<option key={s._id} value={s._id}>{_.get(s, 'properties.name') || _.get(s, 'rawProperties.name') || s.uuid}</option>
);
@ -85,5 +85,5 @@ class SelectSimulator extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(SelectSimulator));

View file

@ -19,8 +19,8 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import WebsocketAPI from '../api/websocket-api';
import AppDispatcher from '../app-dispatcher';
import WebsocketAPI from '../common/api/websocket-api';
import AppDispatcher from '../common/app-dispatcher';
const OFFSET_TYPE = 2;
const OFFSET_VERSION = 4;

View file

@ -21,8 +21,8 @@
import { ReduceStore } from 'flux/utils';
import AppDispatcher from '../app-dispatcher';
import SimulatorDataDataManager from '../data-managers/simulator-data-data-manager';
import AppDispatcher from '../common/app-dispatcher';
import SimulatorDataDataManager from './simulator-data-data-manager';
const MAX_VALUES = 10000;

View file

@ -21,9 +21,9 @@
import _ from 'lodash';
import ArrayStore from './array-store';
import SimulatorsDataManager from '../data-managers/simulators-data-manager';
import SimulatorDataDataManager from '../data-managers/simulator-data-data-manager';
import ArrayStore from '../common/array-store';
import SimulatorsDataManager from './simulators-data-manager';
import SimulatorDataDataManager from './simulator-data-data-manager';
class SimulatorStore extends ArrayStore {
constructor() {

View file

@ -19,9 +19,9 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestAPI from '../api/rest-api';
import AppDispatcher from '../app-dispatcher';
import RestDataManager from '../common/data-managers/rest-data-manager';
import RestAPI from '../common/api/rest-api';
import AppDispatcher from '../common/app-dispatcher';
class SimulatorsDataManager extends RestDataManager {
constructor() {

View file

@ -25,19 +25,19 @@ import { Button } from 'react-bootstrap';
import FileSaver from 'file-saver';
import _ from 'lodash';
import AppDispatcher from '../app-dispatcher';
import SimulatorStore from '../stores/simulator-store';
import UserStore from '../stores/user-store';
import AppDispatcher from '../common/app-dispatcher';
import SimulatorStore from './simulator-store';
import UserStore from '../user/user-store';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import NewSimulatorDialog from '../components/dialogs/new-simulator';
import EditSimulatorDialog from '../components/dialogs/edit-simulator';
import ImportSimulatorDialog from '../components/dialogs/import-simulator';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import NewSimulatorDialog from './new-simulator';
import EditSimulatorDialog from './edit-simulator';
import ImportSimulatorDialog from './import-simulator';
import SimulatorAction from '../components/simulator-action';
import DeleteDialog from '../components/dialogs/delete-dialog';
import SimulatorAction from './simulator-action';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Simulators extends Component {
static getStores() {
@ -330,5 +330,5 @@ class Simulators extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Simulators));

View file

@ -1,63 +0,0 @@
/**
* File: scenario-store.js
* Author: Sonja Happ <sonja.happ@eonerc.rwth-aachen.de>
* Date: 20.08.2019
*
* This file is part of VILLASweb.
*
* VILLASweb is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* VILLASweb is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
************************************************************s*****************/
import ArrayStore from './array-store';
import ScenariosDataManager from '../data-managers/scenarios-data-manager';
import UsersDataManager from "../data-managers/users-data-manager";
import SimulatorDataDataManager from "../data-managers/simulator-data-data-manager";
import {ReduceStore} from "flux/utils";
import AppDispatcher from "../app-dispatcher";
//export default new ArrayStore('scenarios', ScenariosDataManager);
class ScenariosStore extends ReduceStore {
constructor() {
super('scenarios', ScenariosDataManager);
}
getInitialState() {
return {
scenarios: [],
};
}
reduce(state, action) {
switch (action.type) {
case 'scenarios/load-models':
// request simulation model data of scenario
ScenariosDataManager.getSimulationModels(action.token, action.scenarioID);
return Object.assign({}, state, { token: action.token, simulationmodels: action.simulationmodels});
case 'scenarios/load-dashboards':
// request dashboard data of scenario
ScenariosDataManager.getDashboards(action.token, action.scenarioID);
return Object.assign({}, state, { token: action.token, dashboards: action.dashboards});
default:
return state;
}
}
}
export default new ScenariosStore();

View file

@ -22,7 +22,7 @@
import React from 'react';
import {FormGroup, FormControl, FormLabel, Col} from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class EditUserDialog extends React.Component {
valid: true;

View file

@ -22,7 +22,7 @@
import React, { Component } from 'react';
import { Form, Button, FormGroup, FormControl, FormLabel, Col } from 'react-bootstrap';
import AppDispatcher from '../app-dispatcher';
import AppDispatcher from '../common/app-dispatcher';
class LoginForm extends Component {
constructor(props) {

View file

@ -25,13 +25,13 @@ import { NavbarBrand } from 'react-bootstrap';
import NotificationSystem from 'react-notification-system';
import { Redirect } from 'react-router-dom';
import LoginForm from '../components/login-form';
import Header from '../components/header';
import Footer from '../components/footer';
import NotificationsDataManager from '../data-managers/notifications-data-manager';
import LoginForm from './login-form';
import Header from '../common/header';
import Footer from '../common/footer';
import NotificationsDataManager from '../common/data-managers/notifications-data-manager';
import AppDispatcher from '../app-dispatcher';
import UserStore from '../stores/user-store';
import AppDispatcher from '../common/app-dispatcher';
import UserStore from './user-store';
class Login extends Component {
static getStores() {
@ -97,5 +97,5 @@ class Login extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Login));

View file

@ -22,7 +22,7 @@
import React from 'react';
import { Redirect } from 'react-router-dom';
import AppDispatcher from '../app-dispatcher';
import AppDispatcher from '../common/app-dispatcher';
class Logout extends React.Component {
componentWillMount() {

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel, FormText, Col } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class NewUserDialog extends React.Component {
valid: false;

View file

@ -21,9 +21,9 @@
import { ReduceStore } from 'flux/utils';
import AppDispatcher from '../app-dispatcher';
import UsersDataManager from '../data-managers/users-data-manager';
import SimulatorDataDataManager from '../data-managers/simulator-data-data-manager';
import AppDispatcher from '../common/app-dispatcher';
import UsersDataManager from './users-data-manager';
import SimulatorDataDataManager from '../simulator/simulator-data-data-manager';
class UserStore extends ReduceStore {
constructor() {
@ -73,7 +73,7 @@ class UserStore extends ReduceStore {
state = Object.assign({}, state, { loginMessage: 'Wrong credentials! Please try again.' });
}
return state;
return state;
default:
return state;

View file

@ -19,9 +19,9 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestAPI from '../api/rest-api';
import AppDispatcher from '../app-dispatcher';
import RestDataManager from '../common/data-managers/rest-data-manager';
import RestAPI from '../common/api/rest-api';
import AppDispatcher from '../common/app-dispatcher';
class UsersDataManager extends RestDataManager {
constructor() {
@ -57,7 +57,7 @@ class UsersDataManager extends RestDataManager {
});
});
}
}
export default new UsersDataManager();

View file

@ -19,9 +19,9 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import UsersDataManager from '../data-managers/users-data-manager';
import NotificationsDataManager from '../data-managers/notifications-data-manager';
import ArrayStore from '../common/array-store';
import UsersDataManager from './users-data-manager';
import NotificationsDataManager from '../common/data-managers/notifications-data-manager';
class UsersStore extends ArrayStore {
constructor() {

View file

@ -23,17 +23,17 @@ import React, { Component } from 'react';
import { Container } from 'flux/utils';
import { Button } from 'react-bootstrap';
import AppDispatcher from '../app-dispatcher';
import UserStore from '../stores/user-store';
import UsersStore from '../stores/users-store';
import AppDispatcher from '../common/app-dispatcher';
import UserStore from './user-store';
import UsersStore from './users-store';
import Icon from '../components/icon';
import Table from '../components/table';
import TableColumn from '../components/table-column';
import NewUserDialog from '../components/dialogs/new-user';
import EditUserDialog from '../components/dialogs/edit-user';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
import NewUserDialog from './new-user';
import EditUserDialog from './edit-user';
import DeleteDialog from '../components/dialogs/delete-dialog';
import DeleteDialog from '../common/dialogs/delete-dialog';
class Users extends Component {
static getStores() {
@ -140,5 +140,5 @@ class Users extends Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Container.create(fluxContainerConverter.convert(Users));

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class EditVisualizationDialog extends React.Component {
valid: false;

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class ImportVisualizationDialog extends React.Component {
valid = false;

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
class NewVisualzationDialog extends React.Component {
valid: false;

View file

@ -22,7 +22,7 @@
import React from 'react';
import { DragSource } from 'react-dnd';
import classNames from 'classnames';
import Icon from './icon';
import Icon from '../common/icon';
const toolboxItemSource = {
beginDrag(props) {

View file

@ -19,7 +19,7 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import ArrayStore from './array-store';
import VisualizationsDataManager from '../data-managers/visualizations-data-manager';
import ArrayStore from '../common/array-store';
import VisualizationsDataManager from './visualizations-data-manager';
export default new ArrayStore('visualizations', VisualizationsDataManager);

View file

@ -27,23 +27,23 @@ import Fullscreenable from 'react-fullscreenable';
import Slider from 'rc-slider';
import classNames from 'classnames';
import Icon from '../components/icon';
import WidgetFactory from '../components/widget-factory';
import ToolboxItem from '../components/toolbox-item';
import Dropzone from '../components/dropzone';
import Widget from './widget';
import EditWidget from '../components/dialogs/edit-widget';
import Grid from '../components/grid';
import Icon from '../common/icon';
import WidgetFactory from '../widget/widget-factory';
import ToolboxItem from './toolbox-item';
import Dropzone from './dropzone';
import Widget from '../widget/widget';
import EditWidget from '../widget/edit-widget';
import Grid from './grid';
import UserStore from '../stores/user-store';
import VisualizationStore from '../stores/visualization-store';
import ProjectStore from '../stores/project-store';
import SimulationStore from '../stores/simulation-store';
import SimulationModelStore from '../stores/simulation-model-store';
import FileStore from '../stores/file-store';
import AppDispatcher from '../app-dispatcher';
import NotificationsDataManager from '../data-managers/notifications-data-manager';
import NotificationsFactory from '../data-managers/notifications-factory';
import UserStore from '../user/user-store';
import VisualizationStore from './visualization-store';
import ProjectStore from '../project/project-store';
import SimulationStore from '../simulation/simulation-store';
import SimulationModelStore from '../simulationmodel/simulation-model-store';
import FileStore from '../file/file-store';
import AppDispatcher from '../common/app-dispatcher';
import NotificationsDataManager from '../common/data-managers/notifications-data-manager';
import NotificationsFactory from '../common/data-managers/notifications-factory';
import 'react-contexify/dist/ReactContexify.min.css';
@ -547,5 +547,5 @@ class Visualization extends React.Component {
}
}
let fluxContainerConverter = require('./FluxContainerConverter');
let fluxContainerConverter = require('../common/FluxContainerConverter');
export default Fullscreenable()(Container.create(fluxContainerConverter.convert(Visualization), { withProps: true }));

View file

@ -19,6 +19,6 @@
* along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
******************************************************************************/
import RestDataManager from './rest-data-manager';
import RestDataManager from '../common/data-managers/rest-data-manager';
export default new RestDataManager('visualization', '/visualizations');

View file

@ -23,9 +23,9 @@ import React from 'react';
import { FormGroup, FormLabel, Button } from 'react-bootstrap';
import Icon from '../icon';
import Table from '../table';
import TableColumn from '../table-column';
import Icon from '../common/icon';
import Table from '../common/table';
import TableColumn from '../common/table-column';
class EditWidgetColorZonesControl extends React.Component {
constructor(props) {

View file

@ -22,7 +22,7 @@
import React from 'react';
import { FormGroup, FormControl, FormLabel, Button, ProgressBar } from 'react-bootstrap';
import AppDispatcher from '../../app-dispatcher';
import AppDispatcher from '../common/app-dispatcher';
class EditImageWidgetControl extends React.Component {
constructor(props) {
@ -50,7 +50,7 @@ class EditImageWidgetControl extends React.Component {
formData.append(key, this.state.fileList[key]);
}
}
// upload files
AppDispatcher.dispatch({
type: 'files/start-upload',

View file

@ -22,7 +22,7 @@
import React, { Component } from 'react';
import { FormGroup, Col, Row, FormCheck, FormLabel } from 'react-bootstrap';
import WidgetSlider from '../widgets/slider';
import WidgetSlider from './widgets/slider';
class EditWidgetOrientation extends Component {
constructor(props) {

View file

@ -21,7 +21,7 @@
import React, { Component } from 'react';
import { FormGroup, FormLabel } from 'react-bootstrap';
import ParametersEditor from '../parameters-editor';
import ParametersEditor from '../common/parameters-editor';
class EditWidgetParametersControl extends Component {
constructor(props) {

View file

@ -22,7 +22,7 @@
import React from 'react';
//import { FormGroup, FormControl, FormLabel } from 'react-bootstrap';
import Dialog from './dialog';
import Dialog from '../common/dialogs/dialog';
import createControls from './edit-widget-control-creator';
@ -58,7 +58,7 @@ class EditWidgetDialog extends React.Component {
// scale width to match aspect
const aspectRatio = file.dimensions.width / file.dimensions.height;
changeObject.width = this.state.temporal.height * aspectRatio;
return changeObject;
}

Some files were not shown because too many files have changed in this diff Show more