@gmod/cram 1.6.2 → 1.6.3

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/cram-bundle.js +3 -3
  3. package/dist/cramFile/codecs/byteArrayLength.d.ts +1 -1
  4. package/dist/cramFile/codecs/byteArrayLength.js +1 -1
  5. package/dist/cramFile/codecs/byteArrayLength.js.map +1 -1
  6. package/dist/cramFile/codecs/byteArrayStop.js +1 -2
  7. package/dist/cramFile/codecs/byteArrayStop.js.map +1 -1
  8. package/dist/cramFile/codecs/external.js +1 -3
  9. package/dist/cramFile/codecs/external.js.map +1 -1
  10. package/dist/cramFile/container/compressionScheme.d.ts +1 -1
  11. package/dist/cramFile/container/compressionScheme.js +6 -4
  12. package/dist/cramFile/container/compressionScheme.js.map +1 -1
  13. package/dist/cramFile/file.js +17 -0
  14. package/dist/cramFile/file.js.map +1 -1
  15. package/dist/cramFile/slice/decodeRecord.js +62 -58
  16. package/dist/cramFile/slice/decodeRecord.js.map +1 -1
  17. package/dist/cramFile/slice/index.js +8 -5
  18. package/dist/cramFile/slice/index.js.map +1 -1
  19. package/esm/cramFile/codecs/byteArrayLength.d.ts +1 -1
  20. package/esm/cramFile/codecs/byteArrayLength.js +1 -1
  21. package/esm/cramFile/codecs/byteArrayLength.js.map +1 -1
  22. package/esm/cramFile/codecs/byteArrayStop.js +1 -2
  23. package/esm/cramFile/codecs/byteArrayStop.js.map +1 -1
  24. package/esm/cramFile/codecs/external.js +1 -3
  25. package/esm/cramFile/codecs/external.js.map +1 -1
  26. package/esm/cramFile/container/compressionScheme.d.ts +1 -1
  27. package/esm/cramFile/container/compressionScheme.js +6 -4
  28. package/esm/cramFile/container/compressionScheme.js.map +1 -1
  29. package/esm/cramFile/file.js +17 -0
  30. package/esm/cramFile/file.js.map +1 -1
  31. package/esm/cramFile/slice/decodeRecord.js +63 -59
  32. package/esm/cramFile/slice/decodeRecord.js.map +1 -1
  33. package/esm/cramFile/slice/index.js +11 -7
  34. package/esm/cramFile/slice/index.js.map +1 -1
  35. package/package.json +1 -1
  36. package/src/cramFile/codecs/byteArrayLength.js +1 -1
  37. package/src/cramFile/codecs/byteArrayStop.js +1 -2
  38. package/src/cramFile/codecs/external.js +1 -3
  39. package/src/cramFile/container/compressionScheme.js +6 -7
  40. package/src/cramFile/file.js +16 -0
  41. package/src/cramFile/slice/decodeRecord.js +61 -64
  42. package/src/cramFile/slice/index.js +11 -7
