From d106ebb9d7fe213fe8b45d3232436c6d5fabda3c Mon Sep 17 00:00:00 2001 From: Alex Humphries Date: Mon, 29 Jun 2026 13:04:36 -0400 Subject: [PATCH] INSR-10111: Use regex in mapStringToPhoneNumber --- src/helpers/cms-content-helper.js | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/src/helpers/cms-content-helper.js b/src/helpers/cms-content-helper.js index dae1dadb..998438f8 100644 --- a/src/helpers/cms-content-helper.js +++ b/src/helpers/cms-content-helper.js @@ -326,20 +326,9 @@ function mapStringToState(str) { * @param str */ export function mapStringToPhoneNumber(str) { - const startIndex = str.indexOf(`{${dynamicStrings.PHONE_NUMBER}`); - - let textToReplace = str.substring(startIndex, str.length); - textToReplace = textToReplace.substring(0, textToReplace.indexOf('}') + 1); - - const phoneNumber = textToReplace.substring( - dynamicStrings.PHONE_NUMBER.length + 2, - textToReplace.length - 1 - ); - const displayPhoneNumber = toDisplayPhoneNumber(phoneNumber); - - const returnVal = str.replace(textToReplace, displayPhoneNumber); - - return returnVal; + // Expected token format: {phoneNumber:##########} (or 11 digits). + const regexExp = new RegExp(`\\{${dynamicStrings.PHONE_NUMBER}:([^{}]*?)\\}`, 'g'); + return str.replace(regexExp, (_match, phoneNumber) => toDisplayPhoneNumber(phoneNumber)); } /**