]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-18175 Fix compatibility issue with older browsers
authorWouter Admiraal <wouter.admiraal@sonarsource.com>
Fri, 13 Jan 2023 11:03:55 +0000 (12:03 +0100)
committersonartech <sonartech@sonarsource.com>
Fri, 13 Jan 2023 20:02:46 +0000 (20:02 +0000)
server/sonar-web/src/main/js/helpers/l10n.ts
server/sonar-web/src/main/js/helpers/l10nBundle.ts

index 0f4d35e40e7aa08fad26032dc5c8d4158d10778b..ab7eacf220f9cec96c8a72935b8a1c812c1491f2 100644 (file)
@@ -42,7 +42,10 @@ export function translateWithParameters(
   if (message) {
     return parameters
       .map((parameter) => String(parameter))
-      .reduce((acc, parameter, index) => acc.replaceAll(`{${index}}`, () => parameter), message);
+      .reduce(
+        (acc, parameter, index) => acc.replace(new RegExp(`\\{${index}\\}`, 'g'), () => parameter),
+        message
+      );
   }
   if (process.env.NODE_ENV === 'development') {
     // eslint-disable-next-line no-console
index d89b35f8fbeb1a6d9f1bf987a87412191c51341d..a3b068bcc3fa526413cd5d54a773bcff0d17ec16 100644 (file)
@@ -83,7 +83,7 @@ function getPreferredLanguage() {
   return window.navigator.languages ? window.navigator.languages[0] : window.navigator.language;
 }
 
-function getL10nBundleFromCache() {
+function getL10nBundleFromCache(): L10nBundle {
   return (window as unknown as any).sonarQubeL10nBundle ?? {};
 }