itl
itl-server - A simple translation server for 1. Installation
itl-server
is available as an npm package. You can install using npm
or yarn
// using NPM
npm install itl-server --save
// using Yarn
npm add itl-server
2. How to use
There are 2 options to use itl-server
as following:
express
server
2.1. Use with In case there is an available express
server, all you have to do is initiate itl
handlers.
It will automatically create API handler for you (which are /languages/list
, and /languages/:code
)
Syntax:
import { initiateITLHandlers } from "itl-server/dist/itl-express";
initiateITLHandlers(app: Express, options: {
route: string,
csvPath: string
});
Where:
-
route
?: is the API route for language request. "languages" is set by default -
csvPath
:language.csv
file contains translated languages
2.2. Using available methods
If you don't use express
, there are 3 methods that you can use:
// Import the methods
import { setPath, getSupportedLanguages, getLanguagePack } from "itl-server";
languages.csv
path
2.2.1 Set the Syntax:
setPath(path: string) => void;
Where:
-
path
is the path tolanguages.csv
file. Best to use withpath
resolver
2.2.2 Get a list of supported languages
Syntax:
getSupportedLanguages() :
Promise<{ [code: string]: string }>
// => { en: "English", fr: "French (Français)", ... }
2.2.3 Get the language packages using codes
Syntax:
getLanguagePack(languageCodes: string, version?: string) :
Promise<{ [code: string]: { name: string, pharses: string[]} }>
Where:
-
languageCodes
: is a list of language ISO-639-1 identifiers, separated by a comma -
version
(optional): a version stored at local cached, if the version is matched, it will not return anything
Exception:
- Throw exception when one of the
languageCodes
not exists
const languages = getLanguagePack("en,fr");
// => {
// en: {
// name: "English",
// phrases: [ 'Hello, __name__!', ...]
// },
// fr: {
// name: "French (Français)",
// phrases: [ 'Bonjour, __name__!', ...]
// }
// }