Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
ciplogic-dts-generator
Advanced tools
dts-generator with glob exclude patch. .d.ts generator. Generates a single d.ts bundle containing external modules from TypeScript files.
This release includes only a single patch against the official 1.5.0 dts-generator release, to allow glob excludes.
Issue link: htts://github.com/SitePen/dts-generator/pull/36
Generates a single .d.ts bundle containing external module declarations generated from TypeScript files.
If you have a project with lots of individual TypeScript files that are designed to be consumed as external modules,
the TypeScript compiler doesn’t allow you to actually create a single bundle out of them. This package leverages the
TypeScript language services in TypeScript 1.4+ to generate a single .d.ts file containing multiple
declare module 'foo'
declarations. This allows you to distribute a single .d.ts file along with your compiled
JavaScript that users can simply reference from the TypeScript compiler using a /// <reference path />
comment.
.d.ts generator will also correctly merge non-external-module files, and any already-existing .d.ts files.
npm install dts-generator
Generate your d.ts bundle:
Programmatically:
require('dts-generator').generate({ name: 'package-name', baseDir: '/path/to/package-directory', files: [ 'a.ts', 'b.ts', ... ] out: 'package-name.d.ts' });
Command-line:
```bash
dts-generator --name package-name --baseDir /path/to/package-directory --out package-name.d.ts a.ts b.ts ...
Grunt:
module.exports = function (grunt) {
grunt.loadNpmTasks('dts-generator');
grunt.initConfig({
dtsGenerator: {
options: {
name: 'package-name',
baseDir: '/path/to/package-directory',
out: 'package-name.d.ts'
},
default: {
src: [ '/path/to/package-directory/**/*.ts' ]
}
}
});
};
Reference your generated d.ts bundle from somewhere in your consumer module and import away!:
///
import Foo = require('package-name/Foo');
// ...
## Options
* `baseDir: string`: The base directory for the package being bundled. Any dependencies discovered outside this
directory will be excluded from the bundle.
* `excludes?: string[]`: A list of glob patterns, relative to `baseDir`, that should be excluded from the bundle. Use
the `--exclude` flag one or more times on the command-line. Defaults to `[ "node_modules/**/*.d.ts" ]`.
* `externs?: string[]`: A list of external module reference paths that should be inserted as reference comments. Use
the `--extern` flag one or more times on the command-line.
* `files: string[]`: A list of files from the baseDir to bundle.
* `eol?: string`: The end-of-line character that should be used when outputting code. Defaults to `os.EOL`.
* `indent?: string`: The character(s) that should be used to indent the declarations in the output. Defaults to `\t`.
* `main?: string`: The module ID that should be used as the exported value of the package’s “main” module.
* `name: string`: The name of the package. Used to determine the correct exported package name for modules.
* `out: string`: The filename where the generated bundle will be created.
* `target?: ts.ScriptTarget`: The target environment for generated code. Defaults to `ts.ScriptTarget.Latest`.
## Known issues
* Output bundle code formatting is not perfect yet
## Thanks
@fdecampredon for the idea to dump output from the compiler emitter back into the compiler parser instead of trying to
figure out how to influence the code emitter.
## Licensing
© 2015 SitePen, Inc. New BSD License.
FAQs
dts-generator with glob exclude patch. .d.ts generator. Generates a single d.ts bundle containing external modules from TypeScript files.
The npm package ciplogic-dts-generator receives a total of 1 weekly downloads. As such, ciplogic-dts-generator popularity was classified as not popular.
We found that ciplogic-dts-generator demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.