UNPKG

anylang

Version:

A translator's kit that uses the free APIs of Google Translate, Yandex, Bing, ChatGPT, and other LLMs

54 lines (52 loc) 9.57 kB
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import { basicFetcher } from '../../utils/fetcher/basicFetcher'; export class LingvaTTS { constructor({ fetcher = basicFetcher, apiHost, } = {}) { this.host = apiHost !== null && apiHost !== void 0 ? apiHost : 'https://translate.plausibility.cloud'; this.fetcher = fetcher; } getAudioBuffer(text, language) { return __awaiter(this, void 0, void 0, function* () { const url = `${this.host}/api/v1/audio/${encodeURIComponent(language)}/${encodeURIComponent(text)}`; return this.fetcher(url, { responseType: 'json', method: 'GET' }).then(({ data: json }) => { if (typeof json !== 'object' || json === null) { throw new TypeError('Unexpected response'); } if (!('audio' in json) || !Array.isArray(json.audio)) { throw new TypeError('Unexpected response'); } return { type: 'audio/mpeg', buffer: new Uint8Array(json.audio).buffer, }; }); }); } static getSupportedLanguages() { // prettier-ignore return [ "af", "sq", "am", "ar", "hy", "as", "ay", "az", "bm", "eu", "be", "bn", "bho", "bs", "bg", "ca", "ceb", "ny", "zh", "zh_HANT", "co", "hr", "cs", "da", "dv", "doi", "nl", "en", "eo", "et", "ee", "tl", "fi", "fr", "fy", "gl", "ka", "de", "el", "gn", "gu", "ht", "ha", "haw", "iw", "hi", "hmn", "hu", "is", "ig", "ilo", "id", "ga", "it", "ja", "jw", "kn", "kk", "km", "rw", "gom", "ko", "kri", "ku", "ckb", "ky", "lo", "la", "lv", "ln", "lt", "lg", "lb", "mk", "mai", "mg", "ms", "ml", "mt", "mi", "mr", "mni-Mtei", "lus", "mn", "my", "ne", "no", "or", "om", "ps", "fa", "pl", "pt", "pa", "qu", "ro", "ru", "sm", "sa", "gd", "nso", "sr", "st", "sn", "sd", "si", "sk", "sl", "so", "es", "su", "sw", "sv", "tg", "ta", "tt", "te", "th", "ti", "ts", "tr", "tk", "ak", "uk", "ur", "ug", "uz", "vi", "cy", "xh", "yi", "yo", "zu" ]; } } //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInR0cy9MaW5ndmFUVFMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBS2hFLE1BQU0sT0FBTyxTQUFTO0lBR3JCLFlBQVksRUFDWCxPQUFPLEdBQUcsWUFBWSxFQUN0QixPQUFPLE1BQ3FDLEVBQUU7UUFDOUMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLGFBQVAsT0FBTyxjQUFQLE9BQU8sR0FBSSxzQ0FBc0MsQ0FBQztRQUM5RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRVksY0FBYyxDQUFDLElBQVksRUFBRSxRQUFnQjs7WUFDekQsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsa0JBQWtCLENBQzFELFFBQVEsQ0FDUixJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFFaEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNyRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7Z0JBQ2xCLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDL0MsTUFBTSxJQUFJLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2dCQUM1QyxDQUFDO2dCQUNELElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3RELE1BQU0sSUFBSSxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQztnQkFDNUMsQ0FBQztnQkFFRCxPQUFPO29CQUNOLElBQUksRUFBRSxZQUFZO29CQUNsQixNQUFNLEVBQUUsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU07aUJBQ3pDLENBQUM7WUFDSCxDQUFDLENBQ0QsQ0FBQztRQUNILENBQUM7S0FBQTtJQUVNLE1BQU0sQ0FBQyxxQkFBcUI7UUFDbEMsa0JBQWtCO1FBQ2xCLE9BQU87WUFDTixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1lBQzFELElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVM7WUFDakUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7WUFDakUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7WUFDaEUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSTtZQUM3RCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJO1lBQzNELEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7WUFDNUQsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVTtZQUNqRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1lBQzNELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUk7WUFDM0QsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7WUFDaEUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1lBQ3RFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1NBQzlDLENBQUM7SUFDSCxDQUFDO0NBQ0QiLCJmaWxlIjoidHRzL0xpbmd2YVRUUy9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJhc2ljRmV0Y2hlciB9IGZyb20gJy4uLy4uL3V0aWxzL2ZldGNoZXIvYmFzaWNGZXRjaGVyJztcbmltcG9ydCB7IEZldGNoZXIgfSBmcm9tICcuLi8uLi91dGlscy9mZXRjaGVyL3R5cGVzJztcblxuaW1wb3J0IHsgVFRTQXVkaW9CdWZmZXIsIFRUU1Byb3ZpZGVyUHJvcHMgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBMaW5ndmFUVFMgaW1wbGVtZW50cyBUVFNQcm92aWRlclByb3BzIHtcblx0cHJpdmF0ZSByZWFkb25seSBob3N0O1xuXHRwcml2YXRlIHJlYWRvbmx5IGZldGNoZXI7XG5cdGNvbnN0cnVjdG9yKHtcblx0XHRmZXRjaGVyID0gYmFzaWNGZXRjaGVyLFxuXHRcdGFwaUhvc3QsXG5cdH06IHsgZmV0Y2hlcj86IEZldGNoZXI7IGFwaUhvc3Q/OiBzdHJpbmcgfSA9IHt9KSB7XG5cdFx0dGhpcy5ob3N0ID0gYXBpSG9zdCA/PyAnaHR0cHM6Ly90cmFuc2xhdGUucGxhdXNpYmlsaXR5LmNsb3VkJztcblx0XHR0aGlzLmZldGNoZXIgPSBmZXRjaGVyO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIGdldEF1ZGlvQnVmZmVyKHRleHQ6IHN0cmluZywgbGFuZ3VhZ2U6IHN0cmluZyk6IFByb21pc2U8VFRTQXVkaW9CdWZmZXI+IHtcblx0XHRjb25zdCB1cmwgPSBgJHt0aGlzLmhvc3R9L2FwaS92MS9hdWRpby8ke2VuY29kZVVSSUNvbXBvbmVudChcblx0XHRcdGxhbmd1YWdlLFxuXHRcdCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHRleHQpfWA7XG5cblx0XHRyZXR1cm4gdGhpcy5mZXRjaGVyKHVybCwgeyByZXNwb25zZVR5cGU6ICdqc29uJywgbWV0aG9kOiAnR0VUJyB9KS50aGVuKFxuXHRcdFx0KHsgZGF0YToganNvbiB9KSA9PiB7XG5cdFx0XHRcdGlmICh0eXBlb2YganNvbiAhPT0gJ29iamVjdCcgfHwganNvbiA9PT0gbnVsbCkge1xuXHRcdFx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ1VuZXhwZWN0ZWQgcmVzcG9uc2UnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoISgnYXVkaW8nIGluIGpzb24pIHx8ICFBcnJheS5pc0FycmF5KGpzb24uYXVkaW8pKSB7XG5cdFx0XHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignVW5leHBlY3RlZCByZXNwb25zZScpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHR0eXBlOiAnYXVkaW8vbXBlZycsXG5cdFx0XHRcdFx0YnVmZmVyOiBuZXcgVWludDhBcnJheShqc29uLmF1ZGlvKS5idWZmZXIsXG5cdFx0XHRcdH07XG5cdFx0XHR9LFxuXHRcdCk7XG5cdH1cblxuXHRwdWJsaWMgc3RhdGljIGdldFN1cHBvcnRlZExhbmd1YWdlcygpIHtcblx0XHQvLyBwcmV0dGllci1pZ25vcmVcblx0XHRyZXR1cm4gW1xuXHRcdFx0XCJhZlwiLCBcInNxXCIsIFwiYW1cIiwgXCJhclwiLCBcImh5XCIsIFwiYXNcIiwgXCJheVwiLCBcImF6XCIsIFwiYm1cIiwgXCJldVwiLFxuXHRcdFx0XCJiZVwiLCBcImJuXCIsIFwiYmhvXCIsIFwiYnNcIiwgXCJiZ1wiLCBcImNhXCIsIFwiY2ViXCIsIFwibnlcIiwgXCJ6aFwiLCBcInpoX0hBTlRcIixcblx0XHRcdFwiY29cIiwgXCJoclwiLCBcImNzXCIsIFwiZGFcIiwgXCJkdlwiLCBcImRvaVwiLCBcIm5sXCIsIFwiZW5cIiwgXCJlb1wiLCBcImV0XCIsIFwiZWVcIixcblx0XHRcdFwidGxcIiwgXCJmaVwiLCBcImZyXCIsIFwiZnlcIiwgXCJnbFwiLCBcImthXCIsIFwiZGVcIiwgXCJlbFwiLCBcImduXCIsIFwiZ3VcIiwgXCJodFwiLFxuXHRcdFx0XCJoYVwiLCBcImhhd1wiLCBcIml3XCIsIFwiaGlcIiwgXCJobW5cIiwgXCJodVwiLCBcImlzXCIsIFwiaWdcIiwgXCJpbG9cIiwgXCJpZFwiLFxuXHRcdFx0XCJnYVwiLCBcIml0XCIsIFwiamFcIiwgXCJqd1wiLCBcImtuXCIsIFwia2tcIiwgXCJrbVwiLCBcInJ3XCIsIFwiZ29tXCIsIFwia29cIixcblx0XHRcdFwia3JpXCIsIFwia3VcIiwgXCJja2JcIiwgXCJreVwiLCBcImxvXCIsIFwibGFcIiwgXCJsdlwiLCBcImxuXCIsIFwibHRcIiwgXCJsZ1wiLFxuXHRcdFx0XCJsYlwiLCBcIm1rXCIsIFwibWFpXCIsIFwibWdcIiwgXCJtc1wiLCBcIm1sXCIsIFwibXRcIiwgXCJtaVwiLCBcIm1yXCIsIFwibW5pLU10ZWlcIixcblx0XHRcdFwibHVzXCIsIFwibW5cIiwgXCJteVwiLCBcIm5lXCIsIFwibm9cIiwgXCJvclwiLCBcIm9tXCIsIFwicHNcIiwgXCJmYVwiLCBcInBsXCIsXG5cdFx0XHRcInB0XCIsIFwicGFcIiwgXCJxdVwiLCBcInJvXCIsIFwicnVcIiwgXCJzbVwiLCBcInNhXCIsIFwiZ2RcIiwgXCJuc29cIiwgXCJzclwiLFxuXHRcdFx0XCJzdFwiLCBcInNuXCIsIFwic2RcIiwgXCJzaVwiLCBcInNrXCIsIFwic2xcIiwgXCJzb1wiLCBcImVzXCIsIFwic3VcIiwgXCJzd1wiLCBcInN2XCIsXG5cdFx0XHRcInRnXCIsIFwidGFcIiwgXCJ0dFwiLCBcInRlXCIsIFwidGhcIiwgXCJ0aVwiLCBcInRzXCIsIFwidHJcIiwgXCJ0a1wiLCBcImFrXCIsIFwidWtcIiwgXCJ1clwiLFxuXHRcdFx0XCJ1Z1wiLCBcInV6XCIsIFwidmlcIiwgXCJjeVwiLCBcInhoXCIsIFwieWlcIiwgXCJ5b1wiLCBcInp1XCJcblx0XHRdO1xuXHR9XG59XG4iXX0=