@k8ts/instruments
Version:
A collection of utilities and core components for k8ts.
28 lines • 823 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TextPostProcessor = void 0;
class TextPostProcessor {
tokens = new Map();
_genToken() {
const randomKey = Math.random().toString(36).slice(2, 8);
const token = `K8TS_TOK_${randomKey}`;
if (this.tokens.has(token)) {
return this._genToken();
}
return token;
}
token(text) {
const token = this._genToken();
this.tokens.set(token, text);
return token;
}
render(text) {
let result = text;
for (const [token, value] of this.tokens.entries()) {
result = result.replaceAll(token, value);
}
return result;
}
}
exports.TextPostProcessor = TextPostProcessor;
//# sourceMappingURL=post-processor.js.map