@chiogen/rollup-plugin-terser
TypeScript icon, indicating that this package has built-in type declarations

7.1.3 • Public • Published

rollup-plugin-terser Travis Build Status

This is a reduced fork of TrySound/rollup-plugin-terser

  • Typescript
  • Removed jest-worker and its dependencies

This plugin is not published yet.

Rollup plugin to minify generated es bundle. Uses terser under the hood.

Install

npm i @chiogen/rollup-plugin-terser --save-dev

Note: this package requires rollup@0.66 and higher (including rollup@2.0.0)

Usage

import { rollup } from "rollup";
import { terser } from "@chiogen/rollup-plugin-terser";

rollup({
  input: "main.js",
  plugins: [terser()],
});

Options

⚠️ Caveat: any function used in options object cannot rely on its surrounding scope, since it is executed in an isolated context.

terser(options);

options - terser API options

Note: some terser options are set by the plugin automatically:

  • module: true is set when format is esm or es
  • toplevel: true is set when format is cjs

Examples

Using as output plugin

// rollup.config.js
import { terser } from "rollup-plugin-terser";

export default {
  input: "index.js",
  output: [
    { file: "lib.js", format: "cjs" },
    { file: "lib.min.js", format: "cjs", plugins: [terser()] },
    { file: "lib.esm.js", format: "esm" },
  ],
};

Comments

If you'd like to preserve comments (for licensing for example), then you can specify a function to do this like so:

terser({
  format: {
    comments: function (node, comment) {
      var text = comment.value;
      var type = comment.type;
      if (type == "comment2") {
        // multiline comment
        return /@preserve|@license|@cc_on/i.test(text);
      }
    },
  },
});

Alternatively, you can also choose to keep all comments (e.g. if a licensing header has already been prepended by a previous rollup plugin):

terser({
  format: {
    comments: "all",
  },
});

See Terser documentation for further reference.

License

MIT © Bogdan Chadkin

Package Sidebar

Install

npm i @chiogen/rollup-plugin-terser

Weekly Downloads

15

Version

7.1.3

License

MIT

Unpacked Size

6.42 kB

Total Files

5

Last publish

Collaborators

  • chiogen