|
|
@@ -159,38 +159,43 @@ runName, libName, outputDir, onData, options) {
|
|
|
return __generator(this, function (_a) {
|
|
|
switch (_a.label) {
|
|
|
case 0:
|
|
|
- _a.trys.push([0, 4, , 5]);
|
|
|
- return [4 /*yield*/, async_exec(bwa, __spreadArray(__spreadArray(['mem',
|
|
|
- '-t', threads,
|
|
|
- '-R', "\"@RG\\tPL:Illumina\\tID:".concat(+(new Date), "\\tSM:").concat(runName, "\\tLB:").concat(libName, "\""), refPath,
|
|
|
- readsIn], samblasterCmd, true), ['|',
|
|
|
- samtools,
|
|
|
- 'view',
|
|
|
- '-Sb',
|
|
|
- '-',
|
|
|
- '>',
|
|
|
- bam], false), function (message) { return onData('[BWA-MEM] ' + message); })];
|
|
|
+ _a.trys.push([0, 6, , 7]);
|
|
|
+ if (!!fs_1.default.existsSync(refPath + '.amb')) return [3 /*break*/, 2];
|
|
|
+ return [4 /*yield*/, async_exec(bwa, ['index', refPath], function (message) { return onData('[BWA-INDEX] ' + message); })];
|
|
|
case 1:
|
|
|
+ _a.sent();
|
|
|
+ _a.label = 2;
|
|
|
+ case 2: return [4 /*yield*/, async_exec(bwa, __spreadArray(__spreadArray(['mem',
|
|
|
+ '-t', threads,
|
|
|
+ '-R', "\"@RG\\tPL:Illumina\\tID:".concat(+(new Date), "\\tSM:").concat(runName, "\\tLB:").concat(libName, "\""), refPath,
|
|
|
+ readsIn], samblasterCmd, true), ['|',
|
|
|
+ samtools,
|
|
|
+ 'view',
|
|
|
+ '-Sb',
|
|
|
+ '-',
|
|
|
+ '>',
|
|
|
+ bam], false), function (message) { return onData('[BWA-MEM] ' + message); })];
|
|
|
+ case 3:
|
|
|
code = _a.sent();
|
|
|
onData('[BWA-MEM][EXIT CODE] ' + code);
|
|
|
- if (!retObj.bamSorted) return [3 /*break*/, 3];
|
|
|
+ if (!retObj.bamSorted) return [3 /*break*/, 5];
|
|
|
return [4 /*yield*/, async_exec(sambamba, ['sort',
|
|
|
'-t', threads,
|
|
|
bam
|
|
|
], function (message) { return onData('[SAMBAMBA-SORT] ' + message); })];
|
|
|
- case 2:
|
|
|
+ case 4:
|
|
|
code_sort = _a.sent();
|
|
|
onData('[SAMBAMBA-SORT][EXIT CODE] ' + code_sort);
|
|
|
fs_1.default.unlinkSync(bam);
|
|
|
- _a.label = 3;
|
|
|
- case 3:
|
|
|
+ _a.label = 5;
|
|
|
+ case 5:
|
|
|
resolve(retObj);
|
|
|
- return [3 /*break*/, 5];
|
|
|
- case 4:
|
|
|
+ return [3 /*break*/, 7];
|
|
|
+ case 6:
|
|
|
err_1 = _a.sent();
|
|
|
reject(err_1);
|
|
|
- return [3 /*break*/, 5];
|
|
|
- case 5: return [2 /*return*/];
|
|
|
+ return [3 /*break*/, 7];
|
|
|
+ case 7: return [2 /*return*/];
|
|
|
}
|
|
|
});
|
|
|
}); });
|