fix(cli): Ensure ts_shared folder is compiled sedond to interfaces when present

This commit is contained in:
Philipp Kunz 2024-07-21 17:33:21 +02:00
parent c45a216379
commit fa41dbf332
3 changed files with 18 additions and 4 deletions

View File

@ -1,5 +1,10 @@
# Changelog
## 2024-07-21 - 2.1.83 - fix(cli)
Ensure 'ts_shared' folder is compiled first if present
- Added logic to make sure the 'ts_shared' folder is compiled first when running 'tsfolders' command.
## 2024-06-24 - 2.1.82 - fix(core)
Minor improvements and optimizations in core TypeScript compiler integration.

View File

@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@git.zone/tsbuild',
version: '2.1.82',
version: '2.1.83',
description: 'TypeScript nightly to easily make use of latest features'
}

View File

@ -37,14 +37,23 @@ export const runCli = async () => {
*/
tsbuildCli.addCommand('tsfolders').subscribe(async (argvArg) => {
const tsFolders = await plugins.smartfile.fs.listFolders(paths.cwd, /^ts/);
// lets make sure shared is always transpiled first
const indexShared = tsFolders.indexOf('ts_shared');
if (indexShared > -1) {
tsFolders.splice(indexShared, 1);
tsFolders.unshift('ts_interfaces');
}
// lets make sure interfaces are always transpiled first
const index = tsFolders.indexOf('ts_interfaces');
if (index > -1) {
tsFolders.splice(index, 1);
const indexInterfaces = tsFolders.indexOf('ts_interfaces');
if (indexInterfaces > -1) {
tsFolders.splice(indexInterfaces, 1);
tsFolders.unshift('ts_interfaces');
}
const compilationCommandObject: { [key: string]: string } = {};
console.log(`compiling in this order:`);
console.log(tsFolders);
for (const tsFolder of tsFolders) {
compilationCommandObject[`./${tsFolder}/**/*.ts`] = `./dist_${tsFolder}`;
}