diff options
Diffstat (limited to 'packages/gitbook-core/src/actions/i18n.js')
-rw-r--r-- | packages/gitbook-core/src/actions/i18n.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/packages/gitbook-core/src/actions/i18n.js b/packages/gitbook-core/src/actions/i18n.js new file mode 100644 index 0000000..115c5a1 --- /dev/null +++ b/packages/gitbook-core/src/actions/i18n.js @@ -0,0 +1,33 @@ +const ACTION_TYPES = require('./TYPES'); + +/** + * Register messages for a locale + * @param {String} locale + * @param {Map<String:String>} messages + * @return {Action} + */ +function registerLocale(locale, messages) { + return { type: ACTION_TYPES.I18N_REGISTER_LOCALE, locale, messages }; +} + +/** + * Register multiple locales + * @param {Map<String:Object>} locales + * @return {Action} + */ +function registerLocales(locales) { + return (dispatch) => { + for (const locale in locales) { + if (!locales.hasOwnProperty(locale)) { + continue; + } + + dispatch(registerLocale(locale, locales[locale])); + } + }; +} + +module.exports = { + registerLocale, + registerLocales +}; |