tscoverage/ts/npmts.typedoc.ts

46 lines
1.4 KiB
TypeScript
Raw Normal View History

2016-07-14 22:38:41 +00:00
import "typings-global";
import plugins = require("./npmts.plugins");
import paths = require("./npmts.paths");
2016-08-13 21:54:17 +00:00
import { npmtsOra } from "./npmts.promisechain";
2016-07-14 22:38:41 +00:00
2016-09-02 12:10:09 +00:00
import {projectInfo} from "./npmts.check";
2016-08-13 21:54:17 +00:00
let genTypeDoc = function (configArg) {
2016-07-14 22:38:41 +00:00
let done = plugins.Q.defer();
npmtsOra.text("now generating " + "TypeDoc documentation".yellow);
2016-07-14 22:38:41 +00:00
plugins.beautylog.log("TypeDoc Output:");
2016-08-13 21:54:17 +00:00
plugins.gulp.src(plugins.path.join(paths.tsDir, "**/*.ts"))
2016-07-14 22:38:41 +00:00
.pipe(plugins.g.typedoc({
2016-08-13 21:54:17 +00:00
// TypeScript options (see typescript docs)
module: "commonjs",
target: "es6",
includeDeclarations: true,
// Output options (see typedoc docs)
2016-08-30 14:35:46 +00:00
out: paths.pagesApiDir,
json: plugins.path.join(paths.pagesApiDir, "file.json"),
2016-08-13 21:54:17 +00:00
// TypeDoc options (see typedoc docs)
2016-09-02 12:10:09 +00:00
name: projectInfo.name,
readme: plugins.path.join(paths.cwd,"README.md"),
// theme: "default",
2016-08-13 21:54:17 +00:00
ignoreCompilerErrors: true,
version: true,
}))
.pipe(plugins.g.gFunction(done.resolve, "atEnd"));
2016-07-14 22:38:41 +00:00
return done.promise;
};
2016-08-13 21:54:17 +00:00
export let run = function (configArg) {
2016-07-14 22:38:41 +00:00
let done = plugins.Q.defer();
2016-08-19 07:46:36 +00:00
if (configArg.docs) {
2016-08-13 21:54:17 +00:00
genTypeDoc(configArg)
.then(() => {
done.resolve(configArg);
});
2016-08-19 07:46:36 +00:00
} else {
done.resolve(configArg);
2016-08-13 21:54:17 +00:00
};
2016-07-14 22:38:41 +00:00
return done.promise;
};