fastlion-amis
Version:
一种MIS页面生成工具
65 lines (64 loc) • 4.08 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.RadiosControlRenderer = void 0;
var tslib_1 = require("tslib");
var react_1 = (0, tslib_1.__importDefault)(require("react"));
var classnames_1 = (0, tslib_1.__importDefault)(require("classnames"));
var Radios_1 = (0, tslib_1.__importDefault)(require("../../components/Radios"));
var Options_1 = require("./Options");
var helper_1 = require("../../utils/helper");
var RadiosControl = /** @class */ (function (_super) {
(0, tslib_1.__extends)(RadiosControl, _super);
function RadiosControl() {
return _super !== null && _super.apply(this, arguments) || this;
}
RadiosControl.prototype.handleChange = function (option) {
var _a = this.props, joinValues = _a.joinValues, extractValue = _a.extractValue, valueField = _a.valueField, onChange = _a.onChange;
if (option && (joinValues || extractValue)) {
option = option[valueField || 'value'];
}
onChange && onChange(option);
};
RadiosControl.prototype.reload = function () {
var reload = this.props.reloadOptions;
reload && reload();
};
RadiosControl.prototype.render = function () {
var _a = this.props, className = _a.className, ns = _a.classPrefix, value = _a.value, onChange = _a.onChange, disabled = _a.disabled, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, showUnLimited = _a.showUnLimited, placeholder = _a.placeholder, options = _a.options, _b = _a.inline, inline = _b === void 0 ? true : _b, formMode = _a.formMode, columnsCount = _a.columnsCount, classPrefix = _a.classPrefix, itemClassName = _a.itemClassName, labelClassName = _a.labelClassName, labelField = _a.labelField, valueField = _a.valueField, __ = _a.translate, store = _a.store, name = _a.name;
return (react_1.default.createElement(Radios_1.default, { inline: inline || formMode === 'inline', className: (0, classnames_1.default)(ns + "RadiosControl", className), value: typeof value === 'undefined' || value === null ? '' : value,
// Jay
// disabledFormItem 禁用某些表单选项,例如checkboxex,radio,select目前用到的场景是根据input-table-dynamic的原始数据已有值来禁用
disabled: disabled || (name ? store === null || store === void 0 ? void 0 : store.disabledFormItem[name] : undefined), onChange: this.handleChange, joinValues: joinValues, extractValue: extractValue, delimiter: delimiter, labelClassName: labelClassName, labelField: labelField, valueField: valueField, placeholder: __(placeholder), options: options, columnsCount: columnsCount, classPrefix: classPrefix, itemClassName: itemClassName, showUnLimited: showUnLimited }));
};
var _a;
RadiosControl.defaultProps = {
columnsCount: 0
};
(0, tslib_1.__decorate)([
helper_1.autobind,
(0, tslib_1.__metadata)("design:type", Function),
(0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof Options_1.Option !== "undefined" && Options_1.Option) === "function" ? _a : Object]),
(0, tslib_1.__metadata)("design:returntype", void 0)
], RadiosControl.prototype, "handleChange", null);
return RadiosControl;
}(react_1.default.Component));
exports.default = RadiosControl;
var RadiosControlRenderer = /** @class */ (function (_super) {
(0, tslib_1.__extends)(RadiosControlRenderer, _super);
function RadiosControlRenderer() {
return _super !== null && _super.apply(this, arguments) || this;
}
RadiosControlRenderer.defaultProps = {
multiple: false,
inline: true
};
RadiosControlRenderer = (0, tslib_1.__decorate)([
(0, Options_1.OptionsControl)({
type: 'radios',
sizeMutable: false
})
], RadiosControlRenderer);
return RadiosControlRenderer;
}(RadiosControl));
exports.RadiosControlRenderer = RadiosControlRenderer;
//# sourceMappingURL=./renderers/Form/Radios.js.map
;