A tool for cleaning up files built by typeScript
npm install ts-cleanup[![NPM Version][npm-image]][npm-url]
[![NPM Downloads][downloads-image]][downloads-url]
[![Build Status][travis-image]][travis-url]
[![Test Coverage][coveralls-image]][coveralls-url]
[![DevDependencies][devdependencies-image]][devdependencies-url]
A helper script that can be used to cleanup previously transpiled typescript files. When typescript is setup to transpile files from a source to distribution folder, it won't automatically remove distribution files when their source file is deleted. ts-cleanup can take care of this task for you, both in single time build mode, or in watch mode.
$ npm install ts-cleanup --save
``
Usage: ts-cleanup options
A tool for cleaning up files built by typeScript
Options:
-s, --src
-d, --dist
-v, --verbose whether to show messages for files being deleted (disabled by default)
-w, --watch whether to watch for files being deleted (disabled by default)
-a, --all whether to remove all .js files
-rd, --remove-dirs whether to remove empty directories (default: true)
-V, --version output the current version
-h, --help output usage information
`
`shell script`
ts-cleanup -s src -d dist -v -rd
ts-cleanup also provides two simple functions for usage from within a node script:
cleanup(src: string, dist: string, options?: ICleanSrcOptions);
- src: the source folder with ts files (required if -d not defined)dist
- : the distribution folder with js files (required if -s not defined)options
- root?: string
- : root directoryexclude?: string | string[]
- : pattern to exclude file matchingremoveEmptyDirs?: boolean
- : whether to remove empty directoriesverbose?: boolean
- : whether to show messages for files being deleted
`js
const {cleanup} = require("ts-cleanup");
cleanup('./src', "./dis", {
root: __dirname, // default process.cwd()
removeAllJsFiles: true, // default false
removeEmptyDirs: true, // default false
verbose: true // default false
});
`
`js
const {watch} = require("ts-cleanup");
watch('./src', "./dis", {
root: __dirname, // default process.cwd()
verbose: true // default false
});
`
watch(src: string, dist: string, options?: IWatchOptions);
- src: the source folder with ts files (required if -d not defined)dist
- : the distribution folder with js files (required if -s not defined)options
- root?: string
- : root directoryverbose?: boolean
- : whether to show messages for files being deleted
#### cleanSrc()
Cleans previously transpiled typescript files in a source directory.
cleanSrc(options?: ICleanSrcOptions, callback?: (filename: string) => boolean);
- options root?: string
- : root directoryexclude?: string | string[]
- : pattern to exclude file matchingremoveAllJsFiles?: boolean
- : whether to remove all .jsremoveEmptyDirs?: boolean
- : whether to remove empty directoriesverbose?: boolean
- : whether to show messages for files being deletedcallback
- : executes this callback for each file, and removes only files wich callback returns true.
`js
const {cleanSrc} = require("ts-cleanup");
cleanSrc({
root: __dirname, // default process.cwd()
removeAllJsFiles: true, // default false
removeEmptyDirs: true, // default false
verbose: true // default false
}, (f)=> f.includes('.spec.ts'));
`
#### cleanMatch()
Cleans any files that matches glob pattern.
cleanMatch(pattern: string | string[], options?: ICleanSrcOptions, callback?: (filename: string) => boolean);
- pattern: Glob pattern to match filesoptions
- root?: string
- : root directoryexclude?: string | string[]
- : pattern to exclude file matchingremoveEmptyDirs?: boolean
- : whether to remove empty directoriesverbose?: boolean
- : whether to show messages for files being deletedcallback
- : executes this callback for each file, and removes only files wich callback returns true.
`js
const {cleanMatch} = require("ts-cleanup");
cleanMatch('src/*/.spec.{js,js.map,d.ts}', {
root: __dirname, // default process.cwd()
removeEmptyDirs: true, // default false
verbose: true // default false
}, (f)=> !f.includes('.dont-remove'));
`
- node >= 8.0`;
[npm-image]: https://img.shields.io/npm/v/ts-cleanup.svg
[npm-url]: https://npmjs.org/package/ts-cleanup
[travis-image]: https://img.shields.io/travis/panates/ts-cleanup/master.svg
[travis-url]: https://travis-ci.org/panates/ts-cleanup
[coveralls-image]: https://img.shields.io/coveralls/panates/ts-cleanup/master.svg
[coveralls-url]: https://coveralls.io/r/panates/ts-cleanup
[downloads-image]: https://img.shields.io/npm/dm/ts-cleanup.svg
[downloads-url]: https://npmjs.org/package/ts-cleanup
[devdependencies-image]: https://david-dm.org/panates/ts-cleanup/dev-status.svg
[devdependencies-url]:https://david-dm.org/panates/ts-cleanup?type=dev