fix(core): update
This commit is contained in:
parent
e41cd896bb
commit
1113251aea
25
ts/index.ts
25
ts/index.ts
@ -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(
|
||||||
return prevArg + ' ' + currentArg;
|
`node --loader ${tsNodeLoaderPath} ${absolutePathToTsFile} ${
|
||||||
}) : ''}`);
|
process.argv.length > 0
|
||||||
|
? process.argv.reduce((prevArg, currentArg) => {
|
||||||
|
return prevArg + ' ' + currentArg;
|
||||||
|
})
|
||||||
|
: ''
|
||||||
|
}`
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
@ -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
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user