react-graph-bars
Version:
react bar graph
49 lines (38 loc) • 1.54 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _color = require('color');
var _color2 = _interopRequireDefault(_color);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Bar = function Bar(_ref) {
var value = _ref.value;
var minColor = _ref.minColor;
var maxColor = _ref.maxColor;
var from = (0, _color2.default)(minColor);
var to = from.mix((0, _color2.default)(maxColor), value);
var style = { top: value * 100 + '%', background: '' + to.rgbString() };
return _react2.default.createElement(
'div',
{ className: 'bar' },
_react2.default.createElement('div', { className: 'full' }),
_react2.default.createElement('div', { className: 'value', style: style })
);
};
exports.default = function (_ref2) {
var name = _ref2.name;
var data = _ref2.data;
var _ref2$minColor = _ref2.minColor;
var minColor = _ref2$minColor === undefined ? 'rgba(0, 0, 255, .75)' : _ref2$minColor;
var _ref2$maxColor = _ref2.maxColor;
var maxColor = _ref2$maxColor === undefined ? 'rgba(255, 0, 0, .75)' : _ref2$maxColor;
return _react2.default.createElement(
'div',
{ className: 'graph ' + name },
data.map(function (value, index) {
return _react2.default.createElement(Bar, { key: index, value: value, minColor: minColor, maxColor: maxColor });
})
);
};