Browse Source

makeReference

Thomas 3 years ago
parent
commit
51ce4ed13f
3 changed files with 14 additions and 18 deletions
  1. 1 1
      dist/index.d.ts
  2. 8 11
      dist/index.js
  3. 5 6
      index.ts

+ 1 - 1
dist/index.d.ts

@@ -1,3 +1,3 @@
-declare const makeReference: (sequenceName: string, sequence: string, filePath: string) => Promise<number>;
+declare const makeReference: (sequenceName: string, sequence: string, filePath: string) => Promise<boolean>;
 declare const asyncBwaMem: (refPath: string, reads: string | Array<string> | Array<Array<string>>, runName: string, libName: string, outputDir: string, onData: Function, options?: any) => Promise<string[]>;
 export { asyncBwaMem, makeReference };

+ 8 - 11
dist/index.js

@@ -80,24 +80,21 @@ var makeReference = function (sequenceName, sequence, filePath) { return __await
                 return __generator(this, function (_a) {
                     switch (_a.label) {
                         case 0:
-                            _a.trys.push([0, 4, , 5]);
-                            return [4 /*yield*/, fs_1.default.promises.appendFile(filePath, '>' + sequenceName)];
+                            _a.trys.push([0, 3, , 4]);
+                            return [4 /*yield*/, fs_1.default.promises.writeFile(filePath, '>' + sequenceName + '\n' + sequence)];
                         case 1:
                             _a.sent();
-                            return [4 /*yield*/, fs_1.default.promises.appendFile(filePath, sequence)];
+                            return [4 /*yield*/, async_exec('bwa', ['index', filePath], function () { return console.log; })];
                         case 2:
                             _a.sent();
-                            return [4 /*yield*/, async_exec('bwa', ['index', filePath], function () { return console.log; })];
+                            resolve(true);
+                            return [3 /*break*/, 4];
                         case 3:
-                            _a.sent();
-                            resolve(0);
-                            return [3 /*break*/, 5];
-                        case 4:
                             error_1 = _a.sent();
                             console.log(error_1);
-                            reject(1);
-                            return [3 /*break*/, 5];
-                        case 5: return [2 /*return*/];
+                            reject(false);
+                            return [3 /*break*/, 4];
+                        case 4: return [2 /*return*/];
                     }
                 });
             }); })];

+ 5 - 6
index.ts

@@ -16,15 +16,14 @@ const async_exec = (prog: string, args: string[], onData: Function) => {
 }
 
 const makeReference = async (sequenceName:string, sequence:string, filePath: string) => {
-  return new Promise<number>(async(resolve, reject) => {
+  return new Promise<boolean>(async(resolve, reject) => {
     try {
-      await fs.promises.appendFile(filePath, '>'+sequenceName)
-      await fs.promises.appendFile(filePath, sequence)
+      await fs.promises.writeFile(filePath, '>'+sequenceName+'\n'+sequence)
       await async_exec('bwa', ['index',filePath], () => console.log)
-      resolve(0)
+      resolve(true)
     } catch (error) {
-      console.log(error);
-      reject(1)
+      console.log(error)
+      reject(false)
     }
   })
 }