UNPKG

aptai

Version:

Node.js client for aptAI APIs

76 lines (70 loc) 1.84 kB
const { translateLatestAPI, supportedLanguageAPI, } = require("../../api/translate/latest.js"); const { defaultTimeout } = require("../../../config.js"); // Main function to interact with the API async function translateLatest(options) { try { // Default values for the parameters const defaults = { text: "", target_language: "en", timeout: defaultTimeout, }; // Merge the passed options with the defaults const params = { ...defaults, ...options }; let result = await translateLatestAPI(params); if (result && result.hasOwnProperty("data")) { result = result.data; if (result.status === 1) { return result; } else { throw new Error(result.message); } } else { throw new Error("Error fetching response from the API"); } } catch (error) { if ( error && error.hasOwnProperty("response") && error.response != null && error.response.hasOwnProperty("data") ) { throw new Error(error.response.data.message); } else { throw new Error(error.message); } } } async function supportedLanguage(options) { try { let result = await supportedLanguageAPI(); if (result && result.hasOwnProperty("data")) { result = result.data; if (result.status === 1) { return result; } else { throw new Error(result.message); } } else { throw new Error("Error fetching response from the API"); } } catch (error) { if ( error && error.hasOwnProperty("response") && error.response != null && error.response.hasOwnProperty("data") ) { throw new Error(error.response.data.message); } else { throw new Error(error.message); } } } module.exports = { translateLatest, supportedLanguage, };