lion/packages/localize
CircleCI b58aa65377 chore: release new versions
- @lion/ajax@0.2.9
 - @lion/button@0.5.11
 - @lion/calendar@0.7.1
 - @lion/checkbox-group@0.8.7
 - @lion/choice-input@0.8.1
 - @lion/core@0.5.1
 - @lion/dialog@0.4.14
 - @lion/field@0.12.1
 - @lion/fieldset@0.10.1
 - @lion/form-system@0.7.2
 - @lion/form@0.4.22
 - @lion/helpers@0.3.5
 - @lion/icon@0.4.3
 - @lion/input-amount@0.5.21
 - @lion/input-date@0.5.22
 - @lion/input-datepicker@0.11.2
 - @lion/input-email@0.6.6
 - @lion/input-iban@0.7.1
 - @lion/input-range@0.2.21
 - @lion/input@0.5.21
 - @lion/localize@0.9.1
 - @lion/overlays@0.12.9
 - @lion/radio-group@0.8.7
 - @lion/select-rich@0.14.1
 - @lion/select@0.5.21
 - @lion/steps@0.3.8
 - @lion/switch@0.8.1
 - @lion/tabs@0.2.8
 - @lion/textarea@0.5.22
 - @lion/tooltip@0.8.9
 - @lion/validate@0.9.1
2020-04-02 14:28:44 +00:00
..
docs feat: refrain from using dynamic vars inside dynamic import 2020-03-25 17:02:10 +01:00
src fix(input-amount): normalize added for currency label (#618) 2020-03-04 17:33:09 +01:00
stories feat: refrain from using dynamic vars inside dynamic import 2020-03-25 17:02:10 +01:00
test fix(localize): force symbols for locale 'en-AU' (#619) 2020-03-04 17:33:09 +01:00
test-helpers fix: public test-helpers 2019-07-30 15:50:53 +02:00
CHANGELOG.md chore: release new versions 2020-04-02 14:28:44 +00:00
index.js fix(input-amount): normalize added for currency label (#618) 2020-03-04 17:33:09 +01:00
package.json chore: release new versions 2020-04-02 14:28:44 +00:00
README.md feat: refrain from using dynamic vars inside dynamic import 2020-03-25 17:02:10 +01:00
test-helpers.js fix: public test-helpers 2019-07-30 15:50:53 +02:00

Localize

The localization system helps to manage localization data split into locales and automate its loading.

Live Demo/Documentation

See our storybook for a live demo and documentation

How to use

Installation

npm i --save @lion/localize
import { localize } from '@lion/localize';

Example

Translation data:

// path/to/hello-world/translations/en-GB.js
export default { greeting: 'Hello {name}!', };`

Loading translations:

// path/to/hello-world/HelloWorld.js
localize.loadNamespace({
  'hello-world': locale => {
    return import(`./translations/${locale}.js`);
  },
});

Note: dynamic variables inside dynamic imports may cause problems with tools that do static analysis, and may not work out of the box

Translating messages:

localize.msg('hello-world:greeting', { name: 'John' });
// Hello John!