Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@lingui/codemods) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Linguijs Codemods
This repository contains a collection of codemod scripts for use with JSCodeshift that help update Lingui APIs.
Usage
npx @lingui/codemods <transform> <path> [...options]
transform
- name of transform, see available transforms below.path
- files or directory to transform- use the
--dry
option for a dry-run - use
--print
to print the output for comparison - use
--remove-unused-imports
to remove unused imports once finished the codemod
This will start an interactive wizard, and then run the specified transform.
Included Transforms
v2-to-v3
Converts some outdated standards from lingui
version 2.x.x to new features and best practices introduced in lingui
version 3.x.x
npx @lingui/codemods v2-to-v3 <path>
split-macro-imports
Converts @lingui/macro
imports to @lingui/core/macro
and @lingui/react/macro
.
npx @lingui/codemods split-macro-imports <path>
Visit the Migration guide from 4.x to 5.x for more information.
jscodeshift options
To pass more options directly to jscodeshift, use --jscodeshift="..."
. For example:
npx @lingui/codemods --jscodeshift="--run-in-band --verbose=2"
See all available options here.
Recast Options
Options to recast's printer can be provided
through jscodeshift's printOptions
command line argument
npx @lingui/codemods <transform> <path> --jscodeshift="--printOptions='{\"quote\":\"double\"}'"
Usage without params
A CLI is built-in to help you migrate your codebase, will ask you some questions:
➜ project git:(master) npx @lingui/codemods
? On which files or directory should the codemods be applied? for ex: ./src
? Which dialect of JavaScript do you use? for ex: JavaScript | Typescript | JavaScript with Flow
? Which transform would you like to apply? for ex: `v2-to-v3`
License
@lingui/codemods is MIT licensed.