@fe6/water-pro
Version:
An enterprise-class UI design language and Vue-based implementation
68 lines (54 loc) • 1.82 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createPlaceholderMessage = createPlaceholderMessage;
exports.setComponentRuleType = setComponentRuleType;
exports.handleInputNumberValue = handleInputNumberValue;
exports.dateItemType = void 0;
var _shared = require("@fe6/shared");
/** @format */
var inputText = '请输入';
var chooseText = '请选择';
/**
* @description: 生成placeholder
*/
function createPlaceholderMessage(component) {
if (component.includes('Input') || component.includes('Complete')) {
return inputText;
}
if (component.includes('Picker')) {
return chooseText;
}
if (component.includes('Select') || component.includes('Cascader') || component.includes('Checkbox') || component.includes('Radio') || component.includes('Switch')) {
// return `请选择${label}`;
return chooseText;
}
return '';
}
function genType() {
return ['DatePicker', 'MonthPicker', 'RangePicker', 'RangeGroupPicker', 'WeekPicker', 'TimePicker', 'TimeRangePicker'];
}
function setComponentRuleType(rule, component) {
if (['DatePicker', 'MonthPicker', 'WeekPicker', 'TimePicker'].includes(component)) {
rule.type = 'object';
} else if (['RangePicker', 'RangeGroupPicker', 'TimeRangePicker', 'Upload', 'CheckboxGroup', 'TimePicker'].includes(component)) {
rule.type = 'array';
} else if (['InputNumber'].includes(component)) {
rule.type = 'number';
}
}
function handleInputNumberValue(component, val) {
if (!component) {
return val || '';
}
if (['Input', 'InputPassword', 'InputSearch', 'InputTextArea'].includes(component)) {
return val && (0, _shared.isNumber)(val) ? "".concat(val) : val;
}
return val;
}
/**
* 时间字段
*/
var dateItemType = genType();
exports.dateItemType = dateItemType;
;