@jbrowse/plugin-gtf 2.0.0 → 2.1.2

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.
@@ -1,227 +1,108 @@
1
1
  "use strict";
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
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
54
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
55
4
  };
56
5
  Object.defineProperty(exports, "__esModule", { value: true });
57
- var BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
58
- var io_1 = require("@jbrowse/core/util/io");
59
- var rxjs_1 = require("@jbrowse/core/util/rxjs");
60
- var interval_tree_1 = __importDefault(require("@flatten-js/interval-tree"));
61
- var simpleFeature_1 = __importDefault(require("@jbrowse/core/util/simpleFeature"));
62
- var bgzf_filehandle_1 = require("@gmod/bgzf-filehandle");
63
- var gtf_1 = __importDefault(require("@gmod/gtf"));
64
- var util_1 = require("../util");
6
+ const BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
7
+ const io_1 = require("@jbrowse/core/util/io");
8
+ const rxjs_1 = require("@jbrowse/core/util/rxjs");
9
+ const interval_tree_1 = __importDefault(require("@flatten-js/interval-tree"));
10
+ const simpleFeature_1 = __importDefault(require("@jbrowse/core/util/simpleFeature"));
11
+ const bgzf_filehandle_1 = require("@gmod/bgzf-filehandle");
12
+ const gtf_1 = __importDefault(require("@gmod/gtf"));
13
+ const util_1 = require("../util");
65
14
  function isGzip(buf) {
66
15
  return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
67
16
  }
