StructureJS
0.15.2A class based utility library for building modular and scalable web platform applications. Features opt-in classes and utilities which provide a solid foundation and toolset to build your next project.
/** * A ValidationUtility class that has several static methods to assist in development. * * @class ValidationUtil * @module StructureJS * @submodule util * @author Robert S. (www.codeBelt.com) * @static */ class ValidationUtil { constructor() { throw new Error('[ValidationUtil] Do not instantiate the ValidationUtil class because it is a static class.'); } /** * Determines if the String passed has a length. * * @method isEmpty * @param value {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isEmpty('sometext'); * // false */ public static isEmpty(value:string):boolean { if (value != null) { return value.length < 1; } return true; } /** * Determines if the two values passed in are the same. * * @method isMatch * @param value1 {any} * @param value2 {any} * @returns {boolean} * @public * @static * @example * ValidationUtil.isMatch('one@email.com', 'two@email.com'); * // false */ public static isMatch(value1:any, value2:any):boolean { return value1 === value2; } /** * Determines if the String passed in is a valid email address. * * @method isValidEmailAddress * @param email {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isValidEmailAddress('someemail@address.com'); * // true */ public static isValidEmailAddress(email:string):boolean { const expression:RegExp = /^[-a-zA-Z0-9+_\'][-.a-zA-Z0-9+_\']*@[-.a-zA-Z0-9]+(\.[-.a-zA-Z0-9]+)*\.([a-zA-Z]{2,})$/; return expression.test(email); } /** * Determines if the String passed in is a phone number. * * @method isValidPhoneNumber * @param phoneNumber {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isValidPhoneNumber('123 456 7899'); * // true */ public static isValidPhoneNumber(phoneNumber:string):boolean { const expression:RegExp = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})$/; return expression.test(phoneNumber); } /** * Determines if the String passed in is a zip code. * * @method isZipCode * @param zipCode {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isZipCode('55067 4434'); * // true */ public static isZipCode(zipCode:string):boolean { const expression:RegExp = /^([0-9]{5})(?:[-\s]*([0-9]{4}))?$/; return expression.test(zipCode); } /** * Determines if the String passed in is a postal code. * * @method isPostalCode * @param postalCode {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isPostalCode('p8n3h3'); * // true */ public static isPostalCode(postalCode:string):boolean { const expression:RegExp = /^([A-Z][0-9][A-Z])\s*([0-9][A-Z][0-9])$/i; return expression.test(postalCode); } /** * Determines if the String passed in is a Social Security Number. * * @method isSocialSecurityNumber * @param ssn {string} * @returns {boolean} * @public * @static * @example * ValidationUtil.isSocialSecurityNumber('178051120'); * // true */ public static isSocialSecurityNumber(ssn:string):boolean { const expression:RegExp = /^\d{3}-?\d{2}-?\d{4}$/; return expression.test(ssn); } } export default ValidationUtil;