@@ -1 +1 @@
1
- {"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/external.js"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,cAAc,CAAA;AACrB,OAAO,SAAS,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,SAAS;IAClD,YAAY,UAAU,GAAG,EAAE,EAAE,QAAQ;QACnC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;YAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAA;SACnC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE;YACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;SACpC;aAAM;YACL,MAAM,IAAI,sBAAsB,CAC9B,GAAG,IAAI,CAAC,QAAQ,iDAAiD,CAClE,CAAA;SACF;IACH,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,OAAO;QACrD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,UAAU,CAAA;QAC1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;QACtD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,kBAAkB,CAC1B,kCAAkC,cAAc,EAAE,CACnD,CAAA;SACF;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,YAAY,EAAE,MAAM;QAC7B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,CACnC,YAAY,CAAC,OAAO,EACpB,MAAM,CAAC,YAAY,CACpB,CAAA;QACD,MAAM,CAAC,YAAY,IAAI,SAAS,CAAA;QAChC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,WAAW,CAAC,YAAY,EAAE,MAAM;QAC9B,IAAI,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE;YACtD,MAAM,IAAI,sBAAsB,CAC9B,mEAAmE,CACpE,CAAA;SACF;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACxD,MAAM,CAAC,YAAY,IAAI,CAAC,CAAA;QACxB,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cramFile/codecs/external.js"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,cAAc,CAAA;AACrB,OAAO,SAAS,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,SAAS;IAClD,YAAY,UAAU,GAAG,EAAE,EAAE,QAAQ;QACnC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;YAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAA;SACnC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE;YACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;SACpC;aAAM;YACL,MAAM,IAAI,sBAAsB,CAC9B,GAAG,IAAI,CAAC,QAAQ,iDAAiD,CAClE,CAAA;SACF;IACH,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,OAAO;QACrD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,UAAU,CAAA;QAC1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;QACtD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,kBAAkB,CAC1B,kCAAkC,cAAc,EAAE,CACnD,CAAA;SACF;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,YAAY,EAAE,MAAM;QAC7B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,CACnC,YAAY,CAAC,OAAO,EACpB,MAAM,CAAC,YAAY,CACpB,CAAA;QACD,MAAM,CAAC,YAAY,IAAI,SAAS,CAAA;QAChC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,WAAW,CAAC,YAAY,EAAE,MAAM;QAC9B,IAAI,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE;YACtD,MAAM,IAAI,sBAAsB,CAC9B,mEAAmE,CACpE,CAAA;SACF;QACD,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAA;IACpD,CAAC;CACF"}
@@ -5,7 +5,7 @@ export default class CramContainerCompressionScheme {
5
5
  referenceRequired: boolean;
6
6
  tagIdsDictionary: any;
7
7
  substitutionMatrix: any[];
8
- dataSeriesCodecCache: {};
8
+ dataSeriesCodecCache: Map<any, any>;
9
9
  tagCodecCache: {};
10
10
  /**
11
11
  * @param {string} tagName three-character tag name
@@ -72,7 +72,7 @@ export default class CramContainerCompressionScheme {
72
72
  this.referenceRequired = !!content.preservation.RR;
73
73
  this.tagIdsDictionary = content.preservation.TD;
74
74
  this.substitutionMatrix = parseSubstitutionMatrix(content.preservation.SM);
75
- this.dataSeriesCodecCache = {};
75
+ this.dataSeriesCodecCache = new Map();
76
76
  this.tagCodecCache = {};
77
77
  }
78
78
  /**
@@ -97,17 +97,19 @@ export default class CramContainerCompressionScheme {
97
97
  return this.tagIdsDictionary[tagListId];
98
98
  }
99
99
  getCodecForDataSeries(dataSeriesName) {
100
- if (!this.dataSeriesCodecCache[dataSeriesName]) {
100
+ let r = this.dataSeriesCodecCache.get(dataSeriesName);
101
+ if (r === undefined) {
101
102
  const encodingData = this.dataSeriesEncoding[dataSeriesName];
102
103
  if (encodingData) {
103
104
  const dataType = dataSeriesTypes[dataSeriesName];
104
105
  if (!dataType) {
105
106
  throw new CramMalformedError(`data series name ${dataSeriesName} not defined in file compression header`);
106
107
  }
107
- this.dataSeriesCodecCache[dataSeriesName] = instantiateCodec(encodingData, dataType);
108
+ r = instantiateCodec(encodingData, dataType);
109
+ this.dataSeriesCodecCache.set(dataSeriesName, r);
108
110
  }
109
111
  }
110
- return this.dataSeriesCodecCache[dataSeriesName];
112
+ return r;
111
113
  }
112
114
  toJSON() {
113
115
  const data = {};
@@ -1 +1 @@
1
- {"version":3,"file":"compressionScheme.js","sourceRoot":"","sources":["../../../src/cramFile/container/compressionScheme.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAE5C,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,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;CACb,CAAA;AAED,SAAS,uBAAuB,CAAC,SAAS;IACxC,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC7B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;KACzB;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;AAED,MAAM,CAAC,OAAO,OAAO,8BAA8B;IACjD,YAAY,OAAO;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5B,iEAAiE;QACjE,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,EAAE,CAAA;QAChD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,EAAE,CAAA;QACtC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAA;QAClD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,EAAE,CAAA;QAC/C,IAAI,CAAC,kBAAkB,GAAG,uBAAuB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QAE1E,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IACzB,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,OAAO;QACpB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;YAChC,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YAC9C,IAAI,YAAY,EAAE;gBAChB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAC5C,YAAY,EACZ,WAAW,CACZ,CAAA;aACF;SACF;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,SAAS;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;IACzC,CAAC;IAED,qBAAqB,CAAC,cAAc;QAClC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,EAAE;YAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAA;YAC5D,IAAI,YAAY,EAAE;gBAChB,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,CAAA;gBAChD,IAAI,CAAC,QAAQ,EAAE;oBACb,MAAM,IAAI,kBAAkB,CAC1B,oBAAoB,cAAc,yCAAyC,CAC5E,CAAA;iBACF;gBACD,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAC1D,YAAY,EACZ,QAAQ,CACT,CAAA;aACF;SACF;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,MAAM;QACJ,MAAM,IAAI,GAAG,EAAE,CAAA;QACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC5B,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBACpB,OAAM;aACP;YACD,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
1
+ {"version":3,"file":"compressionScheme.js","sourceRoot":"","sources":["../../../src/cramFile/container/compressionScheme.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAE5C,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,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;CACb,CAAA;AAED,SAAS,uBAAuB,CAAC,SAAS;IACxC,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC7B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;KACzB;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,G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"}
@@ -9,6 +9,20 @@ import CramContainer from './container';
9
9
  import { open } from '../io';
10
10
  import { parseItem, tinyMemoize } from './util';
11
11
  import { parseHeaderText } from '../sam';
12
+ //source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/
13
+ function getEndianness() {
14
+ let uInt32 = new Uint32Array([0x11223344]);
15
+ let uInt8 = new Uint8Array(uInt32.buffer);
16
+ if (uInt8[0] === 0x44) {
17
+ return 0; //little-endian
18
+ }
19
+ else if (uInt8[0] === 0x11) {
20
+ return 1; //big-endian
21
+ }
22
+ else {
23
+ return 2; //mixed-endian?
24
+ }
25
+ }
12
26
  export default class CramFile {
13
27
  /**
14
28
  * @param {object} args
@@ -37,6 +51,9 @@ export default class CramFile {
37
51
  this.featureCache = new LRU({
38
52
  maxSize: this.options.cacheSize,
39
53
  });
54
+ if (getEndianness() > 0) {
55
+ throw new Error('Detected big-endian machine, may be unable to run');
56
+ }
40
57
  }
41
58
  toString() {
42
59
  if (this.file.filename) {
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAChC,OAAO,KAAK,MAAM,cAAc,CAAA;AAChC,OAAO,GAAG,MAAM,WAAW,CAAA;AAE3B,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AACtE,OAAO,cAAc,MAAM,SAAS,CAAA;AACpC,OAAO,EACL,kBAAkB,IAAI,wBAAwB,EAC9C,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,SAAS,MAAM,uBAAuB,CAAA;AAC7C,OAAO,aAAa,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAExC,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B;;;;;;;;;;;OAWG;IACH,YAAY,IAAI;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,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,KAAK,KAAK;YACjD,SAAS,EAAE,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;SACjE,CAAA;QAED,6CAA6C;QAC7C,gEAAgE;QAChE,4DAA4D;QAC5D,qCAAqC;QACrC,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC;YAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;SAChC,CAAC,CAAA;IACJ,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACtB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;SAC1B;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;SACrB;QAED,OAAO,aAAa,CAAA;IACtB,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;QACnC,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;IACX,KAAK,CAAC,aAAa;QACjB,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAA;QACxE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,wBAAwB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;QACzE,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAA;QAC1E,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,EAAE;YAClE,MAAM,IAAI,sBAAsB,CAC9B,gBAAgB,UAAU,CAAC,YAAY,gBAAgB,CACxD,CAAA;SACF;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,UAAU;IACV,KAAK,CAAC,YAAY;QAChB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;QACrD,IAAI,CAAC,cAAc,EAAE;YACnB,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,CAAC,CAAA;SAC5D;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,cAAc,CAAC,aAAa,EAAE,CAAA;QACxD,wDAAwD;QACxD,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAA;QACnB,mCAAmC;QACnC,iEAAiE;QACjE,8BAA8B;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,CAAA;QAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QACzB,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,UAAU;IACV,KAAK,CAAC,iBAAiB;QACrB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QACnD,OAAO,iBAAiB,CAAC,YAAY,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,eAAe;QACpC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACrD,IAAI,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAA;QAC1D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAA;QAE/C,sDAAsD;QACtD,IAAI,gBAAgB,CAAA;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE;YAC5C,gDAAgD;YAChD,uDAAuD;YACvD,IAAI,QAAQ,GAAG,oBAAoB,CAAC,SAAS,GAAG,CAAC,IAAI,QAAQ,EAAE;gBAC7D,OAAO,SAAS,CAAA;aACjB;YAED,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;YACxD,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,CAAA;YACxD,IAAI,CAAC,aAAa,EAAE;gBAClB,MAAM,IAAI,kBAAkB,CAC1B,aAAa,eAAe,oBAAoB,CACjD,CAAA;aACF;YACD,6DAA6D;YAC7D,6DAA6D;YAC7D,6DAA6D;YAC7D,YAAY;YACZ,IAAI,CAAC,KAAK,CAAC,EAAE;gBACX,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAA;gBACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE;oBACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;oBAC5C,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAA;iBAC9B;aACF;iBAAM;gBACL,8EAA8E;gBAC9E,QAAQ,IAAI,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,MAAM,CAAA;aACvD;SACF;QAED,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW;QAC3D,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACpC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC5C,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzC,IAAI,eAAe,KAAK,aAAa,EAAE;YACrC,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,WAAW,sBAAsB,aAAa,4BAA4B,eAAe,EAAE,CAC/G,CAAA;SACF;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACrD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAA;QAE/C,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,IAAI,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAA;QAC1D,OAAO,QAAQ,GAAG,oBAAoB,CAAC,SAAS,GAAG,CAAC,GAAG,QAAQ,EAAE;YAC/D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACrD,QAAQ,CACT,CAAC,SAAS,EAAE,CAAA;YACb,IAAI,CAAC,aAAa,EAAE;gBAClB,MAAK;aACN;YACD,6DAA6D;YAC7D,mDAAmD;YACnD,yDAAyD;YACzD,IAAI,cAAc,KAAK,CAAC,EAAE;gBACxB,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAA;gBACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE;oBACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;oBAC5C,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAA;iBAC9B;aACF;iBAAM;gBACL,8EAA8E;gBAC9E,QAAQ,IAAI,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,MAAM,CAAA;aACvD;YACD,cAAc,IAAI,CAAC,CAAA;SACpB;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,sBAAsB,CAAC,QAAQ;QAC7B,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAQ;QAC5B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACrD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAA;QAC1C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAEjD,IAAI,QAAQ,GAAG,eAAe,CAAC,SAAS,IAAI,QAAQ,EAAE;YACpD,OAAO,SAAS,CAAA;SACjB;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;QAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACpE,OAAO,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,OAAO,EACP,QAAQ,EACR,IAAI,GAAG,OAAO,CAAC,SAAS,EACxB,aAAa;QAEb,IAAI,MAAM,CAAA;QACV,IAAI,aAAa,EAAE;YACjB,MAAM,GAAG,aAAa,CAAA;SACvB;aAAM;YACL,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YACjD,IAAI,QAAQ,GAAG,IAAI,IAAI,QAAQ,EAAE;gBAC/B,OAAO,SAAS,CAAA;aACjB;YACD,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;SAChD;QACD,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC3D,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACvB,MAAM,IAAI,kBAAkB,CAC1B,sCAAsC,IAAI,+BAA+B,IAAI,CAAC,KAAK,EAAE,CACtF,CAAA;SACF;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,WAAW,CAAC,iBAAiB,EAAE,WAAW,EAAE,YAAY;QACtD,IAAI,iBAAiB,KAAK,MAAM,EAAE;YAChC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAA;YACjC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;SAC1B;aAAM,IAAI,iBAAiB,KAAK,OAAO,EAAE;YACxC,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;YACnC,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC7B,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,GAAG;gBACD,IAAI,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACxC,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE;oBACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;oBACxC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAA;oBACjB,IAAI,IAAI,KAAK,CAAC,MAAM,CAAA;iBACrB;aACF,QAAQ,KAAK,IAAI,CAAC,CAAC,EAAC;SACtB;aAAM,IAAI,iBAAiB,KAAK,MAAM,EAAE;YACvC,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;YACzC,2CAA2C;YAC3C,uDAAuD;SACxD;aAAM,IAAI,iBAAiB,KAAK,UAAU,EAAE;YAC3C,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;SACtD;aAAM,IAAI,iBAAiB,KAAK,OAAO,EAAE;YACxC,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;SACtD;aAAM,IAAI,iBAAiB,KAAK,SAAS,EAAE;YAC1C,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;SACxD;aAAM,IAAI,iBAAiB,KAAK,MAAM,EAAE;YACvC,SAAS,CAAC,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;SACrD;aAAM;YACL,MAAM,IAAI,sBAAsB,CAC9B,GAAG,iBAAiB,oCAAoC,CACzD,CAAA;SACF;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAQ;QACtB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QACnD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACrD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QAClD,MAAM,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAAA;QAC/C,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,YAAY,CAAA;QAE1C,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;QAEnE,IAAI,KAAK,CAAC,iBAAiB,KAAK,KAAK,EAAE;YACrC,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;YAC/D,MAAM,IAAI,CAAC,IAAI,CACb,cAAc,EACd,CAAC,EACD,KAAK,CAAC,cAAc,EACpB,oBAAoB,CACrB,CAAA;YAED,IAAI,CAAC,WAAW,CACd,KAAK,CAAC,iBAAiB,EACvB,cAAc,EACd,gBAAgB,CACjB,CAAA;SACF;aAAM;YACL,MAAM,IAAI,CAAC,IAAI,CACb,gBAAgB,EAChB,CAAC,EACD,KAAK,CAAC,gBAAgB,EACtB,oBAAoB,CACrB,CAAA;SACF;QAED,KAAK,CAAC,OAAO,GAAG,gBAAgB,CAAA;QAEhC,IAAI,YAAY,IAAI,CAAC,EAAE;YACrB,kBAAkB;YAClB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAClC,cAAc,CAAC,cAAc,EAC7B,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAC5C,CAAA;YACD,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YAEvB,6BAA6B;YAC7B,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,MAAM,IAAI,CAAC,UAAU,CACnB,QAAQ,EACR,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,EAClC,KAAK,CAAC,KAAK,EACX,YAAY,CACb,CAAA;aACF;YAED,wDAAwD;YACxD,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAA;YACrC,KAAK,CAAC,KAAK;gBACT,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,SAAS,CAAA;SACjE;aAAM;YACL,KAAK,CAAC,YAAY,GAAG,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAA;YAChE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAA;SACnC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AAED,8CAA8C;KAC3C,KAAK,CAAC,GAAG,CAAC;KACV,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.js"],"names":[],"mappings":"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"}
@@ -1,17 +1,17 @@
1
1
  import Long from 'long';
2
- import { CramMalformedError, CramUnimplementedError } from '../../errors';
2
+ import { CramMalformedError } from '../../errors';
3
3
  import CramRecord from '../record';
4
4
  import Constants from '../constants';
5
5
  /**
6
6
  * given a Buffer, read a string up to the first null character
7
7
  * @private
8
8
  */
9
- function readNullTerminatedStringFromBuffer(buffer) {
10
- const zeroOffset = buffer.indexOf(0);
11
- if (zeroOffset === -1) {
12
- return buffer.toString('utf8');
9
+ function readNullTerminatedString(buffer) {
10
+ let r = '';
11
+ for (let i = 0; i < buffer.length && buffer[i] !== 0; i++) {
12
+ r += String.fromCharCode(buffer[i]);
13
13
  }
14
- return buffer.toString('utf8', 0, zeroOffset);
14
+ return r;
15
15
  }
16
16
  /**
17
17
  * parse a BAM tag's array value from a binary buffer
@@ -19,67 +19,86 @@ function readNullTerminatedStringFromBuffer(buffer) {
19
19
  */
20
20
  function parseTagValueArray(buffer) {
21
21
  const arrayType = String.fromCharCode(buffer[0]);
22
- const length = buffer.readInt32LE(1);
23
- const schema = {
24
- c: ['readInt8', 1],
25
- C: ['readUInt8', 1],
26
- s: ['readInt16LE', 2],
27
- S: ['readUInt16LE', 2],
28
- i: ['readInt32LE', 4],
29
- I: ['readUInt32LE', 4],
30
- f: ['readFloatLE', 4],
31
- }[arrayType];
32
- if (!schema) {
33
- throw new CramMalformedError(`invalid tag value array type '${arrayType}'`);
34
- }
35
- const [getMethod, itemSize] = schema;
22
+ const length = Int32Array.from(buffer.slice(1))[0];
36
23
  const array = new Array(length);
37
- let offset = 5;
38
- for (let i = 0; i < length; i += 1) {
39
- array[i] = buffer[getMethod](offset);
40
- offset += itemSize;
24
+ buffer = buffer.slice(5);
25
+ if (arrayType === 'c') {
26
+ const arr = new Int8Array(buffer.buffer);
27
+ for (let i = 0; i < length; i += 1) {
28
+ array[i] = arr[i];
29
+ }
30
+ }
31
+ else if (arrayType === 'C') {
32
+ const arr = new Uint8Array(buffer.buffer);
33
+ for (let i = 0; i < length; i += 1) {
34
+ array[i] = arr[i];
35
+ }
36
+ }
37
+ else if (arrayType === 's') {
38
+ const arr = new Int16Array(buffer.buffer);
39
+ for (let i = 0; i < length; i += 1) {
40
+ array[i] = arr[i];
41
+ }
42
+ }
43
+ else if (arrayType === 'S') {
44
+ const arr = new Uint16Array(buffer.buffer);
45
+ for (let i = 0; i < length; i += 1) {
46
+ array[i] = arr[i];
47
+ }
48
+ }
49
+ else if (arrayType === 'i') {
50
+ const arr = new Int32Array(buffer.buffer);
51
+ for (let i = 0; i < length; i += 1) {
52
+ array[i] = arr[i];
53
+ }
54
+ }
55
+ else if (arrayType === 'I') {
56
+ const arr = new Uint32Array(buffer.buffer);
57
+ for (let i = 0; i < length; i += 1) {
58
+ array[i] = arr[i];
59
+ }
60
+ }
61
+ else if (arrayType === 'f') {
62
+ const arr = new Float32Array(buffer.buffer);
63
+ for (let i = 0; i < length; i += 1) {
64
+ array[i] = arr[i];
65
+ }
66
+ }
67
+ else {
68
+ throw new Error('unknown type: ' + arrayType);
41
69
  }
42
70
  return array;
43
71
  }
44
72
  function parseTagData(tagType, buffer) {
45
- if (!buffer.readInt32LE) {
46
- buffer = Buffer.from(buffer);
47
- }
48
73
  if (tagType === 'Z') {
49
- return readNullTerminatedStringFromBuffer(buffer);
74
+ return readNullTerminatedString(buffer);
50
75
  }
51
76
  if (tagType === 'A') {
52
77
  return String.fromCharCode(buffer[0]);
53
78
  }
54
79
  if (tagType === 'I') {
55
- const val = Long.fromBytesLE(buffer);
56
- if (val.greaterThan(Number.MAX_SAFE_INTEGER) ||
57
- val.lessThan(Number.MIN_SAFE_INTEGER)) {
58
- throw new CramUnimplementedError('integer overflow');
59
- }
60
- return val.toNumber();
80
+ return Long.fromBytesLE(buffer).toNumber();
61
81
  }
62
82
  if (tagType === 'i') {
63
- return buffer.readInt32LE(0);
83
+ return new Int32Array(buffer.buffer)[0];
64
84
  }
65
85
  if (tagType === 's') {
66
- return buffer.readInt16LE(0);
86
+ return new Int16Array(buffer.buffer)[0];
67
87
  }
68
88
  if (tagType === 'S') {
69
- return buffer.readUInt16LE(0);
89
+ return new Uint16Array(buffer.buffer)[0];
70
90
  }
71
91
  if (tagType === 'c') {
72
- return buffer.readInt8(0);
92
+ return new Int8Array(buffer.buffer)[0];
73
93
  }
74
94
  if (tagType === 'C') {
75
- return buffer.readUInt8(0);
95
+ return buffer[0];
76
96
  }
77
97
  if (tagType === 'f') {
78
- return buffer.readFloatLE(0);
98
+ return new Float32Array(buffer.buffer)[0];
79
99
  }
80
100
  if (tagType === 'H') {
81
- const hex = readNullTerminatedStringFromBuffer(buffer);
82
- return Number.parseInt(hex.replace(/^0x/, ''), 16);
101
+ return Number.parseInt(readNullTerminatedString(buffer).replace(/^0x/, ''), 16);
83
102
  }
84
103
  if (tagType === 'B') {
85
104
  return parseTagValueArray(buffer);
@@ -152,21 +171,6 @@ function decodeReadFeatures(cramRecord, readFeatureCount, decodeDataSeries, comp
152
171
  }
153
172
  return readFeatures;
154
173
  }
155
- function thingToString(thing) {
156
- if (thing instanceof Buffer) {
157
- return readNullTerminatedStringFromBuffer(thing);
158
- }
159
- if (thing.length && thing.indexOf) {
160
- // array-like
161
- if (!thing[thing.length - 1]) {
162
- // trim zeroes off the end if necessary
163
- const termIndex = thing.indexOf(0);
164
- return String.fromCharCode(...thing.slice(0, termIndex));
165
- }
166
- return String.fromCharCode(...thing);
167
- }
168
- return String(thing);
169
- }
170
174
  export default function decodeRecord(slice, decodeDataSeries, compressionScheme, sliceHeader, coreDataBlock, blocksByContentId, cursors, majorVersion, recordNumber) {
171
175
  const cramRecord = new CramRecord();
172
176
  cramRecord.flags = decodeDataSeries('BF');
@@ -189,7 +193,7 @@ export default function decodeRecord(slice, decodeDataSeries, compressionScheme,
189
193
  cursors.lastAlignmentStart = cramRecord.alignmentStart;
190
194
  cramRecord.readGroupId = decodeDataSeries('RG');
191
195
  if (compressionScheme.readNamesIncluded) {
192
- cramRecord.readName = thingToString(decodeDataSeries('RN'));
196
+ cramRecord.readName = readNullTerminatedString(decodeDataSeries('RN'));
193
197
  }
194
198
  // mate record
195
199
  if (cramRecord.isDetached()) {
@@ -197,7 +201,7 @@ export default function decodeRecord(slice, decodeDataSeries, compressionScheme,
197
201
  const mate = {};
198
202
  mate.flags = decodeDataSeries('MF');
199
203
  if (!compressionScheme.readNamesIncluded) {
200
- mate.readName = thingToString(decodeDataSeries('RN'));
204
+ mate.readName = readNullTerminatedString(decodeDataSeries('RN'));
201
205
  cramRecord.readName = mate.readName;
202
206
  }
203
207
  mate.sequenceId = decodeDataSeries('NS');
@@ -1 +1 @@
1
- {"version":3,"file":"decodeRecord.js","sourceRoot":"","sources":["../../../src/cramFile/slice/decodeRecord.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decodeRecord.js","sourceRoot":"","sources":["../../../src/cramFile/slice/decodeRecord.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,UAAU,MAAM,WAAW,CAAA;AAClC,OAAO,SAAS,MAAM,cAAc,CAAA;AACpC;;;GAGG;AACH,SAAS,wBAAwB,CAAC,MAAM;IACtC,IAAI,CAAC,GAAG,EAAE,CAAA;IACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE;QACzD,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACpC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,MAAM;IAChC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAElD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAExB,IAAI,SAAS,KAAK,GAAG,EAAE;QACrB,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAClC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;SAClB;KACF;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAA;KAC9C;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AACD,SAAS,YAAY,CAAC,OAAO,EAAE,MAAM;IACnC,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAA;KACxC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACtC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAA;KAC3C;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACxC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACxC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACzC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KACvC;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;KACjB;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;KAC1C;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,MAAM,CAAC,QAAQ,CACpB,wBAAwB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EACnD,EAAE,CACH,CAAA;KACF;IACD,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAA;KAClC;IAED,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,kBAAkB,CACzB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY;IAEZ,IAAI,cAAc,GAAG,CAAC,CAAA;IACtB,IAAI,aAAa,GAAG,UAAU,CAAC,cAAc,GAAG,CAAC,CAAA;IACjD,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAEhD,SAAS,YAAY,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC;QAC1C,MAAM,IAAI,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAA;QAC7C,IAAI,IAAI,KAAK,WAAW,EAAE;YACxB,OAAO,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;SACjC;QACD,IAAI,IAAI,KAAK,QAAQ,EAAE;YACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;SAC7B;QACD,IAAI,IAAI,KAAK,UAAU,EAAE;YACvB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAA;SACtB;QACD,gCAAgC;QAChC,mBAAmB;QACnB,IAAI;QACJ,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;QAExD,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE3C,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,CAAA;QAC5B,2CAA2C;QAC3C,MAAM,WAAW,GAAG;YAClB,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;YACtB,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7C,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;YACtB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC;YACrB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;SACpB,CAAC,IAAI,CAAC,CAAA;QAEP,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,kBAAkB,CAAC,8BAA8B,IAAI,GAAG,CAAC,CAAA;SACpE;QAED,WAAW,CAAC,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;QAE5C,uFAAuF;QACvF,MAAM,WAAW,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;QACjD,IAAI,WAAW,EAAE;YACf,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAA;SACjE;QAED,cAAc,IAAI,YAAY,CAAA;QAC9B,WAAW,CAAC,GAAG,GAAG,cAAc,CAAA;QAEhC,aAAa,IAAI,YAAY,CAAA;QAC7B,WAAW,CAAC,MAAM,GAAG,aAAa,CAAA;QAElC,oFAAoF;QACpF,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE;YAChC,aAAa,IAAI,WAAW,CAAC,IAAI,CAAA;SAClC;aAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE;YACvC,aAAa,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAA;SACzC;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE;YACvB,aAAa,IAAI,CAAC,CAAA;SACnB;QAED,YAAY,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;KAC9B;IACD,OAAO,YAAY,CAAA;AACrB,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,KAAK,EACL,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,YAAY;IAEZ,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAA;IAEnC,UAAU,CAAC,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAEzC,+DAA+D;IAC/D,8DAA8D;IAC9D,sBAAsB;IACtB,UAAU,CAAC,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAE7C,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,CAAC,EAAE;QAC3D,UAAU,CAAC,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC/C;SAAM;QACL,UAAU,CAAC,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAA;KACrD;IAED,UAAU,CAAC,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAC9C,6DAA6D;IAC7D,UAAU,CAAC,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAClD,IAAI,iBAAiB,CAAC,OAAO,EAAE;QAC7B,UAAU,CAAC,cAAc,IAAI,OAAO,CAAC,kBAAkB,CAAA;KACxD;IACD,OAAO,CAAC,kBAAkB,GAAG,UAAU,CAAC,cAAc,CAAA;IACtD,UAAU,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAE/C,IAAI,iBAAiB,CAAC,iBAAiB,EAAE;QACvC,UAAU,CAAC,QAAQ,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;KACvE;IAED,cAAc;IACd,IAAI,UAAU,CAAC,UAAU,EAAE,EAAE;QAC3B,gGAAgG;QAChG,MAAM,IAAI,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;YACxC,IAAI,CAAC,QAAQ,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;YAChE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;SACpC;QACD,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE;YACtC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAA;SACvB;QACD,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEhD,8BAA8B;QAC9B,IAAI,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,EAAE;YACvC,UAAU,CAAC,KAAK,IAAI,SAAS,CAAC,WAAW,CAAA;SAC1C;QACD,8BAA8B;QAC9B,IAAI,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,cAAc,EAAE;YACzC,UAAU,CAAC,KAAK,IAAI,SAAS,CAAC,aAAa,CAAA;SAC5C;QAED,kBAAkB;KACnB;SAAM,IAAI,UAAU,CAAC,iBAAiB,EAAE,EAAE;QACzC,UAAU,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC,CAAA;KACxE;IAED,6EAA6E;IAC7E,UAAU;IACV,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACtC,IAAI,OAAO,GAAG,CAAC,EAAE;QACf,oEAAoE;QACpE,MAAM,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAAA;KACjD;IAED,iBAAiB;IACjB,MAAM,EAAE,GAAG,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACjD,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAA;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE;QACjC,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;QACnB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAElC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,kBAAkB,CAC1B,sCAAsC,KAAK,EAAE,CAC9C,CAAA;SACF;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAC7B,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,OAAO,CACR,CAAA;QACD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;KAC1D;IAED,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE;QACnC,wBAAwB;QACxB,MAAM,SAAS,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,gBAAgB,EAAE;YACpB,UAAU,CAAC,YAAY,GAAG,kBAAkB,CAC1C,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,CACb,CAAA;SACF;QAED,mHAAmH;QACnH,IAAI,WAAW,GAAG,UAAU,CAAC,UAAU,CAAA;QACvC,IAAI,UAAU,CAAC,YAAY,EAAE;YAC3B,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;gBACjD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE;oBAChC,WAAW,IAAI,IAAI,CAAA;iBACpB;qBAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE;oBACvC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAA;iBAC3B;qBAAM,IAAI,IAAI,KAAK,GAAG,EAAE;oBACvB,WAAW,IAAI,CAAC,CAAA;iBACjB;YACH,CAAC,CAAC,CAAA;SACH;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;YAC7B,OAAO,CAAC,IAAI,CACV,GACE,UAAU,CAAC,QAAQ;gBACnB,GAAG,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,cAAc,EACvD,mCAAmC,CACpC,CAAA;YACD,WAAW,GAAG,UAAU,CAAC,UAAU,CAAA;SACpC;QACD,UAAU,CAAC,WAAW,GAAG,WAAW,CAAA;QAEpC,kBAAkB;QAClB,UAAU,CAAC,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,UAAU,CAAC,yBAAyB,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,KAAK,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;aAClC;YACD,UAAU,CAAC,aAAa,GAAG,KAAK,CAAA;SACjC;KACF;SAAM,IAAI,UAAU,CAAC,cAAc,EAAE,EAAE;QACtC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAA;QAC3B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAA;KAChC;SAAM;QACL,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YACxC,KAAK,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;SAClC;QACD,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAA;QAEpD,IAAI,UAAU,CAAC,yBAAyB,EAAE,EAAE;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,KAAK,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;aAClC;YAED,UAAU,CAAC,aAAa,GAAG,KAAK,CAAA;SACjC;KACF;IAED,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -242,18 +242,22 @@ export default class CramSlice {
242
242
  }
243
243
  }
244
244
  // tracks the read position within the block. codec.decode() methods
245
- // advance the byte and bit positions in the cursor as they decode data
246
- // note that we are only decoding a single block here, the core data block
245
+ // advance the byte and bit positions in the cursor as they decode
246
+ // data note that we are only decoding a single block here, the core
247
+ // data block
247
248
  const coreDataBlock = await this.getCoreDataBlock();
248
249
  const cursors = {
249
250
  lastAlignmentStart: sliceHeader.content.refSeqStart || 0,
250
251
  coreBlock: { bitPosition: 7, bytePosition: 0 },
251
252
  externalBlocks: {
253
+ map: new Map(),
252
254
  getCursor(contentId) {
253
- if (!this[contentId]) {
254
- this[contentId] = { bitPosition: 7, bytePosition: 0 };
255
+ let r = this.map.get(contentId);
256
+ if (r === undefined) {
257
+ r = { bitPosition: 7, bytePosition: 0 };
258
+ this.map.set(contentId, r);
255
259
  }
256
- return this[contentId];
260
+ return r;
257
261
  },
258
262
  },
259
263
  };
@@ -286,8 +290,8 @@ export default class CramSlice {
286
290
  }
287
291
  }
288
292
  }
289
- // interpret `recordsToNextFragment` attributes to make standard `mate` objects
290
- // Resolve mate pair cross-references between records in this slice
293
+ // interpret `recordsToNextFragment` attributes to make standard `mate`
294
+ // objects Resolve mate pair cross-references between records in this slice
291
295
  for (let i = 0; i < records.length; i += 1) {
292
296
  const { mateRecordNumber } = records[i];
293
297
  if (mateRecordNumber >= 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/slice/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/slice/index.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gmod/cram",
3
- "version": "1.6.2",
3
+ "version": "1.6.3",
4
4
  "description": "read CRAM files with pure Javascript",
5
5
  "license": "MIT",
6
6
  "repository": "GMOD/cram-js",
@@ -23,7 +23,7 @@ export default class ByteArrayStopCodec extends CramCodec {
23
23
  )
24
24
 
25
25
  const dataCodec = this._getDataCodec()
26
- const data = new Array(arrayLength)
26
+ const data = new Uint8Array(arrayLength)
27
27
  for (let i = 0; i < arrayLength; i += 1) {
28
28
  data[i] = dataCodec.decode(
29
29
  slice,
@@ -44,7 +44,6 @@ export default class ByteArrayStopCodec extends CramCodec {
44
44
  stopPosition += 1
45
45
  }
46
46
  cursor.bytePosition = stopPosition + 1
47
- const data = dataBuffer.slice(startPosition, stopPosition)
48
- return data
47
+ return dataBuffer.slice(startPosition, stopPosition)
49
48
  }
50
49
  }
@@ -47,8 +47,6 @@ export default class ExternalCodec extends CramCodec {
47
47
  'attempted to read beyond end of block. this file seems truncated.',
48
48
  )
49
49
  }
50
- const result = contentBlock.content[cursor.bytePosition]
51
- cursor.bytePosition += 1
52
- return result
50
+ return contentBlock.content[cursor.bytePosition++]
53
51
  }
54
52
  }
@@ -82,7 +82,7 @@ export default class CramContainerCompressionScheme {
82
82
  this.tagIdsDictionary = content.preservation.TD
83
83
  this.substitutionMatrix = parseSubstitutionMatrix(content.preservation.SM)
84
84
 
85
- this.dataSeriesCodecCache = {}
85
+ this.dataSeriesCodecCache = new Map()
86
86
  this.tagCodecCache = {}
87
87
  }
88
88
 
@@ -113,7 +113,8 @@ export default class CramContainerCompressionScheme {
113
113
  }
114
114
 
115
115
  getCodecForDataSeries(dataSeriesName) {
116
- if (!this.dataSeriesCodecCache[dataSeriesName]) {
116
+ let r = this.dataSeriesCodecCache.get(dataSeriesName)
117
+ if (r === undefined) {
117
118
  const encodingData = this.dataSeriesEncoding[dataSeriesName]
118
119
  if (encodingData) {
119
120
  const dataType = dataSeriesTypes[dataSeriesName]
@@ -122,13 +123,11 @@ export default class CramContainerCompressionScheme {
122
123
  `data series name ${dataSeriesName} not defined in file compression header`,
123
124
  )
124
125
  }
125
- this.dataSeriesCodecCache[dataSeriesName] = instantiateCodec(
126
- encodingData,
127
- dataType,
128
- )
126
+ r = instantiateCodec(encodingData, dataType)
127
+ this.dataSeriesCodecCache.set(dataSeriesName, r)
129
128
  }
130
129
  }
131
- return this.dataSeriesCodecCache[dataSeriesName]
130
+ return r
132
131
  }
133
132
 
134
133
  toJSON() {
@@ -14,6 +14,19 @@ import CramContainer from './container'
14
14
  import { open } from '../io'
15
15
  import { parseItem, tinyMemoize } from './util'
16
16
  import { parseHeaderText } from '../sam'
17
+ //source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/
18
+ function getEndianness() {
19
+ let uInt32 = new Uint32Array([0x11223344])
20
+ let uInt8 = new Uint8Array(uInt32.buffer)
21
+
22
+ if (uInt8[0] === 0x44) {
23
+ return 0 //little-endian
24
+ } else if (uInt8[0] === 0x11) {
25
+ return 1 //big-endian
26
+ } else {
27
+ return 2 //mixed-endian?
28
+ }
29
+ }
17
30
 
18
31
  export default class CramFile {
19
32
  /**
@@ -44,6 +57,9 @@ export default class CramFile {
44
57
  this.featureCache = new LRU({
45
58
  maxSize: this.options.cacheSize,
46
59
  })
60
+ if (getEndianness() > 0) {
61
+ throw new Error('Detected big-endian machine, may be unable to run')
62
+ }
47
63
  }
48
64
 
49
65
  toString() {