@vega/review-tool
Version:
80 lines (61 loc) • 2.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _formBuilder = require('part:@lyra/form-builder');
var _schema = require('part:@lyra/base/schema');
var _schema2 = _interopRequireDefault(_schema);
var _ArticleSnapshot = require('./styles/ArticleSnapshot.css');
var _ArticleSnapshot2 = _interopRequireDefault(_ArticleSnapshot);
var _withPointersAsMarkers = require('part:@lyra/components/with-pointers-as-markers');
var _withPointersAsMarkers2 = _interopRequireDefault(_withPointersAsMarkers);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const preventDefault = event => event.preventDefault();
class ArticleSnapshot extends _react2.default.PureComponent {
constructor(...args) {
var _temp;
return _temp = super(...args), this.state = { focusPath: [] }, this.handleFocus = nextFocusPath => {
this.setState({ focusPath: nextFocusPath });
}, _temp;
}
render() {
var _props = this.props;
const snapshot = _props.snapshot,
highlightedPointerKey = _props.highlightedPointerKey;
const focusPath = this.state.focusPath;
return _react2.default.createElement(
'div',
{ className: _ArticleSnapshot2.default.root },
_react2.default.createElement(
'form',
{ onSubmit: preventDefault },
_react2.default.createElement(
_withPointersAsMarkers2.default,
{
documentId: snapshot._id,
highlightedPointerKey: highlightedPointerKey
},
pointers => {
return _react2.default.createElement(_formBuilder.FormBuilder, {
onFocus: this.handleFocus,
focusPath: focusPath,
type: _schema2.default.get('articleSnapshot'),
schema: _schema2.default,
markers: pointers,
value: snapshot
});
}
)
)
);
}
}
exports.default = ArticleSnapshot;
ArticleSnapshot.propTypes = {
snapshot: _propTypes2.default.object,
highlightedPointerKey: _propTypes2.default.string
};