@grammyjs/i18n
Version:
Internationalization plugin for grammY based on Fluent.
33 lines (32 loc) • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TranslateWarnings = void 0;
exports.defaultWarningHandler = defaultWarningHandler;
var TranslateWarnings;
(function (TranslateWarnings) {
TranslateWarnings[TranslateWarnings["MISSING_MESSAGE"] = 0] = "MISSING_MESSAGE";
TranslateWarnings[TranslateWarnings["MISSING_ATTRIBUTE"] = 1] = "MISSING_ATTRIBUTE";
TranslateWarnings[TranslateWarnings["MISSING_TRANSLATION"] = 2] = "MISSING_TRANSLATION";
})(TranslateWarnings || (exports.TranslateWarnings = TranslateWarnings = {}));
function defaultWarningHandler(
// deno-lint-ignore no-explicit-any
logFn = console.warn) {
return function (w) {
switch (w.type) {
case TranslateWarnings.MISSING_MESSAGE:
logFn(`Translation message "${w.messageId}" is missing in the following ` +
`locale(s): ${w.bundle.locales.join(", ")}.`);
break;
case TranslateWarnings.MISSING_ATTRIBUTE:
logFn(`"${w.attributeName}" attribute is missing in message ` +
`"${w.messageId}" for locale(s): ${w.bundle.locales.join(", ")}`);
break;
case TranslateWarnings.MISSING_TRANSLATION:
logFn(`The translation "${w.path}" is missing in the locales: ` +
w.locales.join(", "));
break;
default:
logFn(`Unknown warning: ${w.type}`);
}
};
}