fastlion-amis
Version:
一种MIS页面生成工具
51 lines (50 loc) • 2.78 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.PlainRenderer = exports.Plain = void 0;
var tslib_1 = require("tslib");
var react_1 = (0, tslib_1.__importDefault)(require("react"));
var factory_1 = require("../factory");
var tpl_1 = require("../utils/tpl");
var helper_1 = require("../utils/helper");
var icons_1 = require("../components/icons");
var antd_1 = require("antd");
var Plain = /** @class */ (function (_super) {
(0, tslib_1.__extends)(Plain, _super);
function Plain() {
return _super !== null && _super.apply(this, arguments) || this;
}
Plain.prototype.render = function () {
var _a = this.props, className = _a.className, wrapperComponent = _a.wrapperComponent, text = _a.text, data = _a.data, tpl = _a.tpl, inline = _a.inline, placeholder = _a.placeholder, cx = _a.classnames, popOverContainer = _a.popOverContainer, defaultOpen = _a.defaultOpen;
var value = (0, helper_1.getPropValue)(this.props);
var Component = wrapperComponent || (inline ? 'span' : 'div');
var placement = !(0, helper_1.isMobile)() ? 'rightTop' : 'bottomRight';
var renderComponent = react_1.default.createElement(Component, { className: cx('PlainField', defaultOpen && 'TplOpen', className) }, tpl || text ? ((0, tpl_1.filter)(tpl || text, data)) : typeof value === 'undefined' || value === '' || value === null ? (react_1.default.createElement("span", { className: "text-muted" }, placeholder)) : (String(value)));
return (defaultOpen ?
react_1.default.createElement("div", { className: cx('Tpltab') },
renderComponent,
react_1.default.createElement(antd_1.Popover, { content: renderComponent, trigger: 'click', overlayClassName: cx('TplPop'), getPopupContainer: popOverContainer, autoAdjustOverflow: true, placement: placement },
react_1.default.createElement(icons_1.Icon, { icon: "provincial", className: [cx('TplSaving'), 'icon'] }))) : renderComponent);
};
Plain.defaultProps = {
wrapperComponent: '',
inline: true,
placeholder: '-'
};
return Plain;
}(react_1.default.Component));
exports.Plain = Plain;
var PlainRenderer = /** @class */ (function (_super) {
(0, tslib_1.__extends)(PlainRenderer, _super);
function PlainRenderer() {
return _super !== null && _super.apply(this, arguments) || this;
}
PlainRenderer = (0, tslib_1.__decorate)([
(0, factory_1.Renderer)({
test: /(^|\/)(?:plain|text)$/,
name: 'plain'
})
], PlainRenderer);
return PlainRenderer;
}(Plain));
exports.PlainRenderer = PlainRenderer;
//# sourceMappingURL=./renderers/Plain.js.map
;