42 lines
1.3 KiB
TypeScript
42 lines
1.3 KiB
TypeScript
import * as plugins from './tsbundle.plugins';
|
|
import { logger } from './tsbundle.logging';
|
|
|
|
export class TsBundle {
|
|
public async buildTest(cwdArg: string, fromArg: string, toArg: string, bundlerArg: 'rollup' | 'parcel') {
|
|
const done = plugins.smartpromise.defer();
|
|
const threadsimple = new plugins.smartspawn.ThreadSimple(plugins.path.join(__dirname, './tsbundle.class.tsbundleprocess.js'), [], {
|
|
env: {
|
|
...process.env,
|
|
tsbundleMode: 'test',
|
|
tsbundleCwd: cwdArg,
|
|
tsbundleFrom: fromArg,
|
|
tsbundleTo: toArg,
|
|
tsbundleBundler: bundlerArg
|
|
}
|
|
})
|
|
const childProcess = await threadsimple.start();
|
|
childProcess.on('exit', (status) => {
|
|
done.resolve();
|
|
})
|
|
await done.promise;
|
|
};
|
|
|
|
public async buildProduction(cwdArg: string, fromArg: string, toArg: string) {
|
|
const done = plugins.smartpromise.defer();
|
|
const threadsimple = new plugins.smartspawn.ThreadSimple(plugins.path.join(__dirname, './tsbundle.class.tsbundleprocess.js'), [], {
|
|
env: {
|
|
...process.env,
|
|
tsbundleMode: 'production',
|
|
tsbundleCwd: cwdArg,
|
|
tsbundleFrom: fromArg,
|
|
tsbundleTo: toArg
|
|
}
|
|
})
|
|
const childProcess = await threadsimple.start();
|
|
childProcess.on('exit', (status) => {
|
|
done.resolve();
|
|
})
|
|
await done.promise;
|
|
};
|
|
}
|