summaryrefslogtreecommitdiff
path: root/frontend/src/containers/app/map
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-04-25 16:01:14 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-04-25 16:01:14 +0200
commitcd0b45627f0d8da8c8dc4edde223f3c36e9bcfbf (patch)
tree6ae1681630a0e270c23804e6dbb3bd414ebe5d6e /frontend/src/containers/app/map
parent128a1db017545597a5c035b7960eb3fd36b5f987 (diff)
build: Migrate to flat project structure
This change updates the project structure to become flattened. Previously, the simulator, frontend and API each lived into their own directory. With this change, all modules of the project live in the top-level directory of the repository. This should improve discoverability of modules of the project.
Diffstat (limited to 'frontend/src/containers/app/map')
-rw-r--r--frontend/src/containers/app/map/GrayContainer.js13
-rw-r--r--frontend/src/containers/app/map/MapStage.js22
-rw-r--r--frontend/src/containers/app/map/RackContainer.js12
-rw-r--r--frontend/src/containers/app/map/RackEnergyFillContainer.js26
-rw-r--r--frontend/src/containers/app/map/RackSpaceFillContainer.js14
-rw-r--r--frontend/src/containers/app/map/RoomContainer.js21
-rw-r--r--frontend/src/containers/app/map/TileContainer.js26
-rw-r--r--frontend/src/containers/app/map/TopologyContainer.js17
-rw-r--r--frontend/src/containers/app/map/WallContainer.js12
-rw-r--r--frontend/src/containers/app/map/controls/ScaleIndicatorContainer.js12
-rw-r--r--frontend/src/containers/app/map/controls/ZoomControlContainer.js19
-rw-r--r--frontend/src/containers/app/map/layers/MapLayer.js13
-rw-r--r--frontend/src/containers/app/map/layers/ObjectHoverLayer.js33
-rw-r--r--frontend/src/containers/app/map/layers/RoomHoverLayer.js46
14 files changed, 0 insertions, 286 deletions
diff --git a/frontend/src/containers/app/map/GrayContainer.js b/frontend/src/containers/app/map/GrayContainer.js
deleted file mode 100644
index 9e4a6969..00000000
--- a/frontend/src/containers/app/map/GrayContainer.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import { connect } from 'react-redux'
-import { goDownOneInteractionLevel } from '../../../actions/interaction-level'
-import GrayLayer from '../../../components/app/map/elements/GrayLayer'
-
-const mapDispatchToProps = (dispatch) => {
- return {
- onClick: () => dispatch(goDownOneInteractionLevel()),
- }
-}
-
-const GrayContainer = connect(undefined, mapDispatchToProps)(GrayLayer)
-
-export default GrayContainer
diff --git a/frontend/src/containers/app/map/MapStage.js b/frontend/src/containers/app/map/MapStage.js
deleted file mode 100644
index 23c920b6..00000000
--- a/frontend/src/containers/app/map/MapStage.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import { connect } from 'react-redux'
-import { setMapDimensions, setMapPositionWithBoundsCheck, zoomInOnPosition } from '../../../actions/map'
-import MapStageComponent from '../../../components/app/map/MapStageComponent'
-
-const mapStateToProps = (state) => {
- return {
- mapPosition: state.map.position,
- mapDimensions: state.map.dimensions,
- }
-}
-
-const mapDispatchToProps = (dispatch) => {
- return {
- zoomInOnPosition: (zoomIn, x, y) => dispatch(zoomInOnPosition(zoomIn, x, y)),
- setMapPositionWithBoundsCheck: (x, y) => dispatch(setMapPositionWithBoundsCheck(x, y)),
- setMapDimensions: (width, height) => dispatch(setMapDimensions(width, height)),
- }
-}
-
-const MapStage = connect(mapStateToProps, mapDispatchToProps)(MapStageComponent)
-
-export default MapStage
diff --git a/frontend/src/containers/app/map/RackContainer.js b/frontend/src/containers/app/map/RackContainer.js
deleted file mode 100644
index 40077608..00000000
--- a/frontend/src/containers/app/map/RackContainer.js
+++ /dev/null
@@ -1,12 +0,0 @@
-import { connect } from 'react-redux'
-import RackGroup from '../../../components/app/map/groups/RackGroup'
-
-const mapStateToProps = (state) => {
- return {
- interactionLevel: state.interactionLevel,
- }
-}
-
-const RackContainer = connect(mapStateToProps)(RackGroup)
-
-export default RackContainer
diff --git a/frontend/src/containers/app/map/RackEnergyFillContainer.js b/frontend/src/containers/app/map/RackEnergyFillContainer.js
deleted file mode 100644
index 53746271..00000000
--- a/frontend/src/containers/app/map/RackEnergyFillContainer.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import { connect } from 'react-redux'
-import RackFillBar from '../../../components/app/map/elements/RackFillBar'
-
-const mapStateToProps = (state, ownProps) => {
- let energyConsumptionTotal = 0
- const rack = state.objects.rack[state.objects.tile[ownProps.tileId].rackId]
- const machineIds = rack.machineIds
- machineIds.forEach((machineId) => {
- if (machineId !== null) {
- const machine = state.objects.machine[machineId]
- machine.cpuIds.forEach((id) => (energyConsumptionTotal += state.objects.cpu[id].energyConsumptionW))
- machine.gpuIds.forEach((id) => (energyConsumptionTotal += state.objects.gpu[id].energyConsumptionW))
- machine.memoryIds.forEach((id) => (energyConsumptionTotal += state.objects.memory[id].energyConsumptionW))
- machine.storageIds.forEach((id) => (energyConsumptionTotal += state.objects.storage[id].energyConsumptionW))
- }
- })
-
- return {
- type: 'energy',
- fillFraction: Math.min(1, energyConsumptionTotal / rack.powerCapacityW),
- }
-}
-
-const RackSpaceFillContainer = connect(mapStateToProps)(RackFillBar)
-
-export default RackSpaceFillContainer
diff --git a/frontend/src/containers/app/map/RackSpaceFillContainer.js b/frontend/src/containers/app/map/RackSpaceFillContainer.js
deleted file mode 100644
index 0509a5a5..00000000
--- a/frontend/src/containers/app/map/RackSpaceFillContainer.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import { connect } from 'react-redux'
-import RackFillBar from '../../../components/app/map/elements/RackFillBar'
-
-const mapStateToProps = (state, ownProps) => {
- const machineIds = state.objects.rack[state.objects.tile[ownProps.tileId].rackId].machineIds
- return {
- type: 'space',
- fillFraction: machineIds.filter((id) => id !== null).length / machineIds.length,
- }
-}
-
-const RackSpaceFillContainer = connect(mapStateToProps)(RackFillBar)
-
-export default RackSpaceFillContainer
diff --git a/frontend/src/containers/app/map/RoomContainer.js b/frontend/src/containers/app/map/RoomContainer.js
deleted file mode 100644
index 91bf4e5d..00000000
--- a/frontend/src/containers/app/map/RoomContainer.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import { connect } from 'react-redux'
-import { goFromBuildingToRoom } from '../../../actions/interaction-level'
-import RoomGroup from '../../../components/app/map/groups/RoomGroup'
-
-const mapStateToProps = (state, ownProps) => {
- return {
- interactionLevel: state.interactionLevel,
- currentRoomInConstruction: state.construction.currentRoomInConstruction,
- room: state.objects.room[ownProps.roomId],
- }
-}
-
-const mapDispatchToProps = (dispatch, ownProps) => {
- return {
- onClick: () => dispatch(goFromBuildingToRoom(ownProps.roomId)),
- }
-}
-
-const RoomContainer = connect(mapStateToProps, mapDispatchToProps)(RoomGroup)
-
-export default RoomContainer
diff --git a/frontend/src/containers/app/map/TileContainer.js b/frontend/src/containers/app/map/TileContainer.js
deleted file mode 100644
index 04d6c8d6..00000000
--- a/frontend/src/containers/app/map/TileContainer.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import { connect } from 'react-redux'
-import { goFromRoomToRack } from '../../../actions/interaction-level'
-import TileGroup from '../../../components/app/map/groups/TileGroup'
-
-const mapStateToProps = (state, ownProps) => {
- const tile = state.objects.tile[ownProps.tileId]
-
- return {
- interactionLevel: state.interactionLevel,
- tile,
- }
-}
-
-const mapDispatchToProps = (dispatch) => {
- return {
- onClick: (tile) => {
- if (tile.rackId) {
- dispatch(goFromRoomToRack(tile._id))
- }
- },
- }
-}
-
-const TileContainer = connect(mapStateToProps, mapDispatchToProps)(TileGroup)
-
-export default TileContainer
diff --git a/frontend/src/containers/app/map/TopologyContainer.js b/frontend/src/containers/app/map/TopologyContainer.js
deleted file mode 100644
index de43a151..00000000
--- a/frontend/src/containers/app/map/TopologyContainer.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import { connect } from 'react-redux'
-import TopologyGroup from '../../../components/app/map/groups/TopologyGroup'
-
-const mapStateToProps = (state) => {
- if (state.currentTopologyId === '-1') {
- return {}
- }
-
- return {
- topology: state.objects.topology[state.currentTopologyId],
- interactionLevel: state.interactionLevel,
- }
-}
-
-const TopologyContainer = connect(mapStateToProps)(TopologyGroup)
-
-export default TopologyContainer
diff --git a/frontend/src/containers/app/map/WallContainer.js b/frontend/src/containers/app/map/WallContainer.js
deleted file mode 100644
index 67f8a242..00000000
--- a/frontend/src/containers/app/map/WallContainer.js
+++ /dev/null
@@ -1,12 +0,0 @@
-import { connect } from 'react-redux'
-import WallGroup from '../../../components/app/map/groups/WallGroup'
-
-const mapStateToProps = (state, ownProps) => {
- return {
- tiles: state.objects.room[ownProps.roomId].tileIds.map((tileId) => state.objects.tile[tileId]),
- }
-}
-
-const WallContainer = connect(mapStateToProps)(WallGroup)
-
-export default WallContainer
diff --git a/frontend/src/containers/app/map/controls/ScaleIndicatorContainer.js b/frontend/src/containers/app/map/controls/ScaleIndicatorContainer.js
deleted file mode 100644
index fa3b9d22..00000000
--- a/frontend/src/containers/app/map/controls/ScaleIndicatorContainer.js
+++ /dev/null
@@ -1,12 +0,0 @@
-import { connect } from 'react-redux'
-import ScaleIndicatorComponent from '../../../../components/app/map/controls/ScaleIndicatorComponent'
-
-const mapStateToProps = (state) => {
- return {
- scale: state.map.scale,
- }
-}
-
-const ScaleIndicatorContainer = connect(mapStateToProps)(ScaleIndicatorComponent)
-
-export default ScaleIndicatorContainer
diff --git a/frontend/src/containers/app/map/controls/ZoomControlContainer.js b/frontend/src/containers/app/map/controls/ZoomControlContainer.js
deleted file mode 100644
index ddc68cc7..00000000
--- a/frontend/src/containers/app/map/controls/ZoomControlContainer.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import { connect } from 'react-redux'
-import { zoomInOnCenter } from '../../../../actions/map'
-import ZoomControlComponent from '../../../../components/app/map/controls/ZoomControlComponent'
-
-const mapStateToProps = (state) => {
- return {
- mapScale: state.map.scale,
- }
-}
-
-const mapDispatchToProps = (dispatch) => {
- return {
- zoomInOnCenter: (zoomIn) => dispatch(zoomInOnCenter(zoomIn)),
- }
-}
-
-const ZoomControlContainer = connect(mapStateToProps, mapDispatchToProps)(ZoomControlComponent)
-
-export default ZoomControlContainer
diff --git a/frontend/src/containers/app/map/layers/MapLayer.js b/frontend/src/containers/app/map/layers/MapLayer.js
deleted file mode 100644
index 8596cb9c..00000000
--- a/frontend/src/containers/app/map/layers/MapLayer.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import { connect } from 'react-redux'
-import MapLayerComponent from '../../../../components/app/map/layers/MapLayerComponent'
-
-const mapStateToProps = (state) => {
- return {
- mapPosition: state.map.position,
- mapScale: state.map.scale,
- }
-}
-
-const MapLayer = connect(mapStateToProps)(MapLayerComponent)
-
-export default MapLayer
diff --git a/frontend/src/containers/app/map/layers/ObjectHoverLayer.js b/frontend/src/containers/app/map/layers/ObjectHoverLayer.js
deleted file mode 100644
index a4927862..00000000
--- a/frontend/src/containers/app/map/layers/ObjectHoverLayer.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import { connect } from 'react-redux'
-import { addRackToTile } from '../../../../actions/topology/room'
-import ObjectHoverLayerComponent from '../../../../components/app/map/layers/ObjectHoverLayerComponent'
-import { findTileWithPosition } from '../../../../util/tile-calculations'
-
-const mapStateToProps = (state) => {
- return {
- mapPosition: state.map.position,
- mapScale: state.map.scale,
- isEnabled: () => state.construction.inRackConstructionMode,
- isValid: (x, y) => {
- if (state.interactionLevel.mode !== 'ROOM') {
- return false
- }
-
- const currentRoom = state.objects.room[state.interactionLevel.roomId]
- const tiles = currentRoom.tileIds.map((tileId) => state.objects.tile[tileId])
- const tile = findTileWithPosition(tiles, x, y)
-
- return !(tile === null || tile.rackId)
- },
- }
-}
-
-const mapDispatchToProps = (dispatch) => {
- return {
- onClick: (x, y) => dispatch(addRackToTile(x, y)),
- }
-}
-
-const ObjectHoverLayer = connect(mapStateToProps, mapDispatchToProps)(ObjectHoverLayerComponent)
-
-export default ObjectHoverLayer
diff --git a/frontend/src/containers/app/map/layers/RoomHoverLayer.js b/frontend/src/containers/app/map/layers/RoomHoverLayer.js
deleted file mode 100644
index 66404f9e..00000000
--- a/frontend/src/containers/app/map/layers/RoomHoverLayer.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import { connect } from 'react-redux'
-import { toggleTileAtLocation } from '../../../../actions/topology/building'
-import RoomHoverLayerComponent from '../../../../components/app/map/layers/RoomHoverLayerComponent'
-import {
- deriveValidNextTilePositions,
- findPositionInPositions,
- findPositionInRooms,
-} from '../../../../util/tile-calculations'
-
-const mapStateToProps = (state) => {
- return {
- mapPosition: state.map.position,
- mapScale: state.map.scale,
- isEnabled: () => state.construction.currentRoomInConstruction !== '-1',
- isValid: (x, y) => {
- const newRoom = Object.assign({}, state.objects.room[state.construction.currentRoomInConstruction])
- const oldRooms = Object.keys(state.objects.room)
- .map((id) => Object.assign({}, state.objects.room[id]))
- .filter(
- (room) =>
- state.objects.topology[state.currentTopologyId].roomIds.indexOf(room._id) !== -1 &&
- room._id !== state.construction.currentRoomInConstruction
- )
-
- ;[...oldRooms, newRoom].forEach((room) => {
- room.tiles = room.tileIds.map((tileId) => state.objects.tile[tileId])
- })
- if (newRoom.tileIds.length === 0) {
- return findPositionInRooms(oldRooms, x, y) === -1
- }
-
- const validNextPositions = deriveValidNextTilePositions(oldRooms, newRoom.tiles)
- return findPositionInPositions(validNextPositions, x, y) !== -1
- },
- }
-}
-
-const mapDispatchToProps = (dispatch) => {
- return {
- onClick: (x, y) => dispatch(toggleTileAtLocation(x, y)),
- }
-}
-
-const RoomHoverLayer = connect(mapStateToProps, mapDispatchToProps)(RoomHoverLayerComponent)
-
-export default RoomHoverLayer