5 releases (3 breaking)
0.4.0 | May 9, 2021 |
---|---|
0.3.0 | May 7, 2021 |
0.2.2 | May 7, 2021 |
0.2.0 | May 4, 2021 |
0.1.0 | Apr 26, 2021 |
#4 in #mv
105KB
719 lines
mvts: like mv but for TypeScript files
mvts is a a tool for moving TypeScript files and updating their relative imports and affected files. This is WIP but works on my machine :).
Usage
mvts takes two arguments: source_file_path and target_file_path.
mvts source_file.ts some_folder/another_folder/moved_source_file.ts
mvts moves source file to target_file_path and edits it's imports so that they are correct in the new location. mvts finds all files that import moved file and updates them accordingly.
Screenshot of git status after using mvts
Installation
mvts can be installed with cargo
cargo install mvts
Building
$ git clone https://github.com/pheis/mvts
$ cd mvts
$ cargo build --release
$ ./target/release/mvts --version
0.2.0
Features and missing features
- Handling relateive node import statements (no .ts/tsx suffix)
- Moving single ts/tsx file and updating it's imports
- Updatating affected files imports to moved file
- Parallel processing
- Renaming folder containing multiple files
- Handling require() and import functions()
- Handling Deno imports (with .ts/tsx suffix)
- Handling .svg etc imports
- Handling glob patters in argumentsts
Dependencies
~27–36MB
~816K SLoC