clean-dest
A CLI to clean a destination directory given a source directory.
Designed initially with typescript in mind, but can be used with any file types.
Install
$ npm install clean-dest
Usage
Folder structure
│
└───scripts
│ │ clean-dest.js
│
└───src
│ │ file1.ts
│ │ file2.ts
│
└───dist
│ │ file1.js
│ │ file1.js.map
│ │ file1.d.ts
│ │ file2.js
│ │ file2.js.map
│ │ file2.d.ts
Custom FileMap function
./scripts/clean-dest.js
module.exports = exports = {
'.ts': (destFilePath) => [
destFilePath.replace(/.ts$/, '.d.ts'),
destFilePath.replace(/.ts$/, '.js'),
destFilePath.replace(/.ts$/, '.js.map'),
]
};
CLI command
clean-dest -s ./src -d ./dist --file-map ./scripts/clean-dest
CLI
src-root
Glob pattern(s) for source files.
dest-root
Destination root directory.
base-pattern
An optional starting pattern to delete, default is "dest-root"/**/*.
file-map
Path to a js file whose only export is an extension to clean, or a [ext]: fn object to map source path to destination path(s).
permanent
Optional permanent delete using del, otherwise uses trash.
dry-run
Optional test run to not actually delete matched files.
verbose
Optional output logging.
API
See the API docs.
Watch Mode
Use nodemon:
nodemon --watch ./src -e ts --exec clean-dest -s ./src -d ./dist