@git.zone/tswatch 2.0.25 → 2.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/interfaces/interfaces.watchmodes.d.ts +1 -1
- package/dist_ts/tswatch.classes.tswatch.js +100 -67
- package/dist_ts/tswatch.cli.js +5 -5
- package/dist_ts/tswatch.plugins.d.ts +2 -1
- package/dist_ts/tswatch.plugins.js +3 -2
- package/package.json +6 -5
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/interfaces/interfaces.watchmodes.ts +5 -5
- package/ts/tswatch.classes.tswatch.ts +120 -79
- package/ts/tswatch.cli.ts +4 -4
- package/ts/tswatch.plugins.ts +2 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/tswatch',
|
|
6
|
-
version: '2.0.
|
|
6
|
+
version: '2.0.27',
|
|
7
7
|
description: 'watch typescript projects during development'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxtQkFBbUI7SUFDekIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLDhDQUE4QztDQUM1RCxDQUFBIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export type TWatchModes = 'test' | '
|
|
1
|
+
export type TWatchModes = 'test' | 'node' | 'service' | 'element' | 'website' | 'echo';
|
|
@@ -15,95 +15,128 @@ export class TsWatch {
|
|
|
15
15
|
const htmlHandler = new plugins.tsbundle.HtmlHandler();
|
|
16
16
|
switch (this.watchmode) {
|
|
17
17
|
case 'test':
|
|
18
|
+
/**
|
|
19
|
+
* this strategy runs test whenever there is a change in the ts directory
|
|
20
|
+
*/
|
|
18
21
|
this.watcherMap.add(new Watcher({
|
|
19
22
|
filePathToWatch: paths.cwd,
|
|
20
23
|
commandToExecute: 'npm run test2',
|
|
21
24
|
timeout: null,
|
|
22
25
|
}));
|
|
23
26
|
break;
|
|
24
|
-
case '
|
|
27
|
+
case 'node':
|
|
25
28
|
this.watcherMap.add(new Watcher({
|
|
26
29
|
filePathToWatch: paths.cwd,
|
|
27
30
|
commandToExecute: 'npm run test',
|
|
28
31
|
timeout: null,
|
|
29
32
|
}));
|
|
30
33
|
break;
|
|
31
|
-
case '
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
34
|
+
case 'element':
|
|
35
|
+
(async () => {
|
|
36
|
+
/**
|
|
37
|
+
* this strategy runs a standard server and bundles the ts files to a dist_watch directory
|
|
38
|
+
*/
|
|
39
|
+
// lets create a standard server
|
|
40
|
+
console.log('bundling TypeScript files to "dist_watch" Note: This is for development only!');
|
|
41
|
+
this.typedserver = new plugins.typedserver.TypedServer({
|
|
42
|
+
cors: true,
|
|
43
|
+
injectReload: true,
|
|
44
|
+
serveDir: plugins.path.join(paths.cwd, './dist_watch/'),
|
|
45
|
+
port: 3002,
|
|
46
|
+
enableCompression: true,
|
|
47
|
+
preferredCompressionMethod: 'gzip',
|
|
45
48
|
});
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
|
50
|
-
functionToCall: async () => {
|
|
51
|
-
await bundleAndReloadElement();
|
|
52
|
-
},
|
|
53
|
-
timeout: null,
|
|
54
|
-
}));
|
|
55
|
-
this.watcherMap.add(new Watcher({
|
|
56
|
-
filePathToWatch: plugins.path.join(paths.cwd, './html/'),
|
|
57
|
-
functionToCall: async () => {
|
|
58
|
-
await htmlHandler.processHtml({
|
|
59
|
-
from: plugins.path.join(paths.cwd, './html/index.html'),
|
|
60
|
-
to: plugins.path.join(paths.cwd, './dist_watch/index.html'),
|
|
61
|
-
minify: false,
|
|
49
|
+
const bundleAndReloadElement = async () => {
|
|
50
|
+
await tsbundle.build(paths.cwd, './html/index.ts', './dist_watch/bundle.js', {
|
|
51
|
+
bundler: 'esbuild',
|
|
62
52
|
});
|
|
63
|
-
await
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
53
|
+
await this.typedserver.reload();
|
|
54
|
+
};
|
|
55
|
+
this.watcherMap.add(new Watcher({
|
|
56
|
+
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
|
57
|
+
functionToCall: async () => {
|
|
58
|
+
await bundleAndReloadElement();
|
|
59
|
+
},
|
|
60
|
+
timeout: null,
|
|
61
|
+
}));
|
|
62
|
+
// lets get the other ts folders
|
|
63
|
+
let tsfolders = await plugins.smartfile.fs.listFolders(paths.cwd);
|
|
64
|
+
tsfolders = tsfolders.filter((itemArg) => itemArg.startsWith('ts') && itemArg !== 'ts_web');
|
|
65
|
+
const smartshellInstance = new plugins.smartshell.Smartshell({
|
|
66
|
+
executor: 'bash',
|
|
77
67
|
});
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
68
|
+
for (const tsfolder of tsfolders) {
|
|
69
|
+
this.watcherMap.add(new Watcher({
|
|
70
|
+
filePathToWatch: plugins.path.join(paths.cwd, `./${tsfolder}/`),
|
|
71
|
+
functionToCall: async () => {
|
|
72
|
+
await smartshellInstance.exec(`npm run build`);
|
|
73
|
+
await this.typedserver.reload();
|
|
74
|
+
},
|
|
75
|
+
timeout: null,
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
this.watcherMap.add(new Watcher({
|
|
79
|
+
filePathToWatch: plugins.path.join(paths.cwd, './html/'),
|
|
80
|
+
functionToCall: async () => {
|
|
81
|
+
await htmlHandler.processHtml({
|
|
82
|
+
from: plugins.path.join(paths.cwd, './html/index.html'),
|
|
83
|
+
to: plugins.path.join(paths.cwd, './dist_watch/index.html'),
|
|
84
|
+
minify: false,
|
|
85
|
+
});
|
|
86
|
+
await bundleAndReloadElement();
|
|
87
|
+
},
|
|
88
|
+
timeout: null,
|
|
89
|
+
}));
|
|
90
|
+
})();
|
|
91
|
+
break;
|
|
92
|
+
case 'website':
|
|
93
|
+
(async () => {
|
|
94
|
+
const bundleAndReloadWebsite = async () => {
|
|
95
|
+
await tsbundle.build(paths.cwd, './ts_web/index.ts', './dist_serve/bundle.js', {
|
|
96
|
+
bundler: 'esbuild',
|
|
93
97
|
});
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
+
};
|
|
99
|
+
let tsfolders = await plugins.smartfile.fs.listFolders(paths.cwd);
|
|
100
|
+
tsfolders = tsfolders.filter((itemArg) => itemArg.startsWith('ts') && itemArg !== 'ts_web');
|
|
101
|
+
const smartshellInstance = new plugins.smartshell.Smartshell({
|
|
102
|
+
executor: 'bash',
|
|
103
|
+
});
|
|
104
|
+
for (const tsfolder of tsfolders) {
|
|
105
|
+
this.watcherMap.add(new Watcher({
|
|
106
|
+
filePathToWatch: plugins.path.join(paths.cwd, `./${tsfolder}/`),
|
|
107
|
+
commandToExecute: `npm run startTs`,
|
|
108
|
+
timeout: null,
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
111
|
+
this.watcherMap.add(new Watcher({
|
|
112
|
+
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
|
113
|
+
functionToCall: async () => {
|
|
114
|
+
await bundleAndReloadWebsite();
|
|
115
|
+
},
|
|
116
|
+
timeout: null,
|
|
117
|
+
}));
|
|
118
|
+
this.watcherMap.add(new Watcher({
|
|
119
|
+
filePathToWatch: plugins.path.join(paths.cwd, './html/'),
|
|
120
|
+
functionToCall: async () => {
|
|
121
|
+
await htmlHandler.processHtml({
|
|
122
|
+
from: plugins.path.join(paths.cwd, './html/index.html'),
|
|
123
|
+
to: plugins.path.join(paths.cwd, './dist_serve/index.html'),
|
|
124
|
+
minify: false,
|
|
125
|
+
});
|
|
126
|
+
await bundleAndReloadWebsite();
|
|
127
|
+
},
|
|
128
|
+
timeout: null,
|
|
129
|
+
}));
|
|
130
|
+
})();
|
|
98
131
|
break;
|
|
99
|
-
case '
|
|
132
|
+
case 'service':
|
|
100
133
|
this.watcherMap.add(new Watcher({
|
|
101
134
|
filePathToWatch: plugins.path.join(paths.cwd, './ts/'),
|
|
102
135
|
commandToExecute: 'npm run startTs',
|
|
103
136
|
timeout: null,
|
|
104
137
|
}));
|
|
105
138
|
break;
|
|
106
|
-
case '
|
|
139
|
+
case 'echo':
|
|
107
140
|
const tsWatchInstanceEchoSomething = new Watcher({
|
|
108
141
|
filePathToWatch: plugins.path.join(paths.cwd, './ts'),
|
|
109
142
|
commandToExecute: 'npm -v',
|
|
@@ -133,4 +166,4 @@ export class TsWatch {
|
|
|
133
166
|
});
|
|
134
167
|
}
|
|
135
168
|
}
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHN3YXRjaC5jbGFzc2VzLnRzd2F0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90c3dhdGNoLmNsYXNzZXMudHN3YXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxLQUFLLE1BQU0sb0JBQW9CLENBQUM7QUFDNUMsT0FBTyxLQUFLLFVBQVUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdkQsTUFBTSxPQUFPLE9BQU87SUFLbEIsWUFBWSxZQUFvQztRQUh6QyxlQUFVLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBVyxDQUFDO1FBSXZELElBQUksQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE1BQU0sUUFBUSxHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkQsUUFBUSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDdkIsS0FBSyxNQUFNO2dCQUNUOzttQkFFRztnQkFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDakIsSUFBSSxPQUFPLENBQUM7b0JBQ1YsZUFBZSxFQUFFLEtBQUssQ0FBQyxHQUFHO29CQUMxQixnQkFBZ0IsRUFBRSxlQUFlO29CQUNqQyxPQUFPLEVBQUUsSUFBSTtpQkFDZCxDQUFDLENBQ0gsQ0FBQztnQkFDRixNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUNqQixJQUFJLE9BQU8sQ0FBQztvQkFDVixlQUFlLEVBQUUsS0FBSyxD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
|
package/dist_ts/tswatch.cli.js
CHANGED
|
@@ -9,17 +9,17 @@ tswatchCli.standardCommand().subscribe((argvArg => {
|
|
|
9
9
|
}));
|
|
10
10
|
tswatchCli.addCommand('element').subscribe(async (argvArg) => {
|
|
11
11
|
logger.log('info', `running watch task for a gitzone element project`);
|
|
12
|
-
const tsWatch = new TsWatch('
|
|
12
|
+
const tsWatch = new TsWatch('element');
|
|
13
13
|
await tsWatch.start();
|
|
14
14
|
});
|
|
15
15
|
tswatchCli.addCommand('npm').subscribe(async (argvArg) => {
|
|
16
16
|
logger.log('info', `running watch task for a gitzone element project`);
|
|
17
|
-
const tsWatch = new TsWatch('
|
|
17
|
+
const tsWatch = new TsWatch('node');
|
|
18
18
|
await tsWatch.start();
|
|
19
19
|
});
|
|
20
20
|
tswatchCli.addCommand('service').subscribe(async (argvArg) => {
|
|
21
21
|
logger.log('info', `running test task`);
|
|
22
|
-
const tsWatch = new TsWatch('
|
|
22
|
+
const tsWatch = new TsWatch('service');
|
|
23
23
|
await tsWatch.start();
|
|
24
24
|
});
|
|
25
25
|
tswatchCli.addCommand('test').subscribe(async (argvArg) => {
|
|
@@ -29,10 +29,10 @@ tswatchCli.addCommand('test').subscribe(async (argvArg) => {
|
|
|
29
29
|
});
|
|
30
30
|
tswatchCli.addCommand('website').subscribe(async (argvArg) => {
|
|
31
31
|
logger.log('info', `running watch task for a gitzone website project`);
|
|
32
|
-
const tsWatch = new TsWatch('
|
|
32
|
+
const tsWatch = new TsWatch('website');
|
|
33
33
|
await tsWatch.start();
|
|
34
34
|
});
|
|
35
35
|
export const runCli = async () => {
|
|
36
36
|
tswatchCli.startParse();
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHN3YXRjaC5jbGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90c3dhdGNoLmNsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxLQUFLLE1BQU0sb0JBQW9CLENBQUM7QUFDNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV2RCxNQUFNLFVBQVUsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7QUFFbkQsK0NBQStDO0FBQy9DLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRTtJQUNoRCxVQUFVLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN2QyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRUgsVUFBVSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQzNELE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLGtEQUFrRCxDQUFDLENBQUM7SUFDdkUsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsTUFBTSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEIsQ0FBQyxDQUFDLENBQUM7QUFFSCxVQUFVLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDdkQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsa0RBQWtELENBQUMsQ0FBQztJQUN2RSxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxNQUFNLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUN4QixDQUFDLENBQUMsQ0FBQztBQUVILFVBQVUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtJQUMzRCxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQ3hCLENBQUMsQ0FBQyxDQUFDO0FBRUgsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQ3hELE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDeEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsTUFBTSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEIsQ0FBQyxDQUFDLENBQUM7QUFFSCxVQUFVLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDM0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsa0RBQWtELENBQUMsQ0FBQztJQUN2RSxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2QyxNQUFNLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUN4QixDQUFDLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxLQUFLLElBQUksRUFBRTtJQUMvQixVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7QUFDMUIsQ0FBQyxDQUFDIn0=
|
|
@@ -8,8 +8,9 @@ import * as lik from '@push.rocks/lik';
|
|
|
8
8
|
import * as smartchok from '@push.rocks/smartchok';
|
|
9
9
|
import * as smartcli from '@push.rocks/smartcli';
|
|
10
10
|
import * as smartdelay from '@push.rocks/smartdelay';
|
|
11
|
+
import * as smartfile from '@push.rocks/smartfile';
|
|
11
12
|
import * as smartlog from '@push.rocks/smartlog';
|
|
12
13
|
import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-local';
|
|
13
14
|
import * as smartshell from '@push.rocks/smartshell';
|
|
14
15
|
import * as taskbuffer from '@push.rocks/taskbuffer';
|
|
15
|
-
export { lik, smartchok, smartcli, smartdelay, smartlog, smartlogDestinationLocal, smartshell, taskbuffer, };
|
|
16
|
+
export { lik, smartchok, smartcli, smartdelay, smartfile, smartlog, smartlogDestinationLocal, smartshell, taskbuffer, };
|
|
@@ -12,9 +12,10 @@ import * as lik from '@push.rocks/lik';
|
|
|
12
12
|
import * as smartchok from '@push.rocks/smartchok';
|
|
13
13
|
import * as smartcli from '@push.rocks/smartcli';
|
|
14
14
|
import * as smartdelay from '@push.rocks/smartdelay';
|
|
15
|
+
import * as smartfile from '@push.rocks/smartfile';
|
|
15
16
|
import * as smartlog from '@push.rocks/smartlog';
|
|
16
17
|
import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-local';
|
|
17
18
|
import * as smartshell from '@push.rocks/smartshell';
|
|
18
19
|
import * as taskbuffer from '@push.rocks/taskbuffer';
|
|
19
|
-
export { lik, smartchok, smartcli, smartdelay, smartlog, smartlogDestinationLocal, smartshell, taskbuffer, };
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
export { lik, smartchok, smartcli, smartdelay, smartfile, smartlog, smartlogDestinationLocal, smartshell, taskbuffer, };
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHN3YXRjaC5wbHVnaW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvdHN3YXRjaC5wbHVnaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFFaEIsaUJBQWlCO0FBQ2pCLE9BQU8sS0FBSyxRQUFRLE1BQU0sb0JBQW9CLENBQUM7QUFDL0MsT0FBTyxFQUNMLFFBQVEsRUFDVCxDQUFBO0FBRUQsbUJBQW1CO0FBQ25CLE9BQU8sS0FBSyxXQUFXLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsT0FBTyxFQUNMLFdBQVcsR0FDWixDQUFBO0FBRUQsbUJBQW1CO0FBQ25CLE9BQU8sS0FBSyxHQUFHLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyx3QkFBd0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRixPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUM7QUFFckQsT0FBTyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxFQUNSLHdCQUF3QixFQUN4QixVQUFVLEVBQ1YsVUFBVSxHQUNYLENBQUMifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@git.zone/tswatch",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.27",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "watch typescript projects during development",
|
|
6
6
|
"main": "dist_ts/index.js",
|
|
@@ -12,20 +12,21 @@
|
|
|
12
12
|
"tswatch": "cli.js"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@git.zone/tsbuild": "^2.
|
|
15
|
+
"@git.zone/tsbuild": "^2.2.0",
|
|
16
16
|
"@git.zone/tstest": "^1.0.90",
|
|
17
|
-
"@push.rocks/tapbundle": "^5.3
|
|
18
|
-
"@types/node": "^22.
|
|
17
|
+
"@push.rocks/tapbundle": "^5.5.3",
|
|
18
|
+
"@types/node": "^22.10.1"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@api.global/typedserver": "^3.0.51",
|
|
22
22
|
"@git.zone/tsbundle": "^2.1.0",
|
|
23
|
-
"@git.zone/tsrun": "^1.
|
|
23
|
+
"@git.zone/tsrun": "^1.3.3",
|
|
24
24
|
"@push.rocks/early": "^4.0.4",
|
|
25
25
|
"@push.rocks/lik": "^6.1.0",
|
|
26
26
|
"@push.rocks/smartchok": "^1.0.34",
|
|
27
27
|
"@push.rocks/smartcli": "^4.0.11",
|
|
28
28
|
"@push.rocks/smartdelay": "^3.0.5",
|
|
29
|
+
"@push.rocks/smartfile": "^11.0.21",
|
|
29
30
|
"@push.rocks/smartlog": "^3.0.7",
|
|
30
31
|
"@push.rocks/smartlog-destination-local": "^9.0.2",
|
|
31
32
|
"@push.rocks/smartshell": "^3.0.6",
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -21,6 +21,9 @@ export class TsWatch {
|
|
|
21
21
|
const htmlHandler = new plugins.tsbundle.HtmlHandler();
|
|
22
22
|
switch (this.watchmode) {
|
|
23
23
|
case 'test':
|
|
24
|
+
/**
|
|
25
|
+
* this strategy runs test whenever there is a change in the ts directory
|
|
26
|
+
*/
|
|
24
27
|
this.watcherMap.add(
|
|
25
28
|
new Watcher({
|
|
26
29
|
filePathToWatch: paths.cwd,
|
|
@@ -29,7 +32,7 @@ export class TsWatch {
|
|
|
29
32
|
})
|
|
30
33
|
);
|
|
31
34
|
break;
|
|
32
|
-
case '
|
|
35
|
+
case 'node':
|
|
33
36
|
this.watcherMap.add(
|
|
34
37
|
new Watcher({
|
|
35
38
|
filePathToWatch: paths.cwd,
|
|
@@ -38,88 +41,126 @@ export class TsWatch {
|
|
|
38
41
|
})
|
|
39
42
|
);
|
|
40
43
|
break;
|
|
41
|
-
case '
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
44
|
+
case 'element':
|
|
45
|
+
(async () => {
|
|
46
|
+
/**
|
|
47
|
+
* this strategy runs a standard server and bundles the ts files to a dist_watch directory
|
|
48
|
+
*/
|
|
49
|
+
// lets create a standard server
|
|
50
|
+
console.log(
|
|
51
|
+
'bundling TypeScript files to "dist_watch" Note: This is for development only!'
|
|
52
|
+
);
|
|
53
|
+
this.typedserver = new plugins.typedserver.TypedServer({
|
|
54
|
+
cors: true,
|
|
55
|
+
injectReload: true,
|
|
56
|
+
serveDir: plugins.path.join(paths.cwd, './dist_watch/'),
|
|
57
|
+
port: 3002,
|
|
58
|
+
enableCompression: true,
|
|
59
|
+
preferredCompressionMethod: 'gzip',
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
const bundleAndReloadElement = async () => {
|
|
63
|
+
await tsbundle.build(paths.cwd, './html/index.ts', './dist_watch/bundle.js', {
|
|
64
|
+
bundler: 'esbuild',
|
|
65
|
+
});
|
|
66
|
+
await this.typedserver.reload();
|
|
67
|
+
};
|
|
68
|
+
this.watcherMap.add(
|
|
69
|
+
new Watcher({
|
|
70
|
+
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
|
71
|
+
functionToCall: async () => {
|
|
72
|
+
await bundleAndReloadElement();
|
|
73
|
+
},
|
|
74
|
+
timeout: null,
|
|
75
|
+
})
|
|
76
|
+
);
|
|
54
77
|
|
|
55
|
-
|
|
56
|
-
await
|
|
57
|
-
|
|
78
|
+
// lets get the other ts folders
|
|
79
|
+
let tsfolders = await plugins.smartfile.fs.listFolders(paths.cwd);
|
|
80
|
+
tsfolders = tsfolders.filter(
|
|
81
|
+
(itemArg) => itemArg.startsWith('ts') && itemArg !== 'ts_web'
|
|
82
|
+
);
|
|
83
|
+
const smartshellInstance = new plugins.smartshell.Smartshell({
|
|
84
|
+
executor: 'bash',
|
|
58
85
|
});
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
86
|
+
for (const tsfolder of tsfolders) {
|
|
87
|
+
this.watcherMap.add(
|
|
88
|
+
new Watcher({
|
|
89
|
+
filePathToWatch: plugins.path.join(paths.cwd, `./${tsfolder}/`),
|
|
90
|
+
functionToCall: async () => {
|
|
91
|
+
await smartshellInstance.exec(`npm run build`);
|
|
92
|
+
await this.typedserver.reload();
|
|
93
|
+
},
|
|
94
|
+
timeout: null,
|
|
95
|
+
})
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
this.watcherMap.add(
|
|
100
|
+
new Watcher({
|
|
101
|
+
filePathToWatch: plugins.path.join(paths.cwd, './html/'),
|
|
102
|
+
functionToCall: async () => {
|
|
103
|
+
await htmlHandler.processHtml({
|
|
104
|
+
from: plugins.path.join(paths.cwd, './html/index.html'),
|
|
105
|
+
to: plugins.path.join(paths.cwd, './dist_watch/index.html'),
|
|
106
|
+
minify: false,
|
|
107
|
+
});
|
|
108
|
+
await bundleAndReloadElement();
|
|
109
|
+
},
|
|
110
|
+
timeout: null,
|
|
111
|
+
})
|
|
112
|
+
);
|
|
113
|
+
})();
|
|
84
114
|
break;
|
|
85
|
-
case '
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
115
|
+
case 'website':
|
|
116
|
+
(async () => {
|
|
117
|
+
const bundleAndReloadWebsite = async () => {
|
|
118
|
+
await tsbundle.build(paths.cwd, './ts_web/index.ts', './dist_serve/bundle.js', {
|
|
119
|
+
bundler: 'esbuild',
|
|
120
|
+
});
|
|
121
|
+
};
|
|
122
|
+
let tsfolders = await plugins.smartfile.fs.listFolders(paths.cwd);
|
|
123
|
+
tsfolders = tsfolders.filter(
|
|
124
|
+
(itemArg) => itemArg.startsWith('ts') && itemArg !== 'ts_web'
|
|
125
|
+
);
|
|
126
|
+
const smartshellInstance = new plugins.smartshell.Smartshell({
|
|
127
|
+
executor: 'bash',
|
|
96
128
|
});
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
129
|
+
for (const tsfolder of tsfolders) {
|
|
130
|
+
this.watcherMap.add(
|
|
131
|
+
new Watcher({
|
|
132
|
+
filePathToWatch: plugins.path.join(paths.cwd, `./${tsfolder}/`),
|
|
133
|
+
commandToExecute: `npm run startTs`,
|
|
134
|
+
timeout: null,
|
|
135
|
+
})
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
this.watcherMap.add(
|
|
139
|
+
new Watcher({
|
|
140
|
+
filePathToWatch: plugins.path.join(paths.cwd, './ts_web/'),
|
|
141
|
+
functionToCall: async () => {
|
|
142
|
+
await bundleAndReloadWebsite();
|
|
143
|
+
},
|
|
144
|
+
timeout: null,
|
|
145
|
+
})
|
|
146
|
+
);
|
|
147
|
+
this.watcherMap.add(
|
|
148
|
+
new Watcher({
|
|
149
|
+
filePathToWatch: plugins.path.join(paths.cwd, './html/'),
|
|
150
|
+
functionToCall: async () => {
|
|
151
|
+
await htmlHandler.processHtml({
|
|
152
|
+
from: plugins.path.join(paths.cwd, './html/index.html'),
|
|
153
|
+
to: plugins.path.join(paths.cwd, './dist_serve/index.html'),
|
|
154
|
+
minify: false,
|
|
155
|
+
});
|
|
156
|
+
await bundleAndReloadWebsite();
|
|
157
|
+
},
|
|
158
|
+
timeout: null,
|
|
159
|
+
})
|
|
160
|
+
);
|
|
161
|
+
})();
|
|
121
162
|
break;
|
|
122
|
-
case '
|
|
163
|
+
case 'service':
|
|
123
164
|
this.watcherMap.add(
|
|
124
165
|
new Watcher({
|
|
125
166
|
filePathToWatch: plugins.path.join(paths.cwd, './ts/'),
|
|
@@ -128,7 +169,7 @@ export class TsWatch {
|
|
|
128
169
|
})
|
|
129
170
|
);
|
|
130
171
|
break;
|
|
131
|
-
case '
|
|
172
|
+
case 'echo':
|
|
132
173
|
const tsWatchInstanceEchoSomething = new Watcher({
|
|
133
174
|
filePathToWatch: plugins.path.join(paths.cwd, './ts'),
|
|
134
175
|
commandToExecute: 'npm -v',
|
package/ts/tswatch.cli.ts
CHANGED
|
@@ -13,19 +13,19 @@ tswatchCli.standardCommand().subscribe((argvArg => {
|
|
|
13
13
|
|
|
14
14
|
tswatchCli.addCommand('element').subscribe(async (argvArg) => {
|
|
15
15
|
logger.log('info', `running watch task for a gitzone element project`);
|
|
16
|
-
const tsWatch = new TsWatch('
|
|
16
|
+
const tsWatch = new TsWatch('element');
|
|
17
17
|
await tsWatch.start();
|
|
18
18
|
});
|
|
19
19
|
|
|
20
20
|
tswatchCli.addCommand('npm').subscribe(async (argvArg) => {
|
|
21
21
|
logger.log('info', `running watch task for a gitzone element project`);
|
|
22
|
-
const tsWatch = new TsWatch('
|
|
22
|
+
const tsWatch = new TsWatch('node');
|
|
23
23
|
await tsWatch.start();
|
|
24
24
|
});
|
|
25
25
|
|
|
26
26
|
tswatchCli.addCommand('service').subscribe(async (argvArg) => {
|
|
27
27
|
logger.log('info', `running test task`);
|
|
28
|
-
const tsWatch = new TsWatch('
|
|
28
|
+
const tsWatch = new TsWatch('service');
|
|
29
29
|
await tsWatch.start();
|
|
30
30
|
});
|
|
31
31
|
|
|
@@ -37,7 +37,7 @@ tswatchCli.addCommand('test').subscribe(async (argvArg) => {
|
|
|
37
37
|
|
|
38
38
|
tswatchCli.addCommand('website').subscribe(async (argvArg) => {
|
|
39
39
|
logger.log('info', `running watch task for a gitzone website project`);
|
|
40
|
-
const tsWatch = new TsWatch('
|
|
40
|
+
const tsWatch = new TsWatch('website');
|
|
41
41
|
await tsWatch.start();
|
|
42
42
|
});
|
|
43
43
|
|
package/ts/tswatch.plugins.ts
CHANGED
|
@@ -20,6 +20,7 @@ import * as lik from '@push.rocks/lik';
|
|
|
20
20
|
import * as smartchok from '@push.rocks/smartchok';
|
|
21
21
|
import * as smartcli from '@push.rocks/smartcli';
|
|
22
22
|
import * as smartdelay from '@push.rocks/smartdelay';
|
|
23
|
+
import * as smartfile from '@push.rocks/smartfile';
|
|
23
24
|
import * as smartlog from '@push.rocks/smartlog';
|
|
24
25
|
import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-local';
|
|
25
26
|
import * as smartshell from '@push.rocks/smartshell';
|
|
@@ -30,6 +31,7 @@ export {
|
|
|
30
31
|
smartchok,
|
|
31
32
|
smartcli,
|
|
32
33
|
smartdelay,
|
|
34
|
+
smartfile,
|
|
33
35
|
smartlog,
|
|
34
36
|
smartlogDestinationLocal,
|
|
35
37
|
smartshell,
|