1.3.1 • Published 1 year ago

@cprussin/transform-package-json v1.3.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

@cprussin/transform-package-json v1.3.1Docs


@cprussin/transform-package-json v1.3.1

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: npm install --save-dev @cprussin/transform-package-json
  • pnpm: pnpm add -D @cprussin/transform-package-json
  • yarn: yarn add -D @cprussin/transform-package-json

CLI Usage

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:
    • main
    • types
    • bin
    • exports

For example, you can use the CLI by calling:

transform-package-json --removeType ./package.json ./dist/package.json

Which will convert this package.json:

{
  name: "foo",
  type: "module",
  main: "./dist/index.js",
  types: "./dist/index.d.js",
  exports: {
    import: "./dist/esm/index.mjs",
    require: "./dist/cjs/index.js",
  },
  scripts: {
    foo: "bar",
  },
  devDependencies: {
    baz: "latest",
  },
}

into this one:

{
  name: "foo",
  main: "./index.js",
  types: "./index.d.js",
  exports: {
    import: "./esm/index.mjs",
    require: "./cjs/index.js",
  },
}

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.json and an optional Options and returns the transformed contents.

Type Aliases

Functions

1.3.1

1 year ago

1.3.0

1 year ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago