@gmod/cram 2.0.4 → 3.0.0
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/CHANGELOG.md +10 -0
- package/dist/cram-bundle.js +1 -1
- package/dist/cramFile/codecs/byteArrayLength.js +1 -1
- package/dist/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/dist/cramFile/codecs/external.js +1 -1
- package/dist/cramFile/codecs/external.js.map +1 -1
- package/dist/cramFile/codecs/huffman.js +2 -1
- package/dist/cramFile/codecs/huffman.js.map +1 -1
- package/dist/cramFile/container/compressionScheme.d.ts +0 -3
- package/dist/cramFile/container/compressionScheme.js +0 -4
- package/dist/cramFile/container/compressionScheme.js.map +1 -1
- package/dist/cramFile/container/index.d.ts +56 -3
- package/dist/cramFile/container/index.js +15 -9
- package/dist/cramFile/container/index.js.map +1 -1
- package/dist/cramFile/file.d.ts +24 -59
- package/dist/cramFile/file.js +21 -26
- package/dist/cramFile/file.js.map +1 -1
- package/dist/cramFile/record.d.ts +1 -1
- package/dist/cramFile/sectionParsers.d.ts +195 -48
- package/dist/cramFile/sectionParsers.js +621 -303
- package/dist/cramFile/sectionParsers.js.map +1 -1
- package/dist/cramFile/slice/index.d.ts +23 -1
- package/dist/cramFile/slice/index.js +9 -6
- package/dist/cramFile/slice/index.js.map +1 -1
- package/dist/cramFile/util.d.ts +6 -4
- package/dist/cramFile/util.js +88 -6
- package/dist/cramFile/util.js.map +1 -1
- package/esm/cramFile/codecs/byteArrayLength.js +1 -1
- package/esm/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/esm/cramFile/codecs/external.js +1 -1
- package/esm/cramFile/codecs/external.js.map +1 -1
- package/esm/cramFile/codecs/huffman.js +2 -1
- package/esm/cramFile/codecs/huffman.js.map +1 -1
- package/esm/cramFile/container/compressionScheme.d.ts +0 -3
- package/esm/cramFile/container/compressionScheme.js +0 -4
- package/esm/cramFile/container/compressionScheme.js.map +1 -1
- package/esm/cramFile/container/index.d.ts +56 -3
- package/esm/cramFile/container/index.js +15 -9
- package/esm/cramFile/container/index.js.map +1 -1
- package/esm/cramFile/file.d.ts +24 -59
- package/esm/cramFile/file.js +22 -25
- package/esm/cramFile/file.js.map +1 -1
- package/esm/cramFile/record.d.ts +1 -1
- package/esm/cramFile/sectionParsers.d.ts +195 -48
- package/esm/cramFile/sectionParsers.js +620 -303
- package/esm/cramFile/sectionParsers.js.map +1 -1
- package/esm/cramFile/slice/index.d.ts +23 -1
- package/esm/cramFile/slice/index.js +10 -7
- package/esm/cramFile/slice/index.js.map +1 -1
- package/esm/cramFile/util.d.ts +6 -4
- package/esm/cramFile/util.js +87 -6
- package/esm/cramFile/util.js.map +1 -1
- package/package.json +7 -8
- package/src/cramFile/codecs/byteArrayLength.ts +1 -2
- package/src/cramFile/codecs/external.ts +1 -1
- package/src/cramFile/codecs/huffman.ts +2 -1
- package/src/cramFile/container/compressionScheme.ts +1 -8
- package/src/cramFile/container/index.ts +21 -10
- package/src/cramFile/file.ts +28 -43
- package/src/cramFile/record.ts +1 -1
- package/src/cramFile/sectionParsers.ts +668 -390
- package/src/cramFile/slice/index.ts +11 -5
- package/src/cramFile/util.ts +90 -91
- package/src/typings/binary-parser.d.ts +0 -44
|
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const util_1 = require("../util");
|
|
7
6
|
const _base_1 = __importDefault(require("./_base"));
|
|
7
|
+
const util_1 = require("../util");
|
|
8
8
|
class ByteArrayStopCodec extends _base_1.default {
|
|
9
9
|
constructor(parameters, dataType, instantiateCodec) {
|
|
10
10
|
super(parameters, dataType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"byteArrayLength.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/byteArrayLength.ts"],"names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"byteArrayLength.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/byteArrayLength.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4C;AAK5C,kCAAqC;AAOrC,MAAqB,kBAAmB,SAAQ,eAG/C;IAGC,YACE,UAAiD,EACjD,QAAqB,EACrB,gBAAkC;QAElC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,IAAI,SAAS,CACjB,8CAA8C,QAAQ,EAAE,CACzD,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,CACJ,KAAgB,EAChB,aAA4B,EAC5B,iBAAgD,EAChD,OAAgB;QAEhB,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QAC1C,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CACpC,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,OAAO,CACR,CAAA;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACtC,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CACxB,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,OAAO,CACR,CAAA;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,UAAU;IACV,eAAe;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAA;QACtD,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;IACrD,CAAC;IAED,UAAU;IACV,aAAa;QACX,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAA;QACrD,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;IACtD,CAAC;CACF;AA3DD,qCA2DC;AAED,+BAA+B;KAC5B,KAAK,CAAC,GAAG,CAAC;KACV,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAA,kBAAW,EAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAA"}
|
|
@@ -25,7 +25,7 @@ class ExternalCodec extends _base_1.default {
|
|
|
25
25
|
const { blockContentId } = this.parameters;
|
|
26
26
|
const contentBlock = blocksByContentId[blockContentId];
|
|
27
27
|
if (!contentBlock) {
|
|
28
|
-
throw new errors_1.CramMalformedError(`no block found with content ID ${blockContentId}`);
|
|
28
|
+
throw new errors_1.CramMalformedError(`no block found with content ID ${blockContentId}}`);
|
|
29
29
|
}
|
|
30
30
|
const cursor = cursors.externalBlocks.getCursor(blockContentId);
|
|
31
31
|
return this._decodeData(contentBlock, cursor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/external.ts"],"names":[],"mappings":";;;;;AAAA,sDAAsD;AACtD,yCAAyE;AACzE,oDAAoD;AACpD,kCAAmC;AAGnC,uCAAkD;AAGlD,MAAqB,aAAc,SAAQ,eAG1C;IAMC,YACE,UAA8C,EAC9C,QAAwB;QAExB,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAA;QACpC,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,+BAAsB,CAC9B,GAAG,IAAI,CAAC,QAAQ,iDAAiD,CAClE,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,CACJ,KAAgB,EAChB,aAA4B,EAC5B,iBAAgD,EAChD,OAAgB;QAEhB,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,UAAU,CAAA;QAC1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;QACtD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,2BAAkB,CAC1B,kCAAkC,cAAc,
|
|
1
|
+
{"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/external.ts"],"names":[],"mappings":";;;;;AAAA,sDAAsD;AACtD,yCAAyE;AACzE,oDAAoD;AACpD,kCAAmC;AAGnC,uCAAkD;AAGlD,MAAqB,aAAc,SAAQ,eAG1C;IAMC,YACE,UAA8C,EAC9C,QAAwB;QAExB,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAA;QACpC,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,+BAAsB,CAC9B,GAAG,IAAI,CAAC,QAAQ,iDAAiD,CAClE,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,CACJ,KAAgB,EAChB,aAA4B,EAC5B,iBAAgD,EAChD,OAAgB;QAEhB,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,UAAU,CAAA;QAC1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;QACtD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,2BAAkB,CAC1B,kCAAkC,cAAc,GAAG,CACpD,CAAA;QACH,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;IAC/C,CAAC;IAED,UAAU,CAAC,YAA2B,EAAE,MAAc;QACpD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAS,EACnC,YAAY,CAAC,OAAO,EACpB,MAAM,CAAC,YAAY,CACpB,CAAA;QACD,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,GAAG,SAAS,CAAA;QACrD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,WAAW,CAAC,YAA2B,EAAE,MAAc;QACrD,IAAI,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,gCAAsB,CAC9B,mEAAmE,CACpE,CAAA;QACH,CAAC;QACD,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAA;IACpD,CAAC;CACF;AA3DD,gCA2DC"}
|
|
@@ -28,7 +28,8 @@ class HuffmanIntCodec extends _base_1.default {
|
|
|
28
28
|
this.buildCodeBook();
|
|
29
29
|
this.buildCodes();
|
|
30
30
|
this.buildCaches();
|
|
31
|
-
// if this is a degenerate zero-length huffman code, special-case the
|
|
31
|
+
// if this is a degenerate zero-length huffman code, special-case the
|
|
32
|
+
// decoding
|
|
32
33
|
if (this.sortedCodes[0].bitLength === 0) {
|
|
33
34
|
this._decode = this._decodeZeroLengthCode;
|
|
34
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"huffman.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/huffman.ts"],"names":[],"mappings":";;;;;AAAA,sDAAsD;AACtD,yCAAiD;AACjD,oDAAoD;AACpD,uCAAmC;AAMnC,SAAS,eAAe,CAAC,EAAU;IACjC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAA;IACrC,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;IAC9C,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAA;AAC3D,CAAC;AAQD,MAAqB,eAAgB,SAAQ,eAG5C;IASC,YACE,UAAyC,EACzC,QAAwB;QAExB,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAZrB,UAAK,GAAyB,EAAE,CAAA;QAChC,aAAQ,GAA6B,EAAE,CAAA;QACvC,gBAAW,GAAW,EAAE,CAAA;QACxB,0BAAqB,GAAa,EAAE,CAAA;QACpC,mBAAc,GAAa,EAAE,CAAA;QAC7B,8BAAyB,GAAa,EAAE,CAAA;QACxC,mBAAc,GAAa,EAAE,CAAA;QAOnC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,SAAS,CACjB,GAAG,IAAI,CAAC,QAAQ,oDAAoD,CACrE,CAAA;QACH,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,WAAW,EAAE,CAAA;QAElB,
|
|
1
|
+
{"version":3,"file":"huffman.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/huffman.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,9 +48,6 @@ export default class CramContainerCompressionScheme {
|
|
|
48
48
|
tagCodecCache: Record<string, CramCodec>;
|
|
49
49
|
tagEncoding: Record<string, CramEncoding>;
|
|
50
50
|
dataSeriesEncoding: DataSeriesEncodingMap;
|
|
51
|
-
private preservation;
|
|
52
|
-
private _endPosition;
|
|
53
|
-
private _size;
|
|
54
51
|
constructor(content: CramCompressionHeader);
|
|
55
52
|
/**
|
|
56
53
|
* @param {string} tagName three-character tag name
|
|
@@ -70,7 +70,6 @@ class CramContainerCompressionScheme {
|
|
|
70
70
|
this.dataSeriesCodecCache = {};
|
|
71
71
|
this.tagCodecCache = {};
|
|
72
72
|
this.tagEncoding = {};
|
|
73
|
-
// Object.assign(this, content)
|
|
74
73
|
// interpret some of the preservation map tags for convenient use
|
|
75
74
|
this.readNamesIncluded = content.preservation.RN;
|
|
76
75
|
this.APdelta = content.preservation.AP;
|
|
@@ -79,9 +78,6 @@ class CramContainerCompressionScheme {
|
|
|
79
78
|
this.substitutionMatrix = parseSubstitutionMatrix(content.preservation.SM);
|
|
80
79
|
this.dataSeriesEncoding = content.dataSeriesEncoding;
|
|
81
80
|
this.tagEncoding = content.tagEncoding;
|
|
82
|
-
this.preservation = content.preservation;
|
|
83
|
-
this._size = content._size;
|
|
84
|
-
this._endPosition = content._endPosition;
|
|
85
81
|
}
|
|
86
82
|
/**
|
|
87
83
|
* @param {string} tagName three-character tag name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compressionScheme.js","sourceRoot":"","sources":["../../../src/cramFile/container/compressionScheme.ts"],"names":[],"mappings":";;AAAA,sCAA4C;AAI5C,yCAAiD;AAMjD,sDAAsD;AACtD,aAAa;AACb,MAAM,eAAe,GAAG;IACtB,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,gBAAgB;IAChB,gBAAgB;CACR,CAAA;AAIV,SAAS,uBAAuB,CAAC,SAAmB;IAClD,MAAM,MAAM,GAAe,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,OAAO,MAAM,CAAA;AACf,CAAC;AAMD,MAAqB,8BAA8B;
|
|
1
|
+
{"version":3,"file":"compressionScheme.js","sourceRoot":"","sources":["../../../src/cramFile/container/compressionScheme.ts"],"names":[],"mappings":";;AAAA,sCAA4C;AAI5C,yCAAiD;AAMjD,sDAAsD;AACtD,aAAa;AACb,MAAM,eAAe,GAAG;IACtB,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,KAAK;IACT,gBAAgB;IAChB,gBAAgB;CACR,CAAA;AAIV,SAAS,uBAAuB,CAAC,SAAmB;IAClD,MAAM,MAAM,GAAe,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAExC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CA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"}
|
|
@@ -5,9 +5,39 @@ export default class CramContainer {
|
|
|
5
5
|
file: CramFile;
|
|
6
6
|
filePosition: number;
|
|
7
7
|
constructor(file: CramFile, filePosition: number);
|
|
8
|
-
getHeader(): Promise<
|
|
8
|
+
getHeader(): Promise<({
|
|
9
|
+
length: number;
|
|
10
|
+
refSeqId: number;
|
|
11
|
+
refSeqStart: number;
|
|
12
|
+
alignmentSpan: number;
|
|
13
|
+
numBlocks: number;
|
|
14
|
+
numLandmarks: number;
|
|
15
|
+
numBases: number | undefined;
|
|
16
|
+
recordCounter: number;
|
|
17
|
+
numRecords: number;
|
|
18
|
+
} & {
|
|
19
|
+
_endPosition: number;
|
|
20
|
+
_size: number;
|
|
21
|
+
} & {
|
|
22
|
+
numLandmarks: number;
|
|
23
|
+
landmarks: number[];
|
|
24
|
+
crc32?: number | undefined;
|
|
25
|
+
} & {
|
|
26
|
+
_endPosition: number;
|
|
27
|
+
_size: number;
|
|
28
|
+
} & {
|
|
29
|
+
_size: number;
|
|
30
|
+
_endPosition: number;
|
|
31
|
+
}) | undefined>;
|
|
9
32
|
getCompressionHeaderBlock(): Promise<{
|
|
10
|
-
parsedContent:
|
|
33
|
+
parsedContent: {
|
|
34
|
+
dataSeriesEncoding: import("../codecs/dataSeriesTypes").DataSeriesEncodingMap;
|
|
35
|
+
preservation: import("../sectionParsers").CramPreservationMap;
|
|
36
|
+
tagEncoding: Record<string, import("../encoding").CramEncoding>;
|
|
37
|
+
} & {
|
|
38
|
+
_endPosition: number;
|
|
39
|
+
_size: number;
|
|
40
|
+
};
|
|
11
41
|
compressionMethod: import("../sectionParsers").CompressionMethod;
|
|
12
42
|
contentType: "FILE_HEADER" | "COMPRESSION_HEADER" | "MAPPED_SLICE_HEADER" | "UNMAPPED_SLICE_HEADER" | "EXTERNAL_DATA" | "CORE_DATA";
|
|
13
43
|
contentId: number;
|
|
@@ -22,5 +52,28 @@ export default class CramContainer {
|
|
|
22
52
|
getFirstBlock(): Promise<import("../file").CramFileBlock | undefined>;
|
|
23
53
|
getCompressionScheme(): Promise<CramContainerCompressionScheme | undefined>;
|
|
24
54
|
getSlice(slicePosition: number, sliceSize: number): CramSlice;
|
|
25
|
-
_readContainerHeader(position: number): Promise<
|
|
55
|
+
_readContainerHeader(position: number): Promise<({
|
|
56
|
+
length: number;
|
|
57
|
+
refSeqId: number;
|
|
58
|
+
refSeqStart: number;
|
|
59
|
+
alignmentSpan: number;
|
|
60
|
+
numBlocks: number;
|
|
61
|
+
numLandmarks: number;
|
|
62
|
+
numBases: number | undefined;
|
|
63
|
+
recordCounter: number;
|
|
64
|
+
numRecords: number;
|
|
65
|
+
} & {
|
|
66
|
+
_endPosition: number;
|
|
67
|
+
_size: number;
|
|
68
|
+
} & {
|
|
69
|
+
numLandmarks: number;
|
|
70
|
+
landmarks: number[];
|
|
71
|
+
crc32?: number | undefined;
|
|
72
|
+
} & {
|
|
73
|
+
_endPosition: number;
|
|
74
|
+
_size: number;
|
|
75
|
+
} & {
|
|
76
|
+
_size: number;
|
|
77
|
+
_endPosition: number;
|
|
78
|
+
}) | undefined>;
|
|
26
79
|
}
|
|
@@ -16,24 +16,25 @@ const errors_1 = require("../../errors");
|
|
|
16
16
|
const util_1 = require("../util");
|
|
17
17
|
const slice_1 = __importDefault(require("../slice"));
|
|
18
18
|
const compressionScheme_1 = __importDefault(require("./compressionScheme"));
|
|
19
|
+
const sectionParsers_1 = require("../sectionParsers");
|
|
19
20
|
class CramContainer {
|
|
20
21
|
constructor(file, filePosition) {
|
|
21
22
|
this.file = file;
|
|
22
23
|
this.filePosition = filePosition;
|
|
23
24
|
}
|
|
24
|
-
// memoize
|
|
25
25
|
getHeader() {
|
|
26
26
|
return this._readContainerHeader(this.filePosition);
|
|
27
27
|
}
|
|
28
|
-
// memoize
|
|
29
28
|
getCompressionHeaderBlock() {
|
|
30
29
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
30
|
const containerHeader = yield this.getHeader();
|
|
32
|
-
// if there are no records in the container, there will be no compression
|
|
33
|
-
|
|
31
|
+
// if there are no records in the container, there will be no compression
|
|
32
|
+
// header
|
|
33
|
+
if (!(containerHeader === null || containerHeader === void 0 ? void 0 : containerHeader.numRecords)) {
|
|
34
34
|
return null;
|
|
35
35
|
}
|
|
36
|
-
const
|
|
36
|
+
const { majorVersion } = yield this.file.getDefinition();
|
|
37
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
37
38
|
const block = yield this.getFirstBlock();
|
|
38
39
|
if (block === undefined) {
|
|
39
40
|
return undefined;
|
|
@@ -48,11 +49,14 @@ class CramContainer {
|
|
|
48
49
|
getFirstBlock() {
|
|
49
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
50
51
|
const containerHeader = yield this.getHeader();
|
|
52
|
+
if (!containerHeader) {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
51
55
|
return this.file.readBlock(containerHeader._endPosition);
|
|
52
56
|
});
|
|
53
57
|
}
|
|
54
|
-
// parses the compression header data into a CramContainerCompressionScheme
|
|
55
|
-
//
|
|
58
|
+
// parses the compression header data into a CramContainerCompressionScheme
|
|
59
|
+
// object
|
|
56
60
|
getCompressionScheme() {
|
|
57
61
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
62
|
const header = yield this.getCompressionHeaderBlock();
|
|
@@ -69,10 +73,12 @@ class CramContainer {
|
|
|
69
73
|
}
|
|
70
74
|
_readContainerHeader(position) {
|
|
71
75
|
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
const
|
|
76
|
+
const { majorVersion } = yield this.file.getDefinition();
|
|
77
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
73
78
|
const { cramContainerHeader1, cramContainerHeader2 } = sectionParsers;
|
|
74
79
|
const { size: fileSize } = yield this.file.stat();
|
|
75
80
|
if (position >= fileSize) {
|
|
81
|
+
console.warn(`position:${position}>=fileSize:${fileSize} in cram container`);
|
|
76
82
|
return undefined;
|
|
77
83
|
}
|
|
78
84
|
// parse the container header. do it in 2 pieces because you cannot tell
|
|
@@ -82,7 +88,7 @@ class CramContainer {
|
|
|
82
88
|
const header1 = (0, util_1.parseItem)(bytes1, cramContainerHeader1.parser);
|
|
83
89
|
const numLandmarksSize = (0, util_1.itf8Size)(header1.numLandmarks);
|
|
84
90
|
if (position + header1.length >= fileSize) {
|
|
85
|
-
console.warn(
|
|
91
|
+
console.warn(`container header at ${position} indicates that the container has length ${header1.length}, which extends beyond the length of the file. Skipping this container.`);
|
|
86
92
|
return undefined;
|
|
87
93
|
}
|
|
88
94
|
const bytes2 = Buffer.allocUnsafe(cramContainerHeader2.maxLength(header1.numLandmarks));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/container/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,yCAAiD;AAEjD,kCAA0D;AAC1D,qDAAgC;AAChC,4EAAgE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/container/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cramFile/file.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import QuickLRU from 'quick-lru';
|
|
2
|
-
import { Parser } from '@gmod/binary-parser';
|
|
3
2
|
import { BlockHeader, CompressionMethod } from './sectionParsers';
|
|
4
3
|
import CramContainer from './container';
|
|
5
4
|
import CramRecord from './record';
|
|
@@ -38,7 +37,12 @@ export default class CramFile {
|
|
|
38
37
|
buffer: Buffer;
|
|
39
38
|
}>;
|
|
40
39
|
stat(): Promise<import("generic-filehandle").Stats>;
|
|
41
|
-
getDefinition(): Promise<
|
|
40
|
+
getDefinition(): Promise<{
|
|
41
|
+
magic: string;
|
|
42
|
+
majorVersion: number;
|
|
43
|
+
minorVersion: number;
|
|
44
|
+
fileId: string;
|
|
45
|
+
}>;
|
|
42
46
|
getSamHeader(): Promise<{
|
|
43
47
|
tag: string;
|
|
44
48
|
data: {
|
|
@@ -47,60 +51,6 @@ export default class CramFile {
|
|
|
47
51
|
}[];
|
|
48
52
|
}[]>;
|
|
49
53
|
getHeaderText(): Promise<string | undefined>;
|
|
50
|
-
getSectionParsers(): Promise<{
|
|
51
|
-
cramFileDefinition: {
|
|
52
|
-
parser: Parser<{
|
|
53
|
-
magic: string;
|
|
54
|
-
majorVersion: number;
|
|
55
|
-
minorVersion: number;
|
|
56
|
-
fileId: string;
|
|
57
|
-
}>;
|
|
58
|
-
maxLength: number;
|
|
59
|
-
};
|
|
60
|
-
cramContainerHeader1: {
|
|
61
|
-
parser: Parser<{
|
|
62
|
-
length: number;
|
|
63
|
-
refSeqId: number;
|
|
64
|
-
refSeqStart: number;
|
|
65
|
-
alignmentSpan: number;
|
|
66
|
-
numRecords: number;
|
|
67
|
-
recordCounter: number;
|
|
68
|
-
numBases: number;
|
|
69
|
-
numBlocks: number;
|
|
70
|
-
numLandmarks: number;
|
|
71
|
-
}>;
|
|
72
|
-
maxLength: number;
|
|
73
|
-
};
|
|
74
|
-
cramContainerHeader2: {
|
|
75
|
-
parser: Parser<{
|
|
76
|
-
numLandmarks: number;
|
|
77
|
-
landmarks: number[];
|
|
78
|
-
crc32: number;
|
|
79
|
-
}>;
|
|
80
|
-
maxLength: (x: number) => number;
|
|
81
|
-
};
|
|
82
|
-
cramBlockHeader: {
|
|
83
|
-
parser: Parser<BlockHeader>;
|
|
84
|
-
maxLength: number;
|
|
85
|
-
};
|
|
86
|
-
cramBlockCrc32: {
|
|
87
|
-
parser: Parser<{
|
|
88
|
-
crc32: number;
|
|
89
|
-
}>;
|
|
90
|
-
maxLength: number;
|
|
91
|
-
};
|
|
92
|
-
cramCompressionHeader: {
|
|
93
|
-
parser: Parser<import("./sectionParsers").CramCompressionHeader>;
|
|
94
|
-
};
|
|
95
|
-
cramMappedSliceHeader: {
|
|
96
|
-
parser: Parser<import("./sectionParsers").MappedSliceHeader>;
|
|
97
|
-
maxLength: (numContentIds: number) => number;
|
|
98
|
-
};
|
|
99
|
-
cramUnmappedSliceHeader: {
|
|
100
|
-
parser: Parser<import("./sectionParsers").UnmappedSliceHeader>;
|
|
101
|
-
maxLength: (numContentIds: number) => number;
|
|
102
|
-
};
|
|
103
|
-
}>;
|
|
104
54
|
getContainerById(containerNumber: number): Promise<CramContainer | undefined>;
|
|
105
55
|
checkCrc32(position: number, length: number, recordedCrc32: number, description: string): Promise<void>;
|
|
106
56
|
/**
|
|
@@ -108,11 +58,26 @@ export default class CramFile {
|
|
|
108
58
|
*/
|
|
109
59
|
containerCount(): Promise<number | undefined>;
|
|
110
60
|
getContainerAtPosition(position: number): CramContainer;
|
|
111
|
-
readBlockHeader(position: number): Promise<
|
|
61
|
+
readBlockHeader(position: number): Promise<({
|
|
62
|
+
uncompressedSize: number;
|
|
63
|
+
compressedSize: number;
|
|
64
|
+
contentId: number;
|
|
65
|
+
contentType: "FILE_HEADER" | "COMPRESSION_HEADER" | "MAPPED_SLICE_HEADER" | "UNMAPPED_SLICE_HEADER" | "EXTERNAL_DATA" | "CORE_DATA";
|
|
66
|
+
compressionMethod: CompressionMethod;
|
|
67
|
+
} & {
|
|
68
|
+
_endPosition: number;
|
|
69
|
+
_size: number;
|
|
70
|
+
}) | undefined>;
|
|
112
71
|
_parseSection<T>(section: {
|
|
113
|
-
parser: Parser<T>;
|
|
114
72
|
maxLength: number;
|
|
115
|
-
|
|
73
|
+
parser: (buffer: Buffer, offset: number) => {
|
|
74
|
+
offset: number;
|
|
75
|
+
value: T;
|
|
76
|
+
};
|
|
77
|
+
}, position: number, size?: number, preReadBuffer?: undefined): Promise<(T & {
|
|
78
|
+
_endPosition: number;
|
|
79
|
+
_size: number;
|
|
80
|
+
}) | undefined>;
|
|
116
81
|
_uncompress(compressionMethod: CompressionMethod, inputBuffer: Buffer, outputBuffer: Buffer): Promise<void>;
|
|
117
82
|
readBlock(position: number): Promise<CramFileBlock | undefined>;
|
|
118
83
|
}
|
package/dist/cramFile/file.js
CHANGED
|
@@ -34,18 +34,18 @@ function bufferToStream(buf) {
|
|
|
34
34
|
},
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
|
-
//source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/
|
|
37
|
+
// source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/
|
|
38
38
|
function getEndianness() {
|
|
39
39
|
const uInt32 = new Uint32Array([0x11223344]);
|
|
40
40
|
const uInt8 = new Uint8Array(uInt32.buffer);
|
|
41
41
|
if (uInt8[0] === 0x44) {
|
|
42
|
-
return 0; //little-endian
|
|
42
|
+
return 0; // little-endian
|
|
43
43
|
}
|
|
44
44
|
else if (uInt8[0] === 0x11) {
|
|
45
|
-
return 1; //big-endian
|
|
45
|
+
return 1; // big-endian
|
|
46
46
|
}
|
|
47
47
|
else {
|
|
48
|
-
return 2; //mixed-endian?
|
|
48
|
+
return 2; // mixed-endian?
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
class CramFile {
|
|
@@ -80,10 +80,10 @@ class CramFile {
|
|
|
80
80
|
// memoized
|
|
81
81
|
getDefinition() {
|
|
82
82
|
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
const { maxLength, parser } = (0, sectionParsers_1.cramFileDefinition)();
|
|
84
|
+
const headbytes = Buffer.allocUnsafe(maxLength);
|
|
85
|
+
yield this.file.read(headbytes, 0, maxLength, 0);
|
|
86
|
+
const definition = parser(headbytes).value;
|
|
87
87
|
if (definition.majorVersion !== 2 && definition.majorVersion !== 3) {
|
|
88
88
|
throw new errors_1.CramUnimplementedError(`CRAM version ${definition.majorVersion} not supported`);
|
|
89
89
|
}
|
|
@@ -119,22 +119,16 @@ class CramFile {
|
|
|
119
119
|
return this.header;
|
|
120
120
|
});
|
|
121
121
|
}
|
|
122
|
-
// memoize
|
|
123
|
-
getSectionParsers() {
|
|
124
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
const { majorVersion } = yield this.getDefinition();
|
|
126
|
-
return (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
122
|
getContainerById(containerNumber) {
|
|
130
123
|
return __awaiter(this, void 0, void 0, function* () {
|
|
131
|
-
const
|
|
124
|
+
const { majorVersion } = yield this.getDefinition();
|
|
125
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
132
126
|
let position = sectionParsers.cramFileDefinition.maxLength;
|
|
133
127
|
const { size: fileSize } = yield this.file.stat();
|
|
134
128
|
const { cramContainerHeader1 } = sectionParsers;
|
|
135
129
|
// skip with a series of reads to the proper container
|
|
136
130
|
let currentContainer;
|
|
137
|
-
for (let i = 0; i <= containerNumber; i
|
|
131
|
+
for (let i = 0; i <= containerNumber; i++) {
|
|
138
132
|
// if we are about to go off the end of the file
|
|
139
133
|
// and have not found that container, it does not exist
|
|
140
134
|
if (position + cramContainerHeader1.maxLength + 8 >= fileSize) {
|
|
@@ -145,13 +139,12 @@ class CramFile {
|
|
|
145
139
|
if (!currentHeader) {
|
|
146
140
|
throw new errors_1.CramMalformedError(`container ${containerNumber} not found in file`);
|
|
147
141
|
}
|
|
148
|
-
// if this is the first container, read all the blocks in the
|
|
149
|
-
//
|
|
150
|
-
//
|
|
151
|
-
// in htslib
|
|
142
|
+
// if this is the first container, read all the blocks in the container
|
|
143
|
+
// to determine its length, because we cannot trust the container
|
|
144
|
+
// header's given length due to a bug somewhere in htslib
|
|
152
145
|
if (i === 0) {
|
|
153
146
|
position = currentHeader._endPosition;
|
|
154
|
-
for (let j = 0; j < currentHeader.numBlocks; j
|
|
147
|
+
for (let j = 0; j < currentHeader.numBlocks; j++) {
|
|
155
148
|
const block = yield this.readBlock(position);
|
|
156
149
|
if (block === undefined) {
|
|
157
150
|
return undefined;
|
|
@@ -182,7 +175,8 @@ class CramFile {
|
|
|
182
175
|
*/
|
|
183
176
|
containerCount() {
|
|
184
177
|
return __awaiter(this, void 0, void 0, function* () {
|
|
185
|
-
const
|
|
178
|
+
const { majorVersion } = yield this.getDefinition();
|
|
179
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
186
180
|
const { size: fileSize } = yield this.file.stat();
|
|
187
181
|
const { cramContainerHeader1 } = sectionParsers;
|
|
188
182
|
let containerCount = 0;
|
|
@@ -197,7 +191,7 @@ class CramFile {
|
|
|
197
191
|
// header's given length due to a bug somewhere in htslib
|
|
198
192
|
if (containerCount === 0) {
|
|
199
193
|
position = currentHeader._endPosition;
|
|
200
|
-
for (let j = 0; j < currentHeader.numBlocks; j
|
|
194
|
+
for (let j = 0; j < currentHeader.numBlocks; j++) {
|
|
201
195
|
const block = yield this.readBlock(position);
|
|
202
196
|
if (block === undefined) {
|
|
203
197
|
return undefined;
|
|
@@ -219,7 +213,8 @@ class CramFile {
|
|
|
219
213
|
}
|
|
220
214
|
readBlockHeader(position) {
|
|
221
215
|
return __awaiter(this, void 0, void 0, function* () {
|
|
222
|
-
const
|
|
216
|
+
const { majorVersion } = yield this.getDefinition();
|
|
217
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
223
218
|
const { cramBlockHeader } = sectionParsers;
|
|
224
219
|
const { size: fileSize } = yield this.file.stat();
|
|
225
220
|
if (position + cramBlockHeader.maxLength >= fileSize) {
|
|
@@ -301,7 +296,7 @@ class CramFile {
|
|
|
301
296
|
readBlock(position) {
|
|
302
297
|
return __awaiter(this, void 0, void 0, function* () {
|
|
303
298
|
const { majorVersion } = yield this.getDefinition();
|
|
304
|
-
const sectionParsers =
|
|
299
|
+
const sectionParsers = (0, sectionParsers_1.getSectionParsers)(majorVersion);
|
|
305
300
|
const blockHeader = yield this.readBlockHeader(position);
|
|
306
301
|
if (blockHeader === undefined) {
|
|
307
302
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oCAAgC;AAChC,gEAAgC;AAChC,0DAAgC;AAChC,sEAA6C;AAC7C,mBAAmB;AACnB,kDAAyB;AACzB,iDAAgD;AAChD,sCAAsE;AACtE,mDAAoC;AACpC,qDAKyB;AAEzB,4DAAuC;AAEvC,8BAA4B;AAC5B,iCAA+C;AAC/C,gCAAwC;AAIxC,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,IAAI,cAAc,CAAC;QACxB,KAAK,CAAC,UAAU;YACd,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACvB,UAAU,CAAC,KAAK,EAAE,CAAA;QACpB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa;IACpB,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;IAC5C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAE3C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,CAAA,CAAC,gBAAgB;IAC3B,CAAC;SAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAA,CAAC,aAAa;IACxB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAA,CAAC,gBAAgB;IAC3B,CAAC;AACH,CAAC;AA4BD,MAAqB,QAAQ;IAW3B,YAAY,IAAkB;;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAA,SAAI,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QACtD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QAC7B,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,QAAQ,CAAA;QACnD,IAAI,CAAC,OAAO,GAAG;YACb,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,SAAS,EAAE,MAAA,IAAI,CAAC,SAAS,mCAAI,KAAK;SACnC,CAAA;QAED,6CAA6C;QAC7C,gEAAgE;QAChE,4DAA4D;QAC5D,qCAAqC;QACrC,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAQ,CAAC;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;SAChC,CAAC,CAAA;QACF,IAAI,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACtE,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc,EAAE,QAAgB;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IACzD,CAAC;IAED,8CAA8C;IAC9C,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACzB,CAAC;IAED,WAAW;IACL,aAAa;;YACjB,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAA,mCAAkB,GAAE,CAAA;YAClD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;YAC/C,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;YAChD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAA;YAC1C,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,EAAE,CAAC;gBACnE,MAAM,IAAI,+BAAsB,CAC9B,gBAAgB,UAAU,CAAC,YAAY,gBAAgB,CACxD,CAAA;YACH,CAAC;YACD,OAAO,UAAU,CAAA;QACnB,CAAC;KAAA;IAED,UAAU;IACJ,YAAY;;YAChB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;YACrD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,2BAAkB,CAAC,6BAA6B,CAAC,CAAA;YAC7D,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,aAAa,EAAE,CAAA;YACvD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAA;YAC5B,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;YAClC,wDAAwD;YACxD,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;YAC3C,MAAM,SAAS,GAAG,CAAC,CAAA;YACnB,mCAAmC;YACnC,iEAAiE;YACjE,8BAA8B;YAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,CAAA;YAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;YAClB,OAAO,IAAA,qBAAe,EAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;KAAA;IAEK,aAAa;;YACjB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;YACzB,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;KAAA;IAEK,gBAAgB,CAAC,eAAuB;;YAC5C,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;YACnD,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,YAAY,CAAC,CAAA;YACtD,IAAI,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAA;YAC1D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YACjD,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAA;YAE/C,sDAAsD;YACtD,IAAI,gBAAgB,CAAA;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,gDAAgD;gBAChD,uDAAuD;gBACvD,IAAI,QAAQ,GAAG,oBAAoB,CAAC,SAAS,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;oBAC9D,OAAO,SAAS,CAAA;gBAClB,CAAC;gBAED,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;gBACxD,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,CAAA;gBACxD,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,2BAAkB,CAC1B,aAAa,eAAe,oBAAoB,CACjD,CAAA;gBACH,CAAC;gBACD,uEAAuE;gBACvE,iEAAiE;gBACjE,yDAAyD;gBACzD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBACZ,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAA;oBACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;wBACjD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;wBAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;4BACxB,OAAO,SAAS,CAAA;wBAClB,CAAC;wBACD,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAA;oBAC/B,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,8EAA8E;oBAC9E,QAAQ,IAAI,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,MAAM,CAAA;gBACxD,CAAC;YACH,CAAC;YAED,OAAO,gBAAgB,CAAA;QACzB,CAAC;KAAA;IAEK,UAAU,CACd,QAAgB,EAChB,MAAc,EACd,aAAqB,EACrB,WAAmB;;YAEnB,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YACpC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;YAC5C,MAAM,eAAe,GAAG,sBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YACzC,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;gBACtC,MAAM,IAAI,2BAAkB,CAC1B,mBAAmB,WAAW,sBAAsB,aAAa,4BAA4B,eAAe,EAAE,CAC/G,CAAA;YACH,CAAC;QACH,CAAC;KAAA;IAED;;OAEG;IACG,cAAc;;YAClB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;YACnD,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,YAAY,CAAC,CAAA;YACtD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YACjD,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAA;YAE/C,IAAI,cAAc,GAAG,CAAC,CAAA;YACtB,IAAI,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAA;YAC1D,OAAO,QAAQ,GAAG,oBAAoB,CAAC,SAAS,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC;gBAChE,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAA;gBACzD,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAK;gBACP,CAAC;gBACD,6DAA6D;gBAC7D,mDAAmD;gBACnD,yDAAyD;gBACzD,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;oBACzB,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAA;oBACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;wBACjD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;wBAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;4BACxB,OAAO,SAAS,CAAA;wBAClB,CAAC;wBACD,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAA;oBAC/B,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,8EAA8E;oBAC9E,QAAQ,IAAI,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,MAAM,CAAA;gBACxD,CAAC;gBACD,cAAc,IAAI,CAAC,CAAA;YACrB,CAAC;YAED,OAAO,cAAc,CAAA;QACvB,CAAC;KAAA;IAED,sBAAsB,CAAC,QAAgB;QACrC,OAAO,IAAI,mBAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAEK,eAAe,CAAC,QAAgB;;YACpC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;YACnD,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,YAAY,CAAC,CAAA;YACtD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAA;YAC1C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAEjD,IAAI,QAAQ,GAAG,eAAe,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;gBACrD,OAAO,SAAS,CAAA;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;YAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YACpE,OAAO,IAAA,gBAAS,EAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC/D,CAAC;KAAA;IAEK,aAAa;6DACjB,OAGC,EACD,QAAgB,EAChB,IAAI,GAAG,OAAO,CAAC,SAAS,EACxB,aAAa,GAAG,SAAS;YAEzB,IAAI,MAAM,CAAA;YACV,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,GAAG,aAAa,CAAA;YACxB,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;gBACjD,IAAI,QAAQ,GAAG,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAChC,OAAO,SAAS,CAAA;gBAClB,CAAC;gBACD,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;gBACjC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YACjD,CAAC;YACD,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;YAC3D,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,2BAAkB,CAC1B,sCAAsC,IAAI,+BAA+B,IAAI,CAAC,KAAK,EAAE,CACtF,CAAA;YACH,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;KAAA;IAEK,WAAW,CACf,iBAAoC,EACpC,WAAmB,EACnB,YAAoB;;YAEpB,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,IAAA,aAAK,EAAC,WAAW,CAAC,CAAA;gBACjC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC3B,CAAC;iBAAM,IAAI,iBAAiB,KAAK,OAAO,EAAE,CAAC;gBACzC,MAAM,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBACrC,IAAI,IAAI,GAAG,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAC7B,IAAI,CAAC,GAAG,CAAC,CAAA;gBACT,IAAI,KAAK,CAAA;gBACT,GAAG,CAAC;oBACF,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;oBACpC,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;wBAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;wBACxC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAA;wBACjB,IAAI,IAAI,KAAK,CAAC,MAAM,CAAA;oBACtB,CAAC;gBACH,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,EAAC;YACvB,CAAC;iBAAM,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;gBACxC,MAAM,oBAAoB,GAAG,IAAI,QAAQ,CACvC,IAAI,gCAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAClD,CAAA;gBACD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjE,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACxB,CAAC;iBAAM,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;gBACxC,IAAA,cAAc,EAAC,WAAW,EAAE,YAAY,CAAC,CAAA;gBACzC,2CAA2C;gBAC3C,uDAAuD;YACzD,CAAC;iBAAM,IAAI,iBAAiB,KAAK,UAAU,EAAE,CAAC;gBAC5C,mBAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;YACvD,CAAC;iBAAM,IAAI,iBAAiB,KAAK,OAAO,EAAE,CAAC;gBACzC,mBAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;YACvD,CAAC;iBAAM,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBAC3C,mBAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;YACzD,CAAC;iBAAM,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;gBACxC,mBAAS,CAAC,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,+BAAsB,CAC9B,GAAG,iBAAiB,oCAAoC,CACzD,CAAA;YACH,CAAC;QACH,CAAC;KAAA;IAEK,SAAS,CAAC,QAAgB;;YAC9B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;YACnD,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,YAAY,CAAC,CAAA;YACtD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;YACxD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,MAAM,oBAAoB,GAAG,WAAW,CAAC,YAAY,CAAA;YAErD,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;YAEzE,MAAM,KAAK,mCACN,WAAW,KACd,YAAY,EAAE,oBAAoB,EAClC,eAAe,EAAE,oBAAoB,EACrC,OAAO,EAAE,gBAAgB,GAC1B,CAAA;YAED,IAAI,WAAW,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;gBAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;gBACrE,MAAM,IAAI,CAAC,IAAI,CACb,cAAc,EACd,CAAC,EACD,WAAW,CAAC,cAAc,EAC1B,oBAAoB,CACrB,CAAA;gBAED,MAAM,IAAI,CAAC,WAAW,CACpB,WAAW,CAAC,iBAAiB,EAC7B,cAAc,EACd,gBAAgB,CACjB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,IAAI,CACb,gBAAgB,EAChB,CAAC,EACD,WAAW,CAAC,gBAAgB,EAC5B,oBAAoB,CACrB,CAAA;YACH,CAAC;YAED,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACtB,kBAAkB;gBAClB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAClC,cAAc,CAAC,cAAc,EAC7B,oBAAoB,GAAG,WAAW,CAAC,cAAc,CAClD,CAAA;gBACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,OAAO,SAAS,CAAA;gBAClB,CAAC;gBACD,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;gBAEvB,6BAA6B;gBAC7B,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,UAAU,CACnB,QAAQ,EACR,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,cAAc,EAC9C,GAAG,CAAC,KAAK,EACT,YAAY,CACb,CAAA;gBACH,CAAC;gBAED,wDAAwD;gBACxD,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAA;gBACrC,KAAK,CAAC,KAAK;oBACT,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,SAAS,CAAA;YAClE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,YAAY,GAAG,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAA;gBAChE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAA;YACpC,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC;KAAA;CACF;AA9VD,2BA8VC;AAED,8CAA8C;KAC3C,KAAK,CAAC,GAAG,CAAC;KACV,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAA,kBAAW,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA"}
|