@jbrowse/plugin-gff3 1.7.11 → 2.0.0
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/Gff3Adapter/Gff3Adapter.js +284 -390
- package/dist/Gff3Adapter/Gff3Adapter.js.map +1 -0
- package/dist/Gff3Adapter/configSchema.js +9 -21
- package/dist/Gff3Adapter/configSchema.js.map +1 -0
- package/dist/Gff3Adapter/index.js +8 -14
- package/dist/Gff3Adapter/index.js.map +1 -0
- package/dist/Gff3TabixAdapter/Gff3TabixAdapter.js +305 -386
- package/dist/Gff3TabixAdapter/Gff3TabixAdapter.js.map +1 -0
- package/dist/Gff3TabixAdapter/configSchema.js +27 -40
- package/dist/Gff3TabixAdapter/configSchema.js.map +1 -0
- package/dist/Gff3TabixAdapter/index.js +8 -14
- package/dist/Gff3TabixAdapter/index.js.map +1 -0
- package/dist/index.js +109 -130
- package/dist/index.js.map +1 -0
- package/esm/Gff3Adapter/Gff3Adapter.d.ts +17 -0
- package/esm/Gff3Adapter/Gff3Adapter.js +146 -0
- package/esm/Gff3Adapter/Gff3Adapter.js.map +1 -0
- package/esm/Gff3Adapter/configSchema.d.ts +2 -0
- package/esm/Gff3Adapter/configSchema.js +8 -0
- package/esm/Gff3Adapter/configSchema.js.map +1 -0
- package/esm/Gff3Adapter/index.d.ts +1 -0
- package/esm/Gff3Adapter/index.js +2 -0
- package/esm/Gff3Adapter/index.js.map +1 -0
- package/esm/Gff3TabixAdapter/Gff3TabixAdapter.d.ts +20 -0
- package/esm/Gff3TabixAdapter/Gff3TabixAdapter.js +186 -0
- package/esm/Gff3TabixAdapter/Gff3TabixAdapter.js.map +1 -0
- package/esm/Gff3TabixAdapter/configSchema.d.ts +2 -0
- package/esm/Gff3TabixAdapter/configSchema.js +27 -0
- package/esm/Gff3TabixAdapter/configSchema.js.map +1 -0
- package/esm/Gff3TabixAdapter/index.d.ts +1 -0
- package/esm/Gff3TabixAdapter/index.js +2 -0
- package/esm/Gff3TabixAdapter/index.js.map +1 -0
- package/esm/index.d.ts +6 -0
- package/esm/index.js +62 -0
- package/esm/index.js.map +1 -0
- package/package.json +17 -9
- package/dist/Gff3Adapter/Gff3Adapter.test.js +0 -71
- package/dist/Gff3TabixAdapter/Gff3TabixAdapter.test.js +0 -74
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Gff3TabixAdapter.js","sourceRoot":"","sources":["../../src/Gff3TabixAdapter/Gff3TabixAdapter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,uEAGgD;AAChD,kDAAyD;AAEzD,4CAAoD;AACpD,gDAA0D;AAC1D,mFAAyE;AACzE,qCAA8C;AAC9C,kDAAqE;AAErE,6DAGoC;AAWpC;IAA6B,6BAAsB;IAKjD,mBACE,MAA6B,EAC7B,aAAiC,EACjC,aAA6B;QAH/B,YAKE,kBAAM,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,SAoB5C;QAnBC,IAAM,aAAa,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAC7D,IAAM,SAAS,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;QAChE,IAAM,QAAQ,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;QAC9D,IAAM,cAAc,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAE/D,KAAI,CAAC,cAAc,GAAG,cAAc,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC1E,KAAI,CAAC,GAAG,GAAG,IAAI,wBAAgB,CAAC;YAC9B,UAAU,EAAE,IAAA,iBAAY,EAAC,aAAa,EAAE,KAAI,CAAC,aAAa,CAAC;YAC3D,aAAa,EACX,SAAS,KAAK,KAAK;gBACjB,CAAC,CAAC,IAAA,iBAAY,EAAC,QAAQ,EAAE,KAAI,CAAC,aAAa,CAAC;gBAC5C,CAAC,CAAC,SAAS;YACf,aAAa,EACX,SAAS,KAAK,KAAK;gBACjB,CAAC,CAAC,IAAA,iBAAY,EAAC,QAAQ,EAAE,KAAI,CAAC,aAAa,CAAC;gBAC5C,CAAC,CAAC,SAAS;YACf,cAAc,EAAE,EAAE,GAAG,SAAA,CAAC,EAAI,EAAE,CAAA;YAC5B,aAAa,EAAE,UAAC,CAAS,IAAK,OAAA,CAAC,EAAD,CAAC;SAChC,CAAC,CAAA;;IACJ,CAAC;IAEY,+BAAW,GAAxB,UAAyB,IAAsB;QAAtB,qBAAA,EAAA,SAAsB;;;gBAC7C,sBAAO,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAA;;;KAChD;IAEY,6BAAS,GAAtB;;;gBACE,sBAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAA;;;KAC5B;IAEM,+BAAW,GAAlB,UAAmB,KAAa,EAAE,IAAsB;QAAxD,iBAKC;QALiC,qBAAA,EAAA,SAAsB;QACtD,OAAO,IAAA,uBAAgB,EAAU,UAAM,QAAQ;;;;4BAC5B,qBAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAA;;wBAAvC,QAAQ,GAAG,SAA4B;wBAC7C,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;;;;aAC9D,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACjB,CAAC;IAEa,qCAAiB,GAA/B,UACE,KAAa,EACb,IAAsB,EACtB,QAA2D,EAC3D,QAA2B,EAC3B,eAAwB,EACxB,aAAqB;QAJrB,qBAAA,EAAA,SAAsB;QAItB,8BAAA,EAAA,qBAAqB;;;;;;;;wBAGb,UAAuB,EAAE,CAAA;wBAE/B,qBAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CACrB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,GAAG,EACT,UAAC,IAAY,EAAE,UAAkB;gCAC/B,OAAK,CAAC,IAAI,CAAC,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;4BACtE,CAAC,CACF,EAAA;;wBAPD,SAOC,CAAA;wBACD,IAAI,eAAe,IAAI,OAAK,CAAC,MAAM,EAAE;4BAC/B,aAAW,QAAQ,CAAA;4BACnB,WAAS,CAAC,QAAQ,CAAA;4BACtB,OAAK,CAAC,OAAO,CAAC,UAAA,IAAI;gCAChB,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gCAClC,yEAAyE;gCACzE,6CAA6C;gCAC7C,IAAI,CAAC,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;oCAC9C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAA,CAAC,iBAAiB;oCAC9C,IAAI,KAAK,GAAG,UAAQ,EAAE;wCACpB,UAAQ,GAAG,KAAK,CAAA;qCACjB;oCACD,IAAI,IAAI,CAAC,GAAG,GAAG,QAAM,EAAE;wCACrB,QAAM,GAAG,IAAI,CAAC,GAAG,CAAA;qCAClB;iCACF;4BACH,CAAC,CAAC,CAAA;4BACF,IAAI,QAAM,GAAG,KAAK,CAAC,GAAG,IAAI,UAAQ,GAAG,KAAK,CAAC,KAAK,EAAE;gCAChD,gEAAgE;gCAChE,8BAA8B;gCAC9B,IAAI,CAAC,iBAAiB,uBACf,KAAK,KAAE,KAAK,EAAE,UAAQ,EAAE,GAAG,EAAE,QAAM,KACxC,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,CACN,CAAA;gCACD,sBAAM;6BACP;yBACF;wBAEK,IAAI,GAAG,OAAK;6BACf,GAAG,CAAC,UAAC,UAAuB;4BAC3B,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gCACxD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;oCAC/C,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,qBAAc,UAAU,CAAC,QAAQ,CAAE,CAAA;iCAC5D;6BACF;iCAAM;gCACL,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,oBAAa,UAAU,CAAC,QAAQ,CAAE,CAAA;6BAC1D;4BACD,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;wBACrC,CAAC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC,CAAA;wBAEP,QAAQ,GAAG,aAAG,CAAC,eAAe,CAAC,IAAI,EAAE;4BACzC,aAAa,EAAE,IAAI;4BACnB,aAAa,EAAE,KAAK;4BACpB,eAAe,EAAE,KAAK;4BACtB,cAAc,EAAE,KAAK;yBACtB,CAAC,CAAA;wBAEF,QAAQ,CAAC,OAAO,CAAC,UAAA,WAAW;4BAC1B,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC;gCACxC,IACE,IAAA,sBAAc,EACZ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EACd,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EACZ,aAAa,CAAC,KAAK,EACnB,aAAa,CAAC,GAAG,CAClB,EACD;oCACA,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;iCACjB;4BACH,CAAC,CAAC;wBAXF,CAWE,CACH,CAAA;wBACD,QAAQ,CAAC,QAAQ,EAAE,CAAA;;;;wBAEnB,QAAQ,CAAC,KAAK,CAAC,GAAC,CAAC,CAAA;;;;;;KAEpB;IAEO,6BAAS,GAAjB,UACE,aAA6C,EAC7C,IAAY,EACZ,UAAkB;QAElB,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE/B,yCAAyC;QACzC,OAAO;YACL,KAAK,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,CAAC;YACvC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;YACnC,QAAQ,EAAE,UAAU;YACpB,MAAM,QAAA;SACP,CAAA;IACH,CAAC;IAEO,kCAAc,GAAtB,UAAuB,WAAwB;QAA/C,iBASC;QARC,OAAO,WAAW,CAAC,GAAG,CACpB,UAAA,UAAU;YACR,OAAA,IAAI,uBAAa,CAAC;gBAChB,IAAI,EAAE,KAAI,CAAC,WAAW,CAAC,UAAU,CAAC;gBAClC,oEAAoE;gBACpE,EAAE,EAAE,UAAG,KAAI,CAAC,EAAE,qBAAW,UAAU,CAAC,UAAW,CAAC,SAAU,CAAC,CAAC,CAAC,CAAE;aAChE,CAAC;QAJF,CAIE,CACL,CAAA;IACH,CAAC;IAEO,+BAAW,GAAnB,UAAoB,IAA6B;QAAjD,iBA8DC;QA7DC,IAAM,CAAC,gBAAiC,IAAI,CAAE,CAC7C;QAAC,CAAC,CAAC,KAAgB,IAAI,CAAC,CAAA,CAAC,uBAAuB;QACjD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;YACvB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;SACb;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;YAC9B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;SACd;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;YAC9B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;SACb;aAAM;YACL,CAAC,CAAC,MAAM,GAAG,SAAS,CAAA;SACrB;QACD,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAA;QACvB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACvB,OAAO,CAAC,CAAC,KAAK,CAAA;SACf;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACvB,OAAO,CAAC,CAAC,KAAK,CAAA;SACf;QACD,IAAM,aAAa,GAAG;YACpB,OAAO;YACP,KAAK;YACL,QAAQ;YACR,OAAO;YACP,MAAM;YACN,QAAQ;YACR,OAAO;YACP,QAAQ;SACT,CAAA;QACD,IAAM,cAAc,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;QAC5C,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC;;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;YACvB,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAC7B,gDAAgD;gBAChD,gCAAgC;gBAChC,CAAC,IAAI,GAAG,CAAA;aACT;YACD,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;gBAC9B,IAAI,IAAI,GAAkC,cAAc,CAAC,CAAC,CAAC,CAAA;gBAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5C,CAAC;oBAAA,KAAS,IAAI,EAAb,KAAA,aAAa,EAAZ,IAAI,QAAA,CAAQ;iBACf;gBACD,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;aACZ;QACH,CAAC,CAAC,CAAA;QACF,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAA;QAEpB,gFAAgF;QAChF,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;YACrD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc;iBAChC,GAAG,CAAC,UAAA,SAAS,IAAI,OAAA,SAAS,CAAC,GAAG,CAAC,UAAA,QAAQ,IAAI,OAAA,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAA1B,CAA0B,CAAC,EAArD,CAAqD,CAAC;iBACvE,IAAI,EAAE,CAAA;SACV;QAED,OAAO,CAAC,CAAC,cAAc,CAAA;QACvB,OAAO,CAAC,CAAC,IAAI,CAAA;QACb,OAAO,CAAC,CAAC,gBAAgB,CAAA;QACzB,OAAO,CAAC,CAAC,SAAS,CAAA;QAClB,OAAO,CAAC,CAAC,UAAU,CAAA;QACnB,OAAO,CAAC,CAAC,MAAM,CAAA;QACf,OAAO,CAAC,CAAA;IACV,CAAC;IAEM,iCAAa,GAApB,WAAqB,gBAAgB,IAAG,CAAC;IAC3C,gBAAC;AAAD,CAAC,AAtOD,CAA6B,oCAAsB,GAsOlD"}
|
|
@@ -1,42 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _configuration = require("@jbrowse/core/configuration");
|
|
11
|
-
|
|
12
|
-
var _default = (0, _configuration.ConfigurationSchema)('Gff3TabixAdapter', {
|
|
13
|
-
gffGzLocation: {
|
|
14
|
-
type: 'fileLocation',
|
|
15
|
-
defaultValue: {
|
|
16
|
-
uri: '/path/to/my.gff.gz',
|
|
17
|
-
locationType: 'UriLocation'
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
index: (0, _configuration.ConfigurationSchema)('Gff3TabixIndex', {
|
|
21
|
-
indexType: {
|
|
22
|
-
model: _mobxStateTree.types.enumeration('IndexType', ['TBI', 'CSI']),
|
|
23
|
-
type: 'stringEnum',
|
|
24
|
-
defaultValue: 'TBI'
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var mobx_state_tree_1 = require("mobx-state-tree");
|
|
4
|
+
var configuration_1 = require("@jbrowse/core/configuration");
|
|
5
|
+
exports.default = (0, configuration_1.ConfigurationSchema)('Gff3TabixAdapter', {
|
|
6
|
+
gffGzLocation: {
|
|
7
|
+
type: 'fileLocation',
|
|
8
|
+
defaultValue: { uri: '/path/to/my.gff.gz', locationType: 'UriLocation' },
|
|
25
9
|
},
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
},
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
10
|
+
index: (0, configuration_1.ConfigurationSchema)('Gff3TabixIndex', {
|
|
11
|
+
indexType: {
|
|
12
|
+
model: mobx_state_tree_1.types.enumeration('IndexType', ['TBI', 'CSI']),
|
|
13
|
+
type: 'stringEnum',
|
|
14
|
+
defaultValue: 'TBI',
|
|
15
|
+
},
|
|
16
|
+
location: {
|
|
17
|
+
type: 'fileLocation',
|
|
18
|
+
defaultValue: {
|
|
19
|
+
uri: '/path/to/my.gff.gz.tbi',
|
|
20
|
+
locationType: 'UriLocation',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
}),
|
|
24
|
+
dontRedispatch: {
|
|
25
|
+
type: 'stringArray',
|
|
26
|
+
defaultValue: ['chromosome', 'region'],
|
|
27
|
+
},
|
|
28
|
+
}, { explicitlyTyped: true });
|
|
29
|
+
//# sourceMappingURL=configSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/Gff3TabixAdapter/configSchema.ts"],"names":[],"mappings":";;AAAA,mDAAuC;AACvC,6DAAiE;AAEjE,kBAAe,IAAA,mCAAmB,EAChC,kBAAkB,EAClB;IACE,aAAa,EAAE;QACb,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,YAAY,EAAE,aAAa,EAAE;KACzE;IACD,KAAK,EAAE,IAAA,mCAAmB,EAAC,gBAAgB,EAAE;QAC3C,SAAS,EAAE;YACT,KAAK,EAAE,uBAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACrD,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,KAAK;SACpB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,cAAc;YACpB,YAAY,EAAE;gBACZ,GAAG,EAAE,wBAAwB;gBAC7B,YAAY,EAAE,aAAa;aAC5B;SACF;KACF,CAAC;IACF,cAAc,EAAE;QACd,IAAI,EAAE,aAAa;QACnB,YAAY,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC;KACvC;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
|
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Object.defineProperty(exports, "configSchema", {
|
|
9
|
-
|
|
10
|
-
get: function get() {
|
|
11
|
-
return _configSchema.default;
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
var _configSchema = _interopRequireDefault(require("./configSchema"));
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.configSchema = void 0;
|
|
7
|
+
var configSchema_1 = require("./configSchema");
|
|
8
|
+
Object.defineProperty(exports, "configSchema", { enumerable: true, get: function () { return __importDefault(configSchema_1).default; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Gff3TabixAdapter/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAwD;AAA/C,6HAAA,OAAO,OAAgB"}
|
package/dist/index.js
CHANGED
|
@@ -1,138 +1,117 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
9
32
|
});
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
var _tracks = require("@jbrowse/core/util/tracks");
|
|
33
|
-
|
|
34
|
-
var _Gff3Adapter = require("./Gff3Adapter");
|
|
35
|
-
|
|
36
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
37
|
-
|
|
38
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
39
|
-
|
|
40
|
-
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); }; }
|
|
41
|
-
|
|
42
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
43
|
-
|
|
44
|
-
var _default = /*#__PURE__*/function (_Plugin) {
|
|
45
|
-
(0, _inherits2.default)(_default, _Plugin);
|
|
46
|
-
|
|
47
|
-
var _super = _createSuper(_default);
|
|
48
|
-
|
|
49
|
-
function _default() {
|
|
50
|
-
var _this;
|
|
51
|
-
|
|
52
|
-
(0, _classCallCheck2.default)(this, _default);
|
|
53
|
-
|
|
54
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
55
|
-
args[_key] = arguments[_key];
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
41
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
42
|
+
};
|
|
43
|
+
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 Gff3TabixAdapter_1 = require("./Gff3TabixAdapter");
|
|
47
|
+
var tracks_1 = require("@jbrowse/core/util/tracks");
|
|
48
|
+
var Gff3Adapter_1 = require("./Gff3Adapter");
|
|
49
|
+
var default_1 = /** @class */ (function (_super) {
|
|
50
|
+
__extends(default_1, _super);
|
|
51
|
+
function default_1() {
|
|
52
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
53
|
+
_this.name = 'GFF3Plugin';
|
|
54
|
+
return _this;
|
|
56
55
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
value: function install(pluginManager) {
|
|
66
|
-
pluginManager.addAdapterType(function () {
|
|
67
|
-
return new _AdapterType.default({
|
|
68
|
-
name: 'Gff3TabixAdapter',
|
|
69
|
-
configSchema: _Gff3TabixAdapter.configSchema,
|
|
70
|
-
getAdapterClass: function getAdapterClass() {
|
|
71
|
-
return Promise.resolve().then(function () {
|
|
72
|
-
return _interopRequireWildcard(require('./Gff3TabixAdapter/Gff3TabixAdapter'));
|
|
73
|
-
}).then(function (r) {
|
|
74
|
-
return r.default;
|
|
56
|
+
default_1.prototype.install = function (pluginManager) {
|
|
57
|
+
pluginManager.addAdapterType(function () {
|
|
58
|
+
return new AdapterType_1.default({
|
|
59
|
+
name: 'Gff3TabixAdapter',
|
|
60
|
+
configSchema: Gff3TabixAdapter_1.configSchema,
|
|
61
|
+
getAdapterClass: function () {
|
|
62
|
+
return Promise.resolve().then(function () { return __importStar(require('./Gff3TabixAdapter/Gff3TabixAdapter')); }).then(function (r) { return r.default; });
|
|
63
|
+
},
|
|
75
64
|
});
|
|
76
|
-
}
|
|
77
65
|
});
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
66
|
+
pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', function (adapterGuesser) {
|
|
67
|
+
return function (file, index, adapterHint) {
|
|
68
|
+
var regexGuess = /\.gff3?\.b?gz$/i;
|
|
69
|
+
var adapterName = 'Gff3TabixAdapter';
|
|
70
|
+
var fileName = (0, tracks_1.getFileName)(file);
|
|
71
|
+
var indexName = index && (0, tracks_1.getFileName)(index);
|
|
72
|
+
if (regexGuess.test(fileName) || adapterHint === adapterName) {
|
|
73
|
+
return {
|
|
74
|
+
type: adapterName,
|
|
75
|
+
bamLocation: file,
|
|
76
|
+
gffGzLocation: file,
|
|
77
|
+
index: {
|
|
78
|
+
location: index || (0, tracks_1.makeIndex)(file, '.tbi'),
|
|
79
|
+
indexType: (0, tracks_1.makeIndexType)(indexName, 'CSI', 'TBI'),
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
return adapterGuesser(file, index, adapterHint);
|
|
95
84
|
};
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
configSchema: _Gff3Adapter.configSchema,
|
|
105
|
-
getAdapterClass: function getAdapterClass() {
|
|
106
|
-
return Promise.resolve().then(function () {
|
|
107
|
-
return _interopRequireWildcard(require('./Gff3Adapter/Gff3Adapter'));
|
|
108
|
-
}).then(function (r) {
|
|
109
|
-
return r.default;
|
|
85
|
+
});
|
|
86
|
+
pluginManager.addAdapterType(function () {
|
|
87
|
+
return new AdapterType_1.default({
|
|
88
|
+
name: 'Gff3Adapter',
|
|
89
|
+
configSchema: Gff3Adapter_1.configSchema,
|
|
90
|
+
getAdapterClass: function () {
|
|
91
|
+
return Promise.resolve().then(function () { return __importStar(require('./Gff3Adapter/Gff3Adapter')); }).then(function (r) { return r.default; });
|
|
92
|
+
},
|
|
110
93
|
});
|
|
111
|
-
}
|
|
112
94
|
});
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
}(_Plugin2.default);
|
|
137
|
-
|
|
138
|
-
exports.default = _default;
|
|
95
|
+
pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', function (adapterGuesser) {
|
|
96
|
+
return function (file, index, adapterHint) {
|
|
97
|
+
var regexGuess = /\.gff3?$/i;
|
|
98
|
+
var adapterName = 'Gff3Adapter';
|
|
99
|
+
var fileName = (0, tracks_1.getFileName)(file);
|
|
100
|
+
var obj = {
|
|
101
|
+
type: adapterName,
|
|
102
|
+
gffLocation: file,
|
|
103
|
+
};
|
|
104
|
+
if (regexGuess.test(fileName) && !adapterHint) {
|
|
105
|
+
return obj;
|
|
106
|
+
}
|
|
107
|
+
else if (adapterHint === adapterName) {
|
|
108
|
+
return obj;
|
|
109
|
+
}
|
|
110
|
+
return adapterGuesser(file, index, adapterHint);
|
|
111
|
+
};
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
return default_1;
|
|
115
|
+
}(Plugin_1.default));
|
|
116
|
+
exports.default = default_1;
|
|
117
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gGAAyE;AAEzE,gEAAyC;AACzC,uDAAiF;AAEjF,oDAKkC;AAClC,6CAAuE;AAEvE;IAA6B,6BAAM;IAAnC;QAAA,qEA0EC;QAzEC,UAAI,GAAG,YAAY,CAAA;;IAyErB,CAAC;IAvEC,2BAAO,GAAP,UAAQ,aAA4B;QAClC,aAAa,CAAC,cAAc,CAC1B;YACE,OAAA,IAAI,qBAAW,CAAC;gBACd,IAAI,EAAE,kBAAkB;gBACxB,YAAY,EAAE,+BAA4B;gBAC1C,eAAe,EAAE;oBACf,OAAA,iEAAO,qCAAqC,OAAE,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;gBAAlE,CAAkE;aACrE,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,iBAAiB,CAAA;gBACpC,IAAM,WAAW,GAAG,kBAAkB,CAAA;gBACtC,IAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAA;gBAClC,IAAM,SAAS,GAAG,KAAK,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,CAAA;gBAC7C,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,WAAW,EAAE,IAAI;wBACjB,aAAa,EAAE,IAAI;wBACnB,KAAK,EAAE;4BACL,QAAQ,EAAE,KAAK,IAAI,IAAA,kBAAS,EAAC,IAAI,EAAE,MAAM,CAAC;4BAC1C,SAAS,EAAE,IAAA,sBAAa,EAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC;yBAClD;qBACF,CAAA;iBACF;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;QACD,aAAa,CAAC,cAAc,CAC1B;YACE,OAAA,IAAI,qBAAW,CAAC;gBACd,IAAI,EAAE,aAAa;gBACnB,YAAY,EAAE,0BAAuB;gBACrC,eAAe,EAAE;oBACf,OAAA,iEAAO,2BAA2B,OAAE,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;gBAAxD,CAAwD;aAC3D,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,WAAW,CAAA;gBAC9B,IAAM,WAAW,GAAG,aAAa,CAAA;gBACjC,IAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAA;gBAClC,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,AA1ED,CAA6B,gBAAM,GA0ElC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
2
|
+
import { NoAssemblyRegion } from '@jbrowse/core/util/types';
|
|
3
|
+
import IntervalTree from '@flatten-js/interval-tree';
|
|
4
|
+
import { Feature } from '@jbrowse/core/util/simpleFeature';
|
|
5
|
+
export default class extends BaseFeatureDataAdapter {
|
|
6
|
+
protected gffFeatures?: Promise<{
|
|
7
|
+
header: string;
|
|
8
|
+
intervalTree: Record<string, IntervalTree>;
|
|
9
|
+
}>;
|
|
10
|
+
private loadDataP;
|
|
11
|
+
private loadData;
|
|
12
|
+
getRefNames(opts?: BaseOptions): Promise<string[]>;
|
|
13
|
+
getHeader(): Promise<string>;
|
|
14
|
+
getFeatures(query: NoAssemblyRegion, opts?: BaseOptions): import("rxjs").Observable<Feature>;
|
|
15
|
+
private featureData;
|
|
16
|
+
freeResources(): void;
|
|
17
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
2
|
+
import { openLocation } from '@jbrowse/core/util/io';
|
|
3
|
+
import { ObservableCreate } from '@jbrowse/core/util/rxjs';
|
|
4
|
+
import IntervalTree from '@flatten-js/interval-tree';
|
|
5
|
+
import SimpleFeature from '@jbrowse/core/util/simpleFeature';
|
|
6
|
+
import { unzip } from '@gmod/bgzf-filehandle';
|
|
7
|
+
import gff from '@gmod/gff';
|
|
8
|
+
function isGzip(buf) {
|
|
9
|
+
return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
|
|
10
|
+
}
|
|
11
|
+
export default class extends BaseFeatureDataAdapter {
|
|
12
|
+
async loadDataP() {
|
|
13
|
+
const pm = this.pluginManager;
|
|
14
|
+
const buf = await openLocation(this.getConf('gffLocation'), pm).readFile();
|
|
15
|
+
const buffer = isGzip(buf) ? await unzip(buf) : buf;
|
|
16
|
+
// 512MB max chrome string length is 512MB
|
|
17
|
+
if (buffer.length > 536870888) {
|
|
18
|
+
throw new Error('Data exceeds maximum string length (512MB)');
|
|
19
|
+
}
|
|
20
|
+
const data = new TextDecoder('utf8', { fatal: true }).decode(buffer);
|
|
21
|
+
const lines = data.split('\n');
|
|
22
|
+
const headerLines = [];
|
|
23
|
+
for (let i = 0; i < lines.length && lines[i].startsWith('#'); i++) {
|
|
24
|
+
headerLines.push(lines[i]);
|
|
25
|
+
}
|
|
26
|
+
const header = headerLines.join('\n');
|
|
27
|
+
const feats = gff.parseStringSync(data, {
|
|
28
|
+
parseFeatures: true,
|
|
29
|
+
parseComments: false,
|
|
30
|
+
parseDirectives: false,
|
|
31
|
+
parseSequences: false,
|
|
32
|
+
});
|
|
33
|
+
const intervalTree = feats
|
|
34
|
+
.flat()
|
|
35
|
+
.map((f, i) => new SimpleFeature({
|
|
36
|
+
data: this.featureData(f),
|
|
37
|
+
id: `${this.id}-offset-${i}`,
|
|
38
|
+
}))
|
|
39
|
+
.reduce((acc, obj) => {
|
|
40
|
+
const key = obj.get('refName');
|
|
41
|
+
if (!acc[key]) {
|
|
42
|
+
acc[key] = new IntervalTree();
|
|
43
|
+
}
|
|
44
|
+
acc[key].insert([obj.get('start'), obj.get('end')], obj);
|
|
45
|
+
return acc;
|
|
46
|
+
}, {});
|
|
47
|
+
return { header, intervalTree };
|
|
48
|
+
}
|
|
49
|
+
async loadData() {
|
|
50
|
+
if (!this.gffFeatures) {
|
|
51
|
+
this.gffFeatures = this.loadDataP().catch(e => {
|
|
52
|
+
this.gffFeatures = undefined;
|
|
53
|
+
throw e;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return this.gffFeatures;
|
|
57
|
+
}
|
|
58
|
+
async getRefNames(opts = {}) {
|
|
59
|
+
const { intervalTree } = await this.loadData();
|
|
60
|
+
return Object.keys(intervalTree);
|
|
61
|
+
}
|
|
62
|
+
async getHeader() {
|
|
63
|
+
const { header } = await this.loadData();
|
|
64
|
+
return header;
|
|
65
|
+
}
|
|
66
|
+
getFeatures(query, opts = {}) {
|
|
67
|
+
return ObservableCreate(async (observer) => {
|
|
68
|
+
var _a;
|
|
69
|
+
try {
|
|
70
|
+
const { start, end, refName } = query;
|
|
71
|
+
const { intervalTree } = await this.loadData();
|
|
72
|
+
(_a = intervalTree[refName]) === null || _a === void 0 ? void 0 : _a.search([start, end]).forEach(f => observer.next(f));
|
|
73
|
+
observer.complete();
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
observer.error(e);
|
|
77
|
+
}
|
|
78
|
+
}, opts.signal);
|
|
79
|
+
}
|
|
80
|
+
featureData(data) {
|
|
81
|
+
const f = { ...data };
|
|
82
|
+
f.start -= 1; // convert to interbase
|
|
83
|
+
if (data.strand === '+') {
|
|
84
|
+
f.strand = 1;
|
|
85
|
+
}
|
|
86
|
+
else if (data.strand === '-') {
|
|
87
|
+
f.strand = -1;
|
|
88
|
+
}
|
|
89
|
+
else if (data.strand === '.') {
|
|
90
|
+
f.strand = 0;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
f.strand = undefined;
|
|
94
|
+
}
|
|
95
|
+
f.phase = Number(data.phase);
|
|
96
|
+
f.refName = data.seq_id;
|
|
97
|
+
if (data.score === null) {
|
|
98
|
+
delete f.score;
|
|
99
|
+
}
|
|
100
|
+
if (data.phase === null) {
|
|
101
|
+
delete f.score;
|
|
102
|
+
}
|
|
103
|
+
const defaultFields = [
|
|
104
|
+
'start',
|
|
105
|
+
'end',
|
|
106
|
+
'seq_id',
|
|
107
|
+
'score',
|
|
108
|
+
'type',
|
|
109
|
+
'source',
|
|
110
|
+
'phase',
|
|
111
|
+
'strand',
|
|
112
|
+
];
|
|
113
|
+
const dataAttributes = data.attributes || {};
|
|
114
|
+
Object.keys(dataAttributes).forEach(a => {
|
|
115
|
+
let b = a.toLowerCase();
|
|
116
|
+
if (defaultFields.includes(b)) {
|
|
117
|
+
// add "suffix" to tag name if it already exists
|
|
118
|
+
// reproduces behavior of NCList
|
|
119
|
+
b += '2';
|
|
120
|
+
}
|
|
121
|
+
if (dataAttributes[a] !== null) {
|
|
122
|
+
let attr = dataAttributes[a];
|
|
123
|
+
if (Array.isArray(attr) && attr.length === 1) {
|
|
124
|
+
;
|
|
125
|
+
[attr] = attr;
|
|
126
|
+
}
|
|
127
|
+
f[b] = attr;
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
f.refName = f.seq_id;
|
|
131
|
+
// the SimpleFeature constructor takes care of recursively inflating subfeatures
|
|
132
|
+
if (data.child_features && data.child_features.length) {
|
|
133
|
+
f.subfeatures = data.child_features
|
|
134
|
+
.map(childLocs => childLocs.map(childLoc => this.featureData(childLoc)))
|
|
135
|
+
.flat();
|
|
136
|
+
}
|
|
137
|
+
delete f.child_features;
|
|
138
|
+
delete f.data;
|
|
139
|
+
delete f.derived_features;
|
|
140
|
+
delete f.attributes;
|
|
141
|
+
delete f.seq_id;
|
|
142
|
+
return f;
|
|
143
|
+
}
|
|
144
|
+
freeResources( /* { region } */) { }
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=Gff3Adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Gff3Adapter.js","sourceRoot":"","sources":["../../src/Gff3Adapter/Gff3Adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
|
+
export default ConfigurationSchema('Gff3Adapter', {
|
|
3
|
+
gffLocation: {
|
|
4
|
+
type: 'fileLocation',
|
|
5
|
+
defaultValue: { uri: '/path/to/my.gff', locationType: 'UriLocation' },
|
|
6
|
+
},
|
|
7
|
+
}, { explicitlyTyped: true });
|
|
8
|
+
//# sourceMappingURL=configSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/Gff3Adapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,eAAe,mBAAmB,CAChC,aAAa,EACb;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as configSchema } from './configSchema';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Gff3Adapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
2
|
+
import { Region } from '@jbrowse/core/util/types';
|
|
3
|
+
import { Feature } from '@jbrowse/core/util/simpleFeature';
|
|
4
|
+
import { TabixIndexedFile } from '@gmod/tabix';
|
|
5
|
+
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
6
|
+
import PluginManager from '@jbrowse/core/PluginManager';
|
|
7
|
+
import { getSubAdapterType } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
8
|
+
export default class extends BaseFeatureDataAdapter {
|
|
9
|
+
protected gff: TabixIndexedFile;
|
|
10
|
+
protected dontRedispatch: string[];
|
|
11
|
+
constructor(config: AnyConfigurationModel, getSubAdapter?: getSubAdapterType, pluginManager?: PluginManager);
|
|
12
|
+
getRefNames(opts?: BaseOptions): Promise<any>;
|
|
13
|
+
getHeader(): Promise<string>;
|
|
14
|
+
getFeatures(query: Region, opts?: BaseOptions): import("rxjs").Observable<Feature>;
|
|
15
|
+
private getFeaturesHelper;
|
|
16
|
+
private parseLine;
|
|
17
|
+
private formatFeatures;
|
|
18
|
+
private featureData;
|
|
19
|
+
freeResources(): void;
|
|
20
|
+
}
|