react-planner-viewer
Version:
react-planner-viewer is a React Component for view plans builded with react-planner in 2D mode
54 lines (41 loc) • 4.25 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = GuideHorizontalStreak;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _immutable = require('immutable');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function GuideHorizontalStreak(_ref) {
var width = _ref.width,
height = _ref.height,
guide = _ref.guide;
var step = guide.properties.get('step');
var colors = void 0;
if (guide.properties.has('color')) {
colors = new _immutable.List([guide.properties.get('color')]);
} else {
colors = guide.properties.get('colors');
}
var rendered = [];
var i = 0;
for (var y = 0; y <= height; y += step) {
var color = colors.get(i % colors.size);
i++;
rendered.push(_react2.default.createElement('line', { key: y, x1: '0', y1: y, x2: width, y2: y, strokeWidth: '1', stroke: color }));
}
return _react2.default.createElement(
'g',
null,
rendered
);
}
GuideHorizontalStreak.propTypes = {
width: _propTypes2.default.number.isRequired,
height: _propTypes2.default.number.isRequired,
guide: _propTypes2.default.object.isRequired
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlcjJkL2d1aWRlcy9ndWlkZS1ob3Jpem9udGFsLXN0cmVhay5qc3giXSwibmFtZXMiOlsiR3VpZGVIb3Jpem9udGFsU3RyZWFrIiwid2lkdGgiLCJoZWlnaHQiLCJndWlkZSIsInN0ZXAiLCJwcm9wZXJ0aWVzIiwiZ2V0IiwiY29sb3JzIiwiaGFzIiwicmVuZGVyZWQiLCJpIiwieSIsImNvbG9yIiwic2l6ZSIsInB1c2giLCJwcm9wVHlwZXMiLCJudW1iZXIiLCJpc1JlcXVpcmVkIiwib2JqZWN0Il0sIm1hcHBpbmdzIjoiOzs7OztrQkFJd0JBLHFCOztBQUp4Qjs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFFZSxTQUFTQSxxQkFBVCxPQUF1RDtBQUFBLE1BQXZCQyxLQUF1QixRQUF2QkEsS0FBdUI7QUFBQSxNQUFoQkMsTUFBZ0IsUUFBaEJBLE1BQWdCO0FBQUEsTUFBUkMsS0FBUSxRQUFSQSxLQUFROztBQUNwRSxNQUFJQyxPQUFPRCxNQUFNRSxVQUFOLENBQWlCQyxHQUFqQixDQUFxQixNQUFyQixDQUFYO0FBQ0EsTUFBSUMsZUFBSjs7QUFFQSxNQUFJSixNQUFNRSxVQUFOLENBQWlCRyxHQUFqQixDQUFxQixPQUFyQixDQUFKLEVBQW1DO0FBQ2pDRCxhQUFTLG9CQUFTLENBQUNKLE1BQU1FLFVBQU4sQ0FBaUJDLEdBQWpCLENBQXFCLE9BQXJCLENBQUQsQ0FBVCxDQUFUO0FBQ0QsR0FGRCxNQUVPO0FBQ0xDLGFBQVNKLE1BQU1FLFVBQU4sQ0FBaUJDLEdBQWpCLENBQXFCLFFBQXJCLENBQVQ7QUFDRDs7QUFFRCxNQUFJRyxXQUFXLEVBQWY7QUFDQSxNQUFJQyxJQUFJLENBQVI7QUFDQSxPQUFLLElBQUlDLElBQUksQ0FBYixFQUFnQkEsS0FBS1QsTUFBckIsRUFBNkJTLEtBQUtQLElBQWxDLEVBQXdDO0FBQ3RDLFFBQUlRLFFBQVFMLE9BQU9ELEdBQVAsQ0FBV0ksSUFBSUgsT0FBT00sSUFBdEIsQ0FBWjtBQUNBSDtBQUNBRCxhQUFTSyxJQUFULENBQWMsd0NBQU0sS0FBS0gsQ0FBWCxFQUFjLElBQUcsR0FBakIsRUFBcUIsSUFBSUEsQ0FBekIsRUFBNEIsSUFBSVYsS0FBaEMsRUFBdUMsSUFBSVUsQ0FBM0MsRUFBOEMsYUFBWSxHQUExRCxFQUE4RCxRQUFRQyxLQUF0RSxHQUFkO0FBQ0Q7O0FBRUQsU0FBUTtBQUFBO0FBQUE7QUFBSUg7QUFBSixHQUFSO0FBQ0Q7O0FBRURULHNCQUFzQmUsU0FBdEIsR0FBa0M7QUFDaENkLFNBQU8sb0JBQVVlLE1BQVYsQ0FBaUJDLFVBRFE7QUFFaENmLFVBQVEsb0JBQVVjLE1BQVYsQ0FBaUJDLFVBRk87QUFHaENkLFNBQU8sb0JBQVVlLE1BQVYsQ0FBaUJEO0FBSFEsQ0FBbEMiLCJmaWxlIjoiZ3VpZGUtaG9yaXpvbnRhbC1zdHJlYWsuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7TGlzdH0gZnJvbSAnaW1tdXRhYmxlJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gR3VpZGVIb3Jpem9udGFsU3RyZWFrKHt3aWR0aCwgaGVpZ2h0LCBndWlkZX0pIHtcbiAgbGV0IHN0ZXAgPSBndWlkZS5wcm9wZXJ0aWVzLmdldCgnc3RlcCcpO1xuICBsZXQgY29sb3JzO1xuXG4gIGlmIChndWlkZS5wcm9wZXJ0aWVzLmhhcygnY29sb3InKSkge1xuICAgIGNvbG9ycyA9IG5ldyBMaXN0KFtndWlkZS5wcm9wZXJ0aWVzLmdldCgnY29sb3InKV0pO1xuICB9IGVsc2Uge1xuICAgIGNvbG9ycyA9IGd1aWRlLnByb3BlcnRpZXMuZ2V0KCdjb2xvcnMnKTtcbiAgfVxuXG4gIGxldCByZW5kZXJlZCA9IFtdO1xuICBsZXQgaSA9IDA7XG4gIGZvciAobGV0IHkgPSAwOyB5IDw9IGhlaWdodDsgeSArPSBzdGVwKSB7XG4gICAgbGV0IGNvbG9yID0gY29sb3JzLmdldChpICUgY29sb3JzLnNpemUpO1xuICAgIGkrKztcbiAgICByZW5kZXJlZC5wdXNoKDxsaW5lIGtleT17eX0geDE9XCIwXCIgeTE9e3l9IHgyPXt3aWR0aH0geTI9e3l9IHN0cm9rZVdpZHRoPVwiMVwiIHN0cm9rZT17Y29sb3J9Lz4pO1xuICB9XG5cbiAgcmV0dXJuICg8Zz57cmVuZGVyZWR9PC9nPik7XG59XG5cbkd1aWRlSG9yaXpvbnRhbFN0cmVhay5wcm9wVHlwZXMgPSB7XG4gIHdpZHRoOiBQcm9wVHlwZXMubnVtYmVyLmlzUmVxdWlyZWQsXG4gIGhlaWdodDogUHJvcFR5cGVzLm51bWJlci5pc1JlcXVpcmVkLFxuICBndWlkZTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkXG59O1xuIl19