watercolor-ui
Version:
A modern minimalist cross-framework component library
97 lines • 3.29 kB
TypeScript
/**
* Form 共用工具函数
*/
/**
* 获取FormControl类名
* @param {Object} options - 配置选项
* @returns {string} 类名字符串
*/
export function getFormControlClasses({ fullWidth, margin, disabled, error, className }?: Object): string;
/**
* 获取FormControlLabel类名
* @param {Object} options - 配置选项
* @returns {string} 类名字符串
*/
export function getFormControlLabelClasses({ labelPlacement, disabled, className }?: Object): string;
/**
* 获取FormGroup类名
* @param {Object} options - 配置选项
* @returns {string} 类名字符串
*/
export function getFormGroupClasses({ row, className }?: Object): string;
/**
* 获取FormHelperText类名
* @param {Object} options - 配置选项
* @returns {string} 类名字符串
*/
export function getFormHelperTextClasses({ variant, className }?: Object): string;
/**
* 创建表单上下文
* @param {Object} formData - 表单数据
* @param {Object} options - 选项
* @returns {Object} 表单上下文对象
*/
export function createFormContext(formData?: Object, options?: Object): Object;
/**
* 验证表单字段
* @param {any} value - 字段值
* @param {Object} rules - 验证规则
* @returns {Object} 验证结果 { isValid, errors }
*/
export function validateFormField(value: any, rules?: Object): Object;
/**
* 验证整个表单
* @param {Object} formData - 表单数据
* @param {Object} validationSchema - 验证模式
* @returns {Object} 验证结果 { isValid, errors }
*/
export function validateForm(formData: Object, validationSchema: Object): Object;
/**
* 处理表单提交
* @param {Event} event - 提交事件
* @param {Object} formData - 表单数据
* @param {Object} options - 选项
* @returns {Promise} 提交Promise
*/
export function handleFormSubmit(event: Event, formData: Object, options?: Object): Promise<any>;
/**
* 创建表单字段更新函数
* @param {Function} setFormData - 设置表单数据的函数
* @returns {Function} 字段更新函数
*/
export function createFieldUpdater(setFormData: Function): Function;
/**
* 重置表单数据
* @param {Object} initialData - 初始数据
* @param {Function} setFormData - 设置表单数据的函数
* @param {Function} setErrors - 设置错误信息的函数
*/
export function resetForm(initialData: Object | undefined, setFormData: Function, setErrors: Function): void;
/**
* 获取嵌套对象的值
* @param {Object} obj - 对象
* @param {string} path - 路径,如 'user.name'
* @returns {any} 值
*/
export function getNestedValue(obj: Object, path: string): any;
/**
* 设置嵌套对象的值
* @param {Object} obj - 对象
* @param {string} path - 路径,如 'user.name'
* @param {any} value - 值
* @returns {Object} 新对象
*/
export function setNestedValue(obj: Object, path: string, value: any): Object;
/**
* 序列化表单数据为URL参数
* @param {Object} formData - 表单数据
* @returns {string} URL参数字符串
*/
export function serializeFormData(formData: Object): string;
/**
* 从URL参数反序列化表单数据
* @param {string} searchParams - URL参数字符串
* @returns {Object} 表单数据对象
*/
export function deserializeFormData(searchParams: string): Object;
//# sourceMappingURL=utils.d.ts.map