'use strict';
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
Object.defineProperty(exports, "__esModule", {
value: true
});
var _got = require('got');
var _got2 = _interopRequireDefault(_got);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function Yandex(translateKey, dictionaryKey) {
this.translateKey = translateKey;
this.dictionaryKey = dictionaryKey;
};
var get = function get(url, query) {
return (0, _got2.default)(url, { json: true, query: query }).then(function (_) {
return _.body;
});
};
// https://tech.yandex.ru/translate/doc/dg/reference/translate-docpage/
Yandex.prototype.translate = function (fromLang, toLang, text) {
return get('https://translate.yandex.net/api/v1.5/tr.json/translate', {
key: this.translateKey,
lang: fromLang + '-' + toLang,
text: text
}).then(function (_) {
return _.text.join(' ');
});
};
// https://tech.yandex.ru/dictionary/doc/dg/reference/lookup-docpage/
Yandex.prototype.dictionary = function (fromLang, toLang, text) {
return get('https://dictionary.yandex.net/api/v1/dicservice.json/lookup?key=API-ключ&lang=en-ru&text=time', {
key: this.dictionaryKey,
lang: fromLang + '-' + toLang,
flags: 4, // MORPHO = 0x0004 - включает поиск по форме слова;
text: text
}).then(function (_) {
return _.def;
});
};
Yandex.prototype.spellCheck = function (lang, text) {
return get('https://speller.yandex.net/services/spellservice.json/checkText', {
options: 256,
lang: lang,
text: text
}).then(function (corrections) {
Eif (corrections.length > 0) {
var _ret = function () {
var prev = 0;
var result = '';
corrections.forEach(function (correction) {
result += text.slice(prev, correction.pos);
result += correction.s;
prev = correction.pos + correction.len;
});
return {
v: result
};
}();
Eif ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === "object") return _ret.v;
} else {
return text;
}
});
};
exports.default = Yandex; |