diff --git a/lib/extension.js b/lib/extension.js index e0df229..8618111 100644 --- a/lib/extension.js +++ b/lib/extension.js @@ -27,7 +27,7 @@ return id; }; - scope.parseTranslation = function parseTranslation(message){ + scope.parseTranslation = function parseTranslation(message, parameters = {}){ const container = document.createDocumentFragment(); message.split(/(\{[^}]+\})/).forEach(function(part){ @@ -50,6 +50,19 @@ container.appendChild(link); break; } + default: + if (parameters[args[0]]){ + const parameter = parameters[args[0]]; + if ((typeof parameter) === "function"){ + container.appendChild(parameter(args.slice(1).join(":"))); + } + else { + container.appendChild(document.createTextNode(parameter)); + } + } + else { + container.appendChild(document.createTextNode(part)); + } } } else {