import React, { Component } from 'react';
import { Input, Form } from 'antd';
import { portRangeValidate, portRangeMessage } from 'utils/validate';
export default class index extends Component {
static isFormItem = true;
getRules(rules, required, requiredMessage) {
const newRules = {
validator: portRangeValidate,
};
if (required) {
newRules.required = required;
newRules.message = requiredMessage;
}
return [newRules, ...rules];
}
render() {
const { componentProps, formItemProps } = this.props;
const { required, label } = componentProps || {};
const placeholder = t('Please input {label}', { label });
const props = {
placeholder,
...componentProps,
};
const { rules, extra, ...rest } = formItemProps;
const newRules = this.getRules(rules, required, placeholder);
const newFormItemProps = {
...rest,
rules: newRules,
extra: extra || portRangeMessage,
};
return (
<Form.Item {...newFormItemProps}>
<Input {...props} />
</Form.Item>
);
}
}