@likg/validator
Version:
120 lines (119 loc) • 3.1 kB
TypeScript
interface ICheckFileSize {
type: 'size';
maxSize: number;
file: File;
}
interface ICheckFileExtension {
type: 'extension';
accept: string;
file: File;
}
declare class Validator {
/**
* 中文名校验
* @param v
*/
static isChineseName(v: string): boolean;
/**
* 验证身份证号码的有效性
*/
static isIdCard(idCard: string): boolean;
/**
* 验证微信号
* 1. 可使用6-20个字母、数字、下划线和减号;
* 2. 必须以字母开头(字母不区分大小写);
* 3. 不支持设置中文;
* @param v
*/
static isWeChatId(v: string): boolean;
/**
* 验证QQ号
* @param v
*/
static isQQ(v: string): boolean;
/**
* 验证邮箱
* @param v
*/
static isEmail(v: string): boolean;
/**
* 验证手机号
* @param v
*/
static isTel(v: string): boolean;
/**
* 验证手机验证码
* @param v
*/
static isCode(v: string): boolean;
/**
* 验证Android环境
*/
static isAndroid(): boolean;
/**
* 验证iOS环境
*/
static isiOS(): boolean;
/**
* 验证微信环境
*/
static isWeixin(): boolean;
/**
* 验证是否是刘海屏
*/
static isBangScreen(): boolean;
/**
* 判断是否是有效日期
* @param date
* @returns
*/
static isValidDate(date: Date): boolean;
/**
* 判断某个日期是否是今日
* @param $
* @returns
*/
static isToday(v: Date | string | number): boolean;
/**
* 校验目标值是否是一个JSON字符串
* @param target
* @returns
*/
static isJSON(target: any): boolean;
/**
* 检验目标字符串是否包含音频后缀
* @param src
*/
static isAudio(src: string): boolean;
/**
* 检验目标字符串是否包含视频后缀
* @param src
*/
static isVideo(src: string): boolean;
/**
* 文件尺寸/扩展名校验
* @param options
* @returns
*/
static checkFile(options: ICheckFileSize | ICheckFileExtension): boolean;
/**
* 车牌号校验
* 1. 普通车牌号 (regularPlatePattern):该正则表达式确保车牌号码包含一个省份简称(汉字)和五个字符(A-Z 或 0-9),并且不包含字母 I 和 O
* 2. 新能源小型车 (newEnergySmallPattern):验证省份简称 + 发牌机关字母(D 或 F) + 一位字母或数字 + 四位数字。
* 3. 新能源大型车 (newEnergyLargePattern):验证省份简称 + 发牌机关字母 + 前五位数字 + 最后一个字母为 D 或 F。
*/
static isLicensePlate(licensePlate: string): boolean;
/**
* 驾驶证号校验(粗率)
* @param license
* @returns
*/
static isDriverLicense(license: string): boolean;
/**
* 行驶证号校验(粗率)
* @param license
* @returns
*/
static isVehicleLicense(license: string): boolean;
}
export default Validator;