UNPKG

react-lacona

Version:

React Component to provide a friendly interface for lacona

49 lines (40 loc) 1.4 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = Preview; var _lodash = require('lodash'); var _lodash2 = _interopRequireDefault(_lodash); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _katex = require('katex'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function Preview(props) { var preview = void 0; if (props.object.type === 'text') { preview = _react2.default.createElement( 'div', { className: 'preview preview-text' }, props.object.value ); } else if (props.object.type === 'html') { preview = _react2.default.createElement('div', { className: 'preview preview-html', dangerouslySetInnerHTML: { __html: props.object.value } }); } else if (props.object.type === 'tex') { var values = _lodash2.default.isArray(props.object.value) ? props.object.value : [props.object.value]; var htmls = _lodash2.default.map(values, function (value) { return (0, _katex.renderToString)(value); }); preview = _react2.default.createElement('div', { className: 'preview preview-tex', dangerouslySetInnerHTML: { __html: htmls.join(' ') } }); } if (preview) { return _react2.default.createElement( 'div', { className: 'preview-wrapper' }, preview ); } }