68
- var default_1 = /** @class */ (function (_super) {
69
- __extends(default_1, _super);
70
- function default_1() {
71
- var _this = _super !== null && _super.apply(this, arguments) || this;
72
- _this.intervalTrees = {};
73
- return _this;
17
+ class default_1 extends BaseAdapter_1.BaseFeatureDataAdapter {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.intervalTrees = {};
74
21
  }
75
- default_1.prototype.loadDataP = function (opts) {
76
- if (opts === void 0) { opts = {}; }
77
- return __awaiter(this, void 0, void 0, function () {
78
- var gtfLoc, buffer, buf, _a, data, lines, feats, i, line, tab, refName;
79
- return __generator(this, function (_b) {
80
- switch (_b.label) {
81
- case 0:
82
- gtfLoc = this.getConf('gtfLocation');
83
- return [4 /*yield*/, (0, io_1.openLocation)(gtfLoc, this.pluginManager).readFile(opts)];
84
- case 1:
85
- buffer = _b.sent();
86
- if (!isGzip(buffer)) return [3 /*break*/, 3];
87
- return [4 /*yield*/, (0, bgzf_filehandle_1.unzip)(buffer)];
88
- case 2:
89
- _a = _b.sent();
90
- return [3 /*break*/, 4];
91
- case 3:
92
- _a = buffer;
93
- _b.label = 4;
94
- case 4:
95
- buf = _a;
96
- // 512MB max chrome string length is 512MB
97
- if (buf.length > 536870888) {
98
- throw new Error('Data exceeds maximum string length (512MB)');
99
- }
100
- data = new TextDecoder('utf8', { fatal: true }).decode(buf);
101
- lines = data.split('\n').filter(function (f) { return !!f && !f.startsWith('#'); });
102
- feats = {};
103
- for (i = 0; i < lines.length; i++) {
104
- line = lines[i];
105
- if (line.startsWith('#')) {
106
- continue;
107
- }
108
- tab = line.indexOf('\t');
109
- refName = line.slice(0, tab);
110
- if (!feats[refName]) {
111
- feats[refName] = [];
112
- }
113
- feats[refName].push(lines[i]);
114
- }
115
- return [2 /*return*/, { feats: feats }];
116
- }
117
- });
118
- });
119
- };
120
- default_1.prototype.loadData = function (opts) {
121
- if (opts === void 0) { opts = {}; }
122
- return __awaiter(this, void 0, void 0, function () {
123
- var _this = this;
124
- return __generator(this, function (_a) {
125
- if (!this.gtfFeatures) {
126
- this.gtfFeatures = this.loadDataP(opts).catch(function (e) {
127
- _this.gtfFeatures = undefined;
128
- throw e;
129
- });
130
- }
131
- return [2 /*return*/, this.gtfFeatures];
132
- });
133
- });
134
- };
135
- default_1.prototype.getRefNames = function (opts) {
136
- if (opts === void 0) { opts = {}; }
137
- return __awaiter(this, void 0, void 0, function () {
138
- var feats;
139
- return __generator(this, function (_a) {
140
- switch (_a.label) {
141
- case 0: return [4 /*yield*/, this.loadData(opts)];
142
- case 1:
143
- feats = (_a.sent()).feats;
144
- return [2 /*return*/, Object.keys(feats)];
145
- }
146
- });
147
- });
148
- };
149
- default_1.prototype.loadFeatureIntervalTreeHelper = function (refName) {
150
- return __awaiter(this, void 0, void 0, function () {
151
- var feats, lines, data, intervalTree, ret, i, obj;
152
- var _this = this;
153
- return __generator(this, function (_a) {
154
- switch (_a.label) {
155
- case 0: return [4 /*yield*/, this.loadData()];
156
- case 1:
157
- feats = (_a.sent()).feats;
158
- lines = feats[refName];
159
- if (!lines) {
160
- return [2 /*return*/, undefined];
161
- }
162
- data = gtf_1.default.parseStringSync(lines.join('\n'), {
163
- parseFeatures: true,
164
- parseComments: false,
165
- parseDirectives: false,
166
- parseSequences: false,
167
- });
168
- intervalTree = new interval_tree_1.default();
169
- ret = data.flat().map(function (f, i) {
170
- return new simpleFeature_1.default({
171
- data: (0, util_1.featureData)(f),
172
- id: "".concat(_this.id, "-").concat(refName, "-").concat(i),
173
- });
174
- });
175
- for (i = 0; i < ret.length; i++) {
176
- obj = ret[i];
177
- intervalTree.insert([obj.get('start'), obj.get('end')], obj);
178
- }
179
- return [2 /*return*/, intervalTree];
180
- }
181
- });
182
- });
183
- };
184
- default_1.prototype.loadFeatureIntervalTree = function (refName) {
185
- return __awaiter(this, void 0, void 0, function () {
186
- var _this = this;
187
- return __generator(this, function (_a) {
188
- if (!this.intervalTrees[refName]) {
189
- this.intervalTrees[refName] = this.loadFeatureIntervalTreeHelper(refName).catch(function (e) {
190
- _this.intervalTrees[refName] = undefined;
191
- throw e;
192
- });
193
- }
194
- return [2 /*return*/, this.intervalTrees[refName]];
22
+ async loadDataP(opts = {}) {
23
+ const gtfLoc = this.getConf('gtfLocation');
24
+ const buffer = await (0, io_1.openLocation)(gtfLoc, this.pluginManager).readFile(opts);
25
+ const buf = isGzip(buffer) ? await (0, bgzf_filehandle_1.unzip)(buffer) : buffer;
26
+ // 512MB max chrome string length is 512MB
27
+ if (buf.length > 536870888) {
28
+ throw new Error('Data exceeds maximum string length (512MB)');
29
+ }
30
+ const data = new TextDecoder('utf8', { fatal: true }).decode(buf);
31
+ const lines = data.split('\n').filter(f => !!f && !f.startsWith('#'));
32
+ const feats = {};
33
+ for (let i = 0; i < lines.length; i++) {
34
+ const line = lines[i];
35
+ if (line.startsWith('#')) {
36
+ continue;
37
+ }
38
+ const tab = line.indexOf('\t');
39
+ const refName = line.slice(0, tab);
40
+ if (!feats[refName]) {
41
+ feats[refName] = [];
42
+ }
43
+ feats[refName].push(lines[i]);
44
+ }
45
+ return { feats };
46
+ }
47
+ async loadData(opts = {}) {
48
+ if (!this.gtfFeatures) {
49
+ this.gtfFeatures = this.loadDataP(opts).catch(e => {
50
+ this.gtfFeatures = undefined;
51
+ throw e;
195
52
  });
53
+ }
54
+ return this.gtfFeatures;
55
+ }
56
+ async getRefNames(opts = {}) {
57
+ const { feats } = await this.loadData(opts);
58
+ return Object.keys(feats);
59
+ }
60
+ async loadFeatureIntervalTreeHelper(refName) {
61
+ const { feats } = await this.loadData();
62
+ const lines = feats[refName];
63
+ if (!lines) {
64
+ return undefined;
65
+ }
66
+ const data = gtf_1.default.parseStringSync(lines.join('\n'), {
67
+ parseFeatures: true,
68
+ parseComments: false,
69
+ parseDirectives: false,
70
+ parseSequences: false,
196
71
  });
197
- };
198
- default_1.prototype.getFeatures = function (query, opts) {
199
- var _this = this;
200
- if (opts === void 0) { opts = {}; }
201
- return (0, rxjs_1.ObservableCreate)(function (observer) { return __awaiter(_this, void 0, void 0, function () {
202
- var start, end, refName, intervalTree, e_1;
203
- return __generator(this, function (_a) {
204
- switch (_a.label) {
205
- case 0:
206
- _a.trys.push([0, 2, , 3]);
207
- start = query.start, end = query.end, refName = query.refName;
208
- return [4 /*yield*/, this.loadFeatureIntervalTree(refName)];
209
- case 1:
210
- intervalTree = _a.sent();
211
- intervalTree === null || intervalTree === void 0 ? void 0 : intervalTree.search([start, end]).forEach(function (f) { return observer.next(f); });
212
- observer.complete();
213
- return [3 /*break*/, 3];
214
- case 2:
215
- e_1 = _a.sent();
216
- observer.error(e_1);
217
- return [3 /*break*/, 3];
218
- case 3: return [2 /*return*/];
219
- }
72
+ const intervalTree = new interval_tree_1.default();
73
+ const ret = data.flat().map((f, i) => new simpleFeature_1.default({
74
+ data: (0, util_1.featureData)(f),
75
+ id: `${this.id}-${refName}-${i}`,
76
+ }));
77
+ for (let i = 0; i < ret.length; i++) {
78
+ const obj = ret[i];
79
+ intervalTree.insert([obj.get('start'), obj.get('end')], obj);
80
+ }
81
+ return intervalTree;
82
+ }
83
+ async loadFeatureIntervalTree(refName) {
84
+ if (!this.intervalTrees[refName]) {
85
+ this.intervalTrees[refName] = this.loadFeatureIntervalTreeHelper(refName).catch(e => {
86
+ this.intervalTrees[refName] = undefined;
87
+ throw e;
220
88
  });
221
- }); }, opts.signal);
222
- };
223
- default_1.prototype.freeResources = function ( /* { region } */) { };
224
- return default_1;
225
- }(BaseAdapter_1.BaseFeatureDataAdapter));
89
+ }
90
+ return this.intervalTrees[refName];
91
+ }
92
+ getFeatures(query, opts = {}) {
93
+ return (0, rxjs_1.ObservableCreate)(async (observer) => {
94
+ try {
95
+ const { start, end, refName } = query;
96
+ const intervalTree = await this.loadFeatureIntervalTree(refName);
97
+ intervalTree === null || intervalTree === void 0 ? void 0 : intervalTree.search([start, end]).forEach(f => observer.next(f));
98
+ observer.complete();
99
+ }
100
+ catch (e) {
101
+ observer.error(e);
102
+ }
103
+ }, opts.signal);
104
+ }
105
+ freeResources( /* { region } */) { }
106
+ }
226
107
  exports.default = default_1;
227
108
  //# sourceMappingURL=GtfAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GtfAdapter.js","sourceRoot":"","sources":["../../src/GtfAdapter/GtfAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GtfAdapter.js","sourceRoot":"","sources":["../../src/GtfAdapter/GtfAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var configuration_1 = require("@jbrowse/core/configuration");
3
+ const configuration_1 = require("@jbrowse/core/configuration");
4
4
  exports.default = (0, configuration_1.ConfigurationSchema)('GtfAdapter', {
5
5
  gtfLocation: {
6
6
  type: 'fileLocation',
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/GtfAdapter/configSchema.ts"],"names":[],"mappings":";;AAAA,6DAAiE;AAEjE,kBAAe,IAAA,mCAAmB,EAChC,YAAY,EACZ;IACE,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE;KACtE;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/GtfAdapter/configSchema.ts"],"names":[],"mappings":";;AAAA,+DAAiE;AAEjE,kBAAe,IAAA,mCAAmB,EAChC,YAAY,EACZ;IACE,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE;KACtE;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
package/dist/index.js CHANGED
@@ -1,19 +1,4 @@
1
1
  "use strict";
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
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
3
  if (k2 === undefined) k2 = k;
19
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -41,33 +26,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
42
27
  };
43
28
  Object.defineProperty(exports, "__esModule", { value: true });
44
- var AdapterType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/AdapterType"));
45
- var Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
46
- var GtfAdapter_1 = require("./GtfAdapter");
47
- var tracks_1 = require("@jbrowse/core/util/tracks");
48
- var GtfPlugin = /** @class */ (function (_super) {
49
- __extends(GtfPlugin, _super);
50
- function GtfPlugin() {
51
- var _this = _super !== null && _super.apply(this, arguments) || this;
52
- _this.name = 'GTFPlugin';
53
- return _this;
29
+ const AdapterType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/AdapterType"));
30
+ const Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
31
+ const GtfAdapter_1 = require("./GtfAdapter");
32
+ const tracks_1 = require("@jbrowse/core/util/tracks");
33
+ class GtfPlugin extends Plugin_1.default {
34
+ constructor() {
35
+ super(...arguments);
36
+ this.name = 'GTFPlugin';
54
37
  }
55
- GtfPlugin.prototype.install = function (pluginManager) {
56
- pluginManager.addAdapterType(function () {
57
- return new AdapterType_1.default({
58
- name: 'GtfAdapter',
59
- configSchema: GtfAdapter_1.configSchema,
60
- getAdapterClass: function () {
61
- return Promise.resolve().then(function () { return __importStar(require('./GtfAdapter/GtfAdapter')); }).then(function (r) { return r.default; });
62
- },
63
- });
64
- });
65
- pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', function (adapterGuesser) {
66
- return function (file, index, adapterHint) {
67
- var regexGuess = /\.gtf(\.gz)?$/i;
68
- var adapterName = 'GtfAdapter';
69
- var fileName = (0, tracks_1.getFileName)(file);
70
- var obj = {
38
+ install(pluginManager) {
39
+ pluginManager.addAdapterType(() => new AdapterType_1.default({
40
+ name: 'GtfAdapter',
41
+ configSchema: GtfAdapter_1.configSchema,
42
+ getAdapterClass: () => Promise.resolve().then(() => __importStar(require('./GtfAdapter/GtfAdapter'))).then(r => r.default),
43
+ }));
44
+ pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
45
+ return (file, index, adapterHint) => {
46
+ const regexGuess = /\.gtf(\.gz)?$/i;
47
+ const adapterName = 'GtfAdapter';
48
+ const fileName = (0, tracks_1.getFileName)(file);
49
+ const obj = {
71
50
  type: adapterName,
72
51
  gtfLocation: file,
73
52
  };
@@ -80,8 +59,7 @@ var GtfPlugin = /** @class */ (function (_super) {
80
59
  return adapterGuesser(file, index, adapterHint);
81
60
  };
82
61
  });
83
- };
84
- return GtfPlugin;
85
- }(Plugin_1.default));
62
+ }
63
+ }
86
64
  exports.default = GtfPlugin;
87
65
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gGAAyE;AAEzE,gEAAyC;AACzC,2CAAqE;AAErE,oDAAuE;AAEvE;IAAuC,6BAAM;IAA7C;QAAA,qEAuCC;QAtCC,UAAI,GAAG,WAAW,CAAA;;IAsCpB,CAAC;IApCC,2BAAO,GAAP,UAAQ,aAA4B;QAClC,aAAa,CAAC,cAAc,CAC1B;YACE,OAAA,IAAI,qBAAW,CAAC;gBACd,IAAI,EAAE,YAAY;gBAClB,YAAY,EAAE,yBAAsB;gBACpC,eAAe,EAAE;oBACf,OAAA,iEAAO,yBAAyB,OAAE,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;gBAAtD,CAAsD;aACzD,CAAC;QALF,CAKE,CACL,CAAA;QACD,aAAa,CAAC,mBAAmB,CAC/B,8BAA8B,EAC9B,UAAC,cAA8B;YAC7B,OAAO,UACL,IAAkB,EAClB,KAAoB,EACpB,WAAoB;gBAEpB,IAAM,UAAU,GAAG,gBAAgB,CAAA;gBACnC,IAAM,WAAW,GAAG,YAAY,CAAA;gBAChC,IAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAA;gBAElC,IAAM,GAAG,GAAG;oBACV,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,IAAI;iBAClB,CAAA;gBACD,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;oBAC7C,OAAO,GAAG,CAAA;iBACX;qBAAM,IAAI,WAAW,KAAK,WAAW,EAAE;oBACtC,OAAO,GAAG,CAAA;iBACX;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AAvCD,CAAuC,gBAAM,GAuC5C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kGAAyE;AAEzE,kEAAyC;AACzC,6CAAqE;AAErE,sDAAuE;AAEvE,MAAqB,SAAU,SAAQ,gBAAM;IAA7C;;QACE,SAAI,GAAG,WAAW,CAAA;IAsCpB,CAAC;IApCC,OAAO,CAAC,aAA4B;QAClC,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,qBAAW,CAAC;YACd,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,yBAAsB;YACpC,eAAe,EAAE,GAAG,EAAE,CACpB,kDAAO,yBAAyB,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;SACzD,CAAC,CACL,CAAA;QACD,aAAa,CAAC,mBAAmB,CAC/B,8BAA8B,EAC9B,CAAC,cAA8B,EAAE,EAAE;YACjC,OAAO,CACL,IAAkB,EAClB,KAAoB,EACpB,WAAoB,EACpB,EAAE;gBACF,MAAM,UAAU,GAAG,gBAAgB,CAAA;gBACnC,MAAM,WAAW,GAAG,YAAY,CAAA;gBAChC,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAA;gBAElC,MAAM,GAAG,GAAG;oBACV,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,IAAI;iBAClB,CAAA;gBACD,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;oBAC7C,OAAO,GAAG,CAAA;iBACX;qBAAM,IAAI,WAAW,KAAK,WAAW,EAAE;oBACtC,OAAO,GAAG,CAAA;iBACX;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;IACH,CAAC;CACF;AAvCD,4BAuCC"}
package/dist/util.js CHANGED
@@ -1,19 +1,8 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.featureData = void 0;
15
4
  function featureData(data) {
16
- var f = __assign({}, data);
5
+ const f = { ...data };
17
6
  f.start -= 1; // convert to interbase
18
7
  f.strand = { '+': 1, '-': -1, '.': 0, '?': undefined }[data.strand]; // convert strand
19
8
  f.phase = Number(data.frame);
@@ -24,7 +13,7 @@ function featureData(data) {
24
13
  if (data.frame === null) {
25
14
  delete f.score;
26
15
  }
27
- var defaultFields = [
16
+ const defaultFields = [
28
17
  'start',
29
18
  'end',
30
19
  'seq_name',
@@ -34,18 +23,18 @@ function featureData(data) {
34
23
  'frame',
35
24
  'strand',
36
25
  ];
37
- Object.keys(data.attributes).forEach(function (a) {
38
- var b = a.toLowerCase();
26
+ Object.keys(data.attributes).forEach(a => {
27
+ let b = a.toLowerCase();
39
28
  if (defaultFields.includes(b)) {
40
29
  // add "suffix" to tag name if it already exists
41
30
  // reproduces behavior of NCList
42
31
  b += '2';
43
32
  }
44
33
  if (data.attributes[a] !== null) {
45
- var attr = data.attributes[a];
34
+ let attr = data.attributes[a];
46
35
  if (Array.isArray(attr) && attr.length === 1) {
47
36
  // gtf uses double quotes for text values in the attributes column, remove them
48
- var formattedAttr = attr[0].replace(/^"|"$/g, '');
37
+ const formattedAttr = attr[0].replace(/^"|"$/g, '');
49
38
  attr = formattedAttr;
50
39
  }
51
40
  f[b] = attr;
@@ -56,7 +45,7 @@ function featureData(data) {
56
45
  // the SimpleFeature constructor takes care of recursively inflating subfeatures
57
46
  if (data.child_features && data.child_features.length) {
58
47
  f.subfeatures = data.child_features
59
- .map(function (childLocs) { return childLocs.map(function (childLoc) { return featureData(childLoc); }); })
48
+ .map(childLocs => childLocs.map(childLoc => featureData(childLoc)))
60
49
  .flat();
61
50
  }
62
51
  delete f.child_features;
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;AAaA,SAAgB,WAAW,CAAC,IAAgB;IAC1C,MAAM,CAAC,GAA4B,EAAE,GAAG,IAAI,EAAE,CAC7C;IAAC,CAAC,CAAC,KAAgB,IAAI,CAAC,CAAA,CAAC,uBAAuB;IACjD,CAAC,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAC,iBAAiB;IACrF,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5B,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAA;IACzB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;QACvB,OAAO,CAAC,CAAC,KAAK,CAAA;KACf;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;QACvB,OAAO,CAAC,CAAC,KAAK,CAAA;KACf;IACD,MAAM,aAAa,GAAG;QACpB,OAAO;QACP,KAAK;QACL,UAAU;QACV,OAAO;QACP,aAAa;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;KACT,CAAA;IACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACvC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QACvB,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YAC7B,gDAAgD;YAChD,gCAAgC;YAChC,CAAC,IAAI,GAAG,CAAA;SACT;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;YAC/B,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5C,+EAA+E;gBAC/E,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;gBACnD,IAAI,GAAG,aAAa,CAAA;aACrB;YACD,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;SACZ;IACH,CAAC,CAAC,CAAA;IACF,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAA;IACtB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,CAAA;IAEtB,gFAAgF;IAChF,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;QACrD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc;aAChC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;aAClE,IAAI,EAAE,CAAA;KACV;IAED,OAAO,CAAC,CAAC,cAAc,CAAA;IACvB,OAAO,CAAC,CAAC,IAAI,CAAA;IACb,OAAO,CAAC,CAAC,gBAAgB,CAAA;IACzB,gDAAgD;IAChD,OAAO,CAAC,CAAC,SAAS,CAAA;IAClB,OAAO,CAAC,CAAC,UAAU,CAAA;IACnB,OAAO,CAAC,CAAC,QAAQ,CAAA;IACjB,OAAO,CAAC,CAAC,WAAW,CAAA;IACpB,OAAO,CAAC,CAAC,KAAK,CAAA;IAEd,IAAI,CAAC,CAAC,aAAa,EAAE;QACnB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,aAAa,CAAA;KACzB;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AA/DD,kCA+DC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-gtf",
3
- "version": "2.0.0",
3
+ "version": "2.1.2",
4
4
  "description": "JBrowse 2 gtf feature adapter",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -37,14 +37,13 @@
37
37
  "clean": "rimraf dist esm *.tsbuildinfo"
38
38
  },
39
39
  "dependencies": {
40
- "@babel/runtime": "^7.17.9",
41
40
  "@flatten-js/interval-tree": "^1.0.15",
42
41
  "@gmod/bgzf-filehandle": "^1.4.3",
43
42
  "@gmod/gtf": "^0.0.6"
44
43
  },
45
44
  "peerDependencies": {
46
- "@jbrowse/core": "^1.0.0",
47
- "@jbrowse/plugin-linear-genome-view": "^1.0.0",
45
+ "@jbrowse/core": "^2.0.0",
46
+ "@jbrowse/plugin-linear-genome-view": "^2.0.0",
48
47
  "@mui/material": "^5.0.0",
49
48
  "mobx": "^6.0.0",
50
49
  "mobx-react": "^7.0.0",
@@ -59,5 +58,5 @@
59
58
  "distModule": "esm/index.js",
60
59
  "srcModule": "src/index.ts",
61
60
  "module": "esm/index.js",
62
- "gitHead": "ecc7f5d47351a5ea04bc00f3a6eb6dfb607342e6"
61
+ "gitHead": "449b17325c9a4a97181f7ddddf48e80219f03b8d"
63
62
  }