A Rollup Plugin to clean files and directories using glob patterns.
Internally it uses open-tech-word/node-rm for removing files & directories. Refer it for supported glob patterns & more info.
Using Yarn
yarn add --dev @open-tech-world/rollup-plugin-clean
Using npm
npm install --save-dev @open-tech-world/rollup-plugin-clean
import { clean } from '@open-tech-world/rollup-plugin-clean';
clean(patterns: string | string[], options?: Partial<IOptions>)
Options:
| Name |
Type |
Default |
Description |
| dot |
boolean |
true |
If false, it disables removing files & directories that begin with a "."(dot) character. |
| hook |
string |
'buildStart' |
A Rollup hook to run the plugin. Refer the Rollup docs for available hooks. |
| dry |
boolean |
false |
If true, it does not remove anything, instead, it console logs what would be removed. |
It removes all files & directories inside the build dir.
// rollup.config.js
import { clean } from '@open-tech-world/rollup-plugin-clean';
export default {
entry: 'src/index.js',
output: {
file: 'build/index.js',
format: 'esm'
}
plugins: [
clean('build/*')
]
};
It removes the dist dir.
// rollup.config.js
import { clean } from '@open-tech-world/rollup-plugin-clean';
export default {
entry: 'src/index.js',
output: {
file: 'dist/index.js',
format: 'cjs'
}
plugins: [
clean('dist')
]
};
It supports multiple patterns.
It cleans the build dir & ignores the logo.png file inside the assets dir.
// rollup.config.js
import { clean } from '@open-tech-world/rollup-plugin-clean';
export default {
entry: 'src/index.js',
output: {
file: 'dist/index.js',
format: 'cjs'
}
plugins: [
clean(['build/*', '!**/assets/logo.png'])
]
};
It runs the plugin in the buildEnd Rollup Hook.
// rollup.config.js
import { clean } from '@open-tech-world/rollup-plugin-clean';
export default {
entry: 'src/index.js',
output: {
file: 'dist/index.js',
format: 'cjs'
}
plugins: [
clean('build/*', { hook: 'buildEnd' })
]
};
Copyright (c) 2021, Thanga Ganapathy (MIT License).