Package Exports
- google-translate-api-browser
- google-translate-api-browser/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (google-translate-api-browser) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Google translate api browser
Based on google-translate-api and google-translate-token
Install
npm install google-translate-api-browser
For cross origin requests it uses cors-anywhere
. You can use public cors-anywhere server https://cors-anywhere.herokuapp.com/
or set up your own. By default it does not use proxying.
Examples
For browser
import { setCORS } from "google-translate-api-browser";
// setting up cors-anywhere server address
const translate = setCORS("http://cors-anywhere.herokuapp.com/");
/*
// or
import translate, { setCORS } from "google-translate-api-browser";
setCORS("http://cors-anywhere.herokuapp.com/");
*/
translate("Je ne mangé pas six jours", { to: "en" })
.then(res => {
// I do not eat six days
console.log(res.text)
})
.catch(err => {
console.error(err);
});
For node
You don't need to use CORS for node
const { generateRequestUrl, normaliseResponse } = require('google-translate-api-browser');
const https = require('https');
const url = generateRequestUrl('Je ne mangé pas six jours', { to: "en" });
https.get(url, (resp) => {
let data = '';
resp.on('data', (chunk) => {
data += chunk;
});
resp.on('end', () => {
console.log(normaliseResponse(JSON.parse(data)));
});
}).on("error", (err) => {
console.log("Error: " + err.message);
});
API
isSupported(lang: string): boolean
Verifies if the selected language is supported by Google Translate.
translate(text: string, options: Partial): Promise
text
The text to be translated
options
type TranslateOptions = {
client: 'gtx' | 'webapp';
from: LangKey;
to: LangKey;
hl: LangKey;
raw: boolean;
tld: string;
}
example
const options = {
client: 'gtx',
from: 'ua',
to: 'en',
hl: 'en',
raw: false,
tld: 'com',
}
returns
type TranslationResult = {
text: string; // The translated text.
pronunciation: string;
from: {
language: {
didYouMean: boolean; // `true` if the API suggest a correction in the source language
iso: string; // The code of the language that the API has recognized in the `text`
};
text: {
autoCorrected: boolean; // `true` if the API has auto corrected the `text`
value: string; // The auto corrected `text` or the `text` with suggested corrections
didYouMean: boolean; // `true` if the API has suggested corrections to the `text`
}
};
raw?: any; // If `options.raw` is true, the raw response from Google Translate servers
}
Note that from.text
will only be returned if from.text.autoCorrected
or from.text.didYouMean
equals to true
. In this case, it will have the corrections delimited with brackets ([ ]
):
normaliseResponse(body: any, raw = false): TranslationResult
Formats the google translate response.
generateRequestUrl(text: string, options: Partial<Omit<TranslateOptions, 'raw'>>): string
Generates a url to google translate api.