in src/objects/serverside/utils.js [34:92]
static normalizeAndHash (input: string, field: string) {
if (field == null || input == null) {
return null;
}
let normalized_input = input.trim().toLowerCase();
if (normalized_input.length === 0) {
return null;
}
if (normalized_input.match(SHA256_REGEX) || normalized_input.match(MD5_REGEX)) {
return normalized_input;
}
switch (field) {
case 'country':
normalized_input = ServerSideUtils.normalizeCountry(normalized_input);
break;
case 'ct':
normalized_input = ServerSideUtils.normalizeCity(normalized_input);
break;
case 'em':
normalized_input = ServerSideUtils.normalizeEmail(normalized_input);
break;
case 'ge':
normalized_input = ServerSideUtils.normalizeGender(normalized_input);
break;
case 'ph':
normalized_input = ServerSideUtils.normalizePhone(normalized_input);
break;
case 'st':
normalized_input = ServerSideUtils.normalizeState(normalized_input);
break;
case 'zp':
normalized_input = ServerSideUtils.normalizeZip(normalized_input);
break;
case 'f5first':
case 'f5last':
normalized_input = ServerSideUtils.normalizeF5NameField(normalized_input);
break;
case 'fi':
normalized_input = normalized_input.charAt(0);
break;
case 'dobd':
normalized_input = ServerSideUtils.normalizeDobd(normalized_input);
break;
case 'dobm':
normalized_input = ServerSideUtils.normalizeDobm(normalized_input);
break;
case 'doby':
normalized_input = ServerSideUtils.normalizeDoby(normalized_input);
break;
}
// Hashing the normalized input with SHA 256
const hashed_input = ServerSideUtils.toSHA256(normalized_input);
return hashed_input;
}