diff options
Diffstat (limited to 'src/containers/app/map/layers')
| -rw-r--r-- | src/containers/app/map/layers/MapLayer.js | 14 | ||||
| -rw-r--r-- | src/containers/app/map/layers/ObjectHoverLayer.js | 50 | ||||
| -rw-r--r-- | src/containers/app/map/layers/RoomHoverLayer.js | 79 |
3 files changed, 75 insertions, 68 deletions
diff --git a/src/containers/app/map/layers/MapLayer.js b/src/containers/app/map/layers/MapLayer.js index ea3a0b57..cf971350 100644 --- a/src/containers/app/map/layers/MapLayer.js +++ b/src/containers/app/map/layers/MapLayer.js @@ -1,15 +1,13 @@ -import {connect} from "react-redux"; +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, - }; + return { + mapPosition: state.map.position, + mapScale: state.map.scale + }; }; -const MapLayer = connect( - mapStateToProps -)(MapLayerComponent); +const MapLayer = connect(mapStateToProps)(MapLayerComponent); export default MapLayer; diff --git a/src/containers/app/map/layers/ObjectHoverLayer.js b/src/containers/app/map/layers/ObjectHoverLayer.js index d905fd42..9b28575e 100644 --- a/src/containers/app/map/layers/ObjectHoverLayer.js +++ b/src/containers/app/map/layers/ObjectHoverLayer.js @@ -1,37 +1,37 @@ -import {connect} from "react-redux"; -import {addRackToTile} from "../../../../actions/topology/room"; +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"; +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; - } + 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); + 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.objectType); - - }, - }; + return !(tile === null || tile.objectType); + } + }; }; const mapDispatchToProps = dispatch => { - return { - onClick: (x, y) => dispatch(addRackToTile(x, y)), - }; + return { + onClick: (x, y) => dispatch(addRackToTile(x, y)) + }; }; -const ObjectHoverLayer = connect( - mapStateToProps, - mapDispatchToProps -)(ObjectHoverLayerComponent); +const ObjectHoverLayer = connect(mapStateToProps, mapDispatchToProps)( + ObjectHoverLayerComponent +); export default ObjectHoverLayer; diff --git a/src/containers/app/map/layers/RoomHoverLayer.js b/src/containers/app/map/layers/RoomHoverLayer.js index fbcbed7e..910d47fb 100644 --- a/src/containers/app/map/layers/RoomHoverLayer.js +++ b/src/containers/app/map/layers/RoomHoverLayer.js @@ -1,50 +1,59 @@ -import {connect} from "react-redux"; -import {toggleTileAtLocation} from "../../../../actions/topology/building"; +import { connect } from "react-redux"; +import { toggleTileAtLocation } from "../../../../actions/topology/building"; import RoomHoverLayerComponent from "../../../../components/app/map/layers/RoomHoverLayerComponent"; import { - deriveValidNextTilePositions, - findPositionInPositions, - findPositionInRooms + 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) => { - if (state.interactionLevel.mode !== "BUILDING") { - return false; - } + return { + mapPosition: state.map.position, + mapScale: state.map.scale, + isEnabled: () => state.construction.currentRoomInConstruction !== -1, + isValid: (x, y) => { + if (state.interactionLevel.mode !== "BUILDING") { + return false; + } - 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.datacenter[state.currentDatacenterId].roomIds.indexOf(room.id) !== -1 - && room.id !== state.construction.currentRoomInConstruction); + 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.datacenter[state.currentDatacenterId].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; - } + [...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 validNextPositions = deriveValidNextTilePositions( + oldRooms, + newRoom.tiles + ); + return findPositionInPositions(validNextPositions, x, y) !== -1; + } + }; }; const mapDispatchToProps = dispatch => { - return { - onClick: (x, y) => dispatch(toggleTileAtLocation(x, y)), - }; + return { + onClick: (x, y) => dispatch(toggleTileAtLocation(x, y)) + }; }; -const RoomHoverLayer = connect( - mapStateToProps, - mapDispatchToProps -)(RoomHoverLayerComponent); +const RoomHoverLayer = connect(mapStateToProps, mapDispatchToProps)( + RoomHoverLayerComponent +); export default RoomHoverLayer; |
