UNPKG

anylang

Version:

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

72 lines (70 loc) 9.92 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LingvaTTS = void 0; var _basicFetcher = require("../../utils/fetcher/basicFetcher"); var __awaiter = void 0 && (void 0).__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()); }); }; class LingvaTTS { constructor({ fetcher = _basicFetcher.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"]; } } exports.LingvaTTS = LingvaTTS; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHRzL0xpbmd2YVRUUy9pbmRleC5qcyIsIm5hbWVzIjpbIl9iYXNpY0ZldGNoZXIiLCJyZXF1aXJlIiwiTGluZ3ZhVFRTIiwiY29uc3RydWN0b3IiLCJmZXRjaGVyIiwiYmFzaWNGZXRjaGVyIiwiYXBpSG9zdCIsImhvc3QiLCJnZXRBdWRpb0J1ZmZlciIsInRleHQiLCJsYW5ndWFnZSIsInVybCIsImVuY29kZVVSSUNvbXBvbmVudCIsInJlc3BvbnNlVHlwZSIsIm1ldGhvZCIsInRoZW4iLCJkYXRhIiwianNvbiIsIlR5cGVFcnJvciIsIkFycmF5IiwiaXNBcnJheSIsImF1ZGlvIiwidHlwZSIsImJ1ZmZlciIsIlVpbnQ4QXJyYXkiLCJnZXRTdXBwb3J0ZWRMYW5ndWFnZXMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsidHRzL0xpbmd2YVRUUy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiYXNpY0ZldGNoZXIgfSBmcm9tICcuLi8uLi91dGlscy9mZXRjaGVyL2Jhc2ljRmV0Y2hlcic7XG5pbXBvcnQgeyBGZXRjaGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvZmV0Y2hlci90eXBlcyc7XG5cbmltcG9ydCB7IFRUU0F1ZGlvQnVmZmVyLCBUVFNQcm92aWRlclByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgTGluZ3ZhVFRTIGltcGxlbWVudHMgVFRTUHJvdmlkZXJQcm9wcyB7XG5cdHByaXZhdGUgcmVhZG9ubHkgaG9zdDtcblx0cHJpdmF0ZSByZWFkb25seSBmZXRjaGVyO1xuXHRjb25zdHJ1Y3Rvcih7XG5cdFx0ZmV0Y2hlciA9IGJhc2ljRmV0Y2hlcixcblx0XHRhcGlIb3N0LFxuXHR9OiB7IGZldGNoZXI/OiBGZXRjaGVyOyBhcGlIb3N0Pzogc3RyaW5nIH0gPSB7fSkge1xuXHRcdHRoaXMuaG9zdCA9IGFwaUhvc3QgPz8gJ2h0dHBzOi8vdHJhbnNsYXRlLnBsYXVzaWJpbGl0eS5jbG91ZCc7XG5cdFx0dGhpcy5mZXRjaGVyID0gZmV0Y2hlcjtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBnZXRBdWRpb0J1ZmZlcih0ZXh0OiBzdHJpbmcsIGxhbmd1YWdlOiBzdHJpbmcpOiBQcm9taXNlPFRUU0F1ZGlvQnVmZmVyPiB7XG5cdFx0Y29uc3QgdXJsID0gYCR7dGhpcy5ob3N0fS9hcGkvdjEvYXVkaW8vJHtlbmNvZGVVUklDb21wb25lbnQoXG5cdFx0XHRsYW5ndWFnZSxcblx0XHQpfS8ke2VuY29kZVVSSUNvbXBvbmVudCh0ZXh0KX1gO1xuXG5cdFx0cmV0dXJuIHRoaXMuZmV0Y2hlcih1cmwsIHsgcmVzcG9uc2VUeXBlOiAnanNvbicsIG1ldGhvZDogJ0dFVCcgfSkudGhlbihcblx0XHRcdCh7IGRhdGE6IGpzb24gfSkgPT4ge1xuXHRcdFx0XHRpZiAodHlwZW9mIGpzb24gIT09ICdvYmplY3QnIHx8IGpzb24gPT09IG51bGwpIHtcblx0XHRcdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdVbmV4cGVjdGVkIHJlc3BvbnNlJyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKCEoJ2F1ZGlvJyBpbiBqc29uKSB8fCAhQXJyYXkuaXNBcnJheShqc29uLmF1ZGlvKSkge1xuXHRcdFx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ1VuZXhwZWN0ZWQgcmVzcG9uc2UnKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0dHlwZTogJ2F1ZGlvL21wZWcnLFxuXHRcdFx0XHRcdGJ1ZmZlcjogbmV3IFVpbnQ4QXJyYXkoanNvbi5hdWRpbykuYnVmZmVyLFxuXHRcdFx0XHR9O1xuXHRcdFx0fSxcblx0XHQpO1xuXHR9XG5cblx0cHVibGljIHN0YXRpYyBnZXRTdXBwb3J0ZWRMYW5ndWFnZXMoKSB7XG5cdFx0Ly8gcHJldHRpZXItaWdub3JlXG5cdFx0cmV0dXJuIFtcblx0XHRcdFwiYWZcIiwgXCJzcVwiLCBcImFtXCIsIFwiYXJcIiwgXCJoeVwiLCBcImFzXCIsIFwiYXlcIiwgXCJhelwiLCBcImJtXCIsIFwiZXVcIixcblx0XHRcdFwiYmVcIiwgXCJiblwiLCBcImJob1wiLCBcImJzXCIsIFwiYmdcIiwgXCJjYVwiLCBcImNlYlwiLCBcIm55XCIsIFwiemhcIiwgXCJ6aF9IQU5UXCIsXG5cdFx0XHRcImNvXCIsIFwiaHJcIiwgXCJjc1wiLCBcImRhXCIsIFwiZHZcIiwgXCJkb2lcIiwgXCJubFwiLCBcImVuXCIsIFwiZW9cIiwgXCJldFwiLCBcImVlXCIsXG5cdFx0XHRcInRsXCIsIFwiZmlcIiwgXCJmclwiLCBcImZ5XCIsIFwiZ2xcIiwgXCJrYVwiLCBcImRlXCIsIFwiZWxcIiwgXCJnblwiLCBcImd1XCIsIFwiaHRcIixcblx0XHRcdFwiaGFcIiwgXCJoYXdcIiwgXCJpd1wiLCBcImhpXCIsIFwiaG1uXCIsIFwiaHVcIiwgXCJpc1wiLCBcImlnXCIsIFwiaWxvXCIsIFwiaWRcIixcblx0XHRcdFwiZ2FcIiwgXCJpdFwiLCBcImphXCIsIFwiandcIiwgXCJrblwiLCBcImtrXCIsIFwia21cIiwgXCJyd1wiLCBcImdvbVwiLCBcImtvXCIsXG5cdFx0XHRcImtyaVwiLCBcImt1XCIsIFwiY2tiXCIsIFwia3lcIiwgXCJsb1wiLCBcImxhXCIsIFwibHZcIiwgXCJsblwiLCBcImx0XCIsIFwibGdcIixcblx0XHRcdFwibGJcIiwgXCJta1wiLCBcIm1haVwiLCBcIm1nXCIsIFwibXNcIiwgXCJtbFwiLCBcIm10XCIsIFwibWlcIiwgXCJtclwiLCBcIm1uaS1NdGVpXCIsXG5cdFx0XHRcImx1c1wiLCBcIm1uXCIsIFwibXlcIiwgXCJuZVwiLCBcIm5vXCIsIFwib3JcIiwgXCJvbVwiLCBcInBzXCIsIFwiZmFcIiwgXCJwbFwiLFxuXHRcdFx0XCJwdFwiLCBcInBhXCIsIFwicXVcIiwgXCJyb1wiLCBcInJ1XCIsIFwic21cIiwgXCJzYVwiLCBcImdkXCIsIFwibnNvXCIsIFwic3JcIixcblx0XHRcdFwic3RcIiwgXCJzblwiLCBcInNkXCIsIFwic2lcIiwgXCJza1wiLCBcInNsXCIsIFwic29cIiwgXCJlc1wiLCBcInN1XCIsIFwic3dcIiwgXCJzdlwiLFxuXHRcdFx0XCJ0Z1wiLCBcInRhXCIsIFwidHRcIiwgXCJ0ZVwiLCBcInRoXCIsIFwidGlcIiwgXCJ0c1wiLCBcInRyXCIsIFwidGtcIiwgXCJha1wiLCBcInVrXCIsIFwidXJcIixcblx0XHRcdFwidWdcIiwgXCJ1elwiLCBcInZpXCIsIFwiY3lcIiwgXCJ4aFwiLCBcInlpXCIsIFwieW9cIiwgXCJ6dVwiXG5cdFx0XTtcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxhQUFBLEdBQUFDLE9BQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFLTSxNQUFPQyxTQUFTO0VBR3JCQyxZQUFZO0lBQ1hDLE9BQU8sR0FBR0MsMEJBQVk7SUFDdEJDO0VBQU8sSUFDcUMsRUFBRTtJQUM5QyxJQUFJLENBQUNDLElBQUksR0FBR0QsT0FBTyxhQUFQQSxPQUFPLGNBQVBBLE9BQU8sR0FBSSxzQ0FBc0M7SUFDN0QsSUFBSSxDQUFDRixPQUFPLEdBQUdBLE9BQU87RUFDdkI7RUFFYUksY0FBY0EsQ0FBQ0MsSUFBWSxFQUFFQyxRQUFnQjs7TUFDekQsTUFBTUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDSixJQUFJLGlCQUFpQkssa0JBQWtCLENBQzFERixRQUFRLENBQ1IsSUFBSUUsa0JBQWtCLENBQUNILElBQUksQ0FBQyxFQUFFO01BRS9CLE9BQU8sSUFBSSxDQUFDTCxPQUFPLENBQUNPLEdBQUcsRUFBRTtRQUFFRSxZQUFZLEVBQUUsTUFBTTtRQUFFQyxNQUFNLEVBQUU7TUFBSyxDQUFFLENBQUMsQ0FBQ0MsSUFBSSxDQUNyRSxDQUFDO1FBQUVDLElBQUksRUFBRUM7TUFBSSxDQUFFLEtBQUk7UUFDbEIsSUFBSSxPQUFPQSxJQUFJLEtBQUssUUFBUSxJQUFJQSxJQUFJLEtBQUssSUFBSSxFQUFFO1VBQzlDLE1BQU0sSUFBSUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDO1FBQzNDO1FBQ0EsSUFBSSxFQUFFLE9BQU8sSUFBSUQsSUFBSSxDQUFDLElBQUksQ0FBQ0UsS0FBSyxDQUFDQyxPQUFPLENBQUNILElBQUksQ0FBQ0ksS0FBSyxDQUFDLEVBQUU7VUFDckQsTUFBTSxJQUFJSCxTQUFTLENBQUMscUJBQXFCLENBQUM7UUFDM0M7UUFFQSxPQUFPO1VBQ05JLElBQUksRUFBRSxZQUFZO1VBQ2xCQyxNQUFNLEVBQUUsSUFBSUMsVUFBVSxDQUFDUCxJQUFJLENBQUNJLEtBQUssQ0FBQyxDQUFDRTtTQUNuQztNQUNGLENBQUMsQ0FDRDtJQUNGLENBQUM7O0VBRU0sT0FBT0UscUJBQXFCQSxDQUFBO0lBQ2xDO0lBQ0EsT0FBTyxDQUNOLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDMUQsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUNqRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUNqRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUNoRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQzdELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFDM0QsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM1RCxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQ2pFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDM0QsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUMzRCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUNoRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDdEUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FDOUM7RUFDRjs7QUFDQUMsT0FBQSxDQUFBeEIsU0FBQSxHQUFBQSxTQUFBIiwiaWdub3JlTGlzdCI6W119