Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
72297d2f58 | |||
71b900ac47 | |||
f6d06edced | |||
3e98005843 | |||
7c4673a5b6 | |||
99ec82ab55 | |||
1f0c1964dd | |||
828229872d | |||
0ff482bd01 | |||
39c8da4f74 | |||
fcd2029744 | |||
d89e0a13d5 | |||
64c7815bca | |||
f3e69eb15e | |||
386e4c07c6 | |||
82557c96d6 | |||
c94d89fa8a | |||
639a5eebea | |||
fb88d3384e |
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"compilerOptions": {
|
|
||||||
"esModuleInterop": true,
|
|
||||||
"lib": ["es2015"],
|
|
||||||
"target": "ES2017"
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,3 +0,0 @@
|
|||||||
[Trash Info]
|
|
||||||
Path=/home/coder/project/tsconfig.json
|
|
||||||
DeletionDate=2019-05-08T21:54:46.502Z
|
|
75
package-lock.json
generated
75
package-lock.json
generated
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@gitzone/tswatch",
|
"name": "@gitzone/tswatch",
|
||||||
"version": "1.0.8",
|
"version": "1.0.18",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -149,19 +149,19 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@gitzone/tstest": {
|
"@gitzone/tstest": {
|
||||||
"version": "1.0.20",
|
"version": "1.0.24",
|
||||||
"resolved": "https://verdaccio.lossless.one/@gitzone%2ftstest/-/tstest-1.0.20.tgz",
|
"resolved": "https://verdaccio.lossless.one/@gitzone%2ftstest/-/tstest-1.0.24.tgz",
|
||||||
"integrity": "sha512-nEHRDpmPOns47/LIJQ+y+CJDzjiS17UKJpl7PYok4EgNJJGqJUN5ilz2KVLPDcRd/7JiB7JYKujlf2UgFKadgQ==",
|
"integrity": "sha512-HFHLxhXFhhY7nn7H7dxfjy/6WiUGCw35L5Do/ZajCAn/xAWiqnppW1aIp0LOOaWeZ7J5fH7xP88TjsGpwR+MRA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@gitzone/tsrun": "^1.2.5",
|
"@gitzone/tsrun": "^1.2.6",
|
||||||
"@pushrocks/consolecolor": "^2.0.1",
|
"@pushrocks/consolecolor": "^2.0.1",
|
||||||
"@pushrocks/smartfile": "^7.0.2",
|
"@pushrocks/smartfile": "^7.0.2",
|
||||||
"@pushrocks/smartlog": "^2.0.19",
|
"@pushrocks/smartlog": "^2.0.19",
|
||||||
"@pushrocks/smartpromise": "^3.0.2",
|
"@pushrocks/smartpromise": "^3.0.2",
|
||||||
"@pushrocks/smartshell": "^2.0.13",
|
"@pushrocks/smartshell": "^2.0.22",
|
||||||
"@types/figures": "^2.0.0",
|
"@types/figures": "^3.0.1",
|
||||||
"figures": "^2.0.0"
|
"figures": "^3.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@pushrocks/smartpromise": {
|
"@pushrocks/smartpromise": {
|
||||||
@@ -275,6 +275,16 @@
|
|||||||
"@pushrocks/smartpromise": "^2.0.5"
|
"@pushrocks/smartpromise": "^2.0.5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"@pushrocks/smartexit": {
|
||||||
|
"version": "1.0.15",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartexit/-/smartexit-1.0.15.tgz",
|
||||||
|
"integrity": "sha512-pvJBmF13spcDN+O8rSpYlKBOObyfW+omZKQr3hhSMT1VHMEYV8e/njsA19Cg4C2DfLPv+cRFFgPn27zJpleRsQ==",
|
||||||
|
"requires": {
|
||||||
|
"@pushrocks/lik": "^3.0.5",
|
||||||
|
"@pushrocks/smartdelay": "^2.0.3",
|
||||||
|
"@pushrocks/smartlog-source-ora": "^1.0.7"
|
||||||
|
}
|
||||||
|
},
|
||||||
"@pushrocks/smartfile": {
|
"@pushrocks/smartfile": {
|
||||||
"version": "7.0.2",
|
"version": "7.0.2",
|
||||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartfile/-/smartfile-7.0.2.tgz",
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartfile/-/smartfile-7.0.2.tgz",
|
||||||
@@ -324,6 +334,15 @@
|
|||||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartlog-interfaces/-/smartlog-interfaces-2.0.5.tgz",
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartlog-interfaces/-/smartlog-interfaces-2.0.5.tgz",
|
||||||
"integrity": "sha512-eLNlRpDwy3E+6v/B6fo/NiAo+UxBO3SxKgIIsgUGbWfVpsyUi0PG2xfVCdhJlhL1AsRRvKglfHSOB8qKE+XCLw=="
|
"integrity": "sha512-eLNlRpDwy3E+6v/B6fo/NiAo+UxBO3SxKgIIsgUGbWfVpsyUi0PG2xfVCdhJlhL1AsRRvKglfHSOB8qKE+XCLw=="
|
||||||
},
|
},
|
||||||
|
"@pushrocks/smartlog-source-ora": {
|
||||||
|
"version": "1.0.7",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartlog-source-ora/-/smartlog-source-ora-1.0.7.tgz",
|
||||||
|
"integrity": "sha512-lgpZ2rBLt9UGIdMb43cB9rxwtbu4RaNmdQnAYfNGxizGPuNtXw3WAzdHyS5tEJFZAbvMOiwNguQ6Bk1i2gaedw==",
|
||||||
|
"requires": {
|
||||||
|
"@pushrocks/smartlog-interfaces": "^2.0.5",
|
||||||
|
"ora": "^3.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"@pushrocks/smartparam": {
|
"@pushrocks/smartparam": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/@pushrocks/smartparam/-/smartparam-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/@pushrocks/smartparam/-/smartparam-1.0.4.tgz",
|
||||||
@@ -366,13 +385,22 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@pushrocks/smartshell": {
|
"@pushrocks/smartshell": {
|
||||||
"version": "2.0.13",
|
"version": "2.0.22",
|
||||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartshell/-/smartshell-2.0.13.tgz",
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartshell/-/smartshell-2.0.22.tgz",
|
||||||
"integrity": "sha512-jLfAhLxMVKAScKdln1QrQqBI7A7INhMNHIq28fJEBi0BNDUS0eerw4yMAnR4CRmcrh4xFp1z+ju1kaPO3I/4MA==",
|
"integrity": "sha512-ChlRBOAhvSmxA6xfNoc1BHISV78IjvKwBP3w70r80rpQ09Bw/9ajlmGLmCDqe9aDqlaHe9HNTEPp68gNg69NBA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@pushrocks/smartpromise": "^2.0.5",
|
"@pushrocks/smartdelay": "^2.0.3",
|
||||||
|
"@pushrocks/smartexit": "^1.0.15",
|
||||||
|
"@pushrocks/smartpromise": "^3.0.2",
|
||||||
"@types/which": "^1.3.1",
|
"@types/which": "^1.3.1",
|
||||||
"which": "^1.3.1"
|
"which": "^1.3.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@pushrocks/smartpromise": {
|
||||||
|
"version": "3.0.2",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpromise/-/smartpromise-3.0.2.tgz",
|
||||||
|
"integrity": "sha512-jmrJMUEmBCWChWK8CIcx4Vw3wv/8OgVNmkaxJrbs+WMaoRUfJtpWWJfrAwwHWt9ZXJbarJ+CwfwfYiiZXymndQ=="
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@pushrocks/smartspawn": {
|
"@pushrocks/smartspawn": {
|
||||||
@@ -474,10 +502,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/figures": {
|
"@types/figures": {
|
||||||
"version": "2.0.0",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/figures/-/figures-2.0.0.tgz",
|
"resolved": "https://verdaccio.lossless.one/@types%2ffigures/-/figures-3.0.1.tgz",
|
||||||
"integrity": "sha512-mcRgJ+ncKuNI+Dwac7omO18B8C8u+YBS+AU/oyLhEyjAnT3cUUThhHgZpbiIvu5ZqSvdD30BXtrqg9nxc3OKMg==",
|
"integrity": "sha512-2OXodKWdNhYl+S+wCvlafqJbfMIVDfQZYX2wRyUOcRiEQpeJ9zU6cT7d+RbMpjS+/vmQ2cAUUL8gyGy1YxtLPw==",
|
||||||
"dev": true
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"figures": "*"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@types/form-data": {
|
"@types/form-data": {
|
||||||
"version": "2.2.1",
|
"version": "2.2.1",
|
||||||
@@ -507,9 +538,9 @@
|
|||||||
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
|
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "12.0.0",
|
"version": "12.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.0.tgz",
|
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-12.0.2.tgz",
|
||||||
"integrity": "sha512-Jrb/x3HT4PTJp6a4avhmJCDEVrPdqLfl3e8GGMbpkGGdwAV5UGlIs4vVEfsHHfylZVOKZWpOqmqFH8CbfOZ6kg=="
|
"integrity": "sha512-5tabW/i+9mhrfEOUcLDu2xBPsHJ+X5Orqy9FKpale3SjDA17j5AEpYq5vfy3oAeAHGcvANRCO3NV3d2D6q3NiA=="
|
||||||
},
|
},
|
||||||
"@types/vinyl": {
|
"@types/vinyl": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
@@ -912,9 +943,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"figures": {
|
"figures": {
|
||||||
"version": "2.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
|
"resolved": "https://verdaccio.lossless.one/figures/-/figures-3.0.0.tgz",
|
||||||
"integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
|
"integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"escape-string-regexp": "^1.0.5"
|
"escape-string-regexp": "^1.0.5"
|
||||||
|
11
package.json
11
package.json
@@ -1,12 +1,15 @@
|
|||||||
{
|
{
|
||||||
"name": "@gitzone/tswatch",
|
"name": "@gitzone/tswatch",
|
||||||
"version": "1.0.8",
|
"version": "1.0.18",
|
||||||
"private": false,
|
"private": false,
|
||||||
"description": "watch typescript projects during development",
|
"description": "watch typescript projects during development",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"typings": "dist/index.d.ts",
|
"typings": "dist/index.d.ts",
|
||||||
"author": "Lossless GmbH",
|
"author": "Lossless GmbH",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"bin": {
|
||||||
|
"tswatch": "cli.js"
|
||||||
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "(tstest test/)",
|
"test": "(tstest test/)",
|
||||||
"build": "(tsbuild)",
|
"build": "(tsbuild)",
|
||||||
@@ -14,9 +17,9 @@
|
|||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@gitzone/tsbuild": "^2.1.11",
|
"@gitzone/tsbuild": "^2.1.11",
|
||||||
"@gitzone/tstest": "^1.0.20",
|
"@gitzone/tstest": "^1.0.24",
|
||||||
"@pushrocks/tapbundle": "^3.0.9",
|
"@pushrocks/tapbundle": "^3.0.9",
|
||||||
"@types/node": "^12.0.0",
|
"@types/node": "^12.0.2",
|
||||||
"tslint": "^5.16.0",
|
"tslint": "^5.16.0",
|
||||||
"tslint-config-prettier": "^1.18.0"
|
"tslint-config-prettier": "^1.18.0"
|
||||||
},
|
},
|
||||||
@@ -29,6 +32,6 @@
|
|||||||
"@pushrocks/smartdelay": "^2.0.3",
|
"@pushrocks/smartdelay": "^2.0.3",
|
||||||
"@pushrocks/smartlog": "^2.0.19",
|
"@pushrocks/smartlog": "^2.0.19",
|
||||||
"@pushrocks/smartlog-destination-local": "^7.0.5",
|
"@pushrocks/smartlog-destination-local": "^7.0.5",
|
||||||
"@pushrocks/smartshell": "^2.0.13"
|
"@pushrocks/smartshell": "^2.0.22"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -9,46 +9,53 @@ export class TsWatch {
|
|||||||
public watcherMap = new plugins.lik.Objectmap<Watcher>();
|
public watcherMap = new plugins.lik.Objectmap<Watcher>();
|
||||||
|
|
||||||
constructor(watchmodeArg: interfaces.TWatchModes) {
|
constructor(watchmodeArg: interfaces.TWatchModes) {
|
||||||
this.watchmode = watchmodeArg;
|
this.watchmode = watchmodeArg;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* starts the TsWatch instance
|
* starts the TsWatch instance
|
||||||
*/
|
*/
|
||||||
public async start () {
|
public async start() {
|
||||||
switch (this.watchmode) {
|
switch (this.watchmode) {
|
||||||
case 'test':
|
case 'test':
|
||||||
const tsWatchInstanceTest = new Watcher({
|
this.watcherMap.add(new Watcher({
|
||||||
filePathToWatch: paths.cwd,
|
filePathToWatch: paths.cwd,
|
||||||
commandToExecute: 'npm run test2',
|
commandToExecute: 'npm run test2',
|
||||||
timeout: null
|
timeout: null
|
||||||
});
|
}));
|
||||||
this.watcherMap.add(tsWatchInstanceTest);
|
|
||||||
break;
|
break;
|
||||||
case 'gitzone_npm':
|
case 'gitzone_npm':
|
||||||
const tsWatchInstanceGitzoneNpm = new Watcher({
|
this.watcherMap.add(new Watcher({
|
||||||
filePathToWatch: paths.cwd,
|
filePathToWatch: paths.cwd,
|
||||||
commandToExecute: 'npm run test',
|
commandToExecute: 'npm run test',
|
||||||
timeout: null
|
timeout: null
|
||||||
});
|
}));
|
||||||
this.watcherMap.add(tsWatchInstanceGitzoneNpm);
|
|
||||||
break;
|
break;
|
||||||
case 'gitzone_website':
|
case 'gitzone_website':
|
||||||
const tsWatchInstanceGitzoneWebsite = new Watcher({
|
// server directory
|
||||||
filePathToWatch: paths.cwd,
|
this.watcherMap.add(
|
||||||
commandToExecute: 'npm run test',
|
new Watcher({
|
||||||
|
filePathToWatch: plugins.path.join(paths.cwd, './ts/'),
|
||||||
|
commandToExecute: 'npm run start',
|
||||||
|
timeout: null
|
||||||
|
})
|
||||||
|
);
|
||||||
|
|
||||||
|
// client directory
|
||||||
|
this.watcherMap.add(new Watcher({
|
||||||
|
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
||||||
|
commandToExecute: 'npm run build',
|
||||||
timeout: null
|
timeout: null
|
||||||
});
|
}));
|
||||||
this.watcherMap.add(tsWatchInstanceGitzoneWebsite);
|
|
||||||
break;
|
break;
|
||||||
case 'echoSomething':
|
case 'echoSomething':
|
||||||
const tsWatchInstanceEchoSomething = new Watcher({
|
const tsWatchInstanceEchoSomething = new Watcher({
|
||||||
filePathToWatch: paths.cwd,
|
filePathToWatch: paths.cwd,
|
||||||
commandToExecute: 'npm -v',
|
commandToExecute: 'npm -v',
|
||||||
timeout: null
|
timeout: null
|
||||||
});
|
});
|
||||||
this.watcherMap.add(tsWatchInstanceEchoSomething);
|
this.watcherMap.add(tsWatchInstanceEchoSomething);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -60,9 +67,9 @@ export class TsWatch {
|
|||||||
/**
|
/**
|
||||||
* stops the execution of any active Watchers
|
* stops the execution of any active Watchers
|
||||||
*/
|
*/
|
||||||
public async stop () {
|
public async stop() {
|
||||||
this.watcherMap.forEach(async watcher => {
|
this.watcherMap.forEach(async watcher => {
|
||||||
await watcher.stop();
|
await watcher.stop();
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -90,7 +90,7 @@ export class Watcher {
|
|||||||
*/
|
*/
|
||||||
public async stop() {
|
public async stop() {
|
||||||
await this.smartchokWatcher.stop();
|
await this.smartchokWatcher.stop();
|
||||||
if (this.currentExecution) {
|
if (this.currentExecution && !this.currentExecution.childProcess.killed) {
|
||||||
process.kill(-this.currentExecution.childProcess.pid);
|
process.kill(-this.currentExecution.childProcess.pid);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -14,4 +14,10 @@ tswatchCli.addCommand('test').subscribe(async argvArg => {
|
|||||||
await tsWatch.start();
|
await tsWatch.start();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
tswatchCli.addCommand('website').subscribe(async argvArg => {
|
||||||
|
logger.log('info', `running watch task for a gitzone website project`);
|
||||||
|
const tsWatch = new TsWatch('gitzone_website');
|
||||||
|
await tsWatch.start();
|
||||||
|
});
|
||||||
|
|
||||||
tswatchCli.startParse();
|
tswatchCli.startParse();
|
||||||
|
Reference in New Issue
Block a user