@teselagen/bio-parsers 0.3.7 → 0.3.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/fastaToJson.d.ts +1 -1
- package/index.js +88 -73
- package/index.mjs +88 -73
- package/index.umd.js +87 -72
- package/package.json +1 -1
- package/src/anyToJson.js +1 -1
- package/src/fastaToJson.js +12 -7
- package/src/utils/validateSequence.js +6 -1
package/fastaToJson.d.ts
CHANGED
|
@@ -5,4 +5,4 @@ export default fastaToJson;
|
|
|
5
5
|
* @param {[function]} onFileParsed [callback for a parsed sequence]
|
|
6
6
|
* @author Joshua P Nixon
|
|
7
7
|
*/
|
|
8
|
-
declare function fastaToJson(fileString: [string], options
|
|
8
|
+
declare function fastaToJson(fileString: [string], options?: {}): any;
|
package/index.js
CHANGED
|
@@ -40,6 +40,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
40
40
|
step((generator = generator.apply(__this, __arguments)).next());
|
|
41
41
|
});
|
|
42
42
|
};
|
|
43
|
+
var _a, _b;
|
|
43
44
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
44
45
|
const untitledSequenceName = "Untitled Sequence";
|
|
45
46
|
const gbDivisions = {
|
|
@@ -96,6 +97,19 @@ function createInitialSequence(options) {
|
|
|
96
97
|
};
|
|
97
98
|
}
|
|
98
99
|
__name(createInitialSequence, "createInitialSequence");
|
|
100
|
+
function extractFileExtension(name) {
|
|
101
|
+
if (typeof name === "string") {
|
|
102
|
+
let ext = "";
|
|
103
|
+
const match = name.match(/\.(\w+)$/);
|
|
104
|
+
if (match && match[1]) {
|
|
105
|
+
ext = match[1];
|
|
106
|
+
}
|
|
107
|
+
return ext;
|
|
108
|
+
} else {
|
|
109
|
+
return "";
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
__name(extractFileExtension, "extractFileExtension");
|
|
99
113
|
function splitStringIntoLines(string) {
|
|
100
114
|
let lines = [];
|
|
101
115
|
if (string === "") {
|
|
@@ -121,10 +135,7 @@ function getAugmentedNamespace(n) {
|
|
|
121
135
|
if (typeof f == "function") {
|
|
122
136
|
var a = /* @__PURE__ */ __name(function a2() {
|
|
123
137
|
if (this instanceof a2) {
|
|
124
|
-
|
|
125
|
-
args.push.apply(args, arguments);
|
|
126
|
-
var Ctor = Function.bind.apply(f, args);
|
|
127
|
-
return new Ctor();
|
|
138
|
+
return Reflect.construct(f, arguments, this.constructor);
|
|
128
139
|
}
|
|
129
140
|
return f.apply(this, arguments);
|
|
130
141
|
}, "a");
|
|
@@ -19559,7 +19570,11 @@ function validateSequenceArray(parsingResultArray, options) {
|
|
|
19559
19570
|
return parsingResultArray;
|
|
19560
19571
|
}
|
|
19561
19572
|
__name(validateSequenceArray, "validateSequenceArray");
|
|
19562
|
-
function fastaToJson(fileString, options) {
|
|
19573
|
+
function fastaToJson(fileString, options = {}) {
|
|
19574
|
+
const ext = extractFileExtension(options.fileName);
|
|
19575
|
+
if (/^(faa)$/.test(ext)) {
|
|
19576
|
+
options.isProtein = true;
|
|
19577
|
+
}
|
|
19563
19578
|
let resultArray = [];
|
|
19564
19579
|
let result = null;
|
|
19565
19580
|
try {
|
|
@@ -20221,7 +20236,7 @@ function getLengthOfWhiteSpaceBeforeStartOfLetters(string) {
|
|
|
20221
20236
|
}
|
|
20222
20237
|
}
|
|
20223
20238
|
__name(getLengthOfWhiteSpaceBeforeStartOfLetters, "getLengthOfWhiteSpaceBeforeStartOfLetters");
|
|
20224
|
-
class
|
|
20239
|
+
const _Match = class _Match {
|
|
20225
20240
|
constructor(props) {
|
|
20226
20241
|
Object.assign(this, props);
|
|
20227
20242
|
this.value = this.obj[this.prop];
|
|
@@ -20238,8 +20253,9 @@ class Match {
|
|
|
20238
20253
|
log() {
|
|
20239
20254
|
console.info(this.toString());
|
|
20240
20255
|
}
|
|
20241
|
-
}
|
|
20242
|
-
__name(
|
|
20256
|
+
};
|
|
20257
|
+
__name(_Match, "Match");
|
|
20258
|
+
let Match = _Match;
|
|
20243
20259
|
const GLOBAL = typeof window == "object" ? window : global;
|
|
20244
20260
|
function searchWholeObjByName(what, where) {
|
|
20245
20261
|
const searchBy = /* @__PURE__ */ __name((what2, where2, prop) => what2 == prop, "searchBy");
|
|
@@ -20285,13 +20301,13 @@ function searchWholeObjByName(what, where) {
|
|
|
20285
20301
|
}
|
|
20286
20302
|
__name(searchWholeObjByName, "searchWholeObjByName");
|
|
20287
20303
|
function searchWholeObjByNameSimple(what, where) {
|
|
20288
|
-
var
|
|
20289
|
-
return (_c = (
|
|
20304
|
+
var _a3, _b3, _c;
|
|
20305
|
+
return (_c = (_b3 = (_a3 = searchWholeObjByName(what, where)) == null ? void 0 : _a3[0]) == null ? void 0 : _b3.value) == null ? void 0 : _c[0];
|
|
20290
20306
|
}
|
|
20291
20307
|
__name(searchWholeObjByNameSimple, "searchWholeObjByNameSimple");
|
|
20292
20308
|
function searchWholeObjByNameSimpleArray(what, where) {
|
|
20293
|
-
var
|
|
20294
|
-
return (
|
|
20309
|
+
var _a3, _b3;
|
|
20310
|
+
return (_b3 = (_a3 = searchWholeObjByName(what, where)) == null ? void 0 : _a3[0]) == null ? void 0 : _b3.value;
|
|
20295
20311
|
}
|
|
20296
20312
|
__name(searchWholeObjByNameSimpleArray, "searchWholeObjByNameSimpleArray");
|
|
20297
20313
|
var validator$2 = {};
|
|
@@ -20719,7 +20735,7 @@ const buildOptions$1 = /* @__PURE__ */ __name(function(options) {
|
|
|
20719
20735
|
}, "buildOptions$1");
|
|
20720
20736
|
OptionsBuilder.buildOptions = buildOptions$1;
|
|
20721
20737
|
OptionsBuilder.defaultOptions = defaultOptions$1;
|
|
20722
|
-
class
|
|
20738
|
+
const _XmlNode = class _XmlNode {
|
|
20723
20739
|
constructor(tagname) {
|
|
20724
20740
|
this.tagname = tagname;
|
|
20725
20741
|
this.child = [];
|
|
@@ -20739,8 +20755,9 @@ class XmlNode {
|
|
|
20739
20755
|
this.child.push({ [node.tagname]: node.child });
|
|
20740
20756
|
}
|
|
20741
20757
|
}
|
|
20742
|
-
}
|
|
20743
|
-
__name(
|
|
20758
|
+
};
|
|
20759
|
+
__name(_XmlNode, "XmlNode");
|
|
20760
|
+
let XmlNode = _XmlNode;
|
|
20744
20761
|
var xmlNode$1 = XmlNode;
|
|
20745
20762
|
const util$2 = util$4;
|
|
20746
20763
|
function readDocType$1(xmlData, i) {
|
|
@@ -20951,7 +20968,7 @@ const xmlNode = xmlNode$1;
|
|
|
20951
20968
|
const readDocType = DocTypeReader;
|
|
20952
20969
|
const toNumber = strnum;
|
|
20953
20970
|
"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g, util$1.nameRegexp);
|
|
20954
|
-
let OrderedObjParser$1 =
|
|
20971
|
+
let OrderedObjParser$1 = (_a = class {
|
|
20955
20972
|
constructor(options) {
|
|
20956
20973
|
this.options = options;
|
|
20957
20974
|
this.currentNode = null;
|
|
@@ -20990,7 +21007,7 @@ let OrderedObjParser$1 = /* @__PURE__ */ __name(class OrderedObjParser {
|
|
|
20990
21007
|
this.saveTextToParentTag = saveTextToParentTag;
|
|
20991
21008
|
this.addChild = addChild;
|
|
20992
21009
|
}
|
|
20993
|
-
}, "OrderedObjParser");
|
|
21010
|
+
}, __name(_a, "OrderedObjParser"), _a);
|
|
20994
21011
|
function addExternalEntities(externalEntities) {
|
|
20995
21012
|
const entKeys = Object.keys(externalEntities);
|
|
20996
21013
|
for (let i = 0; i < entKeys.length; i++) {
|
|
@@ -21222,6 +21239,7 @@ const parseXml = /* @__PURE__ */ __name(function(xmlData) {
|
|
|
21222
21239
|
if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
|
|
21223
21240
|
if (tagName[tagName.length - 1] === "/") {
|
|
21224
21241
|
tagName = tagName.substr(0, tagName.length - 1);
|
|
21242
|
+
jPath = jPath.substr(0, jPath.length - 1);
|
|
21225
21243
|
tagExp = tagName;
|
|
21226
21244
|
} else {
|
|
21227
21245
|
tagExp = tagExp.substr(0, tagExp.length - 1);
|
|
@@ -21539,10 +21557,10 @@ function isLeafTag(obj, options) {
|
|
|
21539
21557
|
__name(isLeafTag, "isLeafTag");
|
|
21540
21558
|
node2json.prettify = prettify$1;
|
|
21541
21559
|
const { buildOptions } = OptionsBuilder;
|
|
21542
|
-
const
|
|
21560
|
+
const OrderedObjParser = OrderedObjParser_1;
|
|
21543
21561
|
const { prettify } = node2json;
|
|
21544
21562
|
const validator$1 = validator$2;
|
|
21545
|
-
let XMLParser$1 =
|
|
21563
|
+
let XMLParser$1 = (_b = class {
|
|
21546
21564
|
constructor(options) {
|
|
21547
21565
|
this.externalEntities = {};
|
|
21548
21566
|
this.options = buildOptions(options);
|
|
@@ -21568,7 +21586,7 @@ let XMLParser$1 = /* @__PURE__ */ __name(class XMLParser {
|
|
|
21568
21586
|
throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
|
|
21569
21587
|
}
|
|
21570
21588
|
}
|
|
21571
|
-
const orderedObjParser = new
|
|
21589
|
+
const orderedObjParser = new OrderedObjParser(this.options);
|
|
21572
21590
|
orderedObjParser.addExternalEntities(this.externalEntities);
|
|
21573
21591
|
const orderedResult = orderedObjParser.parseXml(xmlData);
|
|
21574
21592
|
if (this.options.preserveOrder || orderedResult === void 0)
|
|
@@ -21592,7 +21610,7 @@ let XMLParser$1 = /* @__PURE__ */ __name(class XMLParser {
|
|
|
21592
21610
|
this.externalEntities[key] = value;
|
|
21593
21611
|
}
|
|
21594
21612
|
}
|
|
21595
|
-
}, "XMLParser");
|
|
21613
|
+
}, __name(_b, "XMLParser"), _b);
|
|
21596
21614
|
var XMLParser_1 = XMLParser$1;
|
|
21597
21615
|
const EOL = "\n";
|
|
21598
21616
|
function toXml(jArray, options) {
|
|
@@ -21797,13 +21815,18 @@ Builder.prototype.j2x = function(jObj, level) {
|
|
|
21797
21815
|
let attrStr = "";
|
|
21798
21816
|
let val2 = "";
|
|
21799
21817
|
for (let key in jObj) {
|
|
21800
|
-
if (typeof jObj[key] === "undefined")
|
|
21801
|
-
|
|
21802
|
-
|
|
21803
|
-
|
|
21818
|
+
if (typeof jObj[key] === "undefined") {
|
|
21819
|
+
if (this.isAttribute(key)) {
|
|
21820
|
+
val2 += "";
|
|
21821
|
+
}
|
|
21822
|
+
} else if (jObj[key] === null) {
|
|
21823
|
+
if (this.isAttribute(key)) {
|
|
21824
|
+
val2 += "";
|
|
21825
|
+
} else if (key[0] === "?") {
|
|
21804
21826
|
val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
|
|
21805
|
-
else
|
|
21827
|
+
} else {
|
|
21806
21828
|
val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
|
|
21829
|
+
}
|
|
21807
21830
|
} else if (jObj[key] instanceof Date) {
|
|
21808
21831
|
val2 += this.buildTextValNode(jObj[key], key, "", level);
|
|
21809
21832
|
} else if (typeof jObj[key] !== "object") {
|
|
@@ -21889,7 +21912,7 @@ Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
|
|
|
21889
21912
|
piClosingChar = "?";
|
|
21890
21913
|
tagEndExp = "";
|
|
21891
21914
|
}
|
|
21892
|
-
if (attrStr && val2.indexOf("<") === -1) {
|
|
21915
|
+
if ((attrStr || attrStr === "") && val2.indexOf("<") === -1) {
|
|
21893
21916
|
return this.indentate(level) + "<" + key + attrStr + piClosingChar + ">" + val2 + tagEndExp;
|
|
21894
21917
|
} else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
|
|
21895
21918
|
return this.indentate(level) + `<!--${val2}-->` + this.newLine;
|
|
@@ -21941,7 +21964,7 @@ function indentate(level) {
|
|
|
21941
21964
|
}
|
|
21942
21965
|
__name(indentate, "indentate");
|
|
21943
21966
|
function isAttribute(name) {
|
|
21944
|
-
if (name.startsWith(this.options.attributeNamePrefix)) {
|
|
21967
|
+
if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
|
|
21945
21968
|
return name.substr(this.attrPrefixLen);
|
|
21946
21969
|
} else {
|
|
21947
21970
|
return false;
|
|
@@ -21950,10 +21973,10 @@ function isAttribute(name) {
|
|
|
21950
21973
|
__name(isAttribute, "isAttribute");
|
|
21951
21974
|
var json2xml = Builder;
|
|
21952
21975
|
const validator = validator$2;
|
|
21953
|
-
const
|
|
21976
|
+
const XMLParser = XMLParser_1;
|
|
21954
21977
|
const XMLBuilder = json2xml;
|
|
21955
21978
|
var fxp = {
|
|
21956
|
-
XMLParser
|
|
21979
|
+
XMLParser,
|
|
21957
21980
|
XMLValidator: validator,
|
|
21958
21981
|
XMLBuilder
|
|
21959
21982
|
};
|
|
@@ -22069,19 +22092,6 @@ function parseSbolJson(sbolJson, options) {
|
|
|
22069
22092
|
};
|
|
22070
22093
|
}
|
|
22071
22094
|
__name(parseSbolJson, "parseSbolJson");
|
|
22072
|
-
function extractFileExtension(name) {
|
|
22073
|
-
if (typeof name === "string") {
|
|
22074
|
-
let ext = "";
|
|
22075
|
-
const match = name.match(/\.(\w+)$/);
|
|
22076
|
-
if (match && match[1]) {
|
|
22077
|
-
ext = match[1];
|
|
22078
|
-
}
|
|
22079
|
-
return ext;
|
|
22080
|
-
} else {
|
|
22081
|
-
return "";
|
|
22082
|
-
}
|
|
22083
|
-
}
|
|
22084
|
-
__name(extractFileExtension, "extractFileExtension");
|
|
22085
22095
|
/*!
|
|
22086
22096
|
* Copyright 2008 Fair Oaks Labs, Inc.
|
|
22087
22097
|
* All rights reserved.
|
|
@@ -25884,7 +25894,8 @@ var buffer$1 = {};
|
|
|
25884
25894
|
}, "fill");
|
|
25885
25895
|
const errors = {};
|
|
25886
25896
|
function E(sym, getMessage, Base) {
|
|
25887
|
-
|
|
25897
|
+
var _a3;
|
|
25898
|
+
errors[sym] = (_a3 = class extends Base {
|
|
25888
25899
|
constructor() {
|
|
25889
25900
|
super();
|
|
25890
25901
|
Object.defineProperty(this, "message", {
|
|
@@ -25910,7 +25921,7 @@ var buffer$1 = {};
|
|
|
25910
25921
|
toString() {
|
|
25911
25922
|
return `${this.name} [${sym}]: ${this.message}`;
|
|
25912
25923
|
}
|
|
25913
|
-
}, "NodeError");
|
|
25924
|
+
}, __name(_a3, "NodeError"), _a3);
|
|
25914
25925
|
}
|
|
25915
25926
|
__name(E, "E");
|
|
25916
25927
|
E(
|
|
@@ -29393,7 +29404,7 @@ const containerAttributes = {
|
|
|
29393
29404
|
Parent: "child_features",
|
|
29394
29405
|
Derives_from: "derived_features"
|
|
29395
29406
|
};
|
|
29396
|
-
class
|
|
29407
|
+
const _FASTAParser = class _FASTAParser {
|
|
29397
29408
|
constructor(seqCallback) {
|
|
29398
29409
|
this.seqCallback = seqCallback;
|
|
29399
29410
|
this.currentSequence = void 0;
|
|
@@ -29416,9 +29427,10 @@ class FASTAParser {
|
|
|
29416
29427
|
finish() {
|
|
29417
29428
|
this._flush();
|
|
29418
29429
|
}
|
|
29419
|
-
}
|
|
29420
|
-
__name(
|
|
29421
|
-
|
|
29430
|
+
};
|
|
29431
|
+
__name(_FASTAParser, "FASTAParser");
|
|
29432
|
+
let FASTAParser = _FASTAParser;
|
|
29433
|
+
const _Parser = class _Parser {
|
|
29422
29434
|
constructor(args) {
|
|
29423
29435
|
this.fastaParser = void 0;
|
|
29424
29436
|
this.eof = false;
|
|
@@ -29537,14 +29549,14 @@ class Parser {
|
|
|
29537
29549
|
}
|
|
29538
29550
|
// do the right thing with a newly-parsed feature line
|
|
29539
29551
|
_bufferLine(line) {
|
|
29540
|
-
var
|
|
29552
|
+
var _a3, _b3, _c;
|
|
29541
29553
|
const rawFeatureLine = parseFeature(line);
|
|
29542
29554
|
const featureLine = __spreadProps(__spreadValues({}, rawFeatureLine), {
|
|
29543
29555
|
child_features: [],
|
|
29544
29556
|
derived_features: []
|
|
29545
29557
|
});
|
|
29546
|
-
const ids = ((
|
|
29547
|
-
const parents = ((
|
|
29558
|
+
const ids = ((_a3 = featureLine.attributes) === null || _a3 === void 0 ? void 0 : _a3.ID) || [];
|
|
29559
|
+
const parents = ((_b3 = featureLine.attributes) === null || _b3 === void 0 ? void 0 : _b3.Parent) || [];
|
|
29548
29560
|
const derives = this.disableDerivesFromReferences ? [] : ((_c = featureLine.attributes) === null || _c === void 0 ? void 0 : _c.Derives_from) || [];
|
|
29549
29561
|
if (!ids.length && !parents.length && !derives.length) {
|
|
29550
29562
|
this._emitItem([featureLine]);
|
|
@@ -29642,8 +29654,9 @@ class Parser {
|
|
|
29642
29654
|
}
|
|
29643
29655
|
});
|
|
29644
29656
|
}
|
|
29645
|
-
}
|
|
29646
|
-
__name(
|
|
29657
|
+
};
|
|
29658
|
+
__name(_Parser, "Parser");
|
|
29659
|
+
let Parser = _Parser;
|
|
29647
29660
|
function _callback(callback) {
|
|
29648
29661
|
if (process && process.nextTick)
|
|
29649
29662
|
process.nextTick(callback);
|
|
@@ -29670,7 +29683,7 @@ function _processParseOptions(options) {
|
|
|
29670
29683
|
return out;
|
|
29671
29684
|
}
|
|
29672
29685
|
__name(_processParseOptions, "_processParseOptions");
|
|
29673
|
-
class
|
|
29686
|
+
const _GFFTransform = class _GFFTransform extends streamBrowserify.Transform {
|
|
29674
29687
|
constructor(inputOptions = {}) {
|
|
29675
29688
|
super({ objectMode: true });
|
|
29676
29689
|
this.textBuffer = "";
|
|
@@ -29710,8 +29723,9 @@ class GFFTransform extends streamBrowserify.Transform {
|
|
|
29710
29723
|
this.parser.finish();
|
|
29711
29724
|
_callback(callback);
|
|
29712
29725
|
}
|
|
29713
|
-
}
|
|
29714
|
-
__name(
|
|
29726
|
+
};
|
|
29727
|
+
__name(_GFFTransform, "GFFTransform");
|
|
29728
|
+
let GFFTransform = _GFFTransform;
|
|
29715
29729
|
function parseStream(options = {}) {
|
|
29716
29730
|
return new GFFTransform(options);
|
|
29717
29731
|
}
|
|
@@ -29755,7 +29769,7 @@ function formatSync(items) {
|
|
|
29755
29769
|
return str;
|
|
29756
29770
|
}
|
|
29757
29771
|
__name(formatSync, "formatSync");
|
|
29758
|
-
class
|
|
29772
|
+
const _FormattingTransform = class _FormattingTransform extends streamBrowserify.Transform {
|
|
29759
29773
|
constructor(options = {}) {
|
|
29760
29774
|
super(Object.assign(options, { objectMode: true }));
|
|
29761
29775
|
this.linesSinceLastSyncMark = 0;
|
|
@@ -29797,8 +29811,9 @@ class FormattingTransform extends streamBrowserify.Transform {
|
|
|
29797
29811
|
this.haveWeEmittedData = true;
|
|
29798
29812
|
_callback(callback);
|
|
29799
29813
|
}
|
|
29800
|
-
}
|
|
29801
|
-
__name(
|
|
29814
|
+
};
|
|
29815
|
+
__name(_FormattingTransform, "FormattingTransform");
|
|
29816
|
+
let FormattingTransform = _FormattingTransform;
|
|
29802
29817
|
function formatStream(options = {}) {
|
|
29803
29818
|
return new FormattingTransform(options);
|
|
29804
29819
|
}
|
|
@@ -29902,8 +29917,8 @@ function geneiousXmlToJson(string, options) {
|
|
|
29902
29917
|
const toRet = lodashExports.filter(
|
|
29903
29918
|
resultArray,
|
|
29904
29919
|
(r) => {
|
|
29905
|
-
var
|
|
29906
|
-
return (
|
|
29920
|
+
var _a3, _b3;
|
|
29921
|
+
return (_b3 = (_a3 = r == null ? void 0 : r.parsedSequence) == null ? void 0 : _a3.sequence) == null ? void 0 : _b3.length;
|
|
29907
29922
|
}
|
|
29908
29923
|
);
|
|
29909
29924
|
if (toRet.length)
|
|
@@ -30013,8 +30028,8 @@ function jbeiXmlToJson(string, options) {
|
|
|
30013
30028
|
const toRet = lodashExports.filter(
|
|
30014
30029
|
resultArray,
|
|
30015
30030
|
(r) => {
|
|
30016
|
-
var
|
|
30017
|
-
return (
|
|
30031
|
+
var _a3, _b3;
|
|
30032
|
+
return (_b3 = (_a3 = r == null ? void 0 : r.parsedSequence) == null ? void 0 : _a3.sequence) == null ? void 0 : _b3.length;
|
|
30018
30033
|
}
|
|
30019
30034
|
);
|
|
30020
30035
|
if (toRet.length)
|
|
@@ -30161,9 +30176,9 @@ var freb = /* @__PURE__ */ __name(function(eb, start) {
|
|
|
30161
30176
|
}
|
|
30162
30177
|
return { b, r };
|
|
30163
30178
|
}, "freb");
|
|
30164
|
-
var
|
|
30179
|
+
var _a2 = freb(fleb, 2), fl = _a2.b, revfl = _a2.r;
|
|
30165
30180
|
fl[28] = 258, revfl[258] = 28;
|
|
30166
|
-
var
|
|
30181
|
+
var _b2 = freb(fdeb, 0), fd = _b2.b;
|
|
30167
30182
|
var rev = new u16(32768);
|
|
30168
30183
|
for (var i = 0; i < 32768; ++i) {
|
|
30169
30184
|
var x = (i & 43690) >> 1 | (i & 21845) << 1;
|
|
@@ -30466,7 +30481,7 @@ function strFromU8(dat, latin1) {
|
|
|
30466
30481
|
} else if (td) {
|
|
30467
30482
|
return td.decode(dat);
|
|
30468
30483
|
} else {
|
|
30469
|
-
var
|
|
30484
|
+
var _a3 = dutf8(dat), s = _a3.s, r = _a3.r;
|
|
30470
30485
|
if (r.length)
|
|
30471
30486
|
err(8);
|
|
30472
30487
|
return s;
|
|
@@ -30478,7 +30493,7 @@ var slzh = /* @__PURE__ */ __name(function(d, b) {
|
|
|
30478
30493
|
}, "slzh");
|
|
30479
30494
|
var zh = /* @__PURE__ */ __name(function(d, b, z) {
|
|
30480
30495
|
var fnl = b2(d, b + 28), fn = strFromU8(d.subarray(b + 46, b + 46 + fnl), !(b2(d, b + 8) & 2048)), es = b + 46 + fnl, bs = b4(d, b + 20);
|
|
30481
|
-
var
|
|
30496
|
+
var _a3 = z && bs == 4294967295 ? z64e(d, es) : [bs, b4(d, b + 24), b4(d, b + 42)], sc = _a3[0], su = _a3[1], off = _a3[2];
|
|
30482
30497
|
return [b2(d, b + 10), sc, su, fn, es + b2(d, b + 30) + b2(d, b + 32), off];
|
|
30483
30498
|
}, "zh");
|
|
30484
30499
|
var z64e = /* @__PURE__ */ __name(function(d, b) {
|
|
@@ -30508,7 +30523,7 @@ function unzipSync(data, opts) {
|
|
|
30508
30523
|
}
|
|
30509
30524
|
var fltr = opts && opts.filter;
|
|
30510
30525
|
for (var i = 0; i < c; ++i) {
|
|
30511
|
-
var
|
|
30526
|
+
var _a3 = zh(data, o, z), c_2 = _a3[0], sc = _a3[1], su = _a3[2], fn = _a3[3], no = _a3[4], off = _a3[5], b = slzh(data, off);
|
|
30512
30527
|
o = no;
|
|
30513
30528
|
if (!fltr || fltr({
|
|
30514
30529
|
name: fn,
|
|
@@ -30567,7 +30582,7 @@ function anyToJson(fileContentStringOrFileObj, options) {
|
|
|
30567
30582
|
);
|
|
30568
30583
|
}
|
|
30569
30584
|
}
|
|
30570
|
-
if (/^(fasta|fas|fa|fna|ffn)$/.test(ext)) {
|
|
30585
|
+
if (/^(fasta|fas|fa|fna|ffn|faa)$/.test(ext)) {
|
|
30571
30586
|
return fastaToJson(fileContentString, options);
|
|
30572
30587
|
} else if (/^(gb|gbk)$/.test(ext)) {
|
|
30573
30588
|
return genbankToJson(fileContentString, options);
|
|
@@ -32396,7 +32411,7 @@ function jsonToGenbank(_serSeq, options) {
|
|
|
32396
32411
|
}
|
|
32397
32412
|
__name(jsonToGenbank, "jsonToGenbank");
|
|
32398
32413
|
function createGenbankLocus(serSeq, options) {
|
|
32399
|
-
var
|
|
32414
|
+
var _a3, _b3;
|
|
32400
32415
|
if (serSeq.sequence.symbols) {
|
|
32401
32416
|
serSeq.sequence = serSeq.sequence.symbols.split("");
|
|
32402
32417
|
}
|
|
@@ -32405,9 +32420,9 @@ function createGenbankLocus(serSeq, options) {
|
|
|
32405
32420
|
if (serSeq.isProtein) {
|
|
32406
32421
|
dnaType = "";
|
|
32407
32422
|
} else if (serSeq.type === "RNA") {
|
|
32408
|
-
dnaType = (serSeq == null ? void 0 : serSeq.doubleStranded) ? "RNA" : (
|
|
32423
|
+
dnaType = (serSeq == null ? void 0 : serSeq.doubleStranded) ? "RNA" : (_a3 = serSeq == null ? void 0 : serSeq.sequenceTypeFromLocus) != null ? _a3 : "ss-RNA";
|
|
32409
32424
|
} else {
|
|
32410
|
-
dnaType = (serSeq == null ? void 0 : serSeq.doubleStranded) ? "DNA" : (
|
|
32425
|
+
dnaType = (serSeq == null ? void 0 : serSeq.doubleStranded) ? "DNA" : (_b3 = serSeq == null ? void 0 : serSeq.sequenceTypeFromLocus) != null ? _b3 : "DNA";
|
|
32411
32426
|
}
|
|
32412
32427
|
const date = getCurrentDateString();
|
|
32413
32428
|
let line = StringUtil.rpad("LOCUS", " ", 12);
|