A CLI for formatjs.
Last updated 2 months ago by hitko .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @f-fjs/cli 
SYNC missed versions from official npm registry.


This CLI allows you to extract @f-fjs/intl-messageformat messages from JavaScript / TypeScript source code, including React components that uses react-intl.


$ npm -g i @f-fjs/cli
$ formatjs extract --help
Usage: formatjs extract [options] [files...]
Extract string messages from React components that use react-intl.
The input language is expected to be TypeScript or ES2017 with JSX.

  --messages-dir <dir>                                  The target location where the plugin will output a `.json` file
                                                        corresponding to each component from which React Intl messages
                                                        were extracted. If not provided, the extracted message
                                                        descriptors will be printed to standard output.
  --out-file <path>                                     The target file path where the plugin will output an aggregated \`.json\` file of allthe translations from the \`files\`
                                                        This flag will ignore --messages-dir
  --id-interpolation-pattern <pattern>                  If certain message descriptors don\'t have id, this \`pattern\` will be used to automaticallygenerate IDs for them. Default to
                                                        See https://github.com/webpack/loader-utils#interpolatename for sample patterns
  --extract-source-location                             Whether the metadata about the location of the message in the
                                                        source file should be extracted. If `true`, then `file`,
                                                        `start`, and `end` fields will exist for each extracted message
                                                        descriptors. (default: false)
  --module-source-name <name>                           The ES6 module source name of the React Intl package. Defaults
                                                        to: `"react-intl"`, but can be changed to another name/path to
                                                        React Intl.
  --remove-default-message                              Remove `defaultMessage` field in generated js after extraction
                                                        (default: false)
  --additional-component-names <comma-separated-names>  Additional component names to extract messages from, e.g:
                                                        `['FormattedFooBarMessage']`. **NOTE**: By default we check for
                                                        the fact that `FormattedMessage` & `FormattedHTMLMessage` are
                                                        imported from `moduleSourceName` to make sure variable alias
                                                        works. This option does not do that so it's less safe.
  --extract-from-format-message-call                    Opt-in to extract from `intl.formatMessage` call with the same
                                                        restrictions, e.g: has to be called with object literal such as
                                                        `intl.formatMessage({ id: 'foo', defaultMessage: 'bar',
                                                        description: 'baz'})` (default: false)
  -h, --help                                            output usage information

Current Tags

  • 1.1.24                                ...           latest (2 months ago)

2 Versions

  • 1.1.24                                ...           2 months ago
  • 1.1.23                                ...           2 months ago
Maintainers (1)
Today 0
This Week 0
This Month 2
Last Day 0
Last Week 2
Last Month 0
Dev Dependencies (0)
Dependents (0)

Copyright 2014 - 2017 © taobao.org |