UNPKG

react-planner-viewer

Version:

react-planner-viewer is a React Component for view plans builded with react-planner in 2D mode

171 lines (144 loc) 13.6 kB
'use strict'; 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 _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _export = require('../style/export'); 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 ProjectConfigurator = function (_Component) { _inherits(ProjectConfigurator, _Component); function ProjectConfigurator(props, context) { _classCallCheck(this, ProjectConfigurator); var _this = _possibleConstructorReturn(this, (ProjectConfigurator.__proto__ || Object.getPrototypeOf(ProjectConfigurator)).call(this, props, context)); var scene = props.state.scene; _this.state = { dataWidth: scene.width, dataHeight: scene.height }; return _this; } _createClass(ProjectConfigurator, [{ key: 'onSubmit', value: function onSubmit(event) { event.preventDefault(); var projectActions = this.context.projectActions; var _state = this.state, dataWidth = _state.dataWidth, dataHeight = _state.dataHeight; dataWidth = parseInt(dataWidth); dataHeight = parseInt(dataHeight); if (dataWidth <= 100 || dataHeight <= 100) { alert('Scene size too small'); } else { projectActions.setProjectProperties({ width: dataWidth, height: dataHeight }); } } }, { key: 'render', value: function render() { var _this2 = this; var _props = this.props, width = _props.width, height = _props.height; var _state2 = this.state, dataWidth = _state2.dataWidth, dataHeight = _state2.dataHeight; var _context = this.context, projectActions = _context.projectActions, translator = _context.translator; return _react2.default.createElement( _export.ContentContainer, { width: width, height: height }, _react2.default.createElement( _export.ContentTitle, null, translator.t('Project config') ), _react2.default.createElement( 'form', { onSubmit: function onSubmit(e) { return _this2.onSubmit(e); } }, _react2.default.createElement( _export.FormBlock, null, _react2.default.createElement( _export.FormLabel, { htmlFor: 'width' }, translator.t('width') ), _react2.default.createElement(_export.FormNumberInput, { id: 'width', placeholder: 'width', value: dataWidth, onChange: function onChange(e) { return _this2.setState({ dataWidth: e.target.value }); } }) ), _react2.default.createElement( _export.FormBlock, null, _react2.default.createElement( _export.FormLabel, { htmlFor: 'height' }, translator.t('height') ), _react2.default.createElement(_export.FormNumberInput, { id: 'height', placeholder: 'height', value: dataHeight, onChange: function onChange(e) { return _this2.setState({ dataHeight: e.target.value }); } }) ), _react2.default.createElement( 'table', { style: { float: 'right' } }, _react2.default.createElement( 'tbody', null, _react2.default.createElement( 'tr', null, _react2.default.createElement( 'td', null, _react2.default.createElement( _export.CancelButton, { size: 'large', onClick: function onClick(e) { return projectActions.rollback(); } }, translator.t('Cancel') ) ), _react2.default.createElement( 'td', null, _react2.default.createElement( _export.FormSubmitButton, { size: 'large' }, translator.t('Save') ) ) ) ) ) ) ); } }]); return ProjectConfigurator; }(_react.Component); exports.default = ProjectConfigurator; ProjectConfigurator.propTypes = { width: _propTypes2.default.number.isRequired, height: _propTypes2.default.number.isRequired, state: _propTypes2.default.object.isRequired }; ProjectConfigurator.contextTypes = { projectActions: _propTypes2.default.object.isRequired, translator: _propTypes2.default.object.isRequired }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbmZpZ3VyYXRvci9wcm9qZWN0LWNvbmZpZ3VyYXRvci5qc3giXSwibmFtZXMiOlsiUHJvamVjdENvbmZpZ3VyYXRvciIsInByb3BzIiwiY29udGV4dCIsInNjZW5lIiwic3RhdGUiLCJkYXRhV2lkdGgiLCJ3aWR0aCIsImRhdGFIZWlnaHQiLCJoZWlnaHQiLCJldmVudCIsInByZXZlbnREZWZhdWx0IiwicHJvamVjdEFjdGlvbnMiLCJwYXJzZUludCIsImFsZXJ0Iiwic2V0UHJvamVjdFByb3BlcnRpZXMiLCJ0cmFuc2xhdG9yIiwidCIsIm9uU3VibWl0IiwiZSIsInNldFN0YXRlIiwidGFyZ2V0IiwidmFsdWUiLCJmbG9hdCIsInJvbGxiYWNrIiwicHJvcFR5cGVzIiwibnVtYmVyIiwiaXNSZXF1aXJlZCIsIm9iamVjdCIsImNvbnRleHRUeXBlcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7Ozs7Ozs7SUFVcUJBLG1COzs7QUFFbkIsK0JBQVlDLEtBQVosRUFBbUJDLE9BQW5CLEVBQTRCO0FBQUE7O0FBQUEsMElBQ3BCRCxLQURvQixFQUNiQyxPQURhOztBQUcxQixRQUFJQyxRQUFRRixNQUFNRyxLQUFOLENBQVlELEtBQXhCOztBQUVBLFVBQUtDLEtBQUwsR0FBYTtBQUNYQyxpQkFBV0YsTUFBTUcsS0FETjtBQUVYQyxrQkFBWUosTUFBTUs7QUFGUCxLQUFiO0FBTDBCO0FBUzNCOzs7OzZCQUVRQyxLLEVBQU87QUFDZEEsWUFBTUMsY0FBTjs7QUFEYyxVQUdUQyxjQUhTLEdBR1MsS0FBS1QsT0FIZCxDQUdUUyxjQUhTO0FBQUEsbUJBS2dCLEtBQUtQLEtBTHJCO0FBQUEsVUFLVEMsU0FMUyxVQUtUQSxTQUxTO0FBQUEsVUFLRUUsVUFMRixVQUtFQSxVQUxGOztBQU1kRixrQkFBWU8sU0FBU1AsU0FBVCxDQUFaO0FBQ0FFLG1CQUFhSyxTQUFTTCxVQUFULENBQWI7QUFDQSxVQUFJRixhQUFhLEdBQWIsSUFBb0JFLGNBQWMsR0FBdEMsRUFBMkM7QUFDekNNLGNBQU0sc0JBQU47QUFDRCxPQUZELE1BRU87QUFDTEYsdUJBQWVHLG9CQUFmLENBQW9DLEVBQUNSLE9BQU9ELFNBQVIsRUFBbUJHLFFBQVFELFVBQTNCLEVBQXBDO0FBQ0Q7QUFDRjs7OzZCQUdRO0FBQUE7O0FBQUEsbUJBQ2UsS0FBS04sS0FEcEI7QUFBQSxVQUNGSyxLQURFLFVBQ0ZBLEtBREU7QUFBQSxVQUNLRSxNQURMLFVBQ0tBLE1BREw7QUFBQSxvQkFFdUIsS0FBS0osS0FGNUI7QUFBQSxVQUVGQyxTQUZFLFdBRUZBLFNBRkU7QUFBQSxVQUVTRSxVQUZULFdBRVNBLFVBRlQ7QUFBQSxxQkFHNEIsS0FBS0wsT0FIakM7QUFBQSxVQUdGUyxjQUhFLFlBR0ZBLGNBSEU7QUFBQSxVQUdjSSxVQUhkLFlBR2NBLFVBSGQ7OztBQUtQLGFBQ0U7QUFBQTtBQUFBLFVBQWtCLE9BQU9ULEtBQXpCLEVBQWdDLFFBQVFFLE1BQXhDO0FBQ0U7QUFBQTtBQUFBO0FBQWVPLHFCQUFXQyxDQUFYLENBQWEsZ0JBQWI7QUFBZixTQURGO0FBR0U7QUFBQTtBQUFBLFlBQU0sVUFBVTtBQUFBLHFCQUFLLE9BQUtDLFFBQUwsQ0FBY0MsQ0FBZCxDQUFMO0FBQUEsYUFBaEI7QUFDRTtBQUFBO0FBQUE7QUFDRTtBQUFBO0FBQUEsZ0JBQVcsU0FBUSxPQUFuQjtBQUE0QkgseUJBQVdDLENBQVgsQ0FBYSxPQUFiO0FBQTVCLGFBREY7QUFFRSxxRUFBaUIsSUFBRyxPQUFwQixFQUE0QixhQUFZLE9BQXhDLEVBQWdELE9BQU9YLFNBQXZEO0FBQ2lCLHdCQUFVO0FBQUEsdUJBQUssT0FBS2MsUUFBTCxDQUFjLEVBQUNkLFdBQVdhLEVBQUVFLE1BQUYsQ0FBU0MsS0FBckIsRUFBZCxDQUFMO0FBQUEsZUFEM0I7QUFGRixXQURGO0FBT0U7QUFBQTtBQUFBO0FBQ0U7QUFBQTtBQUFBLGdCQUFXLFNBQVEsUUFBbkI7QUFBNkJOLHlCQUFXQyxDQUFYLENBQWEsUUFBYjtBQUE3QixhQURGO0FBRUUscUVBQWlCLElBQUcsUUFBcEIsRUFBNkIsYUFBWSxRQUF6QyxFQUFrRCxPQUFPVCxVQUF6RDtBQUNpQix3QkFBVTtBQUFBLHVCQUFLLE9BQUtZLFFBQUwsQ0FBYyxFQUFDWixZQUFZVyxFQUFFRSxNQUFGLENBQVNDLEtBQXRCLEVBQWQsQ0FBTDtBQUFBLGVBRDNCO0FBRkYsV0FQRjtBQWFFO0FBQUE7QUFBQSxjQUFPLE9BQU8sRUFBQ0MsT0FBTyxPQUFSLEVBQWQ7QUFDRTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDRTtBQUFBO0FBQUE7QUFDRTtBQUFBO0FBQUEsc0JBQWMsTUFBSyxPQUFuQjtBQUNjLCtCQUFTO0FBQUEsK0JBQUtYLGVBQWVZLFFBQWYsRUFBTDtBQUFBLHVCQUR2QjtBQUN3RFIsK0JBQVdDLENBQVgsQ0FBYSxRQUFiO0FBRHhEO0FBREYsaUJBREY7QUFLRTtBQUFBO0FBQUE7QUFDRTtBQUFBO0FBQUEsc0JBQWtCLE1BQUssT0FBdkI7QUFBZ0NELCtCQUFXQyxDQUFYLENBQWEsTUFBYjtBQUFoQztBQURGO0FBTEY7QUFEQTtBQURGO0FBYkY7QUFIRixPQURGO0FBaUNEOzs7Ozs7a0JBbkVrQmhCLG1COzs7QUFzRXJCQSxvQkFBb0J3QixTQUFwQixHQUFnQztBQUM5QmxCLFNBQU8sb0JBQVVtQixNQUFWLENBQWlCQyxVQURNO0FBRTlCbEIsVUFBUSxvQkFBVWlCLE1BQVYsQ0FBaUJDLFVBRks7QUFHOUJ0QixTQUFPLG9CQUFVdUIsTUFBVixDQUFpQkQ7QUFITSxDQUFoQzs7QUFNQTFCLG9CQUFvQjRCLFlBQXBCLEdBQW1DO0FBQ2pDakIsa0JBQWdCLG9CQUFVZ0IsTUFBVixDQUFpQkQsVUFEQTtBQUVqQ1gsY0FBWSxvQkFBVVksTUFBVixDQUFpQkQ7QUFGSSxDQUFuQyIsImZpbGUiOiJwcm9qZWN0LWNvbmZpZ3VyYXRvci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7XG4gIENvbnRlbnRUaXRsZSxcbiAgQ29udGVudENvbnRhaW5lcixcbiAgRm9ybUxhYmVsLFxuICBGb3JtQmxvY2ssXG4gIEZvcm1OdW1iZXJJbnB1dCxcbiAgRm9ybVN1Ym1pdEJ1dHRvbixcbiAgQ2FuY2VsQnV0dG9uXG59IGZyb20gJy4uL3N0eWxlL2V4cG9ydCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFByb2plY3RDb25maWd1cmF0b3IgZXh0ZW5kcyBDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzLCBjb250ZXh0KSB7XG4gICAgc3VwZXIocHJvcHMsIGNvbnRleHQpO1xuXG4gICAgbGV0IHNjZW5lID0gcHJvcHMuc3RhdGUuc2NlbmU7XG5cbiAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgZGF0YVdpZHRoOiBzY2VuZS53aWR0aCxcbiAgICAgIGRhdGFIZWlnaHQ6IHNjZW5lLmhlaWdodCxcbiAgICB9O1xuICB9XG5cbiAgb25TdWJtaXQoZXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgbGV0IHtwcm9qZWN0QWN0aW9uc30gPSB0aGlzLmNvbnRleHQ7XG5cbiAgICBsZXQge2RhdGFXaWR0aCwgZGF0YUhlaWdodH0gPSB0aGlzLnN0YXRlO1xuICAgIGRhdGFXaWR0aCA9IHBhcnNlSW50KGRhdGFXaWR0aCk7XG4gICAgZGF0YUhlaWdodCA9IHBhcnNlSW50KGRhdGFIZWlnaHQpO1xuICAgIGlmIChkYXRhV2lkdGggPD0gMTAwIHx8IGRhdGFIZWlnaHQgPD0gMTAwKSB7XG4gICAgICBhbGVydCgnU2NlbmUgc2l6ZSB0b28gc21hbGwnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHJvamVjdEFjdGlvbnMuc2V0UHJvamVjdFByb3BlcnRpZXMoe3dpZHRoOiBkYXRhV2lkdGgsIGhlaWdodDogZGF0YUhlaWdodH0pO1xuICAgIH1cbiAgfVxuXG5cbiAgcmVuZGVyKCkge1xuICAgIGxldCB7d2lkdGgsIGhlaWdodH0gPSB0aGlzLnByb3BzO1xuICAgIGxldCB7ZGF0YVdpZHRoLCBkYXRhSGVpZ2h0fSA9IHRoaXMuc3RhdGU7XG4gICAgbGV0IHtwcm9qZWN0QWN0aW9ucywgdHJhbnNsYXRvcn0gPSB0aGlzLmNvbnRleHQ7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPENvbnRlbnRDb250YWluZXIgd2lkdGg9e3dpZHRofSBoZWlnaHQ9e2hlaWdodH0+XG4gICAgICAgIDxDb250ZW50VGl0bGU+e3RyYW5zbGF0b3IudCgnUHJvamVjdCBjb25maWcnKX08L0NvbnRlbnRUaXRsZT5cblxuICAgICAgICA8Zm9ybSBvblN1Ym1pdD17ZSA9PiB0aGlzLm9uU3VibWl0KGUpfT5cbiAgICAgICAgICA8Rm9ybUJsb2NrPlxuICAgICAgICAgICAgPEZvcm1MYWJlbCBodG1sRm9yPSd3aWR0aCc+e3RyYW5zbGF0b3IudCgnd2lkdGgnKX08L0Zvcm1MYWJlbD5cbiAgICAgICAgICAgIDxGb3JtTnVtYmVySW5wdXQgaWQ9J3dpZHRoJyBwbGFjZWhvbGRlcj0nd2lkdGgnIHZhbHVlPXtkYXRhV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtlID0+IHRoaXMuc2V0U3RhdGUoe2RhdGFXaWR0aDogZS50YXJnZXQudmFsdWV9KX0vPlxuICAgICAgICAgIDwvRm9ybUJsb2NrPlxuXG4gICAgICAgICAgPEZvcm1CbG9jaz5cbiAgICAgICAgICAgIDxGb3JtTGFiZWwgaHRtbEZvcj0naGVpZ2h0Jz57dHJhbnNsYXRvci50KCdoZWlnaHQnKX08L0Zvcm1MYWJlbD5cbiAgICAgICAgICAgIDxGb3JtTnVtYmVySW5wdXQgaWQ9J2hlaWdodCcgcGxhY2Vob2xkZXI9J2hlaWdodCcgdmFsdWU9e2RhdGFIZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtlID0+IHRoaXMuc2V0U3RhdGUoe2RhdGFIZWlnaHQ6IGUudGFyZ2V0LnZhbHVlfSl9Lz5cbiAgICAgICAgICA8L0Zvcm1CbG9jaz5cblxuICAgICAgICAgIDx0YWJsZSBzdHlsZT17e2Zsb2F0OiAncmlnaHQnfX0+XG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICA8Q2FuY2VsQnV0dG9uIHNpemU9J2xhcmdlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17ZSA9PiBwcm9qZWN0QWN0aW9ucy5yb2xsYmFjaygpfT57dHJhbnNsYXRvci50KCdDYW5jZWwnKX08L0NhbmNlbEJ1dHRvbj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgIDxGb3JtU3VibWl0QnV0dG9uIHNpemU9J2xhcmdlJz57dHJhbnNsYXRvci50KCdTYXZlJyl9PC9Gb3JtU3VibWl0QnV0dG9uPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgPC9mb3JtPlxuICAgICAgPC9Db250ZW50Q29udGFpbmVyPlxuICAgIClcbiAgfVxufVxuXG5Qcm9qZWN0Q29uZmlndXJhdG9yLnByb3BUeXBlcyA9IHtcbiAgd2lkdGg6IFByb3BUeXBlcy5udW1iZXIuaXNSZXF1aXJlZCxcbiAgaGVpZ2h0OiBQcm9wVHlwZXMubnVtYmVyLmlzUmVxdWlyZWQsXG4gIHN0YXRlOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG59O1xuXG5Qcm9qZWN0Q29uZmlndXJhdG9yLmNvbnRleHRUeXBlcyA9IHtcbiAgcHJvamVjdEFjdGlvbnM6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgdHJhbnNsYXRvcjogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxufTtcbiJdfQ==