Add --generate-types option (#589)

This commit is contained in:
Jason Miller 2020-12-18 14:17:23 -05:00 committed by GitHub
parent fdafaf7a4a
commit 25b2b62d24
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -364,6 +364,7 @@ function createConfig(options, entry, format, writeMeta) {
: () => resolve(options.cwd, 'mangle.json');
const useTypescript = extname(entry) === '.ts' || extname(entry) === '.tsx';
const emitDeclaration = !!(options.generateTypes || pkg.types || pkg.typings);
const escapeStringExternals = ext =>
ext instanceof RegExp ? ext.source : escapeStringRegexp(ext);
@ -476,7 +477,7 @@ function createConfig(options, entry, format, writeMeta) {
map: null,
}),
},
useTypescript &&
(useTypescript || emitDeclaration) &&
typescript({
typescript: require(resolveFrom.silent(
options.cwd,
@ -488,6 +489,8 @@ function createConfig(options, entry, format, writeMeta) {
compilerOptions: {
sourceMap: options.sourcemap,
declaration: true,
allowJs: true,
emitDeclarationOnly: options.generateTypes && !useTypescript,
declarationDir: getDeclarationDir({ options, pkg }),
jsx: 'preserve',
jsxFactory: