dhis2-i18n

1.0.1 • Public • Published

About

It has default configuration related to Dhis2 project. Upon import i18n is an abstraction on top of i18next library

Install

npm install --save dhis2-i18n

Example

import i18n from 'dhis2-i18n'

import enResources from './i18n/resources/en'
import urResources from './i18n/resources/ur'

// add all languages necessary
i18n.addResources('en', 'translations-app', enResources)
i18n.addResources('ur', 'translations-app', urResources)

i18n.setDefaultNamespace('translations-app')

i18n.changeLanguage('en')
i18n.t('translation string')      // translation string

i18n.changeLanguage('ur')
i18n.t('translation string')      // سٹرنگ کا ترجمعہ

Import

import i18n from 'dhis2-i81n'

Add Language

i18n.addResources(lng, ns, resources)

where,

lng: refers to the language e.g. en, no etc.

ns: Each frontend app will be namespaced. So we don't run into translation conflicts across apps.

resources: set of key value pairs representing a javascript object.

To set the correct namespace in translation resources, the following format will be adopted.

"resources": {
  "en": {
    "frontend-app-name": {
      "translation string": "translation string"
    }
  },
  "ur": {
    "frontend-app-name": {
      "translation string": "سٹرنگ کا ترجمعہ"
    }
  }
}

Set Namespace

i18n.setDefaultNamespace(ns)

for e.g. translations-app the ns value would be translations-app

Change/Set Language

will set the current language for frontend app.

i18n.changeLanguage(lng)

In Code

String passed into i18n.t will translate text w.r.t. current language set.

i18n.t('translation string');

Package Sidebar

Install

npm i dhis2-i18n

Weekly Downloads

2

Version

1.0.1

License

BSD-3-Clause

Unpacked Size

4.44 kB

Total Files

4

Last publish

Collaborators

  • adeel.dhis2