rocketmake-typescript

0.2.2 • Public • Published

rocketmake-typescript

This node module provides typescript compilation services via a locally installed (peer) typescript node module

It is intended to be used in conjunction with a tsconfig.json

GULP

This module is not tied to any build framework, although it has been written to be easily used with Gulp. Simply nmp install gulp (and your typescript compiler), and include the relevant code from below into your gulp file!

nmp install gulp -g
nmp install gulp --save-dev
nmp install typescript --save-dev

Gulp install NOTE!

You dont need to globally install Gulp - you can invoke gulp via your project.json

"scripts"{
  "gulp": "gulp",
}

Then use the following specifying your (optional) "task:name"

npm run gulp [task:name]

Usage

This module needs to know the 'source' folder (the folder in which the tsconfig.json file exists) The source folder should be the root of all your typescript files and typings

example tsconfig.json (in source folder)

{
    "compileOnSave": false,
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "isolatedModules": false,
        "jsx": "React",
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true,
        "declaration": false,
        "noImplicitAny": false,
        "removeComments": true,
        "noLib": false,
        "preserveConstEnums": false,
        "suppressImplicitAnyIndexErrors": true,
        "outDir": "../lib"
    }
}
var rmTypescript = require("rocketmake-typescript");
 
// Compiles the 'source' folder, outputting to the 'outDir' from tsconfig.json
gulp.task("compile:ts", rmTypescript.ts("source"));
 
// Equivalent to the command above, pass all arguments as elements of an array
gulp.task("compile:ts-args", rmTypescript.tscExec(["-p", "source"]));
 
// Equivalent to both commands above, the command is split by " " to build the arguments
gulp.task("compile:ts-command", rmTypescript.tscCommand("-p source"));
 
// Compiles the 'source' folder to .d.ts files, overriding 'outDir' from tsconfig.json (with "dts")
gulp.task("compile:dts", rmTypescript.dts("source", "dts"));

Different typescript node module?

If you need to use ntypescript (rather than the official typescript build), or the typescript module is not located in the node module typescript folder, you can specify the location by:

var rmTypescript = require("rocketmake-typescript");
 
var tscLocation = "./node_modules/ntypescript/bin/tsc";
 
gulp.task("compile:ts", rmTypescript.ts("source", tscLocation));
gulp.task("compile:ts-args", rmTypescript.tscExec(["-p", "source"], tscLocation));
gulp.task("compile:ts-command", rmTypescript.tscCommand("-p source", tscLocation));
gulp.task("compile:dts", rmTypescript.dts("source", "dts", tscLocation));

NOTE: When this parameter is not specified it uses "./node_modules/typescript/bin/tsc"

Readme

Keywords

Package Sidebar

Install

npm i rocketmake-typescript

Weekly Downloads

0

Version

0.2.2

License

MIT

Last publish

Collaborators

  • sheamurphy1919
  • rocketsoper
  • joerocketmakers
  • rocketmakers-admin
  • adamrocketmakers
  • david.haylock