/* ------------------------------------------ * This module compiles the module's TypeScript files * Note: Test files are only compiled in memory * -------------------------------------------- */ import * as q from 'smartq' import { INpmtsConfig } from '../npmts.config' import * as plugins from './mod.plugins' import * as NpmtsAssets from './mod.assets' import * as NpmtsCheck from './mod.check' import * as NpmtsClean from './mod.clean' import * as NpmtsCompile from './mod.compile' export let run = function (configArg: INpmtsConfig): Promise { let done = q.defer() plugins.beautylog.ora.text('starting TypeScript Compilation') NpmtsClean.run(configArg) .then(NpmtsCheck.run) .then(NpmtsCompile.run) .then(NpmtsAssets.run) .then(function () { done.resolve(configArg) }) return done.promise }