auto-translate-json-library
Version:
Automatically translates JSON language files to other languages using Google Translate,AWS,Azure,DeepL,OpenAI or local OpenAI compatible server
43 lines (42 loc) • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Util = void 0;
// biome-ignore lint/complexity/noStaticOnlyClass: This class is used for utility functions that do not require instantiation
class Util {
static set startDelimiter(value) {
Util._startDelimiter = value;
// update regex
Util.pattern = new RegExp(`${Util._startDelimiter}(.*?)${Util._endDelimiter}`, "g");
}
static set endDelimiter(value) {
Util._endDelimiter = value;
// update regex
Util.pattern = new RegExp(`${Util._startDelimiter}(.*?)${Util._endDelimiter}`, "g");
}
static replaceArgumentsWithNumbers(args, result) {
if (args) {
let i = 0;
for (const arg of args) {
result = result.replace(Util._startDelimiter + i + Util._endDelimiter, arg);
i++;
}
}
return result;
}
static replaceContextVariables(text) {
const args = text.match(Util.pattern);
// replace arguments with numbers
if (args) {
let i = 0;
for (const arg of args) {
text = text.replace(arg, Util._startDelimiter + i + Util._endDelimiter);
i++;
}
}
return { args, text };
}
}
exports.Util = Util;
Util._startDelimiter = "{";
Util._endDelimiter = "}";
Util.pattern = new RegExp(`${Util._startDelimiter}(.*?)${Util._endDelimiter}`, "g");