@gmod/bbi 1.0.30 → 1.0.31

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/index.js CHANGED
@@ -1,42 +1,7 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "BigWig", {
7
- enumerable: true,
8
- get: function get() {
9
- return _bigwig.BigWig;
10
- }
11
- });
12
- Object.defineProperty(exports, "BigBed", {
13
- enumerable: true,
14
- get: function get() {
15
- return _bigbed.BigBed;
16
- }
17
- });
18
- Object.defineProperty(exports, "Feature", {
19
- enumerable: true,
20
- get: function get() {
21
- return _bbi.Feature;
22
- }
23
- });
24
- Object.defineProperty(exports, "Header", {
25
- enumerable: true,
26
- get: function get() {
27
- return _bbi.Header;
28
- }
29
- });
30
- Object.defineProperty(exports, "RequestOptions", {
31
- enumerable: true,
32
- get: function get() {
33
- return _bbi.RequestOptions;
34
- }
35
- });
36
-
37
- var _bigwig = require("./bigwig");
38
-
39
- var _bigbed = require("./bigbed");
40
-
41
- var _bbi = require("./bbi");
42
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEJpZ1dpZyB9IGZyb20gJy4vYmlnd2lnJ1xuZXhwb3J0IHsgQmlnQmVkIH0gZnJvbSAnLi9iaWdiZWQnXG5leHBvcnQgeyBGZWF0dXJlLCBIZWFkZXIsIFJlcXVlc3RPcHRpb25zIH0gZnJvbSAnLi9iYmknXG4iXX0=
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BigBed = exports.BigWig = void 0;
4
+ var bigwig_1 = require("./bigwig");
5
+ Object.defineProperty(exports, "BigWig", { enumerable: true, get: function () { return bigwig_1.BigWig; } });
6
+ var bigbed_1 = require("./bigbed");
7
+ Object.defineProperty(exports, "BigBed", { enumerable: true, get: function () { return bigbed_1.BigBed; } });
package/dist/range.js CHANGED
@@ -1,188 +1,127 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
2
  /* eslint prefer-rest-params:0, no-nested-ternary:0 */
17
-
3
+ Object.defineProperty(exports, "__esModule", { value: true });
18
4
  /**
19
5
  * Adapted from a combination of Range and _Compound in the
20
6
  * Dalliance Genome Explorer, (c) Thomas Down 2006-2010.
21
7
  */
