validate.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /**
  2. * @param {string} path
  3. * @returns {Boolean}
  4. */
  5. export function isExternal (path) {
  6. return /^(https?:|mailto:|tel:)/.test(path)
  7. }
  8. /**
  9. * @param {string} str
  10. * @returns {Boolean}
  11. */
  12. export function validUsername (str) {
  13. const validMap = ['admin', 'editor']
  14. return validMap.indexOf(str.trim()) >= 0
  15. }
  16. /**
  17. * @param {string} url
  18. * @returns {Boolean}
  19. */
  20. export function validURL (url) {
  21. const reg = /^([hH][tT]{2}[pP]:\/\/|[hH][tT]{2}[pP][sS]:\/\/)(([A-Za-z0-9-~]+)\.)+([A-Za-z0-9-~/])+$/
  22. return reg.test(url)
  23. }
  24. /**
  25. * @param {string} str
  26. * @returns {Boolean}
  27. */
  28. export function validLowerCase (str) {
  29. const reg = /^[a-z]+$/
  30. return reg.test(str)
  31. }
  32. /**
  33. * @param {string} str
  34. * @returns {Boolean}
  35. */
  36. export function validUpperCase (str) {
  37. const reg = /^[A-Z]+$/
  38. return reg.test(str)
  39. }
  40. /**
  41. * @param {string} str
  42. * @returns {Boolean}
  43. */
  44. export function validAlphabets (str) {
  45. const reg = /^[A-Za-z]+$/
  46. return reg.test(str)
  47. }
  48. /**
  49. * @param {string} email
  50. * @returns {Boolean}
  51. */
  52. export function validEmail (email) {
  53. const reg = /^(([^<>()[\]\\.,;:\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,}))$/
  54. return reg.test(email)
  55. }
  56. /**
  57. * @param {string} str
  58. * @returns {Boolean}
  59. */
  60. export function isString (str) {
  61. if (typeof str === 'string' || str instanceof String) {
  62. return true
  63. }
  64. return false
  65. }
  66. /**
  67. * @param {Array} arg
  68. * @returns {Boolean}
  69. */
  70. export function isArray (arg) {
  71. if (typeof Array.isArray === 'undefined') {
  72. return Object.prototype.toString.call(arg) === '[object Array]'
  73. }
  74. return Array.isArray(arg)
  75. }