0.2.4 • Published 6 years ago

transifex-api-es6 v0.2.4

Weekly downloads
28
License
ISC
Repository
github
Last release
6 years ago

view on npm Dependency Status

transifex-api-es6

A promise-based Transifex API client for node, written in es6. Promises are thenable using the q library.

The motivation behind this API is that there are no modern, promise-based JS API for Transifex out there that I could find. If found those that exist being difficult to overview or understand, so I started building on a new one.

Installation

npm install [--save] [--save-dev] transifex-api-es6

Usage

var TransifexApi = require('transifex-api-es6');

var api = new TransifexApi({
  user: 'username',
  password: 'password',
  projectName: 'my-project',
  resourceName: 'customer-area' // optional
});

// Get resource translation
api.getResourceTranslation('en')
.then((contents) => {
  // contents -> PO contents as a string
}, (err) => console.error(err));

// Get translation strings
api.getTranslationStrings('en', 'my_resource')
.then((strings) => {
  // strings -> Set of string objects for 'my_resource'
}, (err) => console.error(err))

API Reference

new TransifexApi(opts)

ParamTypeDescription
optsObjectAn object with required projectName, user and password fields. Optionally takes a resourceName which is stored as the default resource.

transifexApi.setResourceName(resourceName)

Sets the default resource slug

ParamTypeDescription
resourceNamestringA resource slug

transifexApi.getProject() ⇒ Object

Returns information about the project

Returns: Object - A project instance (wrapped in a promise)

transifexApi.getProjectLanguages() ⇒ Object

Returns an list of languages that belong to the project

Returns: Object - A list of languages (wrapped in a promise)

transifexApi.getResources() ⇒ array

Returns a list of resources in the project

Returns: array - A list of the project's resources (wrapped in a promise)

transifexApi.getResource(resourceName) ⇒ Object

Returns a resource

ParamTypeDescription
resourceNamestring(Optional) The slug of the requested resource.

Returns: Object - A resource as JSON (wrapped in a promise)

transifexApi.createResource(resource) ⇒ Object

Creates a new resources in the project

ParamTypeDescription
resourceObjectDictionary with info about the resource

Returns: Object - A q promise

transifexApi.deleteResource(resourceName) ⇒ Object

Deletes a resource

ParamTypeDescription
resourceNamestring(Optional) The slug of the resource

Returns: Object - A q promise

transifexApi.getResourceTranslation(langCode, resourceName) ⇒ string

Returns a translation of a given (or default) resource in a given language as .po contents.

ParamTypeDescription
langCodestringA language code, e.g. en_US
resourceNamestring(Optional) A resource slug

Returns: string - A PO file as a string (wrapped in a promise)

transifexApi.getTranslationStrings(langCode, resourceName) ⇒ string

Returns a set of translated strings of a given (or default) resource in a given language.

ParamTypeDescription
langCodestringA language code, e.g. en_US
resourceNamestring(Optional) A resource slug

Returns: string - A list of translation strings as JSON objects
(wrapped in a promise)

Contributing

This project is in early development. Issues and pull requests are more than welcome!

0.2.4

6 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago