logitar-validation
Version:
JavaScript validation library distributed by Logitar.
25 lines (24 loc) • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DefaultMessageFormatter = void 0;
/**
* The default message formatter. This could use [mustache.js](https://github.com/janl/mustache.js), but we don't want to add a dependency for this. We simply replace occurrences of placeholder keys with their values, no other computation.
*/
class DefaultMessageFormatter {
/**
* Formats a message with the given placeholders.
* @param message The message to format.
* @param placeholders The placeholders to replace in the message.
* @returns The formatted message.
*/
format(message, placeholders) {
let formatted = message;
for (const key in placeholders) {
const pattern = `{{${key}}}`;
const replacement = String(placeholders[key]);
formatted = formatted.split(pattern).join(replacement);
}
return formatted;
}
}
exports.DefaultMessageFormatter = DefaultMessageFormatter;