@digidem/extract-react-intl

Extract react-intl messages


Keywords
babel, merge, message, react, react-intl, extract, extract-intl, extract-react-intl, component, i18n, messages
License
MIT
Install
npm install @digidem/extract-react-intl@0.10.0

Documentation

extract-react-intl

Build Status tested with jest styled with prettier All Contributors

This package allows you to extract all messages from a glob. It will return an object with a key for each locale you pass, which in turn contains an object with the ids of each message defined by the defineMessages function of react-intl. The value of each of these keys will be an empty string, except for your defaultLocale which will be populated with the defaultMessage.

Install

$ yarn add --dev extract-react-intl

Usage

const extractReactIntl = require('extract-react-intl')

const pattern = 'app/**/*.js'
const locales = ['en', 'ja']

extractReactIntl(locales, pattern).then(result => {
  console.log(result)
  /*
{
  en:
   { 'components/App/hello': 'hello',
     'components/App/welcome': 'welcome to extract-react-intl' }
  ja:
   { 'components/App/hello': '',
     'components/App/world': '' }
}
  */
})

API

extractReactIntl(locales, pattern, [options])

Return a Promise wrapped extracted messages.

locales

Type: Array<string>

Example: ['en', 'ja']

pattern

Type: string

File path with glob.

options

Additional options.

defaultLocale

Type: string
Default: en

Set default locale for your app.

moduleSourceName

Type: string
Example: ./path/to/module
Default: react-intl

The ES6 module source name of the React Intl package. Defines from where defineMessages, <FormattedMessage /> and <FormattedHTMLMessage /> are imported.

cwd

Type: string
Default: .

You most likely don't need this.

Change run path.

Contributors

Thanks goes to these wonderful people (emoji key):

akameco
akameco

💻 📖 ⚠️ 🚇
nodaguti
nodaguti

💻 ⚠️
fix-fix
fix-fix

💻
enrique-ramirez
enrique-ramirez

📖
bradbarrow
bradbarrow

🐛 💻 ⚠️
Filip Filson Pasternak
Filip "Filson" Pasternak

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

License

MIT © akameco