Compare commits

...

6 Commits

Author SHA1 Message Date
df74769533 5.3.12 2016-07-15 11:52:00 +02:00
5aef714497 now fully ES6 2016-07-15 11:51:55 +02:00
24701afcb2 now using typedoc 2016-07-15 00:38:41 +02:00
cbfbd4ee67 restructure 2016-07-14 13:21:07 +02:00
6df449394d 5.3.11 2016-07-14 13:08:48 +02:00
27b6119bbb improve README 2016-07-14 13:08:43 +02:00
12 changed files with 95 additions and 75 deletions

View File

@ -40,7 +40,7 @@ Then add it to your package.json's script section to trigger a build:
1. Clean up from any previous builds (old js files) 1. Clean up from any previous builds (old js files)
1. Install typings 1. Install typings
1. Transpile TypeScript with **inline sourcemaps** and **declaration files** 1. Transpile TypeScript with **inline sourcemaps** and **declaration files**
1. Create JsDoc Documentation 1. Create EsDoc Documentation
1. Instrumentalize created JavaScript files with istanbul 1. Instrumentalize created JavaScript files with istanbul
1. Run Tests 1. Run Tests
1. Create Coverage report 1. Create Coverage report
@ -111,7 +111,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 JsDocs for the module * Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and EsDocs 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:

26
dist/npmts.jsdoc.js vendored
View File

@ -1,26 +0,0 @@
"use strict";
require("typings-global");
var plugins = require("./npmts.plugins");
var paths = require("./npmts.paths");
var npmts_promisechain_1 = require("./npmts.promisechain");
var genEsDoc = function (configArg) {
var done = plugins.Q.defer();
npmts_promisechain_1.npmtsOra.text("now generating " + "EsDoc documentation".yellow);
plugins.beautylog.log("ESDoc Output:");
var esdocConfig = {
source: paths.distDir,
destination: paths.docsDir
};
plugins.esdoc.generate(esdocConfig, plugins.esdocPublisher);
plugins.beautylog.ok("Docs by EsDoc have been created!");
done.resolve(configArg);
return done.promise;
};
exports.run = function (configArg) {
var done = plugins.Q.defer();
genEsDoc(configArg)
.then(function () {
done.resolve(configArg);
});
return done.promise;
};

View File

