anylang
Version:
A translator's kit that uses the free APIs of Google Translate, Yandex, Bing, ChatGPT, and other LLMs
91 lines (85 loc) • 10.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getToken = getToken;
// This file is generated, so eslint is not needed here
/* eslint-disable */
// TKK value from https://github.com/FilipePS/Traduzir-paginas-web/blob/f3a4956a1aa96b7a9124864158a5200827694521/background/translationService.js
const googleTranslateTKK = '448487.932609646';
//
// Obfuscated logic: START
//
function shiftLeftOrRightThenSumOrXor(num, optString) {
for (let i = 0; i < optString.length - 2; i += 3) {
let acc = optString.charAt(i + 2);
if ('a' <= acc) {
acc = acc.charCodeAt(0) - 87;
} else {
acc = Number(acc);
}
if (optString.charAt(i + 1) == '+') {
acc = num >>> acc;
} else {
acc = num << acc;
}
if (optString.charAt(i) == '+') {
num += acc & 4294967295;
} else {
num ^= acc;
}
}
return num;
}
function transformQuery(query) {
const bytesArray = [];
let idx = [];
for (let i = 0; i < query.length; i++) {
let charCode = query.charCodeAt(i);
if (128 > charCode) {
bytesArray[idx++] = charCode;
} else {
if (2048 > charCode) {
bytesArray[idx++] = charCode >> 6 | 192;
} else {
if (55296 == (charCode & 64512) && i + 1 < query.length && 56320 == (query.charCodeAt(i + 1) & 64512)) {
charCode = 65536 + ((charCode & 1023) << 10) + (query.charCodeAt(++i) & 1023);
bytesArray[idx++] = charCode >> 18 | 240;
bytesArray[idx++] = charCode >> 12 & 63 | 128;
} else {
bytesArray[idx++] = charCode >> 12 | 224;
}
bytesArray[idx++] = charCode >> 6 & 63 | 128;
}
bytesArray[idx++] = charCode & 63 | 128;
}
}
return bytesArray;
}
function calcHash(query, windowTkk) {
const tkkSplited = windowTkk.split('.');
const tkkIndex = Number(tkkSplited[0]) || 0;
const tkkKey = Number(tkkSplited[1]) || 0;
const bytesArray = transformQuery(query);
let encondingRound = tkkIndex;
for (let i = 0; i < bytesArray.length; i++) {
encondingRound += bytesArray[i];
encondingRound = shiftLeftOrRightThenSumOrXor(encondingRound, '+-a^+6');
}
encondingRound = shiftLeftOrRightThenSumOrXor(encondingRound, '+-3^+b+-f');
encondingRound ^= tkkKey;
if (encondingRound <= 0) {
encondingRound = (encondingRound & 2147483647) + 2147483648;
}
const normalizedResult = encondingRound % 1000000;
return normalizedResult.toString() + '.' + (normalizedResult ^ tkkIndex);
}
//
// Obfuscated logic: END
//
function getToken(query) {
return new Promise(res => res({
value: calcHash(query, googleTranslateTKK)
}));
}
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvcnMvR29vZ2xlVHJhbnNsYXRvci90b2tlbi5qcyIsIm5hbWVzIjpbImdvb2dsZVRyYW5zbGF0ZVRLSyIsInNoaWZ0TGVmdE9yUmlnaHRUaGVuU3VtT3JYb3IiLCJudW0iLCJvcHRTdHJpbmciLCJpIiwibGVuZ3RoIiwiYWNjIiwiY2hhckF0IiwiY2hhckNvZGVBdCIsIk51bWJlciIsInRyYW5zZm9ybVF1ZXJ5IiwicXVlcnkiLCJieXRlc0FycmF5IiwiaWR4IiwiY2hhckNvZGUiLCJjYWxjSGFzaCIsIndpbmRvd1RrayIsInRra1NwbGl0ZWQiLCJzcGxpdCIsInRra0luZGV4IiwidGtrS2V5IiwiZW5jb25kaW5nUm91bmQiLCJub3JtYWxpemVkUmVzdWx0IiwidG9TdHJpbmciLCJnZXRUb2tlbiIsIlByb21pc2UiLCJyZXMiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbInRyYW5zbGF0b3JzL0dvb2dsZVRyYW5zbGF0b3IvdG9rZW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCwgc28gZXNsaW50IGlzIG5vdCBuZWVkZWQgaGVyZVxuLyogZXNsaW50LWRpc2FibGUgKi9cbi8vIFRLSyB2YWx1ZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9GaWxpcGVQUy9UcmFkdXppci1wYWdpbmFzLXdlYi9ibG9iL2YzYTQ5NTZhMWFhOTZiN2E5MTI0ODY0MTU4YTUyMDA4Mjc2OTQ1MjEvYmFja2dyb3VuZC90cmFuc2xhdGlvblNlcnZpY2UuanNcbmNvbnN0IGdvb2dsZVRyYW5zbGF0ZVRLSyA9ICc0NDg0ODcuOTMyNjA5NjQ2JztcblxuLy9cbi8vIE9iZnVzY2F0ZWQgbG9naWM6IFNUQVJUXG4vL1xuXG5mdW5jdGlvbiBzaGlmdExlZnRPclJpZ2h0VGhlblN1bU9yWG9yKG51bSwgb3B0U3RyaW5nKSB7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgb3B0U3RyaW5nLmxlbmd0aCAtIDI7IGkgKz0gMykge1xuXHRcdGxldCBhY2MgPSBvcHRTdHJpbmcuY2hhckF0KGkgKyAyKTtcblx0XHRpZiAoJ2EnIDw9IGFjYykge1xuXHRcdFx0YWNjID0gYWNjLmNoYXJDb2RlQXQoMCkgLSA4Nztcblx0XHR9IGVsc2Uge1xuXHRcdFx0YWNjID0gTnVtYmVyKGFjYyk7XG5cdFx0fVxuXHRcdGlmIChvcHRTdHJpbmcuY2hhckF0KGkgKyAxKSA9PSAnKycpIHtcblx0XHRcdGFjYyA9IG51bSA+Pj4gYWNjO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRhY2MgPSBudW0gPDwgYWNjO1xuXHRcdH1cblx0XHRpZiAob3B0U3RyaW5nLmNoYXJBdChpKSA9PSAnKycpIHtcblx0XHRcdG51bSArPSBhY2MgJiA0Mjk0OTY3Mjk1O1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRudW0gXj0gYWNjO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gbnVtO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1RdWVyeShxdWVyeSkge1xuXHRjb25zdCBieXRlc0FycmF5ID0gW107XG5cdGxldCBpZHggPSBbXTtcblx0Zm9yIChsZXQgaSA9IDA7IGkgPCBxdWVyeS5sZW5ndGg7IGkrKykge1xuXHRcdGxldCBjaGFyQ29kZSA9IHF1ZXJ5LmNoYXJDb2RlQXQoaSk7XG5cblx0XHRpZiAoMTI4ID4gY2hhckNvZGUpIHtcblx0XHRcdGJ5dGVzQXJyYXlbaWR4KytdID0gY2hhckNvZGU7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGlmICgyMDQ4ID4gY2hhckNvZGUpIHtcblx0XHRcdFx0Ynl0ZXNBcnJheVtpZHgrK10gPSAoY2hhckNvZGUgPj4gNikgfCAxOTI7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0NTUyOTYgPT0gKGNoYXJDb2RlICYgNjQ1MTIpICYmXG5cdFx0XHRcdFx0aSArIDEgPCBxdWVyeS5sZW5ndGggJiZcblx0XHRcdFx0XHQ1NjMyMCA9PSAocXVlcnkuY2hhckNvZGVBdChpICsgMSkgJiA2NDUxMilcblx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0Y2hhckNvZGUgPVxuXHRcdFx0XHRcdFx0NjU1MzYgK1xuXHRcdFx0XHRcdFx0KChjaGFyQ29kZSAmIDEwMjMpIDw8IDEwKSArXG5cdFx0XHRcdFx0XHQocXVlcnkuY2hhckNvZGVBdCgrK2kpICYgMTAyMyk7XG5cdFx0XHRcdFx0Ynl0ZXNBcnJheVtpZHgrK10gPSAoY2hhckNvZGUgPj4gMTgpIHwgMjQwO1xuXHRcdFx0XHRcdGJ5dGVzQXJyYXlbaWR4KytdID0gKChjaGFyQ29kZSA+PiAxMikgJiA2MykgfCAxMjg7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0Ynl0ZXNBcnJheVtpZHgrK10gPSAoY2hhckNvZGUgPj4gMTIpIHwgMjI0O1xuXHRcdFx0XHR9XG5cdFx0XHRcdGJ5dGVzQXJyYXlbaWR4KytdID0gKChjaGFyQ29kZSA+PiA2KSAmIDYzKSB8IDEyODtcblx0XHRcdH1cblx0XHRcdGJ5dGVzQXJyYXlbaWR4KytdID0gKGNoYXJDb2RlICYgNjMpIHwgMTI4O1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gYnl0ZXNBcnJheTtcbn1cblxuZnVuY3Rpb24gY2FsY0hhc2gocXVlcnksIHdpbmRvd1Rraykge1xuXHRjb25zdCB0a2tTcGxpdGVkID0gd2luZG93VGtrLnNwbGl0KCcuJyk7XG5cdGNvbnN0IHRra0luZGV4ID0gTnVtYmVyKHRra1NwbGl0ZWRbMF0pIHx8IDA7XG5cdGNvbnN0IHRra0tleSA9IE51bWJlcih0a2tTcGxpdGVkWzFdKSB8fCAwO1xuXG5cdGNvbnN0IGJ5dGVzQXJyYXkgPSB0cmFuc2Zvcm1RdWVyeShxdWVyeSk7XG5cblx0bGV0IGVuY29uZGluZ1JvdW5kID0gdGtrSW5kZXg7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXNBcnJheS5sZW5ndGg7IGkrKykge1xuXHRcdGVuY29uZGluZ1JvdW5kICs9IGJ5dGVzQXJyYXlbaV07XG5cdFx0ZW5jb25kaW5nUm91bmQgPSBzaGlmdExlZnRPclJpZ2h0VGhlblN1bU9yWG9yKGVuY29uZGluZ1JvdW5kLCAnKy1hXis2Jyk7XG5cdH1cblx0ZW5jb25kaW5nUm91bmQgPSBzaGlmdExlZnRPclJpZ2h0VGhlblN1bU9yWG9yKGVuY29uZGluZ1JvdW5kLCAnKy0zXitiKy1mJyk7XG5cblx0ZW5jb25kaW5nUm91bmQgXj0gdGtrS2V5O1xuXHRpZiAoZW5jb25kaW5nUm91bmQgPD0gMCkge1xuXHRcdGVuY29uZGluZ1JvdW5kID0gKGVuY29uZGluZ1JvdW5kICYgMjE0NzQ4MzY0NykgKyAyMTQ3NDgzNjQ4O1xuXHR9XG5cblx0Y29uc3Qgbm9ybWFsaXplZFJlc3VsdCA9IGVuY29uZGluZ1JvdW5kICUgMTAwMDAwMDtcblx0cmV0dXJuIG5vcm1hbGl6ZWRSZXN1bHQudG9TdHJpbmcoKSArICcuJyArIChub3JtYWxpemVkUmVzdWx0IF4gdGtrSW5kZXgpO1xufVxuXG4vL1xuLy8gT2JmdXNjYXRlZCBsb2dpYzogRU5EXG4vL1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VG9rZW4ocXVlcnkpIHtcblx0cmV0dXJuIG5ldyBQcm9taXNlKChyZXMpID0+IHJlcyh7IHZhbHVlOiBjYWxjSGFzaChxdWVyeSwgZ29vZ2xlVHJhbnNsYXRlVEtLKSB9KSk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBLE1BQU1BLGtCQUFrQixHQUFHLGtCQUFrQjs7QUFFN0M7QUFDQTtBQUNBOztBQUVBLFNBQVNDLDRCQUE0QkEsQ0FBQ0MsR0FBRyxFQUFFQyxTQUFTLEVBQUU7RUFDckQsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxFQUFFQSxDQUFDLEdBQUdELFNBQVMsQ0FBQ0UsTUFBTSxHQUFHLENBQUMsRUFBRUQsQ0FBQyxJQUFJLENBQUMsRUFBRTtJQUNqRCxJQUFJRSxHQUFHLEdBQUdILFNBQVMsQ0FBQ0ksTUFBTSxDQUFDSCxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLElBQUksR0FBRyxJQUFJRSxHQUFHLEVBQUU7TUFDZkEsR0FBRyxHQUFHQSxHQUFHLENBQUNFLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFO0lBQzdC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