@likg/validator
Version:
3 lines (2 loc) • 3.69 kB
JavaScript
/* eslint-disable */
class t{static isChineseName(t){return/^[\u4e00-\u9fa5]{2,6}$/.test(t)}static isIdCard(t){const e=/^[1-9]\d{5}(18|19|20)?\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/.test(t),i=!!{11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}[t.slice(0,2)],s=18===t.length?+t.slice(6,10):+("19"+t.slice(6,8)),r=+t.slice(18===t.length?10:8,18===t.length?12:10),n=+t.slice(18===t.length?12:10,18===t.length?14:12),a=new Date(s,r-1,n),c=a.getFullYear()===s&&a.getMonth()+1===r&&a.getDate()===n&&s>=(new Date).getFullYear()-150&&s<=(new Date).getFullYear()-3;return e&&i&&c&&(15===t.length||(t=>{const e=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];return["1","0","X","9","8","7","6","5","4","3","2"][t.slice(0,17).split("").reduce((t,i,s)=>t+ +i*e[s],0)%11]===t[17]})((t=>{if(15===t.length){const e=t.slice(0,6)+"19"+t.slice(6),i=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];return e+["1","0","X","9","8","7","6","5","4","3","2"][Array.from(e).reduce((t,e,s)=>t+ +e*i[s],0)%11]}return t})(t)))}static isWeChatId(t){return/^[a-zA-Z][a-zA-Z\d_-]{5,19}$/.test(t)}static isQQ(t){return/^\d{5,15}$/.test(t)}static isEmail(t){return/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(t)}static isTel(t){return/^1[3-9]\d{9}$/.test(t)}static isCode(t){return/^\d{6}$/.test(t)}static isAndroid(){return/Linux|Android/i.test(window.navigator.userAgent)}static isiOS(){return/iPhone/i.test(window.navigator.userAgent)}static isWeixin(){return/MicroMessenger/i.test(window.navigator.userAgent)}static isBangScreen(){return window&&window.screen.height>=812&&window.devicePixelRatio>=2}static isValidDate(t){return t instanceof Date&&!isNaN(t.getTime())}static isToday(e){const i=new Date(e);if(t.isValidDate(i)){const t=new Date;return`${i.getFullYear()}${i.getMonth()}${i.getDate()}`===`${t.getFullYear()}${t.getMonth()}${t.getDate()}`}return!1}static isJSON(t){if("string"!=typeof t)return!1;try{const e=JSON.parse(t);return!(!e||"object"!=typeof e)}catch(t){return!1}}static isAudio(t){return/\.(mp3|wav|ogg|flac|aac|wma|m4a)\b/g.test(t)}static isVideo(t){return/\.(mp4|avi|mov|wmv|flv|mkv|webm)\b/g.test(t)}static checkFile(t){const{type:e,file:i}=t;if("size"===e){const{maxSize:e}=t;return!(i.size>1024*e*1024)}if("extension"===e){let{accept:e}=t;const s=i.name.lastIndexOf(".");if(-1===s)return!1;const r=i.name.slice(s);return/image\/\*/i.test(e)?e=".jpg, .jpeg, .png, .gif, .bmp, .webp, .svg":/video\/\*/i.test(e)?e=".mp4, .avi, .mkv, .mov, .wmv, .flv, .rmvb, .mpeg, .mpg":/audio\/\*/i.test(e)&&(e=".mp3, .wav, .wma, .rm, .mid, .aac, .ogg"),e.split(",").map(t=>t.trim()).includes(r)}return!1}static isLicensePlate(t){return/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳台]{1}$/.test(t)||/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[DF][A-HJ-NP-Z0-9][0-9]{4}$/.test(t)||/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[0-9]{5}[DF]$/.test(t)}static isDriverLicense(t){return/^[A-Z]{1}[0-9]{1}[A-Z]{1}[0-9]{1}[A-Z]{1}[0-9]{1}[0-9]{2}$/.test(t)}static isVehicleLicense(t){return/^[A-Z]{1}[A-Z0-9]{1}\d{5}[A-Z0-9]{3}\d{5}$/.test(t)}}export{t as default};