// validation functions
export function required(value) {
  return value != null ? undefined : 'وارد کردن این فیلد الزامی است.';
}

export function number(value) {
  return value && isNaN(Number(value)) ? 'لطفا یک عدد وارد نمایید.' : undefined;
}

export function email(value) {
  return value && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(value)
    ? 'لطفا یک ایمیل معتبر وارد نمایید.'
    : undefined;
}

export function mobile(value) {
  return value && !/^[0][9][0-9]{9}$/i.test(value)
    ? 'لطفا یک شماره تلفن همراه معتبر با حروف انگلیسی وارد نمایید.'
    : undefined;
}

export function password(value) {
  return value && !/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$/i.test(value)
    ? 'لطفا یک رمزعبور دارای حداقل 8 کاراکتر و ترکیبی از حروف انگلیسی و اعداد وارد نمایید.'
    : undefined;
}

export function smsKey(value) {
  return value && !/^[0-9]{6}$/i.test(value)
    ? 'لطفا کد 6 رقمی پیامک شده به شماره خود را وارد نمایید.'
    : undefined;
}
