import { registerValidateRules } from "@formily/core";

/**
 * 注册校验函数
 */
registerValidateRules({
  phoneWhenWrite(value, _rule, ctx) {
    const field = ctx.field;
    // 在只读模式
    if (
      field.readPretty ||
      !value ||
      /^(?:(?:\+|00)86)?1[3-9]\d{9}$/.test(value)
    ) {
      return "";
    }
    return "手机号码格式不正确";
  },
  emailWhenWrite(value, _rule, ctx) {
    const field = ctx.field;
    if (
      field.readPretty ||
      !value ||
      /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(
        value
      )
    ) {
      return "";
    }
    return "邮箱格式不正确";
  },
});
