This package contains a CLI and an API for transforming a package.json into a
new location while patching relative paths and removing development-only
fields.
Installing
Use the package manager of your choice to install:
The CLI takes a path to an input package.json and a path to an output
package.json. It will then run the following transformations on the input,
saving the result to the output path:
Remove the devDependencies and scripts fields
If --removeType is paassed, remove the type field (for instance, you
may want to do this is you're transpiling ESM to CJS)
Update relative path references so that the new package.json points to
the same files as the old one. Fields that are updated are:
You can use transformPackageJson with an input path, output path, and
optional Options as a javascript equivalent to the CLI.
Alternatively, if you have a non-standard use case for loading/writing files,
you can call transformPackageJsonContents, which takes the parsed
contents of a package.json and an optional Options and returns the
transformed contents.
This package contains a CLI and an API for transforming a package.json into a new location while patching relative paths and removing development-only fields.
Installing
Use the package manager of your choice to install:
npm install --save-dev @cprussin/transform-package-jsonpnpm add -D @cprussin/transform-package-jsonyarn add -D @cprussin/transform-package-jsonCLI Usage
The CLI takes a path to an input
package.jsonand a path to an outputpackage.json. It will then run the following transformations on the input, saving the result to the output path:devDependenciesandscriptsfields--removeTypeis paassed, remove thetypefield (for instance, you may want to do this is you're transpiling ESM to CJS)package.jsonpoints to the same files as the old one. Fields that are updated are:maintypesbinexportsFor example, you can use the CLI by calling:
Which will convert this
package.json:into this one:
API Usage
You can use transformPackageJson with an input path, output path, and optional Options as a javascript equivalent to the CLI. Alternatively, if you have a non-standard use case for loading/writing files, you can call transformPackageJsonContents, which takes the parsed contents of a
package.jsonand an optional Options and returns the transformed contents.