@ -1,7 +1,5 @@
import "typings-global"; import "typings-global";
export import beautylog = require("beautylog"); export import beautylog = require("beautylog");
export declare let esdoc: any;
export declare let esdocPublisher: any;
export declare let gulp: any; export declare let gulp: any;
export declare let g: { export declare let g: {
gFunction: any; gFunction: any;
@ -9,6 +7,7 @@ export declare let g: {
mocha: any; mocha: any;
replace: any; replace: any;
sourcemaps: any; sourcemaps: any;
typedoc: any;
}; };
export declare let lodashObject: any; export declare let lodashObject: any;
export declare let merge2: any; export declare let merge2: any;

View File

@ -1,15 +1,14 @@
"use strict"; "use strict";
require("typings-global"); require("typings-global");
exports.beautylog = require("beautylog"); exports.beautylog = require("beautylog");
exports.esdoc = require("esdoc");
exports.esdocPublisher = require("esdoc/out/src/Publisher/publish");
exports.gulp = require("gulp"); exports.gulp = require("gulp");
exports.g = { exports.g = {
gFunction: require("gulp-function"), gFunction: require("gulp-function"),
istanbul: require("gulp-istanbul"), istanbul: require("gulp-istanbul"),
mocha: require("gulp-mocha"), mocha: require("gulp-mocha"),
replace: require("gulp-replace"), replace: require("gulp-replace"),
sourcemaps: require("gulp-sourcemaps") sourcemaps: require("gulp-sourcemaps"),
typedoc: require("gulp-typedoc")
}; };
exports.lodashObject = require('lodash/fp/object'); exports.lodashObject = require('lodash/fp/object');
exports.merge2 = require("merge2"); exports.merge2 = require("merge2");

View File

@ -6,7 +6,7 @@ var NpmtsAssets = require("./npmts.assets");
var NpmtsClean = require("./npmts.clean"); var NpmtsClean = require("./npmts.clean");
var NpmtsCompile = require("./npmts.compile"); var NpmtsCompile = require("./npmts.compile");
var NpmtsConfigFile = require("./npmts.configfile"); var NpmtsConfigFile = require("./npmts.configfile");
var NpmtsJsdoc = require("./npmts.jsdoc"); var NpmtsTypeDoc = require("./npmts.typedoc");
var NpmtsOptions = require("./npmts.options"); var NpmtsOptions = require("./npmts.options");
var NpmtsTests = require("./npmts.tests"); var NpmtsTests = require("./npmts.tests");
exports.promisechain = function (argvArg) { exports.promisechain = function (argvArg) {
@ -17,7 +17,7 @@ exports.promisechain = function (argvArg) {
.then(NpmtsClean.run) .then(NpmtsClean.run)
.then(NpmtsCompile.run) .then(NpmtsCompile.run)
.then(NpmtsAssets.run) .then(NpmtsAssets.run)
.then(NpmtsJsdoc.run) .then(NpmtsTypeDoc.run)
.then(NpmtsTests.run) .then(NpmtsTests.run)
.then(function (configArg) { .then(function (configArg) {
var shipString = "" + var shipString = "" +

35
dist/npmts.typedoc.js vendored Normal file
View File

@ -0,0 +1,35 @@
"use strict";
require("typings-global");
var plugins = require("./npmts.plugins");
var paths = require("./npmts.paths");
var npmts_promisechain_1 = require("./npmts.promisechain");
var genTypeDoc = function (configArg) {
var done = plugins.Q.defer();
npmts_promisechain_1.npmtsOra.text("now generating " + "EsDoc documentation".yellow);
plugins.beautylog.log("TypeDoc Output:");
plugins.gulp.src(plugins.path.join(paths.tsDir, "**/*.ts"))
.pipe(plugins.g.typedoc({
// TypeScript options (see typescript docs)
module: "commonjs",
target: "es6",
includeDeclarations: true,
// Output options (see typedoc docs)
out: paths.docsDir,
json: plugins.path.join(paths.docsDir, "file.json"),
// TypeDoc options (see typedoc docs)
name: "my-project",
//theme: "default",
ignoreCompilerErrors: false,
version: true,
}))
.pipe(plugins.g.gFunction(done.resolve, "atEnd"));
return done.promise;
};
exports.run = function (configArg) {
var done = plugins.Q.defer();
genTypeDoc(configArg)
.then(function () {
done.resolve(configArg);
});
return done.promise;
};

View File

@ -1,6 +1,6 @@
{ {
"name": "npmts", "name": "npmts",
"version": "5.3.10", "version": "5.3.12",
"description": "write npm modules with TypeScript", "description": "write npm modules with TypeScript",
"main": "dist/index.js", "main": "dist/index.js",
"bin": { "bin": {
@ -29,10 +29,10 @@
}, },
"homepage": "https://gitlab.com/pushrocks/npmts#readme", "homepage": "https://gitlab.com/pushrocks/npmts#readme",
"dependencies": { "dependencies": {
"@types/minimatch": "^2.0.27-alpha", "@types/minimatch": "*",
"@types/q": "0.0.26-alpha", "@types/q": "*",
"@types/shelljs": "^0.3.26-alpha", "@types/shelljs": "*",
"beautylog": "5.0.13", "beautylog": "5.0.14",
"early": "^2.0.13", "early": "^2.0.13",
"esdoc": "^0.4.7", "esdoc": "^0.4.7",
"gulp": "3.9.1", "gulp": "3.9.1",
@ -44,6 +44,7 @@
"gulp-mocha": "^2.2.0", "gulp-mocha": "^2.2.0",
"gulp-replace": "^0.5.4", "gulp-replace": "^0.5.4",
"gulp-sourcemaps": "^1.6.0", "gulp-sourcemaps": "^1.6.0",
"gulp-typedoc": "^2.0.0",
"lodash": "^4.13.1", "lodash": "^4.13.1",
"merge2": "1.0.2", "merge2": "1.0.2",
"projectinfo": "1.0.3", "projectinfo": "1.0.3",
@ -56,8 +57,9 @@
"smartfile": "4.0.10", "smartfile": "4.0.10",
"smartpath": "3.2.2", "smartpath": "3.2.2",
"smartstring": "^2.0.14", "smartstring": "^2.0.14",
"source-map-support": "^0.4.1", "source-map-support": "^0.4.2",
"tsn": "^1.0.6", "tsn": "^1.0.7",
"typedoc": "^0.4.4",
"typescript": "^2.0.0-dev.20160630", "typescript": "^2.0.0-dev.20160630",
"typings-global": "*" "typings-global": "*"
}, },

View File

@ -1,28 +0,0 @@
import "typings-global";
import plugins = require("./npmts.plugins");
import paths = require("./npmts.paths");
import {npmtsOra} from "./npmts.promisechain";
let genEsDoc = function(configArg){
let done = plugins.Q.defer();
npmtsOra.text("now generating " + "EsDoc documentation".yellow);
plugins.beautylog.log("ESDoc Output:");
let esdocConfig = {
source: paths.distDir,
destination: paths.docsDir
};
plugins.esdoc.generate(esdocConfig,plugins.esdocPublisher);
plugins.beautylog.ok("Docs by EsDoc have been created!");
done.resolve(configArg);
return done.promise;
};
export let run = function(configArg){
let done = plugins.Q.defer();
genEsDoc(configArg)
.then(() => {
done.resolve(configArg);
});
return done.promise;
};

View File

@ -1,14 +1,13 @@
import "typings-global"; import "typings-global";
export import beautylog = require("beautylog"); export import beautylog = require("beautylog");
export let esdoc = require("esdoc");
export let esdocPublisher = require("esdoc/out/src/Publisher/publish");
export let gulp = require("gulp"); export let gulp = require("gulp");
export let g = { export let g = {
gFunction: require("gulp-function"), gFunction: require("gulp-function"),
istanbul: require("gulp-istanbul"), istanbul: require("gulp-istanbul"),
mocha: require("gulp-mocha"), mocha: require("gulp-mocha"),
replace: require("gulp-replace"), replace: require("gulp-replace"),
sourcemaps: require("gulp-sourcemaps") sourcemaps: require("gulp-sourcemaps"),
typedoc: require("gulp-typedoc")
}; };
export let lodashObject = require('lodash/fp/object'); export let lodashObject = require('lodash/fp/object');
export let merge2 = require("merge2"); export let merge2 = require("merge2");

View File

@ -8,7 +8,7 @@ import NpmtsAssets = require("./npmts.assets");
import NpmtsClean = require("./npmts.clean"); import NpmtsClean = require("./npmts.clean");
import NpmtsCompile = require("./npmts.compile"); import NpmtsCompile = require("./npmts.compile");
import NpmtsConfigFile = require("./npmts.configfile"); import NpmtsConfigFile = require("./npmts.configfile");
import NpmtsJsdoc = require("./npmts.jsdoc"); import NpmtsTypeDoc = require("./npmts.typedoc");
import NpmtsOptions = require("./npmts.options"); import NpmtsOptions = require("./npmts.options");
import NpmtsTests = require("./npmts.tests"); import NpmtsTests = require("./npmts.tests");
@ -20,7 +20,7 @@ export let promisechain = function(argvArg){
.then(NpmtsClean.run) .then(NpmtsClean.run)
.then(NpmtsCompile.run) .then(NpmtsCompile.run)
.then(NpmtsAssets.run) .then(NpmtsAssets.run)
.then(NpmtsJsdoc.run) .then(NpmtsTypeDoc.run)
.then(NpmtsTests.run) .then(NpmtsTests.run)
.then(function(configArg){ .then(function(configArg){
let shipString = "" + let shipString = "" +

40
ts/npmts.typedoc.ts Normal file
View File

@ -0,0 +1,40 @@
import "typings-global";
import plugins = require("./npmts.plugins");
import paths = require("./npmts.paths");
import {npmtsOra} from "./npmts.promisechain";
let genTypeDoc = function(configArg){
let done = plugins.Q.defer();
npmtsOra.text("now generating " + "EsDoc documentation".yellow);
plugins.beautylog.log("TypeDoc Output:");
plugins.gulp.src(plugins.path.join(paths.tsDir,"**/*.ts"))
.pipe(plugins.g.typedoc({
// TypeScript options (see typescript docs)
module: "commonjs",
target: "es6",
includeDeclarations: true,
// Output options (see typedoc docs)
out: paths.docsDir,
json: plugins.path.join(paths.docsDir,"file.json"),
// TypeDoc options (see typedoc docs)
name: "my-project",
//theme: "default",
ignoreCompilerErrors: false,
version: true,
}))
.pipe(plugins.g.gFunction(done.resolve,"atEnd"));
return done.promise;
};
export let run = function(configArg){
let done = plugins.Q.defer();
genTypeDoc(configArg)
.then(() => {
done.resolve(configArg);
});
return done.promise;
};