From 8b35405a8572dfe32ad872114512b09a262cb689 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 24 Sep 2021 16:24:16 +0100 Subject: [PATCH] Fix regex binding replacement issue due to not being escaped --- packages/builder/src/builderStore/dataBinding.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/builder/src/builderStore/dataBinding.js b/packages/builder/src/builderStore/dataBinding.js index d3af6799f3..0858b29bcb 100644 --- a/packages/builder/src/builderStore/dataBinding.js +++ b/packages/builder/src/builderStore/dataBinding.js @@ -443,10 +443,9 @@ function bindingReplacement(bindableProperties, textWithBindings, convertTo) { for (let from of convertFromProps) { if (shouldReplaceBinding(newBoundValue, from, convertTo)) { const binding = bindableProperties.find(el => el[convertFrom] === from) - newBoundValue = newBoundValue.replace( - new RegExp(from, "gi"), - binding[convertTo] - ) + while (newBoundValue.includes(from)) { + newBoundValue = newBoundValue.replace(from, binding[convertTo]) + } } } result = result.replace(boundValue, newBoundValue)