@aliretail/react-materials-components
Version:
61 lines (43 loc) • 1.79 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.mapPreviewComponent = exports.TextAreaConnectProps = exports.TextArea = void 0;
var _next = require("@formily/next");
var _shared = require("../shared");
var _Input = _interopRequireDefault(require("../../Input"));
var _Preview = _interopRequireDefault(require("./Preview"));
var mapPreviewComponent = function mapPreviewComponent(Target, props, fieldProps) {
if (fieldProps === void 0) {
fieldProps = {};
}
var _fieldProps = fieldProps,
editable = _fieldProps.editable;
if (editable !== undefined) {
if (editable === false) {
var _props$xComponentPr;
// 进入到预览态
// 如果 props 中有 readOnlyRender,使用 readOnlyRender 的展示,否则使用 PreviewText
if ((_props$xComponentPr = props['x-component-props']) !== null && _props$xComponentPr !== void 0 && _props$xComponentPr.readOnlyRender) {
return props['x-component-props'].readOnlyRender;
}
return _Preview["default"];
}
}
return Target;
};
exports.mapPreviewComponent = mapPreviewComponent;
var TextAreaConnectProps = function TextAreaConnectProps(props, fieldProps) {
(0, _shared.mapStyledProps)(props, fieldProps); // 当是disabled状态是不显示清除按钮
if (props.disabled) {
props.hasClear = false;
} // 当有限制长度的时候自动显示
if ('maxLength' in props && !('showLimitHint' in props)) {
props.showLimitHint = true;
}
};
exports.TextAreaConnectProps = TextAreaConnectProps;
var TextArea = (0, _next.connect)({
getProps: TextAreaConnectProps,
getComponent: mapPreviewComponent
})(_Input["default"].TextArea);
exports.TextArea = TextArea;