@ovos-media/tsconfig-to-swcconfig
v2.8.0-mod.0
Published
Convert tsconfig to swc config
Downloads
389
Readme
tsconfig-to-swcconfig
Convert tsconfig to swc config.
Why?
(https://github.com/swc-project/swc/issues/1348)
swc
has no plans to supporttsconfig.json
, but it could be useful in some cases. For example, migrating fromtsc
toswc
in a large project, you can use this tool to converttsconfig.json
to.swcrc
, and then modify the.swcrc
to make it work.
Install
npm i tsconfig-to-swcconfig
Usage
Convert config in a tsconfig file
import { convert } from 'tsconfig-to-swcconfig'
const swcConfig = convert() // will look for tsconfig under the cwd and convert it to swc config
Advanced options:
import { convert } from 'tsconfig-to-swcconfig'
convert('tsconfig-filename.json', process.cwd(), {
// more swc config to override...
minify: true,
})
Convert tsconfig value
Convert tsconfig value directly:
import { convertTsConfig } from 'tsconfig-to-swcconfig'
const swcConfig = convertTsConfig({
module: 'commonjs',
target: 'es2018',
strict: true,
esModuleInterop: true,
})
Advanced usage:
import { convertTsConfig } from 'tsconfig-to-swcconfig'
const swcConfig = convertTsConfig(
{ target: 'es2018' }, // tsconfig
{ minify: true }, // more swc config to override...
)
CLI
To use the CLI, install globally:
npm i -g tsconfig-to-swcconfig
Then run:
tsconfig-to-swcconfig --help
Usage: tsconfig-to-swcconfig [options]
Alias: t2s [options]
Options:
-f, --filename <filename> filename to tsconfig (default: "tsconfig.json")
-c, --cwd <cwd> cwd (default: process.cwd())
-o, --output <output> output file (default: stdout)
-s, --set <name>=<value> set additional swcrc options
-h, --help display help for command
Instead of installing globally, you can also use npx
to run the CLI without installing:
npx tsconfig-to-swcconfig -f tsconfig.json -c /path/to/project -o swc.config.js
License
MIT