pon-shared-pon.universe.frontend.shared.componentlibrary
Version:
shared components for Pon Universe
22 lines (19 loc) • 597 B
JavaScript
import Vue from "vue";
import htmlEncode from "pu-helper-html-encode";
export default Vue.filter(
"parseDictionaryTokens",
(value, options = { tokens: {}, encodeHTML: false }) => {
if (!value) return "";
if (!options) return value;
const { tokens, encodeHTML } = options;
if (!tokens) return value;
let parsedValue = value;
Object.keys(tokens).forEach(key => {
parsedValue = parsedValue.replace(
new RegExp(`{${key}}`, "g"),
encodeHTML ? htmlEncode(tokens[key]) : tokens[key]
);
});
return parsedValue;
}
);