shradmin
Version:
A frontend Framework for building admin application, using antd and mirrorjs.
54 lines (39 loc) • 1.42 kB
JavaScript
'use strict';
exports.__esModule = true;
exports.removeTags = undefined;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _get = require('lodash/get');
var _get2 = _interopRequireDefault(_get);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var removeTags = exports.removeTags = function removeTags(input) {
return input ? input.replace(/<[^>]+>/gm, '') : '';
};
var RichTextField = function RichTextField(_ref) {
var source = _ref.source,
_ref$record = _ref.record,
record = _ref$record === undefined ? {} : _ref$record,
stripTags = _ref.stripTags,
elStyle = _ref.elStyle;
var value = (0, _get2.default)(record, source);
if (stripTags) {
return _react2.default.createElement(
'div',
{ style: elStyle },
removeTags(value)
);
}
return _react2.default.createElement('div', { style: elStyle, dangerouslySetInnerHTML: { __html: value } });
};
RichTextField.propTypes = process.env.NODE_ENV !== "production" ? {
elStyle: _propTypes2.default.object,
record: _propTypes2.default.object,
source: _propTypes2.default.string.isRequired,
stripTags: _propTypes2.default.bool
} : {};
RichTextField.defaultProps = {
stripTags: false
};
exports.default = RichTextField;