@digidem/extract-react-intl v0.10.0
extract-react-intl
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-intlUsage
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.
descriptions
Type: boolean Default: false
Includes message descriptions in the returned object. Each message id property
will be an object with properties message and description instead of a
message string e.g.
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': {
message: 'hello',
description: 'hello message description'
},
'components/App/welcome': {
message: 'welcome to extract-react-intl',
description: 'welcome message description
}
},
ja: {
'components/App/hello': {
message: '',
description: 'hello message description'
},
'components/App/welcome': {
message: '',
description: 'welcome message description
}
}
}
*/
})cwd
Type: string Default: .
You most likely don't need this.
Change run path.
Contributors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
License
MIT © akameco
6 years ago