summaryrefslogtreecommitdiff
path: root/frontend/src/components/app/map/elements/HoverTile.js
blob: 42e6547c8e55cbf7cd566618e462eb95d9aee1e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import PropTypes from "prop-types";
import React from "react";
import { Rect } from "react-konva";
import {
  ROOM_HOVER_INVALID_COLOR,
  ROOM_HOVER_VALID_COLOR
} from "../../../../util/colors";
import { TILE_SIZE_IN_PIXELS } from "../MapConstants";

const HoverTile = ({ pixelX, pixelY, isValid, scale, onClick }) => (
  <Rect
    x={pixelX}
    y={pixelY}
    scaleX={scale}
    scaleY={scale}
    width={TILE_SIZE_IN_PIXELS}
    height={TILE_SIZE_IN_PIXELS}
    fill={isValid ? ROOM_HOVER_VALID_COLOR : ROOM_HOVER_INVALID_COLOR}
    onClick={onClick}
  />
);

HoverTile.propTypes = {
  pixelX: PropTypes.number.isRequired,
  pixelY: PropTypes.number.isRequired,
  isValid: PropTypes.bool.isRequired,
  onClick: PropTypes.func.isRequired
};

export default HoverTile;