fix(core): update

This commit is contained in:
Philipp Kunz 2022-03-12 21:52:14 +01:00
parent e41cd896bb
commit 1113251aea
2 changed files with 23 additions and 13 deletions

View File

@ -7,29 +7,34 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
export const runPath = async (pathArg: string) => { export const runPath = async (pathArg: string) => {
await runCli(pathArg); await runCli(pathArg);
} };
export const runCli = async (pathArg?: string) => { export const runCli = async (pathArg?: string) => {
// contents of argv array // contents of argv array
// process.argv[0] -> node Executable // process.argv[0] -> node Executable
// process.argv[1] -> tsrun executable // process.argv[1] -> tsrun executable
const relativePathToTsFile = pathArg ? pathArg : process.argv[2]; const relativePathToTsFile = pathArg ? pathArg : process.argv[2];
const absolutePathToTsFile = plugins.path.join(process.cwd(), relativePathToTsFile); const absolutePathToTsFile = plugins.path.isAbsolute(relativePathToTsFile)
? relativePathToTsFile
: plugins.path.join(process.cwd(), relativePathToTsFile);
process.argv.splice(0, 3); // this ensures transparent arguments for the child process process.argv.splice(0, 3); // this ensures transparent arguments for the child process
// lets setup things for execution // lets setup things for execution
const smartshellInstance = new plugins.smartshell.Smartshell({ const smartshellInstance = new plugins.smartshell.Smartshell({
executor: 'bash' executor: 'bash',
}); });
const tsNodeLoaderPath = plugins.path.join(__dirname, 'loader.js') const tsNodeLoaderPath = plugins.path.join(__dirname, 'loader.js');
// note: -> reduce on emtpy array does not work // note: -> reduce on emtpy array does not work
// thus check needed before reducing the argv array // thus check needed before reducing the argv array
smartshellInstance.exec(`node --loader ${tsNodeLoaderPath} ${absolutePathToTsFile} ${process.argv.length > 0 ? process.argv.reduce((prevArg, currentArg) => { smartshellInstance.exec(
`node --loader ${tsNodeLoaderPath} ${absolutePathToTsFile} ${
process.argv.length > 0
? process.argv.reduce((prevArg, currentArg) => {
return prevArg + ' ' + currentArg; return prevArg + ' ' + currentArg;
}) : ''}`); })
: ''
}`
);
}; };

View File

@ -1,3 +1,10 @@
// node native
import * as path from 'path';
export {
path
}
// @pushrocks scope // @pushrocks scope
import * as smartshell from '@pushrocks/smartshell'; import * as smartshell from '@pushrocks/smartshell';
@ -6,10 +13,8 @@ export {
} }
// third party scope // third party scope
import * as path from 'path';
import * as tsNode from 'ts-node'; import * as tsNode from 'ts-node';
export { export {
path,
tsNode tsNode
} }