@pedrosolabs/translate
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

CircleCI

Translate

Simplest i18n implementation ever.

Usage

const resources = {
  en: {
    home: {
      title: 'Welcome!',
    },
    err: {
      fallback: 'INVALID RESOURCE',
    },
  },
  pt: {
    home: {
      title: 'Bem vindo!',
    },
    err: {
      fallback: 'RECURSO DESCONHECIDO',
    },
  },
};

const { getLanguage, setLanguage, t } = makeTranslator(resources, 'en', 'ERROR');
t('home.title'); // returns 'Welcome!'
t('home.whatever'); // returns 'INVALID RESOURCE'
t('home.whatever', 'default'); // returns 'default'

// Change language
setLanguage('pt');
t('home.title'); // returns 'Bem vindo!'
t('home.whatever'); // returns 'RECURSO DESCONHECIDO'
t('home.whatever', 'default'); // returns 'default'

// Unknown language
setLanguage('zy');
t('home.title'); // returns 'ERROR'
t('home.whatever'); // returns 'ERROR'
t('home.whatever', 'default'); // returns 'default'

Package Sidebar

Install

npm i @pedrosolabs/translate

Weekly Downloads

3

Version

1.1.1

License

MIT

Unpacked Size

4.39 kB

Total Files

11

Last publish

Collaborators

  • danp3d
  • dorival