UNPKG

dts-bundle-webpack

Version:

Webpack plugin for creating declaration bundle based on dts-bundle library

106 lines (92 loc) 4.17 kB
# DTS plugin for WebPack [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) *Inspired by [this blog post](https://medium.com/@vladimirtolstikov/how-to-merge-d-ts-typings-with-dts-bundle-and-webpack-e8903d699576).* This is wrapper for [dts-bundle plugin](https://github.com/TypeStrong/dts-bundle) to use inside WebPack build. Generates bundle from the `.d.ts` declaration files generated by a TypeSript compiler. ## Installation ``` npm i dts-bundle-webpack --save-dev ``` ## Usage ```js const DtsBundleWebpack = require('dts-bundle-webpack') // webpack config { plugins: [ new DtsBundleWebpack({options}) ] } ``` ## List of possible options are the same as for [dts-bundle plugin](https://github.com/TypeStrong/dts-bundle): Example of [all options](https://github.com/TypeStrong/dts-bundle#options): ````js var opts = { // Required // name of module like in package.json // - used to declare module & import/require name: 'cool-project', // path to entry-point (generated .d.ts file for main module) // if you want to load all .d.ts files from a path recursively you can use "path/project/**/*.d.ts" // ^ *** Experimental, TEST NEEDED, see "All .d.ts files" section // - either relative or absolute main: 'build/index.d.ts', // Optional // base directory to be used for discovering type declarations (i.e. from this project itself) // - default: dirname of main baseDir: 'build', // path of output file. Is relative from baseDir but you can use absolute paths. // if starts with "~/" then is relative to current path. See https://github.com/TypeStrong/dts-bundle/issues/26 // ^ *** Experimental, TEST NEEDED // - default: "<baseDir>/<name>.d.ts" out: 'dist/cool-project.d.ts', // include typings outside of the 'baseDir' (i.e. like node.d.ts) // - default: false externals: false, // reference external modules as <reference path="..." /> tags *** Experimental, TEST NEEDED // - default: false referenceExternals: false, // filter to exclude typings, either a RegExp or a callback. match path relative to opts.baseDir // - RegExp: a match excludes the file // - function: (file:String, external:Boolean) return true to exclude, false to allow // - always use forward-slashes (even on Windows) // - default: *pass* exclude: /^defs\/$/, // delete all source typings (i.e. "<baseDir>/**/*.d.ts") // - default: false removeSource: false, // newline to use in output file newline: os.EOL, // indentation to use in output file // - default 4 spaces indent: ' ', // prefix for rewriting module names // - default '' prefix: '__', // separator for rewriting module 'path' names // - default: forward slash (like sub-modules) separator: '/', // enable verbose mode, prints detailed info about all references and includes/excludes // - default: false verbose: false, // emit although included files not found. See "Files not found" section. // *** Experimental, TEST NEEDED // - default: false emitOnIncludedFileNotFound: false, // emit although no included files not found. See "Files not found" section. // *** Experimental, TEST NEEDED // - default: false emitOnNoIncludedFileNotFound: false, // output d.ts as designed for module folder. (no declare modules) outputAsModuleFolder: false, // path to file that contains the header // // insert a header in output file. i.e.: http://definitelytyped.org/guides/contributing.html#header // - default: null headerPath: "path/to/header/file", // text of the the header // doesn't work with headerPath // // insert a header in output file. i.e.: http://definitelytyped.org/guides/contributing.html#header // - default: '' headerTex: "" }; ```` # References For all other information, please, go to original [dts-bundle plugin](https://github.com/TypeStrong/dts-bundle).