Compare commits
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
8104609306 | |||
a3077f7800 | |||
c947121243 | |||
4b3f0649fa | |||
523c62530f | |||
aa57617fc7 |
37
README.md
37
README.md
@ -36,29 +36,28 @@ Then add it to your package.json's script section to trigger a build:
|
|||||||
|
|
||||||
### Default task execution order
|
### Default task execution order
|
||||||
|
|
||||||
1. Check config in ./npmts.json
|
1. Check config in ./npmextra.json (Check out [npmextra](https://www.npmjs.com/package/npmextra))
|
||||||
1. Clean up from any previous builds (old js files)
|
1. Clean up from any previous builds (old js files)
|
||||||
1. Install typings
|
1. Transpile TypeScript with **inline sourcemaps** and **declaration files** to ES6
|
||||||
1. Transpile TypeScript with **inline sourcemaps** and **declaration files**
|
1. Create TypeDoc Documentation from TypeScript files
|
||||||
1. Create EsDoc Documentation
|
1. Instrumentalize transpiled ES6 JavaScript with istanbul and run tests with Mocha
|
||||||
1. Instrumentalize created JavaScript files with istanbul
|
|
||||||
1. Run Tests
|
|
||||||
1. Create Coverage report
|
|
||||||
|
|
||||||
#### npmts.json
|
#### npmtsextra.json
|
||||||
the npmts.json is the main config file. You can use it to customize the behaviour of NPMTS.
|
the npmts section in npmtsextra.json can be used to configure npmts.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"mode":"default",
|
"npmts":{
|
||||||
"ts":{
|
"mode":"default",
|
||||||
"./customdir/*.ts":"./"
|
"ts":{
|
||||||
},
|
"./customdir/*.ts":"./"
|
||||||
"tsOptions":{
|
},
|
||||||
"declaration":false,
|
"tsOptions":{
|
||||||
"target":"ES6"
|
"declaration":false,
|
||||||
},
|
"target":"ES6"
|
||||||
"cli":true
|
},
|
||||||
|
"cli":true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -111,7 +110,7 @@ thanks to autogenerated source maps.
|
|||||||
## Tips and tricks:
|
## Tips and tricks:
|
||||||
|
|
||||||
* Use [npmts-g](https://www.npmjs.com/package/npmts-g) to use globally installed npmts and install npmts locally if no global npmts is available.
|
* Use [npmts-g](https://www.npmjs.com/package/npmts-g) to use globally installed npmts and install npmts locally if no global npmts is available.
|
||||||
* Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and EsDocs for the module
|
* Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and TypeDoc for the module
|
||||||
* Use [hosttoday/ht-docker-node:npmts](https://hub.docker.com/r/hosttoday/ht-docker-node/) for speedy CI builds
|
* Use [hosttoday/ht-docker-node:npmts](https://hub.docker.com/r/hosttoday/ht-docker-node/) for speedy CI builds
|
||||||
|
|
||||||
## About the authors:
|
## About the authors:
|
||||||
|
1
dist/npmts.plugins.d.ts
vendored
1
dist/npmts.plugins.d.ts
vendored
@ -11,7 +11,6 @@ export declare let g: {
|
|||||||
sourcemaps: any;
|
sourcemaps: any;
|
||||||
typedoc: any;
|
typedoc: any;
|
||||||
};
|
};
|
||||||
import "babel-preset-es2015";
|
|
||||||
export declare let lodashObject: any;
|
export declare let lodashObject: any;
|
||||||
export import projectinfo = require("projectinfo");
|
export import projectinfo = require("projectinfo");
|
||||||
export import path = require("path");
|
export import path = require("path");
|
||||||
|
1
dist/npmts.plugins.js
vendored
1
dist/npmts.plugins.js
vendored
@ -12,7 +12,6 @@ exports.g = {
|
|||||||
sourcemaps: require("gulp-sourcemaps"),
|
sourcemaps: require("gulp-sourcemaps"),
|
||||||
typedoc: require("gulp-typedoc")
|
typedoc: require("gulp-typedoc")
|
||||||
};
|
};
|
||||||
require("babel-preset-es2015");
|
|
||||||
exports.lodashObject = require('lodash/fp/object');
|
exports.lodashObject = require('lodash/fp/object');
|
||||||
exports.projectinfo = require("projectinfo");
|
exports.projectinfo = require("projectinfo");
|
||||||
exports.path = require("path");
|
exports.path = require("path");
|
||||||
|
15
dist/npmts.tests.js
vendored
15
dist/npmts.tests.js
vendored
@ -14,19 +14,26 @@ var mocha = function (configArg) {
|
|||||||
var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "dist/*.js")])
|
var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "dist/*.js")])
|
||||||
.pipe(plugins.g.sourcemaps.init())
|
.pipe(plugins.g.sourcemaps.init())
|
||||||
.pipe(plugins.g.babel({
|
.pipe(plugins.g.babel({
|
||||||
presets: ['es2015']
|
presets: [
|
||||||
|
require.resolve("babel-preset-es2015")
|
||||||
|
]
|
||||||
}))
|
}))
|
||||||
.pipe(plugins.g.istanbul())
|
.pipe(plugins.g.istanbul({}))
|
||||||
.pipe(plugins.g.sourcemaps.write())
|
.pipe(plugins.g.sourcemaps.write())
|
||||||
.pipe(plugins.g.injectModules())
|
.pipe(plugins.g.injectModules())
|
||||||
.on("finish", function () {
|
.on("finish", function () {
|
||||||
plugins.gulp.src([plugins.path.join(paths.cwd, "test/test.js")])
|
plugins.gulp.src([plugins.path.join(paths.cwd, "test/test.js")])
|
||||||
.pipe(plugins.g.babel({
|
.pipe(plugins.g.babel({
|
||||||
presets: ['es2015']
|
presets: [
|
||||||
|
plugins.path.join(paths.npmtsPackageRoot, "node_modules/babel-preset-es2015/index.js")
|
||||||
|
]
|
||||||
}))
|
}))
|
||||||
.pipe(plugins.g.injectModules())
|
.pipe(plugins.g.injectModules())
|
||||||
.pipe(plugins.g.mocha())
|
.pipe(plugins.g.mocha())
|
||||||
.pipe(plugins.g.istanbul.writeReports())
|
.pipe(plugins.g.istanbul.writeReports({
|
||||||
|
dir: './coverage',
|
||||||
|
reporters: ['lcovonly', 'json', 'text', 'text-summary']
|
||||||
|
}))
|
||||||
.pipe(plugins.g.gFunction(function () {
|
.pipe(plugins.g.gFunction(function () {
|
||||||
plugins.beautylog.ok("Tested!");
|
plugins.beautylog.ok("Tested!");
|
||||||
done.resolve(configArg);
|
done.resolve(configArg);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "npmts",
|
"name": "npmts",
|
||||||
"version": "5.3.18",
|
"version": "5.3.21",
|
||||||
"description": "write npm modules with TypeScript",
|
"description": "write npm modules with TypeScript",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
|
@ -11,7 +11,6 @@ export let g = {
|
|||||||
sourcemaps: require("gulp-sourcemaps"),
|
sourcemaps: require("gulp-sourcemaps"),
|
||||||
typedoc: require("gulp-typedoc")
|
typedoc: require("gulp-typedoc")
|
||||||
};
|
};
|
||||||
import "babel-preset-es2015";
|
|
||||||
export let lodashObject = require('lodash/fp/object');
|
export let lodashObject = require('lodash/fp/object');
|
||||||
export import projectinfo = require("projectinfo");
|
export import projectinfo = require("projectinfo");
|
||||||
export import path = require("path");
|
export import path = require("path");
|
||||||
|
@ -14,19 +14,27 @@ let mocha = function (configArg) {
|
|||||||
var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"dist/*.js")])
|
var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"dist/*.js")])
|
||||||
.pipe(plugins.g.sourcemaps.init())
|
.pipe(plugins.g.sourcemaps.init())
|
||||||
.pipe(plugins.g.babel({
|
.pipe(plugins.g.babel({
|
||||||
presets: ['es2015']
|
presets: [
|
||||||
|
require.resolve("babel-preset-es2015")
|
||||||
|
]
|
||||||
|
}))
|
||||||
|
.pipe(plugins.g.istanbul({
|
||||||
}))
|
}))
|
||||||
.pipe(plugins.g.istanbul())
|
|
||||||
.pipe(plugins.g.sourcemaps.write())
|
.pipe(plugins.g.sourcemaps.write())
|
||||||
.pipe(plugins.g.injectModules())
|
.pipe(plugins.g.injectModules())
|
||||||
.on("finish",function(){
|
.on("finish",function(){
|
||||||
plugins.gulp.src([plugins.path.join(paths.cwd,"test/test.js")])
|
plugins.gulp.src([plugins.path.join(paths.cwd,"test/test.js")])
|
||||||
.pipe(plugins.g.babel({
|
.pipe(plugins.g.babel({
|
||||||
presets: ['es2015']
|
presets: [
|
||||||
|
plugins.path.join(paths.npmtsPackageRoot,"node_modules/babel-preset-es2015/index.js")
|
||||||
|
]
|
||||||
}))
|
}))
|
||||||
.pipe(plugins.g.injectModules())
|
.pipe(plugins.g.injectModules())
|
||||||
.pipe(plugins.g.mocha())
|
.pipe(plugins.g.mocha())
|
||||||
.pipe(plugins.g.istanbul.writeReports())
|
.pipe(plugins.g.istanbul.writeReports({
|
||||||
|
dir: './coverage',
|
||||||
|
reporters: [ 'lcovonly', 'json', 'text', 'text-summary']
|
||||||
|
}))
|
||||||
.pipe(plugins.g.gFunction(function(){
|
.pipe(plugins.g.gFunction(function(){
|
||||||
plugins.beautylog.ok("Tested!");
|
plugins.beautylog.ok("Tested!");
|
||||||
done.resolve(configArg);
|
done.resolve(configArg);
|
||||||
|
Reference in New Issue
Block a user