anylang
Version:
A translator's kit that uses the free APIs of Google Translate, Yandex, Bing, ChatGPT, and other LLMs
53 lines (51 loc) • 6.77 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getYandexSID = getYandexSID;
// Source: https://github.com/FilipePS/Traduzir-paginas-web/blob/f3a4956a1aa96b7a9124864158a5200827694521/background/translationService.js
let lastYandexRequestSIDTime = null;
let yandexTranslateSID = null;
let yandexSIDNotFound = false;
function getYandexSID(fetcher) {
return new Promise(resolve => {
let updateYandexSid = false;
if (lastYandexRequestSIDTime) {
const date = new Date();
if (yandexTranslateSID) {
date.setHours(date.getHours() - 12);
} else if (yandexSIDNotFound) {
date.setMinutes(date.getMinutes() - 30);
} else {
date.setMinutes(date.getMinutes() - 2);
}
if (date.getTime() > lastYandexRequestSIDTime) {
updateYandexSid = true;
}
} else {
updateYandexSid = true;
}
if (updateYandexSid) {
lastYandexRequestSIDTime = Date.now();
const url = 'https://translate.yandex.net/website-widget/v1/widget.js?widgetId=ytWidget&pageLang=es&widgetTheme=light&autoMode=false';
fetcher(url, {
responseType: 'text'
}).then(response => {
const result = /sid:\s'[0-9a-f.]+/.exec(typeof response.data === 'string' ? response.data : '');
if ((result === null || result === void 0 ? void 0 : result[0]) && result[0].length > 7) {
yandexTranslateSID = result[0].substring(6);
yandexSIDNotFound = false;
} else {
yandexSIDNotFound = true;
}
resolve();
}).catch(error => {
console.error(error);
resolve();
});
} else {
resolve();
}
}).then(() => yandexTranslateSID);
}
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvcnMvWWFuZGV4VHJhbnNsYXRvci9nZXRZYW5kZXhTSUQuanMiLCJuYW1lcyI6WyJsYXN0WWFuZGV4UmVxdWVzdFNJRFRpbWUiLCJ5YW5kZXhUcmFuc2xhdGVTSUQiLCJ5YW5kZXhTSUROb3RGb3VuZCIsImdldFlhbmRleFNJRCIsImZldGNoZXIiLCJQcm9taXNlIiwicmVzb2x2ZSIsInVwZGF0ZVlhbmRleFNpZCIsImRhdGUiLCJEYXRlIiwic2V0SG91cnMiLCJnZXRIb3VycyIsInNldE1pbnV0ZXMiLCJnZXRNaW51dGVzIiwiZ2V0VGltZSIsIm5vdyIsInVybCIsInJlc3BvbnNlVHlwZSIsInRoZW4iLCJyZXNwb25zZSIsInJlc3VsdCIsImV4ZWMiLCJkYXRhIiwibGVuZ3RoIiwic3Vic3RyaW5nIiwiY2F0Y2giLCJlcnJvciIsImNvbnNvbGUiXSwic291cmNlcyI6WyJ0cmFuc2xhdG9ycy9ZYW5kZXhUcmFuc2xhdG9yL2dldFlhbmRleFNJRC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9GaWxpcGVQUy9UcmFkdXppci1wYWdpbmFzLXdlYi9ibG9iL2YzYTQ5NTZhMWFhOTZiN2E5MTI0ODY0MTU4YTUyMDA4Mjc2OTQ1MjEvYmFja2dyb3VuZC90cmFuc2xhdGlvblNlcnZpY2UuanNcblxuaW1wb3J0IHsgRmV0Y2hlciB9IGZyb20gJy4uLy4uL3V0aWxzL2ZldGNoZXIvdHlwZXMnO1xuXG5sZXQgbGFzdFlhbmRleFJlcXVlc3RTSURUaW1lOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbmxldCB5YW5kZXhUcmFuc2xhdGVTSUQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xubGV0IHlhbmRleFNJRE5vdEZvdW5kID0gZmFsc2U7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRZYW5kZXhTSUQoZmV0Y2hlcjogRmV0Y2hlcikge1xuXHRyZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcblx0XHRsZXQgdXBkYXRlWWFuZGV4U2lkID0gZmFsc2U7XG5cdFx0aWYgKGxhc3RZYW5kZXhSZXF1ZXN0U0lEVGltZSkge1xuXHRcdFx0Y29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG5cdFx0XHRpZiAoeWFuZGV4VHJhbnNsYXRlU0lEKSB7XG5cdFx0XHRcdGRhdGUuc2V0SG91cnMoZGF0ZS5nZXRIb3VycygpIC0gMTIpO1xuXHRcdFx0fSBlbHNlIGlmICh5YW5kZXhTSUROb3RGb3VuZCkge1xuXHRcdFx0XHRkYXRlLnNldE1pbnV0ZXMoZGF0ZS5nZXRNaW51dGVzKCkgLSAzMCk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRkYXRlLnNldE1pbnV0ZXMoZGF0ZS5nZXRNaW51dGVzKCkgLSAyKTtcblx0XHRcdH1cblx0XHRcdGlmIChkYXRlLmdldFRpbWUoKSA+IGxhc3RZYW5kZXhSZXF1ZXN0U0lEVGltZSkge1xuXHRcdFx0XHR1cGRhdGVZYW5kZXhTaWQgPSB0cnVlO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0XHR1cGRhdGVZYW5kZXhTaWQgPSB0cnVlO1xuXHRcdH1cblxuXHRcdGlmICh1cGRhdGVZYW5kZXhTaWQpIHtcblx0XHRcdGxhc3RZYW5kZXhSZXF1ZXN0U0lEVGltZSA9IERhdGUubm93KCk7XG5cdFx0XHRjb25zdCB1cmwgPVxuXHRcdFx0XHQnaHR0cHM6Ly90cmFuc2xhdGUueWFuZGV4Lm5ldC93ZWJzaXRlLXdpZGdldC92MS93aWRnZXQuanM/d2lkZ2V0SWQ9eXRXaWRnZXQmcGFnZUxhbmc9ZXMmd2lkZ2V0VGhlbWU9bGlnaHQmYXV0b01vZGU9ZmFsc2UnO1xuXG5cdFx0XHRmZXRjaGVyKHVybCwgeyByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtcblx0XHRcdFx0XHRjb25zdCByZXN1bHQgPSAvc2lkOlxccydbMC05YS1mLl0rLy5leGVjKFxuXHRcdFx0XHRcdFx0dHlwZW9mIHJlc3BvbnNlLmRhdGEgPT09ICdzdHJpbmcnID8gcmVzcG9uc2UuZGF0YSA6ICcnLFxuXHRcdFx0XHRcdCk7XG5cblx0XHRcdFx0XHRpZiAocmVzdWx0Py5bMF0gJiYgcmVzdWx0WzBdLmxlbmd0aCA+IDcpIHtcblx0XHRcdFx0XHRcdHlhbmRleFRyYW5zbGF0ZVNJRCA9IHJlc3VsdFswXS5zdWJzdHJpbmcoNik7XG5cdFx0XHRcdFx0XHR5YW5kZXhTSUROb3RGb3VuZCA9IGZhbHNlO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR5YW5kZXhTSUROb3RGb3VuZCA9IHRydWU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cmVzb2x2ZSgpO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goKGVycm9yOiB1bmtub3duKSA9PiB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihlcnJvcik7XG5cdFx0XHRcdFx0cmVzb2x2ZSgpO1xuXHRcdFx0XHR9KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVzb2x2ZSgpO1xuXHRcdH1cblx0fSkudGhlbigoKSA9PiB5YW5kZXhUcmFuc2xhdGVTSUQpO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUlBLElBQUlBLHdCQUF3QixHQUFrQixJQUFJO0FBQ2xELElBQUlDLGtCQUFrQixHQUFrQixJQUFJO0FBQzVDLElBQUlDLGlCQUFpQixHQUFHLEtBQUs7QUFFdkIsU0FBVUMsWUFBWUEsQ0FBQ0MsT0FBZ0I7RUFDNUMsT0FBTyxJQUFJQyxPQUFPLENBQVFDLE9BQU8sSUFBSTtJQUNwQyxJQUFJQyxlQUFlLEdBQUcsS0FBSztJQUMzQixJQUFJUCx3QkFBd0IsRUFBRTtNQUM3QixNQUFNUSxJQUFJLEdBQUcsSUFBSUMsSUFBSSxFQUFFO01BQ3ZCLElBQUlSLGtCQUFrQixFQUFFO1FBQ3ZCTyxJQUFJLENBQUNFLFFBQVEsQ0FBQ0YsSUFBSSxDQUFDRyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUM7TUFDcEMsQ0FBQyxNQUFNLElBQUlULGlCQUFpQixFQUFFO1FBQzdCTSxJQUFJLENBQUNJLFVBQVUsQ0FBQ0osSUFBSSxDQUFDSyxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUM7TUFDeEMsQ0FBQyxNQUFNO1FBQ05MLElBQUksQ0FBQ0ksVUFBVSxDQUFDSixJQUFJLENBQUNLLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztNQUN2QztNQUNBLElBQUlMLElBQUksQ0FBQ00sT0FBTyxFQUFFLEdBQUdkLHdCQUF3QixFQUFFO1FBQzlDTyxlQUFlLEdBQUcsSUFBSTtNQUN2QjtJQUNELENBQUMsTUFBTTtNQUNOQSxlQUFlLEdBQUcsSUFBSTtJQUN2QjtJQUVBLElBQUlBLGVBQWUsRUFBRTtNQUNwQlAsd0JBQXdCLEdBQUdTLElBQUksQ0FBQ00sR0FBRyxFQUFFO01BQ3JDLE1BQU1DLEdBQUcsR0FDUix5SEFBeUg7TUFFMUhaLE9BQU8sQ0FBQ1ksR0FBRyxFQUFFO1FBQUVDLFlBQVksRUFBRTtNQUFNLENBQUUsQ0FBQyxDQUNwQ0MsSUFBSSxDQUFFQyxRQUFRLElBQUk7UUFDbEIsTUFBTUMsTUFBTSxHQUFHLG1CQUFtQixDQUFDQyxJQUFJLENBQ3RDLE9BQU9GLFFBQVEsQ0FBQ0csSUFBSSxLQUFLLFFBQVEsR0FBR0gsUUFBUSxDQUFDRyxJQUFJLEdBQUcsRUFBRSxDQUN0RDtRQUVELElBQUksQ0FBQUYsTUFBTSxhQUFOQSxNQUFNLHVCQUFOQSxNQUFNLENBQUcsQ0FBQyxDQUFDLEtBQUlBLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQ0csTUFBTSxHQUFHLENBQUMsRUFBRTtVQUN4Q3RCLGtCQUFrQixHQUFHbUIsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDSSxTQUFTLENBQUMsQ0FBQyxDQUFDO1VBQzNDdEIsaUJBQWlCLEdBQUcsS0FBSztRQUMxQixDQUFDLE1BQU07VUFDTkEsaUJBQWlCLEdBQUcsSUFBSTtRQUN6QjtRQUVBSSxPQUFPLEVBQUU7TUFDVixDQUFDLENBQUMsQ0FDRG1CLEtBQUssQ0FBRUMsS0FBYyxJQUFJO1FBQ3pCQyxPQUFPLENBQUNELEtBQUssQ0FBQ0EsS0FBSyxDQUFDO1FBQ3BCcEIsT0FBTyxFQUFFO01BQ1YsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxNQUFNO01BQ05BLE9BQU8sRUFBRTtJQUNWO0VBQ0QsQ0FBQyxDQUFDLENBQUNZLElBQUksQ0FBQyxNQUFNakIsa0JBQWtCLENBQUM7QUFDbEMiLCJpZ25vcmVMaXN0IjpbXX0=