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.
npm install [--save] [--save-dev] transifex-api-es6
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))
- TransifexApi
- new TransifexApi(opts)
- .setResourceName(resourceName)
- .getProject() ⇒
Object
- .getProjectLanguages() ⇒
Object
- .getResources() ⇒
array
- .getResource(resourceName) ⇒
Object
- .createResource(resource) ⇒
Object
- .deleteResource(resourceName) ⇒
Object
- .getResourceTranslation(langCode, resourceName) ⇒
string
- .getTranslationStrings(langCode, resourceName) ⇒
string
Param | Type | Description |
---|---|---|
opts | Object |
An object with required projectName , user and password fields. Optionally takes a resourceName which is stored as the default resource. |
Sets the default resource slug
Param | Type | Description |
---|---|---|
resourceName | string |
A resource slug |
Returns information about the project
Returns: Object
- A project instance (wrapped in a promise)
Returns an list of languages that belong to the project
Returns: Object
- A list of languages (wrapped in a promise)
Returns a list of resources in the project
Returns: array
- A list of the project's resources (wrapped in a promise)
Returns a resource
Param | Type | Description |
---|---|---|
resourceName | string |
(Optional) The slug of the requested resource. |
Returns: Object
- A resource as JSON (wrapped in a promise)
Creates a new resources in the project
Param | Type | Description |
---|---|---|
resource | Object |
Dictionary with info about the resource |
Deletes a resource
Param | Type | Description |
---|---|---|
resourceName | string |
(Optional) The slug of the resource |
Returns a translation of a given (or default) resource in a given language as .po contents.
Param | Type | Description |
---|---|---|
langCode | string |
A language code, e.g. en_US |
resourceName | string |
(Optional) A resource slug |
Returns: string
- A PO file as a string (wrapped in a promise)
Returns a set of translated strings of a given (or default) resource in a given language.
Param | Type | Description |
---|---|---|
langCode | string |
A language code, e.g. en_US |
resourceName | string |
(Optional) A resource slug |
Returns: string
- A list of translation strings as JSON objects
(wrapped in a promise)
This project is in early development. Issues and pull requests are more than welcome!