@snipsonian/core
Version:
Core/base reusable javascript code snippets
9 lines (8 loc) • 454 B
JavaScript
export default function replacePlaceholders({ msg, placeholders = {} }) {
const placeholderNames = Object.getOwnPropertyNames(placeholders);
return placeholderNames.reduce((prevMsgResult, placeholderName) => {
const placeholderValue = placeholders[placeholderName];
const regex = new RegExp(`{${placeholderName}}`, 'g');
return prevMsgResult.replace(regex, placeholderValue && placeholderValue.toString());
}, msg);
}