2016-03-21 00:07:34 +00:00
|
|
|
"use strict";
|
2016-09-14 11:16:36 +00:00
|
|
|
require("typings-global");
|
2016-09-22 21:23:16 +00:00
|
|
|
const plugins = require("./npmts.plugins");
|
|
|
|
const paths = require("./npmts.paths");
|
|
|
|
const npmts_promisechain_1 = require("./npmts.promisechain");
|
2016-09-29 14:19:49 +00:00
|
|
|
/**
|
|
|
|
* removes the dist directory which will be entirely rebuild
|
|
|
|
*/
|
2016-09-22 21:23:16 +00:00
|
|
|
let removeDist = function () {
|
2016-09-06 15:21:25 +00:00
|
|
|
npmts_promisechain_1.npmtsOra.text('cleaning dist folder');
|
2016-07-01 00:28:34 +00:00
|
|
|
return plugins.smartfile.fs.remove(paths.distDir);
|
2016-05-19 20:11:18 +00:00
|
|
|
};
|
2016-09-29 14:19:49 +00:00
|
|
|
/**
|
|
|
|
* remove .d.ts files from testDirctory
|
|
|
|
*/
|
|
|
|
let removeTestDeclarations = function () {
|
|
|
|
let done = plugins.q.defer();
|
|
|
|
plugins.smartfile.fs.listFileTree('./test/', '**/*.d.ts').then(fileArray => {
|
|
|
|
let fileArrayToRemove = plugins.smartpath.transform.toAbsolute(fileArray, process.cwd() + '//test/');
|
|
|
|
plugins.smartfile.fs.removeManySync(fileArrayToRemove);
|
|
|
|
done.resolve();
|
|
|
|
});
|
|
|
|
};
|
|
|
|
/**
|
|
|
|
* remove old pages
|
|
|
|
*/
|
2016-09-22 21:23:16 +00:00
|
|
|
let removePages = function () {
|
2016-09-06 15:21:25 +00:00
|
|
|
npmts_promisechain_1.npmtsOra.text('cleaning pages folder');
|
2016-08-30 15:57:51 +00:00
|
|
|
return plugins.smartfile.fs.remove(paths.pagesDir);
|
2016-05-19 20:11:18 +00:00
|
|
|
};
|
2016-03-21 00:07:34 +00:00
|
|
|
exports.run = function (configArg) {
|
2016-09-06 15:21:25 +00:00
|
|
|
npmts_promisechain_1.npmtsOra.text('cleaning up from previous builds...');
|
2016-09-22 21:23:16 +00:00
|
|
|
let done = plugins.q.defer();
|
2016-05-19 20:11:18 +00:00
|
|
|
removeDist()
|
2016-09-29 14:19:49 +00:00
|
|
|
.then(removeTestDeclarations)
|
2016-08-30 15:57:51 +00:00
|
|
|
.then(removePages)
|
2016-03-21 00:07:34 +00:00
|
|
|
.then(function () {
|
2016-09-06 15:21:25 +00:00
|
|
|
plugins.beautylog.ok('Cleaned up from previous builds!');
|
2016-03-21 00:07:34 +00:00
|
|
|
done.resolve(configArg);
|
|
|
|
});
|
|
|
|
return done.promise;
|
|
|
|
};
|