@jbrowse/plugin-gtf 2.3.4 → 2.4.1

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,7 +1,7 @@
1
1
  import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
2
  import { NoAssemblyRegion } from '@jbrowse/core/util/types';
3
3
  import IntervalTree from '@flatten-js/interval-tree';
4
- import { Feature } from '@jbrowse/core/util/simpleFeature';
4
+ import { Feature } from '@jbrowse/core/util';
5
5
  export default class extends BaseFeatureDataAdapter {
6
6
  protected gtfFeatures?: Promise<{
7
7
  feats: {
@@ -7,10 +7,11 @@ const BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
7
7
  const io_1 = require("@jbrowse/core/util/io");
8
8
  const rxjs_1 = require("@jbrowse/core/util/rxjs");
9
9
  const interval_tree_1 = __importDefault(require("@flatten-js/interval-tree"));
10
- const simpleFeature_1 = __importDefault(require("@jbrowse/core/util/simpleFeature"));
10
+ const util_1 = require("@jbrowse/core/util");
11
11
  const bgzf_filehandle_1 = require("@gmod/bgzf-filehandle");
12
12
  const gtf_1 = __importDefault(require("@gmod/gtf"));
13
- const util_1 = require("../util");
13
+ // locals
14
+ const util_2 = require("../util");
14
15
  function isGzip(buf) {
15
16
  return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
16
17
  }
@@ -72,8 +73,8 @@ class default_1 extends BaseAdapter_1.BaseFeatureDataAdapter {
72
73
  parseSequences: false,
73
74
  });
74
75
  const intervalTree = new interval_tree_1.default();
75
- const ret = data.flat().map((f, i) => new simpleFeature_1.default({
76
- data: (0, util_1.featureData)(f),
76
+ const ret = data.flat().map((f, i) => new util_1.SimpleFeature({
77
+ data: (0, util_2.featureData)(f),
77
78
  id: `${this.id}-${refName}-${i}`,
78
79
  }));
79
80
  for (let i = 0; i < ret.length; i++) {
@@ -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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"}
package/dist/util.js CHANGED
@@ -13,7 +13,7 @@ function featureData(data) {
13
13
  if (data.frame === null) {
14
14
  delete f.score;
15
15
  }
16
- const defaultFields = [
16
+ const defaultFields = new Set([
17
17
  'start',
18
18
  'end',
19
19
  'seq_name',
@@ -22,10 +22,10 @@ function featureData(data) {
22
22
  'source',
23
23
  'frame',
24
24
  'strand',
25
- ];
26
- Object.keys(data.attributes).forEach(a => {
25
+ ]);
26
+ for (const a of Object.keys(data.attributes)) {
27
27
  let b = a.toLowerCase();
28
- if (defaultFields.includes(b)) {
28
+ if (defaultFields.has(b)) {
29
29
  // add "suffix" to tag name if it already exists
30
30
  // reproduces behavior of NCList
31
31
  b += '2';
@@ -39,14 +39,12 @@ function featureData(data) {
39
39
  }
40
40
  f[b] = attr;
41
41
  }
42
- });
42
+ }
43
43
  f.refName = f.seq_name;
44
44
  f.type = f.featureType;
45
45
  // the SimpleFeature constructor takes care of recursively inflating subfeatures
46
- if (data.child_features && data.child_features.length) {
47
- f.subfeatures = data.child_features
48
- .map(childLocs => childLocs.map(childLoc => featureData(childLoc)))
49
- .flat();
46
+ if (data.child_features && data.child_features.length > 0) {
47
+ f.subfeatures = data.child_features.flatMap(childLocs => childLocs.map(childLoc => featureData(childLoc)));
50
48
  }
51
49
  delete f.child_features;
52
50
  delete f.data;
package/dist/util.js.map CHANGED
@@ -1 +1 @@
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"}
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,IAAI,GAAG,CAAC;QAC5B,OAAO;QACP,KAAK;QACL,UAAU;QACV,OAAO;QACP,aAAa;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;KACT,CAAC,CAAA;IACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC5C,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QACvB,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,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;KACF;IACD,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,GAAG,CAAC,EAAE;QACzD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CACtD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CACjD,CAAA;KACF;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"}
@@ -1,7 +1,7 @@
1
1
  import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
2
  import { NoAssemblyRegion } from '@jbrowse/core/util/types';
3
3
  import IntervalTree from '@flatten-js/interval-tree';
4
- import { Feature } from '@jbrowse/core/util/simpleFeature';
4
+ import { Feature } from '@jbrowse/core/util';
5
5
  export default class extends BaseFeatureDataAdapter {
6
6
  protected gtfFeatures?: Promise<{
7
7
  feats: {
@@ -2,9 +2,10 @@ import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter
2
2
  import { openLocation } from '@jbrowse/core/util/io';
3
3
  import { ObservableCreate } from '@jbrowse/core/util/rxjs';
4
4
  import IntervalTree from '@flatten-js/interval-tree';
5
- import SimpleFeature from '@jbrowse/core/util/simpleFeature';
5
+ import { SimpleFeature } from '@jbrowse/core/util';
6
6
  import { unzip } from '@gmod/bgzf-filehandle';
7
7
  import gtf from '@gmod/gtf';
8
+ // locals
8
9
  import { featureData } from '../util';
9
10
  function isGzip(buf) {
10
11
  return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
@@ -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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"}
package/esm/util.js CHANGED
@@ -10,7 +10,7 @@ export function featureData(data) {
10
10
  if (data.frame === null) {
11
11
  delete f.score;
12
12
  }
13
- const defaultFields = [
13
+ const defaultFields = new Set([
14
14
  'start',
15
15
  'end',
16
16
  'seq_name',
@@ -19,10 +19,10 @@ export function featureData(data) {
19
19
  'source',
20
20
  'frame',
21
21
  'strand',
22
- ];
23
- Object.keys(data.attributes).forEach(a => {
22
+ ]);
23
+ for (const a of Object.keys(data.attributes)) {
24
24
  let b = a.toLowerCase();
25
- if (defaultFields.includes(b)) {
25
+ if (defaultFields.has(b)) {
26
26
  // add "suffix" to tag name if it already exists
27
27
  // reproduces behavior of NCList
28
28
  b += '2';
@@ -36,14 +36,12 @@ export function featureData(data) {
36
36
  }
37
37
  f[b] = attr;
38
38
  }
39
- });
39
+ }
40
40
  f.refName = f.seq_name;
41
41
  f.type = f.featureType;
42
42
  // the SimpleFeature constructor takes care of recursively inflating subfeatures
43
- if (data.child_features && data.child_features.length) {
44
- f.subfeatures = data.child_features
45
- .map(childLocs => childLocs.map(childLoc => featureData(childLoc)))
46
- .flat();
43
+ if (data.child_features && data.child_features.length > 0) {
44
+ f.subfeatures = data.child_features.flatMap(childLocs => childLocs.map(childLoc => featureData(childLoc)));
47
45
  }
48
46
  delete f.child_features;
49
47
  delete f.data;
package/esm/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,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,IAAI,GAAG,CAAC;QAC5B,OAAO;QACP,KAAK;QACL,UAAU;QACV,OAAO;QACP,aAAa;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;KACT,CAAC,CAAA;IACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC5C,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QACvB,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,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;KACF;IACD,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,GAAG,CAAC,EAAE;QACzD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CACtD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CACjD,CAAA;KACF;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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-gtf",
3
- "version": "2.3.4",
3
+ "version": "2.4.1",
4
4
  "description": "JBrowse 2 gtf feature adapter",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -57,5 +57,5 @@
57
57
  "distModule": "esm/index.js",
58
58
  "srcModule": "src/index.ts",
59
59
  "module": "esm/index.js",
60
- "gitHead": "98ae48be91ee2371e1b2768a907b4997995e9915"
60
+ "gitHead": "747c50c4edc0184827efa4f8dfc576ca9a72caeb"
61
61
  }
@@ -6,10 +6,13 @@ import { NoAssemblyRegion } from '@jbrowse/core/util/types'
6
6
  import { openLocation } from '@jbrowse/core/util/io'
7
7
  import { ObservableCreate } from '@jbrowse/core/util/rxjs'
8
8
  import IntervalTree from '@flatten-js/interval-tree'
9
- import SimpleFeature, { Feature } from '@jbrowse/core/util/simpleFeature'
9
+ import { SimpleFeature, Feature } from '@jbrowse/core/util'
10
10
  import { unzip } from '@gmod/bgzf-filehandle'
11
11
  import gtf from '@gmod/gtf'
12
+
13
+ // locals
12
14
  import { FeatureLoc, featureData } from '../util'
15
+
13
16
  function isGzip(buf: Buffer) {
14
17
  return buf[0] === 31 && buf[1] === 139 && buf[2] === 8
15
18
  }
package/src/util.ts CHANGED
@@ -23,7 +23,7 @@ export function featureData(data: FeatureLoc) {
23
23
  if (data.frame === null) {
24
24
  delete f.score
25
25
  }
26
- const defaultFields = [
26
+ const defaultFields = new Set([
27
27
  'start',
28
28
  'end',
29
29
  'seq_name',
@@ -32,10 +32,10 @@ export function featureData(data: FeatureLoc) {
32
32
  'source',
33
33
  'frame',
34
34
  'strand',
35
- ]
36
- Object.keys(data.attributes).forEach(a => {
35
+ ])
36
+ for (const a of Object.keys(data.attributes)) {
37
37
  let b = a.toLowerCase()
38
- if (defaultFields.includes(b)) {
38
+ if (defaultFields.has(b)) {
39
39
  // add "suffix" to tag name if it already exists
40
40
  // reproduces behavior of NCList
41
41
  b += '2'
@@ -49,15 +49,15 @@ export function featureData(data: FeatureLoc) {
49
49
  }
50
50
  f[b] = attr
51
51
  }
52
- })
52
+ }
53
53
  f.refName = f.seq_name
54
54
  f.type = f.featureType
55
55
 
56
56
  // the SimpleFeature constructor takes care of recursively inflating subfeatures
57
- if (data.child_features && data.child_features.length) {
58
- f.subfeatures = data.child_features
59
- .map(childLocs => childLocs.map(childLoc => featureData(childLoc)))
60
- .flat()
57
+ if (data.child_features && data.child_features.length > 0) {
58
+ f.subfeatures = data.child_features.flatMap(childLocs =>
59
+ childLocs.map(childLoc => featureData(childLoc)),
60
+ )
61
61
  }
62
62
 
63
63
  delete f.child_features