22
- var Range = /*#__PURE__*/function () {
23
- function Range(arg1, arg2) {
24
- (0, _classCallCheck2.default)(this, Range);
25
- (0, _defineProperty2.default)(this, "ranges", void 0);
26
- this.ranges = arguments.length === 2 ? [{
27
- min: arg1,
28
- max: arg2
29
- }] : 0 in arg1 ? Object.assign({}, arg1) : [arg1];
30
- }
31
-
32
- (0, _createClass2.default)(Range, [{
33
- key: "min",
34
- value: function min() {
35
- return this.ranges[0].min;
8
+ var Range = /** @class */ (function () {
9
+ function Range(arg1, arg2) {
10
+ this.ranges =
11
+ arguments.length === 2
12
+ ? [{ min: arg1, max: arg2 }]
13
+ : 0 in arg1
14
+ ? Object.assign({}, arg1)
15
+ : [arg1];
36
16
  }
37
- }, {
38
- key: "max",
39
- value: function max() {
40
- return this.ranges[this.ranges.length - 1].max;
41
- }
42
- }, {
43
- key: "contains",
44
- value: function contains(pos) {
45
- for (var s = 0; s < this.ranges.length; s += 1) {
46
- var r = this.ranges[s];
47
-
48
- if (r.min <= pos && r.max >= pos) {
49
- return true;
17
+ Range.prototype.min = function () {
18
+ return this.ranges[0].min;
19
+ };
20
+ Range.prototype.max = function () {
21
+ return this.ranges[this.ranges.length - 1].max;
22
+ };
23
+ Range.prototype.contains = function (pos) {
24
+ for (var s = 0; s < this.ranges.length; s += 1) {
25
+ var r = this.ranges[s];
26
+ if (r.min <= pos && r.max >= pos) {
27
+ return true;
28
+ }
50
29
  }
51
- }
52
-
53
- return false;
54
- }
55
- }, {
56
- key: "isContiguous",
57
- value: function isContiguous() {
58
- return this.ranges.length > 1;
59
- }
60
- }, {
61
- key: "getRanges",
62
- value: function getRanges() {
63
- return this.ranges.map(function (r) {
64
- return new Range(r.min, r.max);
65
- });
66
- }
67
- }, {
68
- key: "toString",
69
- value: function toString() {
70
- return this.ranges.map(function (r) {
71
- return "[".concat(r.min, "-").concat(r.max, "]");
72
- }).join(',');
73
- }
74
- }, {
75
- key: "union",
76
- value: function union(s1) {
77
- var ranges = this.getRanges().concat(s1.getRanges()).sort(this.rangeOrder);
78
- var oranges = [];
79
- var current = ranges[0];
80
-
81
- for (var i = 1; i < ranges.length; i += 1) {
82
- var nxt = ranges[i];
83
-
84
- if (nxt.min() > current.max() + 1) {
85
- oranges.push(current);
86
- current = nxt;
87
- } else if (nxt.max() > current.max()) {
88
- current = new Range(current.min(), nxt.max());
30
+ return false;
31
+ };
32
+ Range.prototype.isContiguous = function () {
33
+ return this.ranges.length > 1;
34
+ };
35
+ Range.prototype.getRanges = function () {
36
+ return this.ranges.map(function (r) { return new Range(r.min, r.max); });
37
+ };
38
+ Range.prototype.toString = function () {
39
+ return this.ranges.map(function (r) { return "[".concat(r.min, "-").concat(r.max, "]"); }).join(',');
40
+ };
41
+ Range.prototype.union = function (s1) {
42
+ var ranges = this.getRanges().concat(s1.getRanges()).sort(this.rangeOrder);
43
+ var oranges = [];
44
+ var current = ranges[0];
45
+ for (var i = 1; i < ranges.length; i += 1) {
46
+ var nxt = ranges[i];
47
+ if (nxt.min() > current.max() + 1) {
48
+ oranges.push(current);
49
+ current = nxt;
50
+ }
51
+ else if (nxt.max() > current.max()) {
52
+ current = new Range(current.min(), nxt.max());
53
+ }
89
54
  }
90
- }
91
-
92
- oranges.push(current);
93
-
94
- if (oranges.length === 1) {
95
- return oranges[0];
96
- }
97
-
98
- return new Range(oranges);
99
- }
100
- }, {
101
- key: "intersection",
102
- value: function intersection(arg) {
103
- // eslint-disable-next-line @typescript-eslint/no-this-alias
104
- var s0 = this;
105
- var s1 = arg;
106
- var r0 = this.ranges();
107
- var r1 = s1.ranges();
108
- var l0 = r0.length;
109
- var l1 = r1.length;
110
- var i0 = 0;
111
- var i1 = 0;
112
- var or = [];
113
-
114
- while (i0 < l0 && i1 < l1) {
115
- s0 = r0[i0];
116
- s1 = r1[i1];
117
- var lapMin = Math.max(s0.min(), s1.min());
118
- var lapMax = Math.min(s0.max(), s1.max());
119
-
120
- if (lapMax >= lapMin) {
121
- or.push(new Range(lapMin, lapMax));
55
+ oranges.push(current);
56
+ if (oranges.length === 1) {
57
+ return oranges[0];
122
58
  }
123
-
124
- if (s0.max() > s1.max()) {
125
- i1 += 1;
126
- } else {
127
- i0 += 1;
59
+ return new Range(oranges);
60
+ };
61
+ Range.prototype.intersection = function (arg) {
62
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
63
+ var s0 = this;
64
+ var s1 = arg;
65
+ var r0 = this.ranges();
66
+ var r1 = s1.ranges();
67
+ var l0 = r0.length;
68
+ var l1 = r1.length;
69
+ var i0 = 0;
70
+ var i1 = 0;
71
+ var or = [];
72
+ while (i0 < l0 && i1 < l1) {
73
+ s0 = r0[i0];
74
+ s1 = r1[i1];
75
+ var lapMin = Math.max(s0.min(), s1.min());
76
+ var lapMax = Math.min(s0.max(), s1.max());
77
+ if (lapMax >= lapMin) {
78
+ or.push(new Range(lapMin, lapMax));
79
+ }
80
+ if (s0.max() > s1.max()) {
81
+ i1 += 1;
82
+ }
83
+ else {
84
+ i0 += 1;
85
+ }
128
86
  }
129
- }
130
-
131
- if (or.length === 0) {
132
- throw new Error('found range of length 0');
133
- }
134
-
135
- if (or.length === 1) {
136
- return or[0];
137
- }
138
-
139
- return new Range(or);
140
- }
141
- }, {
142
- key: "coverage",
143
- value: function coverage() {
144
- var tot = 0;
145
- var rl = this.ranges();
146
-
147
- for (var ri = 0; ri < rl.length; ri += 1) {
148
- var r = rl[ri];
149
- tot += r.max() - r.min() + 1;
150
- }
151
-
152
- return tot;
153
- }
154
- }, {
155
- key: "rangeOrder",
156
- value: function rangeOrder(tmpa, tmpb) {
157
- var a = tmpa;
158
- var b = tmpb;
159
-
160
- if (arguments.length < 2) {
161
- b = a;
162
- a = this;
163
- }
164
-
165
- if (a.min() < b.min()) {
166
- return -1;
167
- }
168
-
169
- if (a.min() > b.min()) {
170
- return 1;
171
- }
172
-
173
- if (a.max() < b.max()) {
174
- return -1;
175
- }
176
-
177
- if (b.max() > a.max()) {
178
- return 1;
179
- }
180
-
181
- return 0;
182
- }
183
- }]);
184
- return Range;
185
- }();
186
-
87
+ if (or.length === 0) {
88
+ throw new Error('found range of length 0');
89
+ }
90
+ if (or.length === 1) {
91
+ return or[0];
92
+ }
93
+ return new Range(or);
94
+ };
95
+ Range.prototype.coverage = function () {
96
+ var tot = 0;
97
+ var rl = this.ranges();
98
+ for (var ri = 0; ri < rl.length; ri += 1) {
99
+ var r = rl[ri];
100
+ tot += r.max() - r.min() + 1;
101
+ }
102
+ return tot;
103
+ };
104
+ Range.prototype.rangeOrder = function (tmpa, tmpb) {
105
+ var a = tmpa;
106
+ var b = tmpb;
107
+ if (arguments.length < 2) {
108
+ b = a;
109
+ a = this;
110
+ }
111
+ if (a.min() < b.min()) {
112
+ return -1;
113
+ }
114
+ if (a.min() > b.min()) {
115
+ return 1;
116
+ }
117
+ if (a.max() < b.max()) {
118
+ return -1;
119
+ }
120
+ if (b.max() > a.max()) {
121
+ return 1;
122
+ }
123
+ return 0;
124
+ };
125
+ return Range;
126
+ }());
187
127
  exports.default = Range;
188
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yYW5nZS50cyJdLCJuYW1lcyI6WyJSYW5nZSIsImFyZzEiLCJhcmcyIiwicmFuZ2VzIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwibWluIiwibWF4IiwiT2JqZWN0IiwiYXNzaWduIiwicG9zIiwicyIsInIiLCJtYXAiLCJqb2luIiwiczEiLCJnZXRSYW5nZXMiLCJjb25jYXQiLCJzb3J0IiwicmFuZ2VPcmRlciIsIm9yYW5nZXMiLCJjdXJyZW50IiwiaSIsIm54dCIsInB1c2giLCJhcmciLCJzMCIsInIwIiwicjEiLCJsMCIsImwxIiwiaTAiLCJpMSIsIm9yIiwibGFwTWluIiwiTWF0aCIsImxhcE1heCIsIkVycm9yIiwidG90IiwicmwiLCJyaSIsInRtcGEiLCJ0bXBiIiwiYSIsImIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOzs7O0lBSXFCQSxLO0FBR25CLGlCQUFtQkMsSUFBbkIsRUFBOEJDLElBQTlCLEVBQTBDO0FBQUE7QUFBQTtBQUN4QyxTQUFLQyxNQUFMLEdBQ0VDLFNBQVMsQ0FBQ0MsTUFBVixLQUFxQixDQUFyQixHQUNJLENBQUM7QUFBRUMsTUFBQUEsR0FBRyxFQUFFTCxJQUFQO0FBQWFNLE1BQUFBLEdBQUcsRUFBRUw7QUFBbEIsS0FBRCxDQURKLEdBRUksS0FBS0QsSUFBTCxHQUNBTyxNQUFNLENBQUNDLE1BQVAsQ0FBYyxFQUFkLEVBQWtCUixJQUFsQixDQURBLEdBRUEsQ0FBQ0EsSUFBRCxDQUxOO0FBTUQ7Ozs7MEJBRW9CO0FBQ25CLGFBQU8sS0FBS0UsTUFBTCxDQUFZLENBQVosRUFBZUcsR0FBdEI7QUFDRDs7OzBCQUVvQjtBQUNuQixhQUFPLEtBQUtILE1BQUwsQ0FBWSxLQUFLQSxNQUFMLENBQVlFLE1BQVosR0FBcUIsQ0FBakMsRUFBb0NFLEdBQTNDO0FBQ0Q7Ozs2QkFFZUcsRyxFQUFzQjtBQUNwQyxXQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUcsS0FBS1Is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LE1BQXpCLEVBQWlDbUMsRUFBRSxJQUFJLENBQXZDLEVBQTBDO0FBQ3hDLFlBQU01QixDQUFDLEdBQUcyQixFQUFFLENBQUNDLEVBQUQsQ0FBWjtBQUNBRixRQUFBQSxHQUFHLElBQUkxQixDQUFDLENBQUNMLEdBQUYsS0FBVUssQ0FBQyxDQUFDTixHQUFGLEVBQVYsR0FBb0IsQ0FBM0I7QUFDRDs7QUFDRCxhQUFPZ0MsR0FBUDtBQUNEOzs7K0JBRWlCRyxJLEVBQWFDLEksRUFBcUI7QUFDbEQsVUFBSUMsQ0FBQyxHQUFHRixJQUFSO0FBQ0EsVUFBSUcsQ0FBQyxHQUFHRixJQUFSOztBQUNBLFVBQUl0QyxTQUFTLENBQUNDLE1BQVYsR0FBbUIsQ0FBdkIsRUFBMEI7QUFDeEJ1QyxRQUFBQSxDQUFDLEdBQUdELENBQUo7QUFDQUEsUUFBQUEsQ0FBQyxHQUFHLElBQUo7QUFDRDs7QUFFRCxVQUFJQSxDQUFDLENBQUNyQyxHQUFGLEtBQVVzQyxDQUFDLENBQUN0QyxHQUFGLEVBQWQsRUFBdUI7QUFDckIsZUFBTyxDQUFDLENBQVI7QUFDRDs7QUFDRCxVQUFJcUMsQ0FBQyxDQUFDckMsR0FBRixLQUFVc0MsQ0FBQyxDQUFDdEMsR0FBRixFQUFkLEVBQXVCO0FBQ3JCLGVBQU8sQ0FBUDtBQUNEOztBQUNELFVBQUlxQyxDQUFDLENBQUNwQyxHQUFGLEtBQVVxQyxDQUFDLENBQUNyQyxHQUFGLEVBQWQsRUFBdUI7QUFDckIsZUFBTyxDQUFDLENBQVI7QUFDRDs7QUFDRCxVQUFJcUMsQ0FBQyxDQUFDckMsR0FBRixLQUFVb0MsQ0FBQyxDQUFDcEMsR0FBRixFQUFkLEVBQXVCO0FBQ3JCLGVBQU8sQ0FBUDtBQUNEOztBQUNELGFBQU8sQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50IHByZWZlci1yZXN0LXBhcmFtczowLCBuby1uZXN0ZWQtdGVybmFyeTowICovXG5cbi8qKlxuICogQWRhcHRlZCBmcm9tIGEgY29tYmluYXRpb24gb2YgUmFuZ2UgYW5kIF9Db21wb3VuZCBpbiB0aGVcbiAqIERhbGxpYW5jZSBHZW5vbWUgRXhwbG9yZXIsIChjKSBUaG9tYXMgRG93biAyMDA2LTIwMTAuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmdlIHtcbiAgcHVibGljIHJhbmdlczogYW55XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKGFyZzE6IGFueSwgYXJnMj86IGFueSkge1xuICAgIHRoaXMucmFuZ2VzID1cbiAgICAgIGFyZ3VtZW50cy5sZW5ndGggPT09IDJcbiAgICAgICAgPyBbeyBtaW46IGFyZzEsIG1heDogYXJnMiB9XVxuICAgICAgICA6IDAgaW4gYXJnMVxuICAgICAgICA/IE9iamVjdC5hc3NpZ24oe30sIGFyZzEpXG4gICAgICAgIDogW2FyZzFdXG4gIH1cblxuICBwdWJsaWMgbWluKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucmFuZ2VzWzBdLm1pblxuICB9XG5cbiAgcHVibGljIG1heCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnJhbmdlc1t0aGlzLnJhbmdlcy5sZW5ndGggLSAxXS5tYXhcbiAgfVxuXG4gIHB1YmxpYyBjb250YWlucyhwb3M6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGZvciAobGV0IHMgPSAwOyBzIDwgdGhpcy5yYW5nZXMubGVuZ3RoOyBzICs9IDEpIHtcbiAgICAgIGNvbnN0IHIgPSB0aGlzLnJhbmdlc1tzXVxuICAgICAgaWYgKHIubWluIDw9IHBvcyAmJiByLm1heCA+PSBwb3MpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBwdWJsaWMgaXNDb250aWd1b3VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnJhbmdlcy5sZW5ndGggPiAxXG4gIH1cblxuICBwdWJsaWMgZ2V0UmFuZ2VzKCk6IFJhbmdlW10ge1xuICAgIHJldHVybiB0aGlzLnJhbmdlcy5tYXAoKHI6IFJhbmdlKSA9PiBuZXcgUmFuZ2Uoci5taW4sIHIubWF4KSlcbiAgfVxuXG4gIHB1YmxpYyB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJhbmdlcy5tYXAoKHI6IFJhbmdlKSA9PiBgWyR7ci5taW59LSR7ci5tYXh9XWApLmpvaW4oJywnKVxuICB9XG5cbiAgcHVibGljIHVuaW9uKHMxOiBSYW5nZSk6IFJhbmdlIHtcbiAgICBjb25zdCByYW5nZXMgPSB0aGlzLmdldFJhbmdlcygpXG4gICAgICAuY29uY2F0KHMxLmdldFJhbmdlcygpKVxuICAgICAgLnNvcnQodGhpcy5yYW5nZU9yZGVyKVxuICAgIGNvbnN0IG9yYW5nZXMgPSBbXVxuICAgIGxldCBjdXJyZW50ID0gcmFuZ2VzWzBdXG5cbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHJhbmdlcy5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgY29uc3Qgbnh0ID0gcmFuZ2VzW2ldXG4gICAgICBpZiAobnh0Lm1pbigpID4gY3VycmVudC5tYXgoKSArIDEpIHtcbiAgICAgICAgb3Jhbmdlcy5wdXNoKGN1cnJlbnQpXG4gICAgICAgIGN1cnJlbnQgPSBueHRcbiAgICAgIH0gZWxzZSBpZiAobnh0Lm1heCgpID4gY3VycmVudC5tYXgoKSkge1xuICAgICAgICBjdXJyZW50ID0gbmV3IFJhbmdlKGN1cnJlbnQubWluKCksIG54dC5tYXgoKSlcbiAgICAgIH1cbiAgICB9XG4gICAgb3Jhbmdlcy5wdXNoKGN1cnJlbnQpXG5cbiAgICBpZiAob3Jhbmdlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBvcmFuZ2VzWzBdXG4gICAgfVxuICAgIHJldHVybiBuZXcgUmFuZ2Uob3JhbmdlcylcbiAgfVxuXG4gIHB1YmxpYyBpbnRlcnNlY3Rpb24oYXJnOiBSYW5nZSk6IFJhbmdlIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcbiAgICBsZXQgczAgPSB0aGlzXG4gICAgbGV0IHMxID0gYXJnXG4gICAgY29uc3QgcjAgPSB0aGlzLnJhbmdlcygpXG4gICAgY29uc3QgcjEgPSBzMS5yYW5nZXMoKVxuICAgIGNvbnN0IGwwID0gcjAubGVuZ3RoXG5cbiAgICBjb25zdCBsMSA9IHIxLmxlbmd0aFxuICAgIGxldCBpMCA9IDBcblxuICAgIGxldCBpMSA9IDBcbiAgICBjb25zdCBvciA9IFtdXG5cbiAgICB3aGlsZSAoaTAgPCBsMCAmJiBpMSA8IGwxKSB7XG4gICAgICBzMCA9IHIwW2kwXVxuICAgICAgczEgPSByMVtpMV1cbiAgICAgIGNvbnN0IGxhcE1pbiA9IE1hdGgubWF4KHMwLm1pbigpLCBzMS5taW4oKSlcbiAgICAgIGNvbnN0IGxhcE1heCA9IE1hdGgubWluKHMwLm1heCgpLCBzMS5tYXgoKSlcbiAgICAgIGlmIChsYXBNYXggPj0gbGFwTWluKSB7XG4gICAgICAgIG9yLnB1c2gobmV3IFJhbmdlKGxhcE1pbiwgbGFwTWF4KSlcbiAgICAgIH1cbiAgICAgIGlmIChzMC5tYXgoKSA+IHMxLm1heCgpKSB7XG4gICAgICAgIGkxICs9IDFcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGkwICs9IDFcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3IubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ZvdW5kIHJhbmdlIG9mIGxlbmd0aCAwJylcbiAgICB9XG4gICAgaWYgKG9yLmxlbmd0aCA9PT0gMSkge1xuICAgICAgcmV0dXJuIG9yWzBdXG4gICAgfVxuICAgIHJldHVybiBuZXcgUmFuZ2Uob3IpXG4gIH1cblxuICBwdWJsaWMgY292ZXJhZ2UoKTogbnVtYmVyIHtcbiAgICBsZXQgdG90ID0gMFxuICAgIGNvbnN0IHJsID0gdGhpcy5yYW5nZXMoKVxuICAgIGZvciAobGV0IHJpID0gMDsgcmkgPCBybC5sZW5ndGg7IHJpICs9IDEpIHtcbiAgICAgIGNvbnN0IHIgPSBybFtyaV1cbiAgICAgIHRvdCArPSByLm1heCgpIC0gci5taW4oKSArIDFcbiAgICB9XG4gICAgcmV0dXJuIHRvdFxuICB9XG5cbiAgcHVibGljIHJhbmdlT3JkZXIodG1wYTogUmFuZ2UsIHRtcGI6IFJhbmdlKTogbnVtYmVyIHtcbiAgICBsZXQgYSA9IHRtcGFcbiAgICBsZXQgYiA9IHRtcGJcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgIGIgPSBhXG4gICAgICBhID0gdGhpc1xuICAgIH1cblxuICAgIGlmIChhLm1pbigpIDwgYi5taW4oKSkge1xuICAgICAgcmV0dXJuIC0xXG4gICAgfVxuICAgIGlmIChhLm1pbigpID4gYi5taW4oKSkge1xuICAgICAgcmV0dXJuIDFcbiAgICB9XG4gICAgaWYgKGEubWF4KCkgPCBiLm1heCgpKSB7XG4gICAgICByZXR1cm4gLTFcbiAgICB9XG4gICAgaWYgKGIubWF4KCkgPiBhLm1heCgpKSB7XG4gICAgICByZXR1cm4gMVxuICAgIH1cbiAgICByZXR1cm4gMFxuICB9XG59XG4iXX0=
package/dist/util.js CHANGED
@@ -1,85 +1,92 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.groupBlocks = groupBlocks;
9
- exports.checkAbortSignal = checkAbortSignal;
10
- exports.abortBreakPoint = abortBreakPoint;
11
- exports.AbortError = void 0;
12
-
13
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
14
-
15
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
16
-
17
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
18
-
19
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
20
-
21
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
22
-
23
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
24
-
25
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
26
-
27
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
28
-
29
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
30
-
31
- 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); }; }
32
-
33
- 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; } }
34
-
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 });
54
+ exports.abortBreakPoint = exports.checkAbortSignal = exports.groupBlocks = exports.AbortError = void 0;
35
55
  /* eslint no-bitwise: ["error", { "allow": ["|"] }] */
36
- var AbortError = /*#__PURE__*/function (_Error) {
37
- (0, _inherits2.default)(AbortError, _Error);
38
-
39
- var _super = _createSuper(AbortError);
40
-
41
- function AbortError(message) {
42
- var _this;
43
-
44
- (0, _classCallCheck2.default)(this, AbortError);
45
- _this = _super.call(this, message);
46
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "code", void 0);
47
- _this.code = 'ERR_ABORTED';
48
- return _this;
49
- }
50
-
51
- return AbortError;
52
- }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error)); // sort blocks by file offset and
53
- // group blocks that are within 2KB of eachother
54
-
55
-
56
+ var AbortError = /** @class */ (function (_super) {
57
+ __extends(AbortError, _super);
58
+ function AbortError(message) {
59
+ var _this = _super.call(this, message) || this;
60
+ _this.code = 'ERR_ABORTED';
61
+ return _this;
62
+ }
63
+ return AbortError;
64
+ }(Error));
56
65
  exports.AbortError = AbortError;
57
-
66
+ // sort blocks by file offset and
67
+ // group blocks that are within 2KB of eachother
58
68
  function groupBlocks(blocks) {
59
- blocks.sort(function (b0, b1) {
60
- return (b0.offset | 0) - (b1.offset | 0);
61
- });
62
- var blockGroups = [];
63
- var lastBlock;
64
- var lastBlockEnd;
65
-
66
- for (var i = 0; i < blocks.length; i += 1) {
67
- if (lastBlock && blocks[i].offset - lastBlockEnd <= 2000) {
68
- lastBlock.length += blocks[i].length - lastBlockEnd + blocks[i].offset;
69
- lastBlock.blocks.push(blocks[i]);
70
- } else {
71
- blockGroups.push(lastBlock = {
72
- blocks: [blocks[i]],
73
- length: blocks[i].length,
74
- offset: blocks[i].offset
75
- });
69
+ blocks.sort(function (b0, b1) { return (b0.offset | 0) - (b1.offset | 0); });
70
+ var blockGroups = [];
71
+ var lastBlock;
72
+ var lastBlockEnd;
73
+ for (var i = 0; i < blocks.length; i += 1) {
74
+ if (lastBlock && blocks[i].offset - lastBlockEnd <= 2000) {
75
+ lastBlock.length += blocks[i].length - lastBlockEnd + blocks[i].offset;
76
+ lastBlock.blocks.push(blocks[i]);
77
+ }
78
+ else {
79
+ blockGroups.push((lastBlock = {
80
+ blocks: [blocks[i]],
81
+ length: blocks[i].length,
82
+ offset: blocks[i].offset,
83
+ }));
84
+ }
85
+ lastBlockEnd = lastBlock.offset + lastBlock.length;
76
86
  }
77
-
78
- lastBlockEnd = lastBlock.offset + lastBlock.length;
79
- }
80
-
81
- return blockGroups;
87
+ return blockGroups;
82
88
  }
89
+ exports.groupBlocks = groupBlocks;
83
90
  /**
84
91
  * Properly check if the given AbortSignal is aborted.
85
92
  * Per the standard, if the signal reads as aborted,
@@ -91,53 +98,40 @@ function groupBlocks(blocks) {
91
98
  * @param {AbortSignal} [signal] an AbortSignal, or anything with an `aborted` attribute
92
99
  * @returns nothing
93
100
  */
94
-
95
-
96
101
  function checkAbortSignal(signal) {
97
- if (!signal) return;
98
-
99
- if (signal.aborted) {
100
- // console.log('bam aborted!')
101
- if (typeof DOMException !== 'undefined') {
102
- throw new DOMException('aborted', 'AbortError');
103
- } else {
104
- var e = new AbortError('aborted');
105
- e.code = 'ERR_ABORTED';
106
- throw e;
102
+ if (!signal) {
103
+ return;
104
+ }
105
+ if (signal.aborted) {
106
+ // console.log('bam aborted!')
107
+ if (typeof DOMException !== 'undefined') {
108
+ throw new DOMException('aborted', 'AbortError');
109
+ }
110
+ else {
111
+ var e = new AbortError('aborted');
112
+ e.code = 'ERR_ABORTED';
113
+ throw e;
114
+ }
107
115
  }
108
- }
109
116
  }
117
+ exports.checkAbortSignal = checkAbortSignal;
110
118
  /**
111
119
  * Skips to the next tick, then runs `checkAbortSignal`.
112
120
  * Await this to inside an otherwise synchronous loop to
113
121
  * provide a place to break when an abort signal is received.
114
122
  * @param {AbortSignal} signal
115
123
  */
116
-
117
-
118
- function abortBreakPoint(_x) {
119
- return _abortBreakPoint.apply(this, arguments);
120
- }
121
-
122
- function _abortBreakPoint() {
123
- _abortBreakPoint = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(signal) {
124
- return _regenerator.default.wrap(function _callee$(_context) {
125
- while (1) {
126
- switch (_context.prev = _context.next) {
127
- case 0:
128
- _context.next = 2;
129
- return Promise.resolve();
130
-
131
- case 2:
132
- checkAbortSignal(signal);
133
-
134
- case 3:
135
- case "end":
136
- return _context.stop();
137
- }
138
- }
139
- }, _callee);
140
- }));
141
- return _abortBreakPoint.apply(this, arguments);
124
+ function abortBreakPoint(signal) {
125
+ return __awaiter(this, void 0, void 0, function () {
126
+ return __generator(this, function (_a) {
127
+ switch (_a.label) {
128
+ case 0: return [4 /*yield*/, Promise.resolve()];
129
+ case 1:
130
+ _a.sent();
131
+ checkAbortSignal(signal);
132
+ return [2 /*return*/];
133
+ }
134
+ });
135
+ });
142
136
  }
143
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbIkFib3J0RXJyb3IiLCJtZXNzYWdlIiwiY29kZSIsIkVycm9yIiwiZ3JvdXBCbG9ja3MiLCJibG9ja3MiLCJzb3J0IiwiYjAiLCJiMSIsIm9mZnNldCIsImJsb2NrR3JvdXBzIiwibGFzdEJsb2NrIiwibGFzdEJsb2NrRW5kIiwiaSIsImxlbmd0aCIsInB1c2giLCJjaGVja0Fib3J0U2lnbmFsIiwic2lnbmFsIiwiYWJvcnRlZCIsIkRPTUV4Y2VwdGlvbiIsImUiLCJhYm9ydEJyZWFrUG9pbnQiLCJQcm9taXNlIiwicmVzb2x2ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0lBQ2FBLFU7Ozs7O0FBR1gsc0JBQW1CQyxPQUFuQixFQUFvQztBQUFBOztBQUFBO0FBQ2xDLDhCQUFNQSxPQUFOO0FBRGtDO0FBRWxDLFVBQUtDLElBQUwsR0FBWSxhQUFaO0FBRmtDO0FBR25DOzs7K0NBTjZCQyxLLElBUWhDO0FBQ0E7Ozs7O0FBQ08sU0FBU0MsV0FBVCxDQUFxQkMsTUFBckIsRUFBMkM7QUFDaERBLEVBQUFBLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLFVBQUNDLEVBQUQsRUFBS0MsRUFBTDtBQUFBLFdBQVksQ0FBQ0QsRUFBRSxDQUFDRSxNQUFILEdBQVksQ0FBYixLQUFtQkQsRUFBRSxDQUFDQyxNQUFILEdBQVksQ0FBL0IsQ0FBWjtBQUFBLEdBQVo7QUFFQSxNQUFNQyxXQUFXLEdBQUcsRUFBcEI7QUFDQSxNQUFJQyxTQUFKO0FBQ0EsTUFBSUMsWUFBSjs7QUFDQSxPQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdSLE1BQU0sQ0FBQ1MsTUFBM0IsRUFBbUNELENBQUMsSUFBSSxDQUF4QyxFQUEyQztBQUN6QyxRQUFJRixTQUFTLElBQUlOLE1BQU0sQ0FBQ1EsQ0FBRCxDQUFOLENBQVVKLE1BQVYsR0FBbUJHLFlBQW5CLElBQW1DLElBQXBELEVBQTBEO0FBQ3hERCxNQUFBQSxTQUFTLENBQUNHLE1BQVYsSUFBb0JULE1BQU0sQ0FBQ1EsQ0FBRCxDQUFOLENBQVVDLE1BQVYsR0FBbUJGLFlBQW5CLEdBQWtDUCxNQUFNLENBQUNRLENBQUQsQ0FBTixDQUFVSixNQUFoRTtBQUNBRSxNQUFBQSxTQUFTLENBQUNOLE1BQVYsQ0FBaUJVLElBQWpCLENBQXNCVixNQUFNLENBQUNRLENBQUQsQ0FBNUI7QUFDRCxLQUhELE1BR087QUFDTEgsTUFBQUEsV0FBVyxDQUFDSyxJQUFaLENBQ0dKLFNBQVMsR0FBRztBQUNYTixRQUFBQSxNQUFNLEVBQUUsQ0FBQ0EsTUFBTSxDQUFDUSxDQUFELENBQVAsQ0FERztBQUVYQyxRQUFBQSxNQUFNLEVBQUVULE1BQU0sQ0FBQ1EsQ0FBRCxDQUFOLENBQVVDLE1BRlA7QUFHWEwsUUFBQUEsTUFBTSxFQUFFSixNQUFNLENBQUNRLENBQUQsQ0FBTixDQUFVSjtBQUhQLE9BRGY7QUFPRDs7QUFDREcsSUFBQUEsWUFBWSxHQUFHRCxTQUFTLENBQUNGLE1BQVYsR0FBbUJFLFNBQVMsQ0FBQ0csTUFBNUM7QUFDRDs7QUFFRCxTQUFPSixXQUFQO0FBQ0Q7QUFFRDs7Ozs7Ozs7Ozs7OztBQVdPLFNBQVNNLGdCQUFULENBQTBCQyxNQUExQixFQUFzRDtBQUMzRCxNQUFJLENBQUNBLE1BQUwsRUFBYTs7QUFFYixNQUFJQSxNQUFNLENBQUNDLE9BQVgsRUFBb0I7QUFDbEI7QUFDQSxRQUFJLE9BQU9DLFlBQVAsS0FBd0IsV0FBNUIsRUFBeUM7QUFDdkMsWUFBTSxJQUFJQSxZQUFKLENBQWlCLFNBQWpCLEVBQTRCLFlBQTVCLENBQU47QUFDRCxLQUZELE1BRU87QUFDTCxVQUFNQyxDQUFDLEdBQUcsSUFBSXBCLFVBQUosQ0FBZSxTQUFmLENBQVY7QUFDQW9CLE1BQUFBLENBQUMsQ0FBQ2xCLElBQUYsR0FBUyxhQUFUO0FBQ0EsWUFBTWtCLENBQU47QUFDRDtBQUNGO0FBQ0Y7QUFFRDs7Ozs7Ozs7U0FNc0JDLGU7Ozs7OzZGQUFmLGlCQUErQkosTUFBL0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsbUJBQ0NLLE9BQU8sQ0FBQ0MsT0FBUixFQUREOztBQUFBO0FBRUxQLFlBQUFBLGdCQUFnQixDQUFDQyxNQUFELENBQWhCOztBQUZLO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEciLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQgbm8tYml0d2lzZTogW1wiZXJyb3JcIiwgeyBcImFsbG93XCI6IFtcInxcIl0gfV0gKi9cbmV4cG9ydCBjbGFzcyBBYm9ydEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBwdWJsaWMgY29kZTogc3RyaW5nXG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgdGhpcy5jb2RlID0gJ0VSUl9BQk9SVEVEJ1xuICB9XG59XG4vLyBzb3J0IGJsb2NrcyBieSBmaWxlIG9mZnNldCBhbmRcbi8vIGdyb3VwIGJsb2NrcyB0aGF0IGFyZSB3aXRoaW4gMktCIG9mIGVhY2hvdGhlclxuZXhwb3J0IGZ1bmN0aW9uIGdyb3VwQmxvY2tzKGJsb2NrczogYW55W10pOiBhbnlbXSB7XG4gIGJsb2Nrcy5zb3J0KChiMCwgYjEpID0+IChiMC5vZmZzZXQgfCAwKSAtIChiMS5vZmZzZXQgfCAwKSlcblxuICBjb25zdCBibG9ja0dyb3VwcyA9IFtdXG4gIGxldCBsYXN0QmxvY2tcbiAgbGV0IGxhc3RCbG9ja0VuZFxuICBmb3IgKGxldCBpID0gMDsgaSA8IGJsb2Nrcy5sZW5ndGg7IGkgKz0gMSkge1xuICAgIGlmIChsYXN0QmxvY2sgJiYgYmxvY2tzW2ldLm9mZnNldCAtIGxhc3RCbG9ja0VuZCA8PSAyMDAwKSB7XG4gICAgICBsYXN0QmxvY2subGVuZ3RoICs9IGJsb2Nrc1tpXS5sZW5ndGggLSBsYXN0QmxvY2tFbmQgKyBibG9ja3NbaV0ub2Zmc2V0XG4gICAgICBsYXN0QmxvY2suYmxvY2tzLnB1c2goYmxvY2tzW2ldKVxuICAgIH0gZWxzZSB7XG4gICAgICBibG9ja0dyb3Vwcy5wdXNoKFxuICAgICAgICAobGFzdEJsb2NrID0ge1xuICAgICAgICAgIGJsb2NrczogW2Jsb2Nrc1tpXV0sXG4gICAgICAgICAgbGVuZ3RoOiBibG9ja3NbaV0ubGVuZ3RoLFxuICAgICAgICAgIG9mZnNldDogYmxvY2tzW2ldLm9mZnNldCxcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgfVxuICAgIGxhc3RCbG9ja0VuZCA9IGxhc3RCbG9jay5vZmZzZXQgKyBsYXN0QmxvY2subGVuZ3RoXG4gIH1cblxuICByZXR1cm4gYmxvY2tHcm91cHNcbn1cblxuLyoqXG4gKiBQcm9wZXJseSBjaGVjayBpZiB0aGUgZ2l2ZW4gQWJvcnRTaWduYWwgaXMgYWJvcnRlZC5cbiAqIFBlciB0aGUgc3RhbmRhcmQsIGlmIHRoZSBzaWduYWwgcmVhZHMgYXMgYWJvcnRlZCxcbiAqIHRoaXMgZnVuY3Rpb24gdGhyb3dzIGVpdGhlciBhIERPTUV4Y2VwdGlvbiBBYm9ydEVycm9yLCBvciBhIHJlZ3VsYXIgZXJyb3JcbiAqIHdpdGggYSBgY29kZWAgYXR0cmlidXRlIHNldCB0byBgRVJSX0FCT1JURURgLlxuICpcbiAqIEZvciBjb252ZW5pZW5jZSwgcGFzc2luZyBgdW5kZWZpbmVkYCBpcyBhIG5vLW9wXG4gKlxuICogQHBhcmFtIHtBYm9ydFNpZ25hbH0gW3NpZ25hbF0gYW4gQWJvcnRTaWduYWwsIG9yIGFueXRoaW5nIHdpdGggYW4gYGFib3J0ZWRgIGF0dHJpYnV0ZVxuICogQHJldHVybnMgbm90aGluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tBYm9ydFNpZ25hbChzaWduYWw/OiBBYm9ydFNpZ25hbCk6IHZvaWQge1xuICBpZiAoIXNpZ25hbCkgcmV0dXJuXG5cbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ2JhbSBhYm9ydGVkIScpXG4gICAgaWYgKHR5cGVvZiBET01FeGNlcHRpb24gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdhYm9ydGVkJywgJ0Fib3J0RXJyb3InKVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBlID0gbmV3IEFib3J0RXJyb3IoJ2Fib3J0ZWQnKVxuICAgICAgZS5jb2RlID0gJ0VSUl9BQk9SVEVEJ1xuICAgICAgdGhyb3cgZVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNraXBzIHRvIHRoZSBuZXh0IHRpY2ssIHRoZW4gcnVucyBgY2hlY2tBYm9ydFNpZ25hbGAuXG4gKiBBd2FpdCB0aGlzIHRvIGluc2lkZSBhbiBvdGhlcndpc2Ugc3luY2hyb25vdXMgbG9vcCB0b1xuICogcHJvdmlkZSBhIHBsYWNlIHRvIGJyZWFrIHdoZW4gYW4gYWJvcnQgc2lnbmFsIGlzIHJlY2VpdmVkLlxuICogQHBhcmFtIHtBYm9ydFNpZ25hbH0gc2lnbmFsXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhYm9ydEJyZWFrUG9pbnQoc2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgUHJvbWlzZS5yZXNvbHZlKClcbiAgY2hlY2tBYm9ydFNpZ25hbChzaWduYWwpXG59XG4iXX0=
137
+ exports.abortBreakPoint = abortBreakPoint;