/** * Checks if two string are equal ignoring case. * @param str1 The first string. * @param str2 The second string. * @returns True if the strings are equal ignoring case. */ export const equalsIgnoreCase = (str1 = '', str2 = '') => str1.toLowerCase() === str2.toLowerCase(); /** * Checks if a string is empty or contains only whitespace. * @param {string} value The string to test. * @returns {boolean} True if the string is blank. */ export function isBlank(value: string | undefined | null) { return !value?.trim().length; } /** * Gets the value of a string as boolean. * @param {string} name The value as a string. * @param {boolean} defaultValue The default value if the string is invalid. * @returns {boolean} The value. */ export function toBoolean(value: string | undefined | null, defaultValue = false) { if (value !== 'true' && value !== 'false') { return defaultValue; } else { return value !== 'false'; } } /** * Gets the value of a string as float number. * @param {string} value The value as a string. * @param {number} defaultValue The default value if the string is invalid. * @returns {number} The value. */ export function toFloat(value: string | null | undefined, defaultValue = 0) { if (!value) return defaultValue; const number = parseFloat(value); if (isNaN(number)) return defaultValue; return number; }