@gmod/bbi 1.0.30 → 1.0.33

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/dist/bigwig.js CHANGED
@@ -1,47 +1,64 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ var __generator = (this && this.__generator) || function (thisArg, body) {
27
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
+ function verb(n) { return function (v) { return step([n, v]); }; }
30
+ function step(op) {
31
+ if (f) throw new TypeError("Generator is already executing.");
32
+ while (_) try {
33
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
+ if (y = 0, t) op = [op[0] & 2, t.value];
35
+ switch (op[0]) {
36
+ case 0: case 1: t = op; break;
37
+ case 4: _.label++; return { value: op[1], done: false };
38
+ case 5: _.label++; y = op[1]; op = [0]; continue;
39
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
+ default:
41
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
+ if (t[2]) _.ops.pop();
46
+ _.trys.pop(); continue;
47
+ }
48
+ op = body.call(thisArg, _);
49
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
+ }
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
8
54
  exports.BigWig = void 0;
9
-
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _blockView = require("./blockView");
25
-
26
- var _bbi = require("./bbi");
27
-
28
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
29
-
30
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
31
-
32
- var BigWig = /*#__PURE__*/function (_BBI) {
33
- (0, _inherits2.default)(BigWig, _BBI);
34
-
35
- var _super = _createSuper(BigWig);
36
-
37
- function BigWig() {
38
- (0, _classCallCheck2.default)(this, BigWig);
39
- return _super.apply(this, arguments);
40
- }
41
-
42
- (0, _createClass2.default)(BigWig, [{
43
- key: "getView",
44
-
55
+ var blockView_1 = require("./blockView");
56
+ var bbi_1 = require("./bbi");
57
+ var BigWig = /** @class */ (function (_super) {
58
+ __extends(BigWig, _super);
59
+ function BigWig() {
60
+ return _super !== null && _super.apply(this, arguments) || this;
61
+ }
45
62
  /**
46
63
  * Retrieves a BlockView of a specific zoomLevel
47
64
  *
@@ -50,75 +67,34 @@ var BigWig = /*#__PURE__*/function (_BBI) {
50
67
  * @param end - The end of a region
51
68
  * @param opts - An object containing basesPerSpan (e.g. pixels per basepair) or scale used to infer the zoomLevel to use
52
69
  */
53
- value: function () {
54
- var _getView = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(scale, opts) {
55
- var _yield$this$getHeader, zoomLevels, refsByName, fileSize, isBigEndian, uncompressBufSize, basesPerPx, maxLevel, i, zh, indexLength;
56
-
57
- return _regenerator.default.wrap(function _callee$(_context) {
58
- while (1) {
59
- switch (_context.prev = _context.next) {
60
- case 0:
61
- _context.next = 2;
62
- return this.getHeader(opts);
63
-
64
- case 2:
65
- _yield$this$getHeader = _context.sent;
66
- zoomLevels = _yield$this$getHeader.zoomLevels;
67
- refsByName = _yield$this$getHeader.refsByName;
68
- fileSize = _yield$this$getHeader.fileSize;
69
- isBigEndian = _yield$this$getHeader.isBigEndian;
70
- uncompressBufSize = _yield$this$getHeader.uncompressBufSize;
71
- basesPerPx = 1 / scale;
72
- maxLevel = zoomLevels.length;
73
-
74
- if (!fileSize) {
75
- // if we don't know the file size, we can't fetch the highest zoom level :-(
76
- maxLevel -= 1;
77
- }
78
-
79
- i = maxLevel;
80
-
81
- case 12:
82
- if (!(i >= 0)) {
83
- _context.next = 20;
84
- break;
70
+ BigWig.prototype.getView = function (scale, opts) {
71
+ return __awaiter(this, void 0, void 0, function () {
72
+ var _a, zoomLevels, refsByName, fileSize, isBigEndian, uncompressBufSize, basesPerPx, maxLevel, i, zh, indexLength;
73
+ return __generator(this, function (_b) {
74
+ switch (_b.label) {
75
+ case 0: return [4 /*yield*/, this.getHeader(opts)];
76
+ case 1:
77
+ _a = _b.sent(), zoomLevels = _a.zoomLevels, refsByName = _a.refsByName, fileSize = _a.fileSize, isBigEndian = _a.isBigEndian, uncompressBufSize = _a.uncompressBufSize;
78
+ basesPerPx = 1 / scale;
79
+ maxLevel = zoomLevels.length;
80
+ if (!fileSize) {
81
+ // if we don't know the file size, we can't fetch the highest zoom level :-(
82
+ maxLevel -= 1;
83
+ }
84
+ for (i = maxLevel; i >= 0; i -= 1) {
85
+ zh = zoomLevels[i];
86
+ if (zh && zh.reductionLevel <= 2 * basesPerPx) {
87
+ indexLength = i < zoomLevels.length - 1
88
+ ? zoomLevels[i + 1].dataOffset - zh.indexOffset
89
+ : fileSize - 4 - zh.indexOffset;
90
+ return [2 /*return*/, new blockView_1.BlockView(this.bbi, refsByName, zh.indexOffset, indexLength, isBigEndian, uncompressBufSize > 0, 'summary')];
91
+ }
92
+ }
93
+ return [2 /*return*/, this.getUnzoomedView(opts)];
85
94
  }
86
-
87
- zh = zoomLevels[i];
88
-
89
- if (!(zh && zh.reductionLevel <= 2 * basesPerPx)) {
90
- _context.next = 17;
91
- break;
92
- }
93
-
94
- indexLength = i < zoomLevels.length - 1 ? zoomLevels[i + 1].dataOffset - zh.indexOffset : fileSize - 4 - zh.indexOffset;
95
- return _context.abrupt("return", new _blockView.BlockView(this.bbi, refsByName, zh.indexOffset, indexLength, isBigEndian, uncompressBufSize > 0, 'summary'));
96
-
97
- case 17:
98
- i -= 1;
99
- _context.next = 12;
100
- break;
101
-
102
- case 20:
103
- return _context.abrupt("return", this.getUnzoomedView(opts));
104
-
105
- case 21:
106
- case "end":
107
- return _context.stop();
108
- }
109
- }
110
- }, _callee, this);
111
- }));
112
-
113
- function getView(_x, _x2) {
114
- return _getView.apply(this, arguments);
115
- }
116
-
117
- return getView;
118
- }()
119
- }]);
120
- return BigWig;
121
- }(_bbi.BBI);
122
-
95
+ });
96
+ });
97
+ };
98
+ return BigWig;
99
+ }(bbi_1.BBI));
123
100
  exports.BigWig = BigWig;
124
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9iaWd3aWcudHMiXSwibmFtZXMiOlsiQmlnV2lnIiwic2NhbGUiLCJvcHRzIiwiZ2V0SGVhZGVyIiwiem9vbUxldmVscyIsInJlZnNCeU5hbWUiLCJmaWxlU2l6ZSIsImlzQmlnRW5kaWFuIiwidW5jb21wcmVzc0J1ZlNpemUiLCJiYXNlc1BlclB4IiwibWF4TGV2ZWwiLCJsZW5ndGgiLCJpIiwiemgiLCJyZWR1Y3Rpb25MZXZlbCIsImluZGV4TGVuZ3RoIiwiZGF0YU9mZnNldCIsImluZGV4T2Zmc2V0IiwiQmxvY2tWaWV3IiwiYmJpIiwiZ2V0VW56b29tZWRWaWV3IiwiQkJJIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOzs7Ozs7SUFFYUEsTTs7Ozs7Ozs7Ozs7OztBQUNYOzs7Ozs7Ozs7OEdBUXdCQyxLLEVBQWVDLEk7Ozs7Ozs7O3VCQU8zQixLQUFLQyxTQUFMLENBQWVELElBQWYsQzs7OztBQUxSRSxnQkFBQUEsVSx5QkFBQUEsVTtBQUNBQyxnQkFBQUEsVSx5QkFBQUEsVTtBQUNBQyxnQkFBQUEsUSx5QkFBQUEsUTtBQUNBQyxnQkFBQUEsVyx5QkFBQUEsVztBQUNBQyxnQkFBQUEsaUIseUJBQUFBLGlCO0FBRUlDLGdCQUFBQSxVLEdBQWEsSUFBSVIsSztBQUNuQlMsZ0JBQUFBLFEsR0FBV04sVUFBVSxDQUFDTyxNOztBQUMxQixvQkFBSSxDQUFDTCxRQUFMLEVBQWU7QUFDYjtBQUNBSSxrQkFBQUEsUUFBUSxJQUFJLENBQVo7QUFDRDs7QUFFUUUsZ0JBQUFBLEMsR0FBSUYsUTs7O3NCQUFVRSxDQUFDLElBQUksQzs7Ozs7QUFDcEJDLGdCQUFBQSxFLEdBQUtULFVBQVUsQ0FBQ1EsQ0FBRCxDOztzQkFDakJDLEVBQUUsSUFBSUEsRUFBRSxDQUFDQyxjQUFILElBQXFCLElBQUlMLFU7Ozs7O0FBQzNCTSxnQkFBQUEsVyxHQUNKSCxDQUFDLEdBQUdSLFVBQVUsQ0FBQ08sTUFBWCxHQUFvQixDQUF4QixHQUNJUCxVQUFVLENBQUNRLENBQUMsR0FBRyxDQUFMLENBQVYsQ0FBa0JJLFVBQWxCLEdBQStCSCxFQUFFLENBQUNJLFdBRHRDLEdBRUlYLFFBQVEsR0FBRyxDQUFYLEdBQWVPLEVBQUUsQ0FBQ0ksVztpREFDakIsSUFBSUMsb0JBQUosQ0FDTCxLQUFLQyxHQURBLEVBRUxkLFVBRkssRUFHTFEsRUFBRSxDQUFDSSxXQUhFLEVBSUxGLFdBSkssRUFLTFIsV0FMSyxFQU1MQyxpQkFBaUIsR0FBRyxDQU5mLEVBT0wsU0FQSyxDOzs7QUFQb0JJLGdCQUFBQSxDQUFDLElBQUksQzs7Ozs7aURBa0I3QixLQUFLUSxlQUFMLENBQXFCbEIsSUFBckIsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBMUNpQm1CLFEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCbG9ja1ZpZXcgfSBmcm9tICcuL2Jsb2NrVmlldydcbmltcG9ydCB7IEJCSSwgUmVxdWVzdE9wdGlvbnMgfSBmcm9tICcuL2JiaSdcblxuZXhwb3J0IGNsYXNzIEJpZ1dpZyBleHRlbmRzIEJCSSB7XG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBCbG9ja1ZpZXcgb2YgYSBzcGVjaWZpYyB6b29tTGV2ZWxcbiAgICpcbiAgICogQHBhcmFtIHJlZk5hbWUgLSBUaGUgY2hyb21vc29tZSBuYW1lXG4gICAqIEBwYXJhbSBzdGFydCAtIFRoZSBzdGFydCBvZiBhIHJlZ2lvblxuICAgKiBAcGFyYW0gZW5kIC0gVGhlIGVuZCBvZiBhIHJlZ2lvblxuICAgKiBAcGFyYW0gb3B0cyAtIEFuIG9iamVjdCBjb250YWluaW5nIGJhc2VzUGVyU3BhbiAoZS5nLiBwaXhlbHMgcGVyIGJhc2VwYWlyKSBvciBzY2FsZSB1c2VkIHRvIGluZmVyIHRoZSB6b29tTGV2ZWwgdG8gdXNlXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0VmlldyhzY2FsZTogbnVtYmVyLCBvcHRzOiBSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8QmxvY2tWaWV3PiB7XG4gICAgY29uc3Qge1xuICAgICAgem9vbUxldmVscyxcbiAgICAgIHJlZnNCeU5hbWUsXG4gICAgICBmaWxlU2l6ZSxcbiAgICAgIGlzQmlnRW5kaWFuLFxuICAgICAgdW5jb21wcmVzc0J1ZlNpemUsXG4gICAgfSA9IGF3YWl0IHRoaXMuZ2V0SGVhZGVyKG9wdHMpXG4gICAgY29uc3QgYmFzZXNQZXJQeCA9IDEgLyBzY2FsZVxuICAgIGxldCBtYXhMZXZlbCA9IHpvb21MZXZlbHMubGVuZ3RoXG4gICAgaWYgKCFmaWxlU2l6ZSkge1xuICAgICAgLy8gaWYgd2UgZG9uJ3Qga25vdyB0aGUgZmlsZSBzaXplLCB3ZSBjYW4ndCBmZXRjaCB0aGUgaGlnaGVzdCB6b29tIGxldmVsIDotKFxuICAgICAgbWF4TGV2ZWwgLT0gMVxuICAgIH1cblxuICAgIGZvciAobGV0IGkgPSBtYXhMZXZlbDsgaSA+PSAwOyBpIC09IDEpIHtcbiAgICAgIGNvbnN0IHpoID0gem9vbUxldmVsc1tpXVxuICAgICAgaWYgKHpoICYmIHpoLnJlZHVjdGlvbkxldmVsIDw9IDIgKiBiYXNlc1BlclB4KSB7XG4gICAgICAgIGNvbnN0IGluZGV4TGVuZ3RoID1cbiAgICAgICAgICBpIDwgem9vbUxldmVscy5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IHpvb21MZXZlbHNbaSArIDFdLmRhdGFPZmZzZXQgLSB6aC5pbmRleE9mZnNldFxuICAgICAgICAgICAgOiBmaWxlU2l6ZSAtIDQgLSB6aC5pbmRleE9mZnNldFxuICAgICAgICByZXR1cm4gbmV3IEJsb2NrVmlldyhcbiAgICAgICAgICB0aGlzLmJiaSxcbiAgICAgICAgICByZWZzQnlOYW1lLFxuICAgICAgICAgIHpoLmluZGV4T2Zmc2V0LFxuICAgICAgICAgIGluZGV4TGVuZ3RoLFxuICAgICAgICAgIGlzQmlnRW5kaWFuLFxuICAgICAgICAgIHVuY29tcHJlc3NCdWZTaXplID4gMCxcbiAgICAgICAgICAnc3VtbWFyeScsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0VW56b29tZWRWaWV3KG9wdHMpXG4gIH1cbn1cbiJdfQ==