diff --git a/dist/mod00/index.d.ts b/dist/mod00/index.d.ts new file mode 100644 index 0000000..1a5cec1 --- /dev/null +++ b/dist/mod00/index.d.ts @@ -0,0 +1,4 @@ +/// +import * as q from 'q'; +import { INpmtsConfig } from '../npmts.config'; +export declare let run: (configArg: INpmtsConfig) => q.Promise; diff --git a/dist/mod00/index.js b/dist/mod00/index.js new file mode 100644 index 0000000..afb4544 --- /dev/null +++ b/dist/mod00/index.js @@ -0,0 +1,22 @@ +"use strict"; +/* ------------------------------------------ + * This module compiles TypeScript files + * -------------------------------------------- */ +const q = require("q"); +const npmts_log_1 = require("../npmts.log"); +const NpmtsAssets = require("./mod00.assets"); +const NpmtsCheck = require("./mod00.check"); +const NpmtsClean = require("./mod00.clean"); +const NpmtsCompile = require("./mod00.compile"); +exports.run = function (configArg) { + let done = q.defer(); + npmts_log_1.npmtsOra.text('starting TypeScript Compilation'); + NpmtsClean.run(configArg) + .then(NpmtsCheck.run) + .then(NpmtsCompile.run) + .then(NpmtsAssets.run) + .then(function () { + done.resolve(configArg); + }); + return done.promise; +}; diff --git a/dist/npmts.assets.d.ts b/dist/mod00/mod00.assets.d.ts similarity index 100% rename from dist/npmts.assets.d.ts rename to dist/mod00/mod00.assets.d.ts diff --git a/dist/npmts.assets.js b/dist/mod00/mod00.assets.js similarity index 66% rename from dist/npmts.assets.js rename to dist/mod00/mod00.assets.js index 0d681e4..d6c375e 100644 --- a/dist/npmts.assets.js +++ b/dist/mod00/mod00.assets.js @@ -1,15 +1,15 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); -const npmts_check_1 = require("./npmts.check"); +const paths = require("../npmts.paths"); +const npmts_log_1 = require("../npmts.log"); +const plugins = require("./mod00.plugins"); +const mod00_check_1 = require("../mod00/mod00.check"); exports.run = function (configArg) { let done = q.defer(); let config = configArg; - npmts_promisechain_1.npmtsOra.text('now looking at ' + 'required assets'.yellow); + npmts_log_1.npmtsOra.text('now looking at ' + 'required assets'.yellow); if (config.cli === true) { - let mainJsPath = npmts_check_1.projectInfo.packageJson.main; + let mainJsPath = mod00_check_1.projectInfo.packageJson.main; let cliJsString = plugins.smartfile.fs.toStringSync(plugins.path.join(paths.npmtsAssetsDir, 'cli.js')); cliJsString = cliJsString.replace('{{pathToIndex}}', mainJsPath); plugins.smartfile.memory.toFsSync(cliJsString, plugins.path.join(paths.distDir, 'cli.js')); diff --git a/dist/npmts.check.d.ts b/dist/mod00/mod00.check.d.ts similarity index 100% rename from dist/npmts.check.d.ts rename to dist/mod00/mod00.check.d.ts diff --git a/dist/npmts.check.js b/dist/mod00/mod00.check.js similarity index 87% rename from dist/npmts.check.js rename to dist/mod00/mod00.check.js index dda08db..1a3371b 100644 --- a/dist/npmts.check.js +++ b/dist/mod00/mod00.check.js @@ -1,12 +1,12 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); const projectinfo_1 = require("projectinfo"); +const paths = require("../npmts.paths"); +const npmts_log_1 = require("../npmts.log"); +const plugins = require("./mod00.plugins"); let checkProjectTypings = (configArg) => { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('Check Module: Check Project Typings...'); + npmts_log_1.npmtsOra.text('Check Module: Check Project Typings...'); exports.projectInfo = new projectinfo_1.ProjectinfoNpm(paths.cwd); if (typeof exports.projectInfo.packageJson.typings === 'undefined') { plugins.beautylog.error(`please add typings field to package.json`); @@ -32,7 +32,7 @@ const depcheckOptions = { }; let checkDependencies = (configArg) => { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('Check Module: Check Dependencies...'); + npmts_log_1.npmtsOra.text('Check Module: Check Dependencies...'); let depcheckOptionsMerged = plugins.lodash.merge(depcheckOptions, { ignoreDirs: [ 'test', @@ -68,7 +68,7 @@ let checkDependencies = (configArg) => { }; let checkDevDependencies = (configArg) => { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('Check Module: Check devDependencies...'); + npmts_log_1.npmtsOra.text('Check Module: Check devDependencies...'); let depcheckOptionsMerged = plugins.lodash.merge(depcheckOptions, { ignoreDirs: [ 'ts', @@ -103,13 +103,13 @@ let checkDevDependencies = (configArg) => { }; let checkNodeVersion = (configArg) => { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('checking node version'); + npmts_log_1.npmtsOra.text('checking node version'); done.resolve(configArg); return done.promise; }; exports.run = (configArg) => { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('Check Module: ...'); + npmts_log_1.npmtsOra.text('Check Module: ...'); checkProjectTypings(configArg) .then(checkDependencies) .then(checkDevDependencies) diff --git a/dist/npmts.clean.d.ts b/dist/mod00/mod00.clean.d.ts similarity index 100% rename from dist/npmts.clean.d.ts rename to dist/mod00/mod00.clean.d.ts diff --git a/dist/npmts.clean.js b/dist/mod00/mod00.clean.js similarity index 74% rename from dist/npmts.clean.js rename to dist/mod00/mod00.clean.js index cc68090..7baeada 100644 --- a/dist/npmts.clean.js +++ b/dist/mod00/mod00.clean.js @@ -1,13 +1,13 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); +const paths = require("../npmts.paths"); +const npmts_log_1 = require("../npmts.log"); +const plugins = require("./mod00.plugins"); /** * removes the dist directory which will be entirely rebuild */ let removeDist = function () { - npmts_promisechain_1.npmtsOra.text('cleaning dist folder'); + npmts_log_1.npmtsOra.text('cleaning dist folder'); return plugins.smartfile.fs.remove(paths.distDir); }; /** @@ -25,11 +25,11 @@ let removeTestDeclarations = function () { * remove old pages */ let removePages = function () { - npmts_promisechain_1.npmtsOra.text('cleaning pages folder'); + npmts_log_1.npmtsOra.text('cleaning pages folder'); return plugins.smartfile.fs.remove(paths.pagesDir); }; exports.run = function (configArg) { - npmts_promisechain_1.npmtsOra.text('cleaning up from previous builds...'); + npmts_log_1.npmtsOra.text('cleaning up from previous builds...'); let done = q.defer(); removeDist() .then(removeTestDeclarations) diff --git a/dist/npmts.compile.d.ts b/dist/mod00/mod00.compile.d.ts similarity index 100% rename from dist/npmts.compile.d.ts rename to dist/mod00/mod00.compile.d.ts diff --git a/dist/npmts.compile.js b/dist/mod00/mod00.compile.js similarity index 73% rename from dist/npmts.compile.js rename to dist/mod00/mod00.compile.js index f4757e3..93de4fa 100644 --- a/dist/npmts.compile.js +++ b/dist/mod00/mod00.compile.js @@ -1,12 +1,12 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); +const paths = require("../npmts.paths"); +const npmts_log_1 = require("../npmts.log"); +const plugins = require("./mod00.plugins"); exports.run = function (configArg) { let done = q.defer(); let config = configArg; - npmts_promisechain_1.npmtsOra.text('now compiling ' + 'TypeScript'.yellow); + npmts_log_1.npmtsOra.text('now compiling ' + 'TypeScript'.yellow); plugins.tsn.compileGlobStringObject(config.ts, config.tsOptions, paths.cwd) .then(() => { plugins.beautylog.ok('compiled main TypeScript!'); diff --git a/dist/mod00/mod00.plugins.d.ts b/dist/mod00/mod00.plugins.d.ts new file mode 100644 index 0000000..0fdecc4 --- /dev/null +++ b/dist/mod00/mod00.plugins.d.ts @@ -0,0 +1,6 @@ +export * from '../npmts.plugins'; +import * as tsn from 'tsn'; +import * as shelljs from 'shelljs'; +import * as smartchok from 'smartchok'; +import * as smartstream from 'smartstream'; +export { tsn, shelljs, smartchok, smartstream }; diff --git a/dist/mod00/mod00.plugins.js b/dist/mod00/mod00.plugins.js new file mode 100644 index 0000000..b3abbc5 --- /dev/null +++ b/dist/mod00/mod00.plugins.js @@ -0,0 +1,13 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +__export(require("../npmts.plugins")); +const tsn = require("tsn"); +exports.tsn = tsn; +const shelljs = require("shelljs"); +exports.shelljs = shelljs; +const smartchok = require("smartchok"); +exports.smartchok = smartchok; +const smartstream = require("smartstream"); +exports.smartstream = smartstream; diff --git a/dist/mod01/index.d.ts b/dist/mod01/index.d.ts new file mode 100644 index 0000000..1a5cec1 --- /dev/null +++ b/dist/mod01/index.d.ts @@ -0,0 +1,4 @@ +/// +import * as q from 'q'; +import { INpmtsConfig } from '../npmts.config'; +export declare let run: (configArg: INpmtsConfig) => q.Promise; diff --git a/dist/npmts.typedoc.js b/dist/mod01/index.js similarity index 68% rename from dist/npmts.typedoc.js rename to dist/mod01/index.js index 87f3986..2499c76 100644 --- a/dist/npmts.typedoc.js +++ b/dist/mod01/index.js @@ -1,12 +1,15 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); -const npmts_promisechain_1 = require("./npmts.promisechain"); +/* ------------------------------------------ + * This module creates TypeScript documentation + * -------------------------------------------- */ const q = require("q"); -const npmts_check_1 = require("./npmts.check"); +const paths = require("../npmts.paths"); +const npmts_log_1 = require("../npmts.log"); +const plugins = require("./mod01.plugins"); +const mod00_check_1 = require("../mod00/mod00.check"); let genTypeDoc = function (configArg) { let done = q.defer(); - npmts_promisechain_1.npmtsOra.text('now generating ' + 'TypeDoc documentation'.yellow); + npmts_log_1.npmtsOra.text('now generating ' + 'TypeDoc documentation'.yellow); plugins.beautylog.log('TypeDoc Output:'); let localSmartstream = new plugins.smartstream.Smartstream([ plugins.gulp.src(plugins.path.join(paths.tsDir, '**/*.ts')), @@ -19,15 +22,17 @@ let genTypeDoc = function (configArg) { out: paths.pagesApiDir, json: plugins.path.join(paths.pagesApiDir, 'file.json'), // TypeDoc options (see typedoc docs) - name: npmts_check_1.projectInfo.name, + name: mod00_check_1.projectInfo.name, readme: plugins.path.join(paths.cwd, 'README.md'), // theme: "default", version: true }) ]); localSmartstream.run().then(() => { + plugins.beautylog.ok('TypeDoc documentation generated!'); done.resolve(configArg); }, (err) => { + plugins.beautylog.warn('TypeDoc documentation generation failed!'); console.log(err); done.resolve(configArg); }); diff --git a/dist/mod01/mod01.plugins.d.ts b/dist/mod01/mod01.plugins.d.ts new file mode 100644 index 0000000..1291d8f --- /dev/null +++ b/dist/mod01/mod01.plugins.d.ts @@ -0,0 +1,4 @@ +export * from '../npmts.plugins'; +import * as gulp from 'gulp'; +declare let gulpTypedoc: any; +export { gulp, gulpTypedoc }; diff --git a/dist/mod01/mod01.plugins.js b/dist/mod01/mod01.plugins.js new file mode 100644 index 0000000..b500bb9 --- /dev/null +++ b/dist/mod01/mod01.plugins.js @@ -0,0 +1,9 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +__export(require("../npmts.plugins")); +const gulp = require("gulp"); +exports.gulp = gulp; +let gulpTypedoc = require('gulp-typedoc'); +exports.gulpTypedoc = gulpTypedoc; diff --git a/dist/mod02/index.d.ts b/dist/mod02/index.d.ts new file mode 100644 index 0000000..1a5cec1 --- /dev/null +++ b/dist/mod02/index.d.ts @@ -0,0 +1,4 @@ +/// +import * as q from 'q'; +import { INpmtsConfig } from '../npmts.config'; +export declare let run: (configArg: INpmtsConfig) => q.Promise; diff --git a/dist/npmts.tests.js b/dist/mod02/index.js similarity index 84% rename from dist/npmts.tests.js rename to dist/mod02/index.js index 25ff730..a998b81 100644 --- a/dist/npmts.tests.js +++ b/dist/mod02/index.js @@ -1,15 +1,18 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const paths = require("./npmts.paths"); +/* ------------------------------------------ + * This module tests the compiled TypeScript files + * -------------------------------------------- */ +const plugins = require("./mod02.plugins"); +const paths = require("../npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); +const npmts_log_1 = require("../npmts.log"); /** * runs mocha * @returns INpmtsConfig */ let mocha = function (configArg) { - npmts_promisechain_1.npmtsOra.text('Instrumentalizing and testing transpiled JS'); - npmts_promisechain_1.npmtsOra.end(); // end npmtsOra for tests. + npmts_log_1.npmtsOra.text('Instrumentalizing and testing transpiled JS'); + npmts_log_1.npmtsOra.end(); // end npmtsOra for tests. let done = q.defer(); plugins.gulp.src([plugins.path.join(paths.cwd, 'dist/*.js')]) .pipe(plugins.gulpSourcemaps.init()) @@ -39,6 +42,7 @@ let mocha = function (configArg) { localSmartstream.run() .then(() => { done.resolve(configArg); }, (err) => { plugins.beautylog.error('Tests failed!'); + console.log(err); if (configArg.watch) { done.resolve(configArg); } @@ -75,7 +79,7 @@ exports.run = function (configArg) { let done = q.defer(); let config = configArg; if (config.test === true) { - npmts_promisechain_1.npmtsOra.text('now starting tests'); + npmts_log_1.npmtsOra.text('now starting tests'); plugins.beautylog.log('-------------------------------------------------------\n' + '*************************** TESTS: ***************************\n' + '--------------------------------------------------------------'); @@ -86,7 +90,7 @@ exports.run = function (configArg) { }); } else { - npmts_promisechain_1.npmtsOra.end(); + npmts_log_1.npmtsOra.end(); done.resolve(config); } return done.promise; diff --git a/dist/mod02/mod02.plugins.d.ts b/dist/mod02/mod02.plugins.d.ts new file mode 100644 index 0000000..9d54772 --- /dev/null +++ b/dist/mod02/mod02.plugins.d.ts @@ -0,0 +1,9 @@ +export * from '../npmts.plugins'; +import * as gulp from 'gulp'; +import * as gulpBabel from 'gulp-babel'; +import * as gulpIstanbul from 'gulp-istanbul'; +import * as gulpFunction from 'gulp-function'; +declare let gulpInjectModules: any; +import * as gulpMocha from 'gulp-mocha'; +import * as gulpSourcemaps from 'gulp-sourcemaps'; +export { gulp, gulpBabel, gulpIstanbul, gulpFunction, gulpInjectModules, gulpMocha, gulpSourcemaps }; diff --git a/dist/mod02/mod02.plugins.js b/dist/mod02/mod02.plugins.js new file mode 100644 index 0000000..600da32 --- /dev/null +++ b/dist/mod02/mod02.plugins.js @@ -0,0 +1,19 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +__export(require("../npmts.plugins")); +const gulp = require("gulp"); +exports.gulp = gulp; +const gulpBabel = require("gulp-babel"); +exports.gulpBabel = gulpBabel; +const gulpIstanbul = require("gulp-istanbul"); +exports.gulpIstanbul = gulpIstanbul; +const gulpFunction = require("gulp-function"); +exports.gulpFunction = gulpFunction; +let gulpInjectModules = require('gulp-inject-modules'); +exports.gulpInjectModules = gulpInjectModules; +const gulpMocha = require("gulp-mocha"); +exports.gulpMocha = gulpMocha; +const gulpSourcemaps = require("gulp-sourcemaps"); +exports.gulpSourcemaps = gulpSourcemaps; diff --git a/dist/npmts.cli.js b/dist/npmts.cli.js index 3598d7d..a02eb06 100644 --- a/dist/npmts.cli.js +++ b/dist/npmts.cli.js @@ -1,8 +1,12 @@ "use strict"; +const q = require("q"); const plugins = require("./npmts.plugins"); const paths = require("./npmts.paths"); -const promisechain = require("./npmts.promisechain"); -const q = require("q"); +const NpmtsConfig = require("./npmts.config"); +const NpmtsMods = require("./npmts.mods"); +const NpmtsWatch = require("./npmts.watch"); +const NpmtsShip = require("./npmts.ship"); +const npmts_log_1 = require("./npmts.log"); exports.run = () => { let done = q.defer(); let npmtsProjectInfo = new plugins.projectinfo.ProjectinfoNpm(paths.npmtsPackageRoot); @@ -11,8 +15,42 @@ exports.run = () => { .then((argvArg) => { plugins.beautylog.figletSync('NPMTS'); plugins.beautylog.info('npmts version: ' + npmtsProjectInfo.version); - promisechain.run(argvArg).catch((err) => { console.log(err); }); - }); + return NpmtsConfig.run(argvArg); + }) + .then((configArg) => { + let done = q.defer(); + npmts_log_1.npmtsOra.start('loading additional modules...'); + NpmtsMods.mod00.load() + .then((mod00) => { + return mod00.run(configArg); + }) + .then(configArg => { + let done = q.defer(); + NpmtsMods.mod01.load() + .then(mod01 => { + return mod01.run(configArg); + }) + .then(configArg => { + done.resolve(configArg); + }); + return done.promise; + }) + .then(configArg => { + let done = q.defer(); + NpmtsMods.mod02.load() + .then(mod02 => { + return mod02.run(configArg); + }) + .then(configArg => { + done.resolve(configArg); + }); + return done.promise; + }) + .then(NpmtsWatch.run) + .then(NpmtsShip.run); + return done.promise; + }) + .catch((err) => { console.log(err); }); npmtsCli.addVersion(npmtsProjectInfo.version); npmtsCli.startParse(); return done.promise; diff --git a/dist/npmts.options.d.ts b/dist/npmts.config.d.ts similarity index 100% rename from dist/npmts.options.d.ts rename to dist/npmts.config.d.ts diff --git a/dist/npmts.options.js b/dist/npmts.config.js similarity index 92% rename from dist/npmts.options.js rename to dist/npmts.config.js index fed7e54..5ba7c52 100644 --- a/dist/npmts.options.js +++ b/dist/npmts.config.js @@ -2,7 +2,7 @@ const plugins = require("./npmts.plugins"); const paths = require("./npmts.paths"); const q = require("q"); -const npmts_promisechain_1 = require("./npmts.promisechain"); +const npmts_log_1 = require("./npmts.log"); ; exports.run = function (argvArg) { let done = q.defer(); @@ -18,7 +18,7 @@ exports.run = function (argvArg) { watch: false }; // mix with configfile - npmts_promisechain_1.npmtsOra.text('running npmextra'); + npmts_log_1.npmtsOra.text('running npmextra'); let localNpmextra = new plugins.npmextra.Npmextra(paths.cwd); let config = localNpmextra.dataFor('npmts', defaultConfig); // add argv diff --git a/dist/npmts.log.d.ts b/dist/npmts.log.d.ts new file mode 100644 index 0000000..a9f65ec --- /dev/null +++ b/dist/npmts.log.d.ts @@ -0,0 +1,2 @@ +import { Ora } from 'beautylog'; +export declare let npmtsOra: Ora; diff --git a/dist/npmts.log.js b/dist/npmts.log.js new file mode 100644 index 0000000..b1bb9cf --- /dev/null +++ b/dist/npmts.log.js @@ -0,0 +1,3 @@ +"use strict"; +const beautylog_1 = require("beautylog"); +exports.npmtsOra = new beautylog_1.Ora('setting up TaskChain', 'cyan'); diff --git a/dist/npmts.mods.d.ts b/dist/npmts.mods.d.ts new file mode 100644 index 0000000..9fa8bba --- /dev/null +++ b/dist/npmts.mods.d.ts @@ -0,0 +1,7 @@ +import { LazyModule } from 'smartsystem'; +import * as _mod00 from './mod00/index'; +import * as _mod01 from './mod01/index'; +import * as _mod02 from './mod02/index'; +export declare let mod00: LazyModule; +export declare let mod01: LazyModule; +export declare let mod02: LazyModule; diff --git a/dist/npmts.mods.js b/dist/npmts.mods.js new file mode 100644 index 0000000..2fc6e10 --- /dev/null +++ b/dist/npmts.mods.js @@ -0,0 +1,5 @@ +"use strict"; +const smartsystem_1 = require("smartsystem"); +exports.mod00 = new smartsystem_1.LazyModule('./mod00/index', __dirname); +exports.mod01 = new smartsystem_1.LazyModule('./mod01/index', __dirname); +exports.mod02 = new smartsystem_1.LazyModule('./mod02/index', __dirname); diff --git a/dist/npmts.plugins.d.ts b/dist/npmts.plugins.d.ts index 2059a6d..1972302 100644 --- a/dist/npmts.plugins.d.ts +++ b/dist/npmts.plugins.d.ts @@ -1,20 +1,10 @@ import 'typings-global'; import * as beautylog from 'beautylog'; declare let depcheck: any; -import * as gulp from 'gulp'; -import * as gulpBabel from 'gulp-babel'; -import * as gulpIstanbul from 'gulp-istanbul'; -import * as gulpFunction from 'gulp-function'; -declare let gulpInjectModules: any; -import * as gulpMocha from 'gulp-mocha'; -import * as gulpSourcemaps from 'gulp-sourcemaps'; -declare let gulpTypedoc: any; import * as lodash from 'lodash'; import * as npmextra from 'npmextra'; import * as projectinfo from 'projectinfo'; import * as path from 'path'; -import * as shelljs from 'shelljs'; -import * as smartchok from 'smartchok'; import * as smartcli from 'smartcli'; import * as smartcov from 'smartcov'; import * as smartenv from 'smartenv'; @@ -22,6 +12,6 @@ import * as smartfile from 'smartfile'; import * as smartpath from 'smartpath'; import * as smartstream from 'smartstream'; import * as smartstring from 'smartstring'; +import * as smartsystem from 'smartsystem'; export declare let sourceMapSupport: any; -import * as tsn from 'tsn'; -export { beautylog, depcheck, gulp, gulpBabel, gulpFunction, gulpInjectModules, gulpIstanbul, gulpMocha, gulpSourcemaps, gulpTypedoc, lodash, npmextra, projectinfo, path, shelljs, smartchok, smartcli, smartcov, smartenv, smartfile, smartpath, smartstream, smartstring, tsn }; +export { beautylog, depcheck, lodash, npmextra, projectinfo, path, smartcli, smartcov, smartenv, smartfile, smartpath, smartstream, smartstring, smartsystem }; diff --git a/dist/npmts.plugins.js b/dist/npmts.plugins.js index a6d5168..55c567f 100644 --- a/dist/npmts.plugins.js +++ b/dist/npmts.plugins.js @@ -4,22 +4,6 @@ const beautylog = require("beautylog"); exports.beautylog = beautylog; let depcheck = require('depcheck'); exports.depcheck = depcheck; -const gulp = require("gulp"); -exports.gulp = gulp; -const gulpBabel = require("gulp-babel"); -exports.gulpBabel = gulpBabel; -const gulpIstanbul = require("gulp-istanbul"); -exports.gulpIstanbul = gulpIstanbul; -const gulpFunction = require("gulp-function"); -exports.gulpFunction = gulpFunction; -let gulpInjectModules = require('gulp-inject-modules'); -exports.gulpInjectModules = gulpInjectModules; -const gulpMocha = require("gulp-mocha"); -exports.gulpMocha = gulpMocha; -const gulpSourcemaps = require("gulp-sourcemaps"); -exports.gulpSourcemaps = gulpSourcemaps; -let gulpTypedoc = require('gulp-typedoc'); -exports.gulpTypedoc = gulpTypedoc; const lodash = require("lodash"); exports.lodash = lodash; const npmextra = require("npmextra"); @@ -28,10 +12,6 @@ const projectinfo = require("projectinfo"); exports.projectinfo = projectinfo; const path = require("path"); exports.path = path; -const shelljs = require("shelljs"); -exports.shelljs = shelljs; -const smartchok = require("smartchok"); -exports.smartchok = smartchok; const smartcli = require("smartcli"); exports.smartcli = smartcli; const smartcov = require("smartcov"); @@ -46,6 +26,6 @@ const smartstream = require("smartstream"); exports.smartstream = smartstream; const smartstring = require("smartstring"); exports.smartstring = smartstring; +const smartsystem = require("smartsystem"); +exports.smartsystem = smartsystem; exports.sourceMapSupport = require('source-map-support').install(); // display errors correctly during testing -const tsn = require("tsn"); -exports.tsn = tsn; diff --git a/dist/npmts.promisechain.d.ts b/dist/npmts.promisechain.d.ts deleted file mode 100644 index eca59ad..0000000 --- a/dist/npmts.promisechain.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/// -import { Ora } from 'beautylog'; -import * as q from 'q'; -export declare let npmtsOra: Ora; -export declare let run: (argvArg: any) => q.Promise<{}>; diff --git a/dist/npmts.promisechain.js b/dist/npmts.promisechain.js deleted file mode 100644 index 9c4d26a..0000000 --- a/dist/npmts.promisechain.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -const plugins = require("./npmts.plugins"); -const beautylog_1 = require("beautylog"); -const q = require("q"); -exports.npmtsOra = new beautylog_1.Ora('setting up TaskChain', 'cyan'); -const NpmtsAssets = require("./npmts.assets"); -const NpmtsCheck = require("./npmts.check"); -const NpmtsClean = require("./npmts.clean"); -const NpmtsCompile = require("./npmts.compile"); -const NpmtsTypeDoc = require("./npmts.typedoc"); -const NpmtsOptions = require("./npmts.options"); -const NpmtsTests = require("./npmts.tests"); -const NpmtsWatch = require("./npmts.watch"); -exports.run = function (argvArg) { - let done = q.defer(); - exports.npmtsOra.start(); - NpmtsOptions.run(argvArg) - .then(NpmtsClean.run) - .then(NpmtsCheck.run) - .then(NpmtsCompile.run) - .then(NpmtsAssets.run) - .then(NpmtsTypeDoc.run) - .then(NpmtsTests.run) - .then(NpmtsWatch.run) - .then(function (configArg) { - let shipString = '' + - '\n' + - '\n' + - ' # # ( )\n' + - ' ___#_#___|__\n' + - ' _ |____________| _\n' + - ' _=====| | | | | |==== _\n' + - ' =====| |.---------------------------. | |====\n' + - " <--------------------' . . . . . . . . '--------------/\n" + - ' \\ /\n' + - ' \\___________________________________________________________/\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n'; - if (process.env.CI) { - console.log(shipString); - plugins.beautylog.success('READY TO SHIP!'); - } - else { - plugins.beautylog.success('Done!'); - } - done.resolve(configArg); - }); - return done.promise; -}; diff --git a/dist/npmts.ship.d.ts b/dist/npmts.ship.d.ts new file mode 100644 index 0000000..0b723c6 --- /dev/null +++ b/dist/npmts.ship.d.ts @@ -0,0 +1,2 @@ +import { INpmtsConfig } from './npmts.config'; +export declare let run: (configArg: INpmtsConfig) => void; diff --git a/dist/npmts.ship.js b/dist/npmts.ship.js new file mode 100644 index 0000000..e94ba87 --- /dev/null +++ b/dist/npmts.ship.js @@ -0,0 +1,28 @@ +"use strict"; +const q = require("q"); +const plugins = require("./npmts.plugins"); +exports.run = (configArg) => { + let done = q.defer(); + let shipString = '' + + '\n' + + '\n' + + ' # # ( )\n' + + ' ___#_#___|__\n' + + ' _ |____________| _\n' + + ' _=====| | | | | |==== _\n' + + ' =====| |.---------------------------. | |====\n' + + " <--------------------' . . . . . . . . '--------------/\n" + + ' \\ /\n' + + ' \\___________________________________________________________/\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n'; + if (process.env.CI) { + console.log(shipString); + plugins.beautylog.success('READY TO SHIP!'); + } + else { + plugins.beautylog.success('Done!'); + } + done.resolve(configArg); +}; diff --git a/dist/npmts.tests.d.ts b/dist/npmts.tests.d.ts deleted file mode 100644 index 8b19aeb..0000000 --- a/dist/npmts.tests.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/// -import * as q from 'q'; -import { INpmtsConfig } from './npmts.options'; -export declare let run: (configArg: INpmtsConfig) => q.Promise<{}>; diff --git a/dist/npmts.typedoc.d.ts b/dist/npmts.typedoc.d.ts deleted file mode 100644 index 3f12cb0..0000000 --- a/dist/npmts.typedoc.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/// -import * as q from 'q'; -export declare let run: (configArg: any) => q.Promise<{}>; diff --git a/dist/npmts.watch.d.ts b/dist/npmts.watch.d.ts index 8b19aeb..ca10474 100644 --- a/dist/npmts.watch.d.ts +++ b/dist/npmts.watch.d.ts @@ -1,4 +1,4 @@ /// import * as q from 'q'; -import { INpmtsConfig } from './npmts.options'; +import { INpmtsConfig } from './npmts.config'; export declare let run: (configArg: INpmtsConfig) => q.Promise<{}>; diff --git a/dist/npmts.watch.js b/dist/npmts.watch.js index ac64d40..9b44fa8 100644 --- a/dist/npmts.watch.js +++ b/dist/npmts.watch.js @@ -1,7 +1,8 @@ "use strict"; -const plugins = require("./npmts.plugins"); -const promisechain = require("./npmts.promisechain"); const q = require("q"); +const smartchok = require("smartchok"); +const plugins = require("./npmts.plugins"); +const cli = require("./npmts.cli"); let npmtsSmartchok = null; exports.run = (configArg) => { let done = q.defer(); @@ -13,17 +14,18 @@ exports.run = (configArg) => { for (let key in configArg.testTs) { pathsToWatch.push(key); } - npmtsSmartchok = new plugins.smartchok.Smartchok(pathsToWatch); + npmtsSmartchok = new smartchok.Smartchok(pathsToWatch); npmtsSmartchok.getObservableFor('change').then((changeObservableArg) => { plugins.beautylog.info('now watching...'); changeObservableArg.subscribe(() => { - promisechain.run(configArg); + cli.run(); }); }); npmtsSmartchok.start(); done.resolve(configArg); } else { + plugins.beautylog.info('not watching'); done.resolve(configArg); } return done.promise; diff --git a/package.json b/package.json index b53539f..9cb5bd7 100644 --- a/package.json +++ b/package.json @@ -67,6 +67,7 @@ "smartpath": "3.2.5", "smartstream": "^1.0.5", "smartstring": "^2.0.17", + "smartsystem": "^1.0.9", "source-map-support": "^0.4.5", "tsn": "^2.0.11", "typedoc": "^0.5.0", diff --git a/ts/mod00/index.ts b/ts/mod00/index.ts new file mode 100644 index 0000000..63d719a --- /dev/null +++ b/ts/mod00/index.ts @@ -0,0 +1,27 @@ +/* ------------------------------------------ + * This module compiles TypeScript files + * -------------------------------------------- */ +import * as q from 'q' + +import { npmtsOra } from '../npmts.log' +import { INpmtsConfig } from '../npmts.config' + +import * as plugins from './mod00.plugins' + +import * as NpmtsAssets from './mod00.assets' +import * as NpmtsCheck from './mod00.check' +import * as NpmtsClean from './mod00.clean' +import * as NpmtsCompile from './mod00.compile' + +export let run = function(configArg: INpmtsConfig): q.Promise { + let done = q.defer() + npmtsOra.text('starting TypeScript Compilation') + NpmtsClean.run(configArg) + .then(NpmtsCheck.run) + .then(NpmtsCompile.run) + .then(NpmtsAssets.run) + .then(function(){ + done.resolve(configArg) + }) + return done.promise +} diff --git a/ts/npmts.assets.ts b/ts/mod00/mod00.assets.ts similarity index 81% rename from ts/npmts.assets.ts rename to ts/mod00/mod00.assets.ts index d154bd7..ba4bcb9 100644 --- a/ts/npmts.assets.ts +++ b/ts/mod00/mod00.assets.ts @@ -1,10 +1,10 @@ -import plugins = require('./npmts.plugins') -import paths = require('./npmts.paths') - import * as q from 'q' -import { npmtsOra } from './npmts.promisechain' -import { projectInfo } from './npmts.check' +import paths = require('../npmts.paths') +import { npmtsOra } from '../npmts.log' + +import plugins = require('./mod00.plugins') +import { projectInfo } from '../mod00/mod00.check' export var run = function(configArg){ let done = q.defer() diff --git a/ts/npmts.check.ts b/ts/mod00/mod00.check.ts similarity index 95% rename from ts/npmts.check.ts rename to ts/mod00/mod00.check.ts index 9ca19f4..c200a53 100644 --- a/ts/npmts.check.ts +++ b/ts/mod00/mod00.check.ts @@ -1,10 +1,10 @@ -import * as plugins from './npmts.plugins' -import * as paths from './npmts.paths' - import * as q from 'q' +import { ProjectinfoNpm } from 'projectinfo' -import { npmtsOra } from './npmts.promisechain' -import {ProjectinfoNpm} from 'projectinfo' +import * as paths from '../npmts.paths' +import { npmtsOra } from '../npmts.log' + +import * as plugins from './mod00.plugins' export let projectInfo: ProjectinfoNpm diff --git a/ts/npmts.clean.ts b/ts/mod00/mod00.clean.ts similarity index 89% rename from ts/npmts.clean.ts rename to ts/mod00/mod00.clean.ts index 3218350..d011f66 100644 --- a/ts/npmts.clean.ts +++ b/ts/mod00/mod00.clean.ts @@ -1,9 +1,9 @@ -import plugins = require('./npmts.plugins') -import paths = require('./npmts.paths') - import * as q from 'q' +import paths = require('../npmts.paths') -import { npmtsOra } from './npmts.promisechain' +import { npmtsOra } from '../npmts.log' + +import plugins = require('./mod00.plugins') /** * removes the dist directory which will be entirely rebuild diff --git a/ts/npmts.compile.ts b/ts/mod00/mod00.compile.ts similarity index 84% rename from ts/npmts.compile.ts rename to ts/mod00/mod00.compile.ts index ac536dd..3735f51 100644 --- a/ts/npmts.compile.ts +++ b/ts/mod00/mod00.compile.ts @@ -1,9 +1,9 @@ -import plugins = require('./npmts.plugins') -import paths = require('./npmts.paths') - import * as q from 'q' -import {npmtsOra} from './npmts.promisechain' +import * as paths from '../npmts.paths' +import { npmtsOra } from '../npmts.log' + +import * as plugins from './mod00.plugins' export let run = function (configArg) { let done = q.defer() diff --git a/ts/mod00/mod00.plugins.ts b/ts/mod00/mod00.plugins.ts new file mode 100644 index 0000000..2bd71d6 --- /dev/null +++ b/ts/mod00/mod00.plugins.ts @@ -0,0 +1,13 @@ +export * from '../npmts.plugins' + +import * as tsn from 'tsn' +import * as shelljs from 'shelljs' +import * as smartchok from 'smartchok' +import * as smartstream from 'smartstream' + +export { + tsn, + shelljs, + smartchok, + smartstream +} diff --git a/ts/npmts.typedoc.ts b/ts/mod01/index.ts similarity index 66% rename from ts/npmts.typedoc.ts rename to ts/mod01/index.ts index 272a1c1..f461e94 100644 --- a/ts/npmts.typedoc.ts +++ b/ts/mod01/index.ts @@ -1,12 +1,18 @@ -import plugins = require('./npmts.plugins') -import paths = require('./npmts.paths') -import { npmtsOra } from './npmts.promisechain' - +/* ------------------------------------------ + * This module creates TypeScript documentation + * -------------------------------------------- */ import * as q from 'q' -import { projectInfo } from './npmts.check' +import * as paths from '../npmts.paths' +import { npmtsOra } from '../npmts.log' +import { INpmtsConfig } from '../npmts.config' -let genTypeDoc = function (configArg) { +import * as plugins from './mod01.plugins' + + +import { projectInfo } from '../mod00/mod00.check' + +let genTypeDoc = function (configArg: INpmtsConfig) { let done = q.defer() npmtsOra.text('now generating ' + 'TypeDoc documentation'.yellow) plugins.beautylog.log('TypeDoc Output:') @@ -31,9 +37,11 @@ let genTypeDoc = function (configArg) { ]) localSmartstream.run().then( () => { + plugins.beautylog.ok('TypeDoc documentation generated!') done.resolve(configArg) }, (err) => { + plugins.beautylog.warn('TypeDoc documentation generation failed!') console.log(err) done.resolve(configArg) } @@ -41,8 +49,8 @@ let genTypeDoc = function (configArg) { return done.promise } -export let run = function (configArg) { - let done = q.defer() +export let run = function (configArg: INpmtsConfig) { + let done = q.defer() if (configArg.docs) { genTypeDoc(configArg) .then(() => { diff --git a/ts/mod01/mod01.plugins.ts b/ts/mod01/mod01.plugins.ts new file mode 100644 index 0000000..683ab72 --- /dev/null +++ b/ts/mod01/mod01.plugins.ts @@ -0,0 +1,9 @@ +export * from '../npmts.plugins' + +import * as gulp from 'gulp' +let gulpTypedoc = require('gulp-typedoc') + +export { + gulp, + gulpTypedoc +} diff --git a/ts/npmts.tests.ts b/ts/mod02/index.ts similarity index 89% rename from ts/npmts.tests.ts rename to ts/mod02/index.ts index d4fc8ed..4db70ed 100644 --- a/ts/npmts.tests.ts +++ b/ts/mod02/index.ts @@ -1,10 +1,13 @@ -import plugins = require('./npmts.plugins') -import paths = require('./npmts.paths') +/* ------------------------------------------ + * This module tests the compiled TypeScript files + * -------------------------------------------- */ +import plugins = require('./mod02.plugins') +import paths = require('../npmts.paths') import * as q from 'q' -import { npmtsOra } from './npmts.promisechain' -import { INpmtsConfig } from './npmts.options' +import { npmtsOra } from '../npmts.log' +import { INpmtsConfig } from '../npmts.config' /** * runs mocha @@ -43,6 +46,7 @@ let mocha = function (configArg: INpmtsConfig) { localSmartstream.run() .then(() => { done.resolve(configArg) }, (err) => { plugins.beautylog.error('Tests failed!') + console.log(err) if (configArg.watch) { done.resolve(configArg) } else { @@ -78,7 +82,7 @@ let coverage = function (configArg: INpmtsConfig) { } export let run = function (configArg: INpmtsConfig) { - let done = q.defer() + let done = q.defer() let config = configArg if (config.test === true) { npmtsOra.text('now starting tests') diff --git a/ts/mod02/mod02.plugins.ts b/ts/mod02/mod02.plugins.ts new file mode 100644 index 0000000..d8cdb31 --- /dev/null +++ b/ts/mod02/mod02.plugins.ts @@ -0,0 +1,19 @@ +export * from '../npmts.plugins' + +import * as gulp from 'gulp' +import * as gulpBabel from 'gulp-babel' +import * as gulpIstanbul from 'gulp-istanbul' +import * as gulpFunction from 'gulp-function' +let gulpInjectModules = require('gulp-inject-modules') +import * as gulpMocha from 'gulp-mocha' +import * as gulpSourcemaps from 'gulp-sourcemaps' + +export { + gulp, + gulpBabel, + gulpIstanbul, + gulpFunction, + gulpInjectModules, + gulpMocha, + gulpSourcemaps +} diff --git a/ts/npmts.cli.ts b/ts/npmts.cli.ts index 055cad0..03cf49f 100644 --- a/ts/npmts.cli.ts +++ b/ts/npmts.cli.ts @@ -1,7 +1,13 @@ +import * as q from 'q' + import * as plugins from './npmts.plugins' import * as paths from './npmts.paths' -import * as promisechain from './npmts.promisechain' -import * as q from 'q' +import * as NpmtsConfig from './npmts.config' +import * as NpmtsMods from './npmts.mods' +import * as NpmtsWatch from './npmts.watch' +import * as NpmtsShip from './npmts.ship' + +import { npmtsOra } from './npmts.log' export let run = () => { let done = q.defer() @@ -11,8 +17,43 @@ export let run = () => { .then((argvArg) => { plugins.beautylog.figletSync('NPMTS') plugins.beautylog.info('npmts version: ' + npmtsProjectInfo.version) - promisechain.run(argvArg).catch((err) => { console.log(err) }) + return NpmtsConfig.run(argvArg) }) + .then((configArg: NpmtsConfig.INpmtsConfig) => { + let done = q.defer() + npmtsOra.start('loading additional modules...') + NpmtsMods.mod00.load() + .then((mod00) => { + return mod00.run(configArg) + }) + .then(configArg => { + let done = q.defer() + NpmtsMods.mod01.load() + .then(mod01 => { + return mod01.run(configArg) + }) + .then(configArg => { + done.resolve(configArg) + }) + return done.promise + }) + .then(configArg => { + let done = q.defer() + NpmtsMods.mod02.load() + .then(mod02 => { + return mod02.run(configArg) + }) + .then(configArg => { + done.resolve(configArg) + }) + return done.promise + }) + .then(NpmtsWatch.run) + .then(NpmtsShip.run) + + return done.promise + }) + .catch((err) => { console.log(err) }) npmtsCli.addVersion(npmtsProjectInfo.version) npmtsCli.startParse() return done.promise diff --git a/ts/npmts.options.ts b/ts/npmts.config.ts similarity index 97% rename from ts/npmts.options.ts rename to ts/npmts.config.ts index 67e3a6c..560b42d 100644 --- a/ts/npmts.options.ts +++ b/ts/npmts.config.ts @@ -3,7 +3,7 @@ import paths = require('./npmts.paths') import * as q from 'q' -import { npmtsOra } from './npmts.promisechain' +import { npmtsOra } from './npmts.log' export type npmtsMode = 'default' | 'custom' diff --git a/ts/npmts.log.ts b/ts/npmts.log.ts new file mode 100644 index 0000000..a92cae1 --- /dev/null +++ b/ts/npmts.log.ts @@ -0,0 +1,2 @@ +import {Ora} from 'beautylog' +export let npmtsOra = new Ora('setting up TaskChain','cyan') diff --git a/ts/npmts.mods.ts b/ts/npmts.mods.ts new file mode 100644 index 0000000..b6db6a5 --- /dev/null +++ b/ts/npmts.mods.ts @@ -0,0 +1,11 @@ +import * as plugins from './npmts.plugins' + +import { LazyModule } from 'smartsystem' + +import * as _mod00 from './mod00/index' +import * as _mod01 from './mod01/index' +import * as _mod02 from './mod02/index' + +export let mod00 = new LazyModule('./mod00/index',__dirname) +export let mod01 = new LazyModule('./mod01/index',__dirname) +export let mod02 = new LazyModule('./mod02/index',__dirname) diff --git a/ts/npmts.plugins.ts b/ts/npmts.plugins.ts index 26df549..ad994ec 100644 --- a/ts/npmts.plugins.ts +++ b/ts/npmts.plugins.ts @@ -1,22 +1,11 @@ import 'typings-global' import * as beautylog from 'beautylog' let depcheck = require('depcheck') -import * as gulp from 'gulp' - -import * as gulpBabel from 'gulp-babel' -import * as gulpIstanbul from 'gulp-istanbul' -import * as gulpFunction from 'gulp-function' -let gulpInjectModules = require('gulp-inject-modules') -import * as gulpMocha from 'gulp-mocha' -import * as gulpSourcemaps from 'gulp-sourcemaps' -let gulpTypedoc = require('gulp-typedoc') import * as lodash from 'lodash' import * as npmextra from 'npmextra' import * as projectinfo from 'projectinfo' import * as path from 'path' -import * as shelljs from 'shelljs' -import * as smartchok from 'smartchok' import * as smartcli from 'smartcli' import * as smartcov from 'smartcov' import * as smartenv from 'smartenv' @@ -24,26 +13,16 @@ import * as smartfile from 'smartfile' import * as smartpath from 'smartpath' import * as smartstream from 'smartstream' import * as smartstring from 'smartstring' +import * as smartsystem from 'smartsystem' export let sourceMapSupport = require('source-map-support').install() // display errors correctly during testing -import * as tsn from 'tsn' export { beautylog, depcheck, - gulp, - gulpBabel, - gulpFunction, - gulpInjectModules, - gulpIstanbul, - gulpMocha, - gulpSourcemaps, - gulpTypedoc, lodash, npmextra, projectinfo, path, - shelljs, - smartchok, smartcli, smartcov, smartenv, @@ -51,5 +30,5 @@ export { smartpath, smartstream, smartstring, - tsn + smartsystem } diff --git a/ts/npmts.promisechain.ts b/ts/npmts.promisechain.ts deleted file mode 100644 index debd344..0000000 --- a/ts/npmts.promisechain.ts +++ /dev/null @@ -1,52 +0,0 @@ -import plugins = require('./npmts.plugins') -import {Ora} from 'beautylog' - -import * as q from 'q' - -export let npmtsOra = new Ora('setting up TaskChain','cyan') - -import * as NpmtsAssets from './npmts.assets' -import * as NpmtsCheck from './npmts.check' -import * as NpmtsClean from './npmts.clean' -import * as NpmtsCompile from './npmts.compile' -import * as NpmtsTypeDoc from './npmts.typedoc' -import * as NpmtsOptions from './npmts.options' -import * as NpmtsTests from './npmts.tests' -import * as NpmtsWatch from './npmts.watch' - -export let run = function(argvArg){ - let done = q.defer() - npmtsOra.start() - NpmtsOptions.run(argvArg) - .then(NpmtsClean.run) - .then(NpmtsCheck.run) - .then(NpmtsCompile.run) - .then(NpmtsAssets.run) - .then(NpmtsTypeDoc.run) - .then(NpmtsTests.run) - .then(NpmtsWatch.run) - .then(function(configArg){ - let shipString = '' + - '\n' + - '\n' + - ' # # ( )\n' + - ' ___#_#___|__\n' + - ' _ |____________| _\n' + - ' _=====| | | | | |==== _\n' + - ' =====| |.---------------------------. | |====\n' + - " <--------------------' . . . . . . . . '--------------/\n" + - ' \\ /\n' + - ' \\___________________________________________________________/\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + - ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' - if (process.env.CI) { - console.log(shipString) - plugins.beautylog.success('READY TO SHIP!') - } else { - plugins.beautylog.success('Done!') - } - done.resolve(configArg) - }) - return done.promise -} diff --git a/ts/npmts.ship.ts b/ts/npmts.ship.ts new file mode 100644 index 0000000..b779e8c --- /dev/null +++ b/ts/npmts.ship.ts @@ -0,0 +1,30 @@ +import * as q from 'q' + +import * as plugins from './npmts.plugins' + +import { INpmtsConfig } from './npmts.config' + +export let run = (configArg: INpmtsConfig) => { + let done = q.defer() + let shipString = '' + + '\n' + + '\n' + + ' # # ( )\n' + + ' ___#_#___|__\n' + + ' _ |____________| _\n' + + ' _=====| | | | | |==== _\n' + + ' =====| |.---------------------------. | |====\n' + + " <--------------------' . . . . . . . . '--------------/\n" + + ' \\ /\n' + + ' \\___________________________________________________________/\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + + ' wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww\n' + if (process.env.CI) { + console.log(shipString) + plugins.beautylog.success('READY TO SHIP!') + } else { + plugins.beautylog.success('Done!') + } + done.resolve(configArg) +} diff --git a/ts/npmts.watch.ts b/ts/npmts.watch.ts index 2602b07..f11e2ac 100644 --- a/ts/npmts.watch.ts +++ b/ts/npmts.watch.ts @@ -1,11 +1,12 @@ -import * as plugins from './npmts.plugins' -import * as promisechain from './npmts.promisechain' - import * as q from 'q' +import * as smartchok from 'smartchok' -import { INpmtsConfig } from './npmts.options' +import * as plugins from './npmts.plugins' +import * as cli from './npmts.cli' -let npmtsSmartchok: plugins.smartchok.Smartchok = null +import { INpmtsConfig } from './npmts.config' + +let npmtsSmartchok: smartchok.Smartchok = null export let run = (configArg: INpmtsConfig) => { let done = q.defer() if (configArg.watch && npmtsSmartchok === null) { @@ -16,16 +17,17 @@ export let run = (configArg: INpmtsConfig) => { for (let key in configArg.testTs) { pathsToWatch.push(key) } - npmtsSmartchok = new plugins.smartchok.Smartchok(pathsToWatch) + npmtsSmartchok = new smartchok.Smartchok(pathsToWatch) npmtsSmartchok.getObservableFor('change').then((changeObservableArg) => { plugins.beautylog.info('now watching...') changeObservableArg.subscribe(() => { - promisechain.run(configArg) + cli.run() }) }) npmtsSmartchok.start() done.resolve(configArg) } else { + plugins.beautylog.info('not watching') done.resolve(configArg) } return done.promise