rollup-plugin-zip-encryptable

Rollup plugin to zip up emitted files. Work with password

Usage no npm install needed!

<script type="module">
  import rollupPluginZipEncryptable from 'https://cdn.skypack.dev/rollup-plugin-zip-encryptable';
</script>

README

rollup-plugin-zip-encryptable

Rollup plugin to zip up emitted files. Work with password.

This plugin was inspired by the rollup-plugin-zip.

Install

npm i -D rollup-plugin-zip-encryptable

Usage

// rollup.config.js

import zipEncryptable from 'rollup-plugin-zip-encryptable'


export default {
  input: 'index.js',
  output: {
    dir: 'dist',
    format: 'es',
  },
  plugins: [
    zipEncryptable({
      // file: './dist/test.zip',
      dir: './dist/',
      zlib: { level: 9 },
      forceLocalTime: true,
      password: '123456',
    }),
  ],
}

Options

See details node-archiver-zip-encryptable and Archiver

interface IPluginOptions {
  /**
   * Optional name or path to the output zip file. Relative paths are resolved in the Rollup destination directory.
   */
  file?: string;
  /**
   * Optional path to the directory where to write the output zip file. (Rollup destination directory if file is not set. If file is set then dir is ignored.)
   */
  dir?: string;
  /**
   * Password protected zip.
   */
  password?: string;
  /**
   * Sets the zip archive comment.
   */
  comment?: string;
  /**
   * Forces the archive to contain local file times instead of UTC.
   */
  forceLocalTime?: boolean;
  /**
   * Forces the archive to contain ZIP64 headers.
   */
  forceZip64?: boolean;
  /**
   * Prepends a forward slash to archive file paths.
   */
  namePrependSlash?: boolean;
  /**
   * Sets the compression method to STORE.
   */
  store?: boolean;
  /**
   * Passed to zlib to control compression.
   * @default { level: 9 }
   */
  zlib?: object;
  /**
   * Create zip file once. Useful in watch mode.
   * @default false
   */
  createOnce?: false,
  /**
   * Filter out the files that are not packaged into the zip package.
   * Returning true has just been filtered out.
   * @default null
   */
  filterFile?: (entry: OutputAsset | OutputChunk) => boolean;
}

License

MIT © asins