react-planner-viewer
Version:
react-planner-viewer is a React Component for view plans builded with react-planner in 2D mode
94 lines (77 loc) • 6.68 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = PropertyNumber;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _export = require('../../components/style/export');
var _sharedPropertyStyle = require('./shared-property-style');
var _sharedPropertyStyle2 = _interopRequireDefault(_sharedPropertyStyle);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function PropertyNumber(_ref) {
var value = _ref.value,
onUpdate = _ref.onUpdate,
onValid = _ref.onValid,
configs = _ref.configs,
sourceElement = _ref.sourceElement,
internalState = _ref.internalState,
state = _ref.state;
var update = function update(val) {
var number = parseFloat(val);
if (isNaN(number)) {
number = 0;
}
if (configs.hook) {
return configs.hook(number, sourceElement, internalState, state).then(function (_val) {
return onUpdate(_val);
});
}
return onUpdate(number);
};
return _react2.default.createElement(
'table',
{ className: 'PropertyNumber', style: _sharedPropertyStyle2.default.tableStyle },
_react2.default.createElement(
'tbody',
null,
_react2.default.createElement(
'tr',
null,
_react2.default.createElement(
'td',
{ style: _sharedPropertyStyle2.default.firstTdStyle },
_react2.default.createElement(
_export.FormLabel,
null,
configs.label
)
),
_react2.default.createElement(
'td',
null,
_react2.default.createElement(_export.FormNumberInput, {
value: value,
onChange: function onChange(event) {
return update(event.target.value);
},
onValid: onValid,
min: configs.min,
max: configs.max })
)
)
)
);
}
PropertyNumber.propTypes = {
value: _propTypes2.default.any.isRequired,
onUpdate: _propTypes2.default.func.isRequired,
onValid: _propTypes2.default.func,
configs: _propTypes2.default.object.isRequired,
sourceElement: _propTypes2.default.object,
internalState: _propTypes2.default.object,
state: _propTypes2.default.object.isRequired
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jYXRhbG9nL3Byb3BlcnRpZXMvcHJvcGVydHktbnVtYmVyLmpzeCJdLCJuYW1lcyI6WyJQcm9wZXJ0eU51bWJlciIsInZhbHVlIiwib25VcGRhdGUiLCJvblZhbGlkIiwiY29uZmlncyIsInNvdXJjZUVsZW1lbnQiLCJpbnRlcm5hbFN0YXRlIiwic3RhdGUiLCJ1cGRhdGUiLCJ2YWwiLCJudW1iZXIiLCJwYXJzZUZsb2F0IiwiaXNOYU4iLCJob29rIiwidGhlbiIsIl92YWwiLCJ0YWJsZVN0eWxlIiwiZmlyc3RUZFN0eWxlIiwibGFiZWwiLCJldmVudCIsInRhcmdldCIsIm1pbiIsIm1heCIsInByb3BUeXBlcyIsImFueSIsImlzUmVxdWlyZWQiLCJmdW5jIiwib2JqZWN0Il0sIm1hcHBpbmdzIjoiOzs7OztrQkFLd0JBLGM7O0FBTHhCOzs7O0FBQ0E7Ozs7QUFDQTs7QUFDQTs7Ozs7O0FBRWUsU0FBU0EsY0FBVCxPQUFrRztBQUFBLE1BQXpFQyxLQUF5RSxRQUF6RUEsS0FBeUU7QUFBQSxNQUFsRUMsUUFBa0UsUUFBbEVBLFFBQWtFO0FBQUEsTUFBeERDLE9BQXdELFFBQXhEQSxPQUF3RDtBQUFBLE1BQS9DQyxPQUErQyxRQUEvQ0EsT0FBK0M7QUFBQSxNQUF0Q0MsYUFBc0MsUUFBdENBLGFBQXNDO0FBQUEsTUFBdkJDLGFBQXVCLFFBQXZCQSxhQUF1QjtBQUFBLE1BQVJDLEtBQVEsUUFBUkEsS0FBUTs7O0FBRS9HLE1BQUlDLFNBQVMsU0FBVEEsTUFBUyxDQUFDQyxHQUFELEVBQVM7QUFDcEIsUUFBSUMsU0FBU0MsV0FBV0YsR0FBWCxDQUFiOztBQUVBLFFBQUlHLE1BQU1GLE1BQU4sQ0FBSixFQUFtQjtBQUNqQkEsZUFBUyxDQUFUO0FBQ0Q7O0FBRUQsUUFBSU4sUUFBUVMsSUFBWixFQUFrQjtBQUNoQixhQUFPVCxRQUFRUyxJQUFSLENBQWFILE1BQWIsRUFBcUJMLGFBQXJCLEVBQW9DQyxhQUFwQyxFQUFtREMsS0FBbkQsRUFBMERPLElBQTFELENBQStELGdCQUFRO0FBQzVFLGVBQU9aLFNBQVNhLElBQVQsQ0FBUDtBQUNELE9BRk0sQ0FBUDtBQUdEOztBQUVELFdBQU9iLFNBQVNRLE1BQVQsQ0FBUDtBQUNELEdBZEQ7O0FBZ0JBLFNBQ0U7QUFBQTtBQUFBLE1BQU8sV0FBVSxnQkFBakIsRUFBa0MsT0FBTyw4QkFBY00sVUFBdkQ7QUFDRTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDRTtBQUFBO0FBQUEsWUFBSSxPQUFPLDhCQUFjQyxZQUF6QjtBQUF1QztBQUFBO0FBQUE7QUFBWWIsb0JBQVFjO0FBQXBCO0FBQXZDLFNBREY7QUFFRTtBQUFBO0FBQUE7QUFDRTtBQUNFLG1CQUFPakIsS0FEVDtBQUVFLHNCQUFVO0FBQUEscUJBQVNPLE9BQU9XLE1BQU1DLE1BQU4sQ0FBYW5CLEtBQXBCLENBQVQ7QUFBQSxhQUZaO0FBR0UscUJBQVNFLE9BSFg7QUFJRSxpQkFBS0MsUUFBUWlCLEdBSmY7QUFLRSxpQkFBS2pCLFFBQVFrQixHQUxmO0FBREY7QUFGRjtBQURBO0FBREYsR0FERjtBQWtCRDs7QUFFRHRCLGVBQWV1QixTQUFmLEdBQTJCO0FBQ3pCdEIsU0FBTyxvQkFBVXVCLEdBQVYsQ0FBY0MsVUFESTtBQUV6QnZCLFlBQVUsb0JBQVV3QixJQUFWLENBQWVELFVBRkE7QUFHekJ0QixXQUFTLG9CQUFVdUIsSUFITTtBQUl6QnRCLFdBQVMsb0JBQVV1QixNQUFWLENBQWlCRixVQUpEO0FBS3pCcEIsaUJBQWUsb0JBQVVzQixNQUxBO0FBTXpCckIsaUJBQWUsb0JBQVVxQixNQU5BO0FBT3pCcEIsU0FBTyxvQkFBVW9CLE1BQVYsQ0FBaUJGO0FBUEMsQ0FBM0IiLCJmaWxlIjoicHJvcGVydHktbnVtYmVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBGb3JtTGFiZWwsIEZvcm1OdW1iZXJJbnB1dCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvc3R5bGUvZXhwb3J0JztcbmltcG9ydCBQcm9wZXJ0eVN0eWxlIGZyb20gJy4vc2hhcmVkLXByb3BlcnR5LXN0eWxlJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUHJvcGVydHlOdW1iZXIoe3ZhbHVlLCBvblVwZGF0ZSwgb25WYWxpZCwgY29uZmlncywgc291cmNlRWxlbWVudCwgaW50ZXJuYWxTdGF0ZSwgc3RhdGV9KSB7XG5cbiAgbGV0IHVwZGF0ZSA9ICh2YWwpID0+IHtcbiAgICBsZXQgbnVtYmVyID0gcGFyc2VGbG9hdCh2YWwpO1xuXG4gICAgaWYgKGlzTmFOKG51bWJlcikpIHtcbiAgICAgIG51bWJlciA9IDA7XG4gICAgfVxuXG4gICAgaWYgKGNvbmZpZ3MuaG9vaykge1xuICAgICAgcmV0dXJuIGNvbmZpZ3MuaG9vayhudW1iZXIsIHNvdXJjZUVsZW1lbnQsIGludGVybmFsU3RhdGUsIHN0YXRlKS50aGVuKF92YWwgPT4ge1xuICAgICAgICByZXR1cm4gb25VcGRhdGUoX3ZhbCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gb25VcGRhdGUobnVtYmVyKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDx0YWJsZSBjbGFzc05hbWU9XCJQcm9wZXJ0eU51bWJlclwiIHN0eWxlPXtQcm9wZXJ0eVN0eWxlLnRhYmxlU3R5bGV9PlxuICAgICAgPHRib2R5PlxuICAgICAgPHRyPlxuICAgICAgICA8dGQgc3R5bGU9e1Byb3BlcnR5U3R5bGUuZmlyc3RUZFN0eWxlfT48Rm9ybUxhYmVsPntjb25maWdzLmxhYmVsfTwvRm9ybUxhYmVsPjwvdGQ+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICA8Rm9ybU51bWJlcklucHV0XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17ZXZlbnQgPT4gdXBkYXRlKGV2ZW50LnRhcmdldC52YWx1ZSl9XG4gICAgICAgICAgICBvblZhbGlkPXtvblZhbGlkfVxuICAgICAgICAgICAgbWluPXtjb25maWdzLm1pbn1cbiAgICAgICAgICAgIG1heD17Y29uZmlncy5tYXh9Lz5cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvdHI+XG4gICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG4gICk7XG5cbn1cblxuUHJvcGVydHlOdW1iZXIucHJvcFR5cGVzID0ge1xuICB2YWx1ZTogUHJvcFR5cGVzLmFueS5pc1JlcXVpcmVkLFxuICBvblVwZGF0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25WYWxpZDogUHJvcFR5cGVzLmZ1bmMsXG4gIGNvbmZpZ3M6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgc291cmNlRWxlbWVudDogUHJvcFR5cGVzLm9iamVjdCxcbiAgaW50ZXJuYWxTdGF0ZTogUHJvcFR5cGVzLm9iamVjdCxcbiAgc3RhdGU6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZFxufTtcbiJdfQ==