@datagrok-libraries/bio 2.8.7 → 2.8.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fasta-handler.d.ts","sourceRoot":"","sources":["fasta-handler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,oCAAoC;AACpC,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,eAAe,CAAgB;
|
|
1
|
+
{"version":3,"file":"fasta-handler.d.ts","sourceRoot":"","sources":["fasta-handler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,oCAAoC;AACpC,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,eAAe,CAAgB;IAGvC,IAAW,iBAAiB,IAAI,MAAM,EAAE,CAAoC;IAE5E,IAAW,cAAc,IAAI,MAAM,EAAE,CAAiC;IAEtE;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAS1B,2DAA2D;IAC3D,OAAO,CAAC,YAAY;IAiBpB;;;;OAIG;IACI,WAAW,IAAI,EAAE,CAAC,SAAS,EAAG;gBAczB,WAAW,EAAE,MAAM;CAIhC"}
|
|
@@ -5,21 +5,12 @@ export class FastaFileHandler {
|
|
|
5
5
|
constructor(fileContent) {
|
|
6
6
|
this._descriptionsArray = []; // parsed FASTA descriptions
|
|
7
7
|
this._sequencesArray = []; // parsed FASTA sequeces
|
|
8
|
-
this._columnsParsed = false;
|
|
9
8
|
this._fileContent = fileContent;
|
|
9
|
+
this.parseColumns();
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
else
|
|
15
|
-
throw new Error('Run parseColumns first');
|
|
16
|
-
}
|
|
17
|
-
get sequencesArray() {
|
|
18
|
-
if (this._columnsParsed)
|
|
19
|
-
return this._sequencesArray;
|
|
20
|
-
else
|
|
21
|
-
throw new Error('Run parseColumns first');
|
|
22
|
-
}
|
|
11
|
+
// private _columnsParsed: boolean = false;
|
|
12
|
+
get descriptionsArray() { return this._descriptionsArray; }
|
|
13
|
+
get sequencesArray() { return this._sequencesArray; }
|
|
23
14
|
/**
|
|
24
15
|
* Helper method to parse a macromolecule from a FASTA file (string)
|
|
25
16
|
*
|
|
@@ -35,7 +26,6 @@ export class FastaFileHandler {
|
|
|
35
26
|
}
|
|
36
27
|
/** Parse descriptions and sequences from a FASTA string */
|
|
37
28
|
parseColumns() {
|
|
38
|
-
// parse description and content
|
|
39
29
|
const regex = /^>(.*)$/gm; // match 'description' lines starting with >
|
|
40
30
|
let startOfSequence = 0;
|
|
41
31
|
let match; // match.index is the beginning of the matched line
|
|
@@ -47,7 +37,7 @@ export class FastaFileHandler {
|
|
|
47
37
|
startOfSequence = regex.lastIndex + 1;
|
|
48
38
|
}
|
|
49
39
|
this._sequencesArray.push(this.parseMacromolecule(startOfSequence, -1));
|
|
50
|
-
this._columnsParsed = true;
|
|
40
|
+
// this._columnsParsed = true;
|
|
51
41
|
}
|
|
52
42
|
/**
|
|
53
43
|
* File-handler method for import as FASTA
|
|
@@ -55,7 +45,6 @@ export class FastaFileHandler {
|
|
|
55
45
|
* @return {DG.DataFrame[]} dataframe with parsed FASTA content
|
|
56
46
|
*/
|
|
57
47
|
importFasta() {
|
|
58
|
-
this.parseColumns();
|
|
59
48
|
const descriptionsArrayCol = DG.Column.fromStrings('description', this.descriptionsArray);
|
|
60
49
|
const sequenceCol = DG.Column.fromStrings('sequence', this.sequencesArray);
|
|
61
50
|
sequenceCol.semType = DG.SEMTYPE.MACROMOLECULE;
|
|
@@ -67,4 +56,4 @@ export class FastaFileHandler {
|
|
|
67
56
|
])];
|
|
68
57
|
}
|
|
69
58
|
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFzdGEtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZhc3RhLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV0QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0Msb0NBQW9DO0FBQ3BDLE1BQU0sT0FBTyxnQkFBZ0I7SUFnRTNCLFlBQVksV0FBbUI7UUE5RHZCLHVCQUFrQixHQUFhLEVBQUUsQ0FBQyxDQUFDLDRCQUE0QjtRQUMvRCxvQkFBZSxHQUFhLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtRQThEOUQsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUEvREQsMkNBQTJDO0lBRTNDLElBQVcsaUJBQWlCLEtBQWUsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO0lBRTVFLElBQVcsY0FBYyxLQUFlLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFFdEU7Ozs7Ozs7T0FPRztJQUNLLGtCQUFrQixDQUN4QixlQUF1QixFQUN2QixhQUFxQjtRQUVyQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDcEUsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELDJEQUEyRDtJQUNuRCxZQUFZO1FBQ2xCLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxDQUFDLDRDQUE0QztRQUV2RSxJQUFJLGVBQWUsR0FBRyxDQUFDLENBQUM7UUFDeEIsSUFBSSxLQUFLLENBQUMsQ0FBQyxtREFBbUQ7UUFDOUQsT0FBTyxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDNUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2xGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDMUMsSUFBSSxlQUFlLEtBQUssQ0FBQztnQkFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNuRixlQUFlLEdBQUcsS0FBSyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7U0FDdkM7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4RSw4QkFBOEI7SUFDaEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxXQUFXO1FBQ2hCLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFGLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0UsV0FBVyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUUvQyw2Q0FBNkM7UUFDN0MsWUFBWSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWhELE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztnQkFDL0Isb0JBQW9CO2dCQUNwQixXQUFXO2FBQ1osQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0NBTUYiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBEbyBub3QgY2hhbmdlIHRoZXNlIGltcG9ydCBsaW5lcyB0byBtYXRjaCBleHRlcm5hbCBtb2R1bGVzIGluIHdlYnBhY2sgY29uZmlndXJhdGlvbiAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcblxuaW1wb3J0IHtVbml0c0hhbmRsZXJ9IGZyb20gJy4vdW5pdHMtaGFuZGxlcic7XG5cbi8qKiBDbGFzcyBmb3IgcGFyc2luZyBGQVNUQSBmaWxlcyAqL1xuZXhwb3J0IGNsYXNzIEZhc3RhRmlsZUhhbmRsZXIge1xuICBwcml2YXRlIF9maWxlQ29udGVudDogc3RyaW5nO1xuICBwcml2YXRlIF9kZXNjcmlwdGlvbnNBcnJheTogc3RyaW5nW10gPSBbXTsgLy8gcGFyc2VkIEZBU1RBIGRlc2NyaXB0aW9uc1xuICBwcml2YXRlIF9zZXF1ZW5jZXNBcnJheTogc3RyaW5nW10gPSBbXTsgLy8gcGFyc2VkIEZBU1RBIHNlcXVlY2VzXG4gIC8vIHByaXZhdGUgX2NvbHVtbnNQYXJzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgZ2V0IGRlc2NyaXB0aW9uc0FycmF5KCk6IHN0cmluZ1tdIHsgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uc0FycmF5OyB9XG5cbiAgcHVibGljIGdldCBzZXF1ZW5jZXNBcnJheSgpOiBzdHJpbmdbXSB7IHJldHVybiB0aGlzLl9zZXF1ZW5jZXNBcnJheTsgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgbWV0aG9kIHRvIHBhcnNlIGEgbWFjcm9tb2xlY3VsZSBmcm9tIGEgRkFTVEEgZmlsZSAoc3RyaW5nKVxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gc3RhcnRPZlNlcXVlbmNlICBpbmRleCBvZiBtYWNyb21vbGVjdWxlIHN1YnN0cmluZyBiZWdpbm5pbmdcbiAgICogQHBhcmFtIHtudW1iZXJ9IGVuZE9mU2VxdWVuY2UgIGluZGV4IG9mIG1hY3JvbW9sZWN1bGUgc3Vic3RyaW5nIGVuZFxuXG4gICAqIEByZXR1cm4ge3N0cmluZ30gcGFyc2VkIG1hY3JvbW9sZWN1bGVcbiAgICovXG4gIHByaXZhdGUgcGFyc2VNYWNyb21vbGVjdWxlKFxuICAgIHN0YXJ0T2ZTZXF1ZW5jZTogbnVtYmVyLFxuICAgIGVuZE9mU2VxdWVuY2U6IG51bWJlclxuICApOiBzdHJpbmcge1xuICAgIGNvbnN0IHNlcSA9IHRoaXMuX2ZpbGVDb250ZW50LnNsaWNlKHN0YXJ0T2ZTZXF1ZW5jZSwgZW5kT2ZTZXF1ZW5jZSk7XG4gICAgY29uc3Qgc2VxQXJyYXkgPSBzZXEuc3BsaXQoL1xccy8pO1xuICAgIHJldHVybiBzZXFBcnJheS5qb2luKCcnKTtcbiAgfVxuXG4gIC8qKiBQYXJzZSBkZXNjcmlwdGlvbnMgYW5kIHNlcXVlbmNlcyBmcm9tIGEgRkFTVEEgc3RyaW5nICovXG4gIHByaXZhdGUgcGFyc2VDb2x1bW5zKCkge1xuICAgIGNvbnN0IHJlZ2V4ID0gL14+KC4qKSQvZ207IC8vIG1hdGNoICdkZXNjcmlwdGlvbicgbGluZXMgc3RhcnRpbmcgd2l0aCA+XG5cbiAgICBsZXQgc3RhcnRPZlNlcXVlbmNlID0gMDtcbiAgICBsZXQgbWF0Y2g7IC8vIG1hdGNoLmluZGV4IGlzIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG1hdGNoZWQgbGluZVxuICAgIHdoaWxlIChtYXRjaCA9IHJlZ2V4LmV4ZWModGhpcy5fZmlsZUNvbnRlbnQpKSB7XG4gICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2ZpbGVDb250ZW50LnN1YnN0cmluZyhtYXRjaC5pbmRleCArIDEsIHJlZ2V4Lmxhc3RJbmRleCk7XG4gICAgICB0aGlzLl9kZXNjcmlwdGlvbnNBcnJheS5wdXNoKGRlc2NyaXB0aW9uKTtcbiAgICAgIGlmIChzdGFydE9mU2VxdWVuY2UgIT09IDApXG4gICAgICAgIHRoaXMuX3NlcXVlbmNlc0FycmF5LnB1c2godGhpcy5wYXJzZU1hY3JvbW9sZWN1bGUoc3RhcnRPZlNlcXVlbmNlLCBtYXRjaC5pbmRleCkpO1xuICAgICAgc3RhcnRPZlNlcXVlbmNlID0gcmVnZXgubGFzdEluZGV4ICsgMTtcbiAgICB9XG4gICAgdGhpcy5fc2VxdWVuY2VzQXJyYXkucHVzaCh0aGlzLnBhcnNlTWFjcm9tb2xlY3VsZShzdGFydE9mU2VxdWVuY2UsIC0xKSk7XG5cbiAgICAvLyB0aGlzLl9jb2x1bW5zUGFyc2VkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaWxlLWhhbmRsZXIgbWV0aG9kIGZvciBpbXBvcnQgYXMgRkFTVEFcbiAgICpcbiAgICogQHJldHVybiB7REcuRGF0YUZyYW1lW119IGRhdGFmcmFtZSB3aXRoIHBhcnNlZCBGQVNUQSBjb250ZW50XG4gICAqL1xuICBwdWJsaWMgaW1wb3J0RmFzdGEoKTogREcuRGF0YUZyYW1lIFtdIHtcbiAgICBjb25zdCBkZXNjcmlwdGlvbnNBcnJheUNvbCA9IERHLkNvbHVtbi5mcm9tU3RyaW5ncygnZGVzY3JpcHRpb24nLCB0aGlzLmRlc2NyaXB0aW9uc0FycmF5KTtcbiAgICBjb25zdCBzZXF1ZW5jZUNvbCA9IERHLkNvbHVtbi5mcm9tU3RyaW5ncygnc2VxdWVuY2UnLCB0aGlzLnNlcXVlbmNlc0FycmF5KTtcbiAgICBzZXF1ZW5jZUNvbC5zZW1UeXBlID0gREcuU0VNVFlQRS5NQUNST01PTEVDVUxFO1xuXG4gICAgLy8gaGVyZSBzaG91bGQgZ28gdGhlIGNvZGUgZnJvbSB1bml0cyBoYW5kbGVyXG4gICAgVW5pdHNIYW5kbGVyLnNldFVuaXRzVG9GYXN0YUNvbHVtbihzZXF1ZW5jZUNvbCk7XG5cbiAgICByZXR1cm4gW0RHLkRhdGFGcmFtZS5mcm9tQ29sdW1ucyhbXG4gICAgICBkZXNjcmlwdGlvbnNBcnJheUNvbCxcbiAgICAgIHNlcXVlbmNlQ29sLFxuICAgIF0pXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKGZpbGVDb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9maWxlQ29udGVudCA9IGZpbGVDb250ZW50O1xuICAgIHRoaXMucGFyc2VDb2x1bW5zKCk7XG4gIH1cbn1cbiJdfQ==
|