react-planner-viewer
Version:
react-planner-viewer is a React Component for view plans builded with react-planner in 2D mode
123 lines (90 loc) • 9.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _immutable = require('immutable');
var _redux = require('redux');
var _reactRedux = require('react-redux');
var _reactPlanner = require('./react-planner');
var _reactPlanner2 = _interopRequireDefault(_reactPlanner);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _myCatalog = require('./catalog/myCatalog/myCatalog');
var _myCatalog2 = _interopRequireDefault(_myCatalog);
var _models = require('./models');
var PlannerModels = _interopRequireWildcard(_models);
var _reducer = require('./reducers/reducer');
var _reducer2 = _interopRequireDefault(_reducer);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var AppState = (0, _immutable.Map)({
'react-planner': new PlannerModels.State()
});
//define reducer
var reducer = function reducer(state, action) {
state = state || AppState;
state = state.update('react-planner', function (plannerState) {
return (0, _reducer2.default)(plannerState, action);
});
return state;
};
var store = (0, _redux.createStore)(reducer, null);
var ReactPlannerViewer = function (_React$Component) {
_inherits(ReactPlannerViewer, _React$Component);
function ReactPlannerViewer() {
_classCallCheck(this, ReactPlannerViewer);
return _possibleConstructorReturn(this, (ReactPlannerViewer.__proto__ || Object.getPrototypeOf(ReactPlannerViewer)).apply(this, arguments));
}
_createClass(ReactPlannerViewer, [{
key: 'render',
value: function render() {
var _props = this.props,
width = _props.width,
height = _props.height,
project = _props.project,
scene = _props.scene,
heatMapValues = _props.heatMapValues,
heatMapColors = _props.heatMapColors,
onSelectArea = _props.onSelectArea;
return _react2.default.createElement(
_reactRedux.Provider,
{ store: store },
_react2.default.createElement(_reactPlanner2.default, {
catalog: _myCatalog2.default,
width: width,
height: height,
newScene: scene,
heatMapColors: heatMapColors,
heatMapValues: heatMapValues,
onSelectArea: onSelectArea,
stateExtractor: function stateExtractor(state) {
return state.get('react-planner');
}
})
);
}
}]);
return ReactPlannerViewer;
}(_react2.default.Component);
ReactPlannerViewer.propTypes = {
heatMapColors: _propTypes2.default.array,
heatmapValues: _propTypes2.default.arrayOf(_propTypes2.default.object),
width: _propTypes2.default.number,
height: _propTypes2.default.number,
onSelectArea: _propTypes2.default.func,
scene: _propTypes2.default.object
};
ReactPlannerViewer.defaultProps = {
heatMapValues: [],
width: 300,
height: 300,
onSelectArea: function onSelectArea(areaName) {}
};
exports.default = ReactPlannerViewer;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJQbGFubmVyTW9kZWxzIiwiQXBwU3RhdGUiLCJTdGF0ZSIsInJlZHVjZXIiLCJzdGF0ZSIsImFjdGlvbiIsInVwZGF0ZSIsInBsYW5uZXJTdGF0ZSIsInN0b3JlIiwiUmVhY3RQbGFubmVyVmlld2VyIiwicHJvcHMiLCJ3aWR0aCIsImhlaWdodCIsInByb2plY3QiLCJzY2VuZSIsImhlYXRNYXBWYWx1ZXMiLCJoZWF0TWFwQ29sb3JzIiwib25TZWxlY3RBcmVhIiwiZ2V0IiwiQ29tcG9uZW50IiwicHJvcFR5cGVzIiwiYXJyYXkiLCJoZWF0bWFwVmFsdWVzIiwiYXJyYXlPZiIsIm9iamVjdCIsIm51bWJlciIsImZ1bmMiLCJkZWZhdWx0UHJvcHMiLCJhcmVhTmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7OztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBQ0E7Ozs7QUFFQTs7OztBQUVBOztJQUFZQSxhOztBQUNaOzs7Ozs7Ozs7Ozs7OztBQUdBLElBQUlDLFdBQVcsb0JBQUk7QUFDakIsbUJBQWlCLElBQUlELGNBQWNFLEtBQWxCO0FBREEsQ0FBSixDQUFmOztBQUlBO0FBQ0EsSUFBSUMsVUFBVSxTQUFWQSxPQUFVLENBQUNDLEtBQUQsRUFBUUMsTUFBUixFQUFtQjtBQUMvQkQsVUFBUUEsU0FBU0gsUUFBakI7QUFDQUcsVUFBUUEsTUFBTUUsTUFBTixDQUFhLGVBQWIsRUFBOEI7QUFBQSxXQUFnQix1QkFBZUMsWUFBZixFQUE2QkYsTUFBN0IsQ0FBaEI7QUFBQSxHQUE5QixDQUFSO0FBQ0EsU0FBT0QsS0FBUDtBQUNELENBSkQ7O0FBTUEsSUFBSUksUUFBUSx3QkFBWUwsT0FBWixFQUFxQixJQUFyQixDQUFaOztJQUVNTSxrQjs7Ozs7Ozs7Ozs7NkJBRUs7QUFBQSxtQkFDMkUsS0FBS0MsS0FEaEY7QUFBQSxVQUNGQyxLQURFLFVBQ0ZBLEtBREU7QUFBQSxVQUNLQyxNQURMLFVBQ0tBLE1BREw7QUFBQSxVQUNhQyxPQURiLFVBQ2FBLE9BRGI7QUFBQSxVQUNzQkMsS0FEdEIsVUFDc0JBLEtBRHRCO0FBQUEsVUFDNkJDLGFBRDdCLFVBQzZCQSxhQUQ3QjtBQUFBLFVBQzRDQyxhQUQ1QyxVQUM0Q0EsYUFENUM7QUFBQSxVQUMyREMsWUFEM0QsVUFDMkRBLFlBRDNEOztBQUVQLGFBQ0U7QUFBQTtBQUFBLFVBQVUsT0FBT1QsS0FBakI7QUFDRTtBQUNFLHNDQURGO0FBRUUsaUJBQU9HLEtBRlQ7QUFHRSxrQkFBUUMsTUFIVjtBQUlFLG9CQUFVRSxLQUpaO0FBS0UseUJBQWVFLGFBTGpCO0FBTUUseUJBQWVELGFBTmpCO0FBT0Usd0JBQWNFLFlBUGhCO0FBUUUsMEJBQWdCO0FBQUEsbUJBQVNiLE1BQU1jLEdBQU4sQ0FBVSxlQUFWLENBQVQ7QUFBQTtBQVJsQjtBQURGLE9BREY7QUFjRDs7OztFQWxCOEIsZ0JBQU1DLFM7O0FBcUJ2Q1YsbUJBQW1CVyxTQUFuQixHQUErQjtBQUM3QkosaUJBQWUsb0JBQVVLLEtBREk7QUFFN0JDLGlCQUFlLG9CQUFVQyxPQUFWLENBQWtCLG9CQUFVQyxNQUE1QixDQUZjO0FBRzdCYixTQUFPLG9CQUFVYyxNQUhZO0FBSTdCYixVQUFRLG9CQUFVYSxNQUpXO0FBSzdCUixnQkFBYyxvQkFBVVMsSUFMSztBQU03QlosU0FBTyxvQkFBVVU7QUFOWSxDQUEvQjtBQVFBZixtQkFBbUJrQixZQUFuQixHQUFrQztBQUNoQ1osaUJBQWUsRUFEaUI7QUFFaENKLFNBQU8sR0FGeUI7QUFHaENDLFVBQVEsR0FId0I7QUFJaENLLGdCQUFjLHNCQUFDVyxRQUFELEVBQVksQ0FBRTtBQUpJLENBQWxDOztrQkFPZW5CLGtCIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7TWFwfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHtjcmVhdGVTdG9yZX0gZnJvbSAncmVkdXgnO1xuaW1wb3J0IHtQcm92aWRlcn0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IFJlYWN0UGxhbm5lciBmcm9tICcuL3JlYWN0LXBsYW5uZXInO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcblxuaW1wb3J0IE15Q2F0YWxvZyBmcm9tICcuL2NhdGFsb2cvbXlDYXRhbG9nL215Q2F0YWxvZyc7XG5cbmltcG9ydCAqIGFzIFBsYW5uZXJNb2RlbHMgZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IFBsYW5uZXJSZWR1Y2VyIGZyb20gJy4vcmVkdWNlcnMvcmVkdWNlcic7XG5cblxubGV0IEFwcFN0YXRlID0gTWFwKHtcbiAgJ3JlYWN0LXBsYW5uZXInOiBuZXcgUGxhbm5lck1vZGVscy5TdGF0ZSgpXG59KTtcblxuLy9kZWZpbmUgcmVkdWNlclxubGV0IHJlZHVjZXIgPSAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICBzdGF0ZSA9IHN0YXRlIHx8IEFwcFN0YXRlO1xuICBzdGF0ZSA9IHN0YXRlLnVwZGF0ZSgncmVhY3QtcGxhbm5lcicsIHBsYW5uZXJTdGF0ZSA9PiBQbGFubmVyUmVkdWNlcihwbGFubmVyU3RhdGUsIGFjdGlvbikpO1xuICByZXR1cm4gc3RhdGU7XG59O1xuXG5sZXQgc3RvcmUgPSBjcmVhdGVTdG9yZShyZWR1Y2VyLCBudWxsKTtcblxuY2xhc3MgUmVhY3RQbGFubmVyVmlld2VyIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcblxuICByZW5kZXIoKSB7XG4gICAgbGV0IHt3aWR0aCwgaGVpZ2h0LCBwcm9qZWN0LCBzY2VuZSwgaGVhdE1hcFZhbHVlcywgaGVhdE1hcENvbG9ycywgb25TZWxlY3RBcmVhfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UmVhY3RQbGFubmVyIFxuICAgICAgICAgIGNhdGFsb2c9e015Q2F0YWxvZ30gXG4gICAgICAgICAgd2lkdGg9e3dpZHRofSBcbiAgICAgICAgICBoZWlnaHQ9e2hlaWdodH0gXG4gICAgICAgICAgbmV3U2NlbmU9e3NjZW5lfVxuICAgICAgICAgIGhlYXRNYXBDb2xvcnM9e2hlYXRNYXBDb2xvcnN9XG4gICAgICAgICAgaGVhdE1hcFZhbHVlcz17aGVhdE1hcFZhbHVlc31cbiAgICAgICAgICBvblNlbGVjdEFyZWE9e29uU2VsZWN0QXJlYX1cbiAgICAgICAgICBzdGF0ZUV4dHJhY3Rvcj17c3RhdGUgPT4gc3RhdGUuZ2V0KCdyZWFjdC1wbGFubmVyJyl9XG4gICAgICAgIC8+XG4gICAgICA8L1Byb3ZpZGVyPlxuICAgICk7XG4gIH1cbn1cblxuUmVhY3RQbGFubmVyVmlld2VyLnByb3BUeXBlcyA9IHtcbiAgaGVhdE1hcENvbG9yczogUHJvcFR5cGVzLmFycmF5LFxuICBoZWF0bWFwVmFsdWVzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMub2JqZWN0KSxcbiAgd2lkdGg6IFByb3BUeXBlcy5udW1iZXIsXG4gIGhlaWdodDogUHJvcFR5cGVzLm51bWJlcixcbiAgb25TZWxlY3RBcmVhOiBQcm9wVHlwZXMuZnVuYyxcbiAgc2NlbmU6IFByb3BUeXBlcy5vYmplY3QsXG59O1xuUmVhY3RQbGFubmVyVmlld2VyLmRlZmF1bHRQcm9wcyA9IHtcbiAgaGVhdE1hcFZhbHVlczogW10sXG4gIHdpZHRoOiAzMDAsXG4gIGhlaWdodDogMzAwLFxuICBvblNlbGVjdEFyZWE6IChhcmVhTmFtZSk9Pnt9LFxufVxuXG5leHBvcnQgZGVmYXVsdCBSZWFjdFBsYW5uZXJWaWV3ZXI7Il19