extract-react-intl

Extract react-intl messages

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
extract-react-intl
1800.7.15 years ago7 years agoMinified + gzip package size for extract-react-intl in KB

Readme

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

This project has a peer dependency on babel-core.
To use this with Babel 6, run
$ yarn add --dev extract-react-intl babel-core

To use this with Babel 7, run
$ yarn add --dev extract-react-intl babel-core@bridge @babel/core

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

💻 📖 ⚠️ 🚇") |
nodaguti

💻 ⚠️ |
fix-fix

💻 |
enrique-ramirez

📖 |
bradbarrow

🐛 💻 ⚠️ | | :---: | :---: | :---: | :---: | :---: |

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

License

MIT © akameco