in src/utils/i18n.js [44:62]
export function sprintf(input, parameters, escapeParameters = true) {
let output = input;
output = output.replace(/%+/g, '%');
if (parameters) {
const mappedParameters = new Map(Object.entries(parameters));
mappedParameters.forEach((key, parameterName) => {
const parameterValue = mappedParameters.get(parameterName);
const escapedParameterValue = escapeParameters ? escape(parameterValue) : parameterValue;
// Pass the param value as a function to ignore special replacement patterns like $` and $'.
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#syntax
output = output.replace(new RegExp(`%{${parameterName}}`, 'g'), () => escapedParameterValue);
});
}
return output;
}