0.0.2 • Published 5 years ago

itl-server v0.0.2

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

itl-server - A simple translation server for itl

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:

2.1. Use with express server

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";

2.2.1 Set the languages.csv path

Syntax:

setPath(path: string) => void;

Where:

  • path is the path to languages.csv file. Best to use with path 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__!', ...]
//     }
// }
0.0.2

5 years ago

0.0.1

5 years ago