@jbrowse/plugin-bed 2.2.0 → 2.2.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.
Files changed (52) hide show
  1. package/dist/BedAdapter/index.d.ts +3 -1
  2. package/dist/BedAdapter/index.js +32 -3
  3. package/dist/BedAdapter/index.js.map +1 -1
  4. package/dist/BedTabixAdapter/index.d.ts +3 -1
  5. package/dist/BedTabixAdapter/index.js +32 -3
  6. package/dist/BedTabixAdapter/index.js.map +1 -1
  7. package/dist/BedpeAdapter/BedpeAdapter.d.ts +25 -0
  8. package/dist/BedpeAdapter/BedpeAdapter.js +181 -0
  9. package/dist/BedpeAdapter/BedpeAdapter.js.map +1 -0
  10. package/dist/BedpeAdapter/configSchema.d.ts +2 -0
  11. package/dist/BedpeAdapter/configSchema.js +31 -0
  12. package/dist/BedpeAdapter/configSchema.js.map +1 -0
  13. package/dist/BedpeAdapter/index.d.ts +3 -0
  14. package/dist/BedpeAdapter/index.js +38 -0
  15. package/dist/BedpeAdapter/index.js.map +1 -0
  16. package/dist/BigBedAdapter/index.d.ts +3 -1
  17. package/dist/BigBedAdapter/index.js +32 -3
  18. package/dist/BigBedAdapter/index.js.map +1 -1
  19. package/dist/index.js +22 -42
  20. package/dist/index.js.map +1 -1
  21. package/esm/BedAdapter/index.d.ts +3 -1
  22. package/esm/BedAdapter/index.js +9 -1
  23. package/esm/BedAdapter/index.js.map +1 -1
  24. package/esm/BedTabixAdapter/index.d.ts +3 -1
  25. package/esm/BedTabixAdapter/index.js +9 -1
  26. package/esm/BedTabixAdapter/index.js.map +1 -1
  27. package/esm/BedpeAdapter/BedpeAdapter.d.ts +25 -0
  28. package/esm/BedpeAdapter/BedpeAdapter.js +173 -0
  29. package/esm/BedpeAdapter/BedpeAdapter.js.map +1 -0
  30. package/esm/BedpeAdapter/configSchema.d.ts +2 -0
  31. package/esm/BedpeAdapter/configSchema.js +29 -0
  32. package/esm/BedpeAdapter/configSchema.js.map +1 -0
  33. package/esm/BedpeAdapter/index.d.ts +3 -0
  34. package/esm/BedpeAdapter/index.js +10 -0
  35. package/esm/BedpeAdapter/index.js.map +1 -0
  36. package/esm/BigBedAdapter/index.d.ts +3 -1
  37. package/esm/BigBedAdapter/index.js +9 -1
  38. package/esm/BigBedAdapter/index.js.map +1 -1
  39. package/esm/index.js +22 -19
  40. package/esm/index.js.map +1 -1
  41. package/package.json +3 -3
  42. package/src/BedAdapter/__snapshots__/BedAdapter.test.ts.snap +58 -58
  43. package/src/BedAdapter/index.ts +15 -1
  44. package/src/BedTabixAdapter/__snapshots__/BedTabixAdapter.test.ts.snap +58 -58
  45. package/src/BedTabixAdapter/index.ts +15 -1
  46. package/src/BedpeAdapter/BedpeAdapter.ts +204 -0
  47. package/src/BedpeAdapter/configSchema.ts +34 -0
  48. package/src/BedpeAdapter/index.ts +15 -0
  49. package/src/BigBedAdapter/__snapshots__/BigBedAdapter.test.ts.snap +31 -31
  50. package/src/BigBedAdapter/index.ts +15 -1
  51. package/src/__snapshots__/index.test.js.snap +1 -1
  52. package/src/index.ts +28 -30
@@ -0,0 +1,25 @@
1
+ import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { Region, Feature, SimpleFeature } from '@jbrowse/core/util';
3
+ import IntervalTree from '@flatten-js/interval-tree';
4
+ export declare function featureData(line: string, uniqueId: string, flip: boolean, names?: string[]): SimpleFeature;
5
+ export default class BedpeAdapter extends BaseFeatureDataAdapter {
6
+ protected bedpeFeatures?: Promise<{
7
+ header: string;
8
+ feats1: Record<string, string[]>;
9
+ feats2: Record<string, string[]>;
10
+ columnNames: string[];
11
+ }>;
12
+ protected intervalTrees: {
13
+ [key: string]: Promise<IntervalTree | undefined> | undefined;
14
+ };
15
+ static capabilities: string[];
16
+ private loadDataP;
17
+ private loadData;
18
+ getRefNames(opts?: BaseOptions): Promise<string[]>;
19
+ getHeader(opts?: BaseOptions): Promise<string>;
20
+ getNames(): Promise<string[] | undefined>;
21
+ private loadFeatureTreeP;
22
+ private loadFeatureTree;
23
+ getFeatures(query: Region, opts?: BaseOptions): import("rxjs").Observable<Feature>;
24
+ freeResources(): void;
25
+ }
@@ -0,0 +1,173 @@
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 { SimpleFeature } from '@jbrowse/core/util';
5
+ import IntervalTree from '@flatten-js/interval-tree';
6
+ import { unzip } from '@gmod/bgzf-filehandle';
7
+ function isGzip(buf) {
8
+ return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
9
+ }
10
+ export function featureData(line, uniqueId, flip, names) {
11
+ const l = line.split('\t');
12
+ const ref1 = l[flip ? 3 : 0];
13
+ const start1 = +l[flip ? 4 : 1];
14
+ const end1 = +l[flip ? 5 : 2];
15
+ const ref2 = +l[!flip ? 3 : 0];
16
+ const start2 = +l[!flip ? 4 : 1];
17
+ const end2 = +l[!flip ? 5 : 2];
18
+ const name = l[6];
19
+ const score = +l[7];
20
+ const strand1 = parseStrand(l[8]);
21
+ const strand2 = parseStrand(l[9]);
22
+ const extra = l.slice(9);
23
+ const rest = names
24
+ ? Object.fromEntries(names.slice(9).map((n, idx) => [n, extra[idx]]))
25
+ : extra;
26
+ return new SimpleFeature({
27
+ start: start1,
28
+ end: end1,
29
+ refName: ref1,
30
+ strand: strand1,
31
+ name,
32
+ ...rest,
33
+ score,
34
+ uniqueId,
35
+ mate: { refName: ref2, start: start2, end: end2, strand: strand2 },
36
+ });
37
+ }
38
+ function parseStrand(strand) {
39
+ if (strand === '+') {
40
+ return 1;
41
+ }
42
+ else if (strand === '-') {
43
+ return -1;
44
+ }
45
+ else if (strand === '.') {
46
+ return 0;
47
+ }
48
+ else {
49
+ return undefined;
50
+ }
51
+ }
52
+ export default class BedpeAdapter extends BaseFeatureDataAdapter {
53
+ constructor() {
54
+ super(...arguments);
55
+ this.intervalTrees = {};
56
+ }
57
+ async loadDataP(opts = {}) {
58
+ const pm = this.pluginManager;
59
+ const bedLoc = this.getConf('bedpeLocation');
60
+ const buf = await openLocation(bedLoc, pm).readFile(opts);
61
+ const buffer = isGzip(buf) ? await unzip(buf) : buf;
62
+ // 512MB max chrome string length is 512MB
63
+ if (buffer.length > 536870888) {
64
+ throw new Error('Data exceeds maximum string length (512MB)');
65
+ }
66
+ const data = new TextDecoder('utf8', { fatal: true }).decode(buffer);
67
+ const lines = data.split(/\n|\r\n|\r/).filter(f => !!f);
68
+ const headerLines = [];
69
+ let i = 0;
70
+ for (; i < lines.length && lines[i].startsWith('#'); i++) {
71
+ headerLines.push(lines[i]);
72
+ }
73
+ const header = headerLines.join('\n');
74
+ const feats1 = {};
75
+ const feats2 = {};
76
+ for (; i < lines.length; i++) {
77
+ const line = lines[i];
78
+ const cols = line.split('\t');
79
+ const r1 = cols[0];
80
+ const r2 = cols[3];
81
+ if (!feats1[r1]) {
82
+ feats1[r1] = [];
83
+ }
84
+ if (!feats2[r2]) {
85
+ feats2[r2] = [];
86
+ }
87
+ feats1[r1].push(line);
88
+ feats2[r2].push(line);
89
+ }
90
+ const columnNames = this.getConf('columnNames');
91
+ return {
92
+ header,
93
+ feats1,
94
+ feats2,
95
+ columnNames,
96
+ };
97
+ }
98
+ async loadData(opts = {}) {
99
+ if (!this.bedpeFeatures) {
100
+ this.bedpeFeatures = this.loadDataP(opts).catch(e => {
101
+ this.bedpeFeatures = undefined;
102
+ throw e;
103
+ });
104
+ }
105
+ return this.bedpeFeatures;
106
+ }
107
+ async getRefNames(opts = {}) {
108
+ const { feats1, feats2 } = await this.loadData(opts);
109
+ return [...new Set([...Object.keys(feats1), ...Object.keys(feats2)])];
110
+ }
111
+ async getHeader(opts = {}) {
112
+ const { header } = await this.loadData(opts);
113
+ return header;
114
+ }
115
+ async getNames() {
116
+ const { header, columnNames } = await this.loadData();
117
+ if (columnNames.length) {
118
+ return columnNames;
119
+ }
120
+ const defs = header.split(/\n|\r\n|\r/).filter(f => !!f);
121
+ const defline = defs[defs.length - 1];
122
+ return (defline === null || defline === void 0 ? void 0 : defline.includes('\t'))
123
+ ? defline
124
+ .slice(1)
125
+ .split('\t')
126
+ .map(field => field.trim())
127
+ : undefined;
128
+ }
129
+ async loadFeatureTreeP(refName) {
130
+ const { feats1, feats2 } = await this.loadData();
131
+ const lines1 = feats1[refName];
132
+ const lines2 = feats2[refName];
133
+ const names = await this.getNames();
134
+ const intervalTree = new IntervalTree();
135
+ const ret1 = lines1 === null || lines1 === void 0 ? void 0 : lines1.map((f, i) => {
136
+ const uniqueId = `${this.id}-${refName}-${i}`;
137
+ return featureData(f, uniqueId, false, names);
138
+ });
139
+ const ret2 = lines2 === null || lines2 === void 0 ? void 0 : lines2.map((f, i) => {
140
+ const uniqueId = `${this.id}-${refName}-${i}`;
141
+ return featureData(f, uniqueId, true, names);
142
+ });
143
+ for (let i = 0; i < ret1.length; i++) {
144
+ const obj = ret1[i];
145
+ intervalTree.insert([obj.get('start'), obj.get('end')], obj);
146
+ }
147
+ for (let i = 0; i < ret2.length; i++) {
148
+ const obj = ret2[i];
149
+ intervalTree.insert([obj.get('start'), obj.get('end')], obj);
150
+ }
151
+ return intervalTree;
152
+ }
153
+ async loadFeatureTree(refName) {
154
+ if (!this.intervalTrees[refName]) {
155
+ this.intervalTrees[refName] = this.loadFeatureTreeP(refName).catch(e => {
156
+ this.intervalTrees[refName] = undefined;
157
+ throw e;
158
+ });
159
+ }
160
+ return this.intervalTrees[refName];
161
+ }
162
+ getFeatures(query, opts = {}) {
163
+ return ObservableCreate(async (observer) => {
164
+ const { start, end, refName } = query;
165
+ const intervalTree = await this.loadFeatureTree(refName);
166
+ intervalTree === null || intervalTree === void 0 ? void 0 : intervalTree.search([start, end]).forEach(f => observer.next(f));
167
+ observer.complete();
168
+ }, opts.signal);
169
+ }
170
+ freeResources() { }
171
+ }
172
+ BedpeAdapter.capabilities = ['getFeatures', 'getRefNames'];
173
+ //# sourceMappingURL=BedpeAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BedpeAdapter.js","sourceRoot":"","sources":["../../src/BedpeAdapter/BedpeAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const BedpeAdapter: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
2
+ export default BedpeAdapter;
@@ -0,0 +1,29 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ /**
3
+ * #config BedpeAdapter
4
+ * intended for SVs in a single assembly
5
+ */
6
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
7
+ const BedpeAdapter = ConfigurationSchema('BedpeAdapter', {
8
+ /**
9
+ * #slot
10
+ * can be plaintext or gzipped, not indexed so loaded into memory on startup
11
+ */
12
+ bedpeLocation: {
13
+ type: 'fileLocation',
14
+ defaultValue: {
15
+ uri: '/path/to/my.bedpe.gz',
16
+ locationType: 'UriLocation',
17
+ },
18
+ },
19
+ /**
20
+ * #slot
21
+ */
22
+ columnNames: {
23
+ type: 'stringArray',
24
+ description: 'List of column names',
25
+ defaultValue: [],
26
+ },
27
+ }, { explicitlyTyped: true });
28
+ export default BedpeAdapter;
29
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/BedpeAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE;;;GAGG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,YAAY,GAAG,mBAAmB,CACtC,cAAc,EACd;IACE;;;OAGG;IACH,aAAa,EAAE;QACb,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE;YACZ,GAAG,EAAE,sBAAsB;YAC3B,YAAY,EAAE,aAAa;SAC5B;KACF;IACD;;OAEG;IACH,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,sBAAsB;QACnC,YAAY,EAAE,EAAE;KACjB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA;AACD,eAAe,YAAY,CAAA"}
@@ -0,0 +1,3 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const _default: (pluginManager: PluginManager) => void;
3
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
+ import configSchema from './configSchema';
3
+ export default (pluginManager) => {
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'BedpeAdapter',
6
+ configSchema,
7
+ getAdapterClass: () => import('./BedpeAdapter').then(r => r.default),
8
+ }));
9
+ };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/BedpeAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AAEzE,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAEzC,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;QACd,IAAI,EAAE,cAAc;QACpB,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACrE,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
@@ -1 +1,3 @@
1
- export { default as configSchema } from './configSchema';
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const _default: (pluginManager: PluginManager) => void;
3
+ export default _default;
@@ -1,2 +1,10 @@
1
- export { default as configSchema } from './configSchema';
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
+ import configSchema from './configSchema';
3
+ export default (pluginManager) => {
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'BigBedAdapter',
6
+ configSchema,
7
+ getAdapterClass: () => import('./BigBedAdapter').then(r => r.default),
8
+ }));
9
+ };
2
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/BigBedAdapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/BigBedAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AAEzE,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAEzC,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;QACd,IAAI,EAAE,eAAe;QACrB,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACtE,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
package/esm/index.js CHANGED
@@ -1,8 +1,8 @@
1
- import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
1
  import Plugin from '@jbrowse/core/Plugin';
3
- import { configSchema as bigBedAdapterConfigSchema } from './BigBedAdapter';
4
- import { configSchema as bedTabixAdapterConfigSchema } from './BedTabixAdapter';
5
- import { configSchema as bedAdapterConfigSchema } from './BedAdapter';
2
+ import BigBedAdapterF from './BigBedAdapter';
3
+ import BedpeAdapterF from './BedpeAdapter';
4
+ import BedTabixAdapterF from './BedTabixAdapter';
5
+ import BedAdapterF from './BedAdapter';
6
6
  import { getFileName, makeIndex, makeIndexType, } from '@jbrowse/core/util/tracks';
7
7
  export default class BedPlugin extends Plugin {
8
8
  constructor() {
@@ -10,11 +10,10 @@ export default class BedPlugin extends Plugin {
10
10
  this.name = 'BedPlugin';
11
11
  }
12
12
  install(pluginManager) {
13
- pluginManager.addAdapterType(() => new AdapterType({
14
- name: 'BigBedAdapter',
15
- configSchema: bigBedAdapterConfigSchema,
16
- getAdapterClass: () => import('./BigBedAdapter/BigBedAdapter').then(r => r.default),
17
- }));
13
+ BigBedAdapterF(pluginManager);
14
+ BedAdapterF(pluginManager);
15
+ BedpeAdapterF(pluginManager);
16
+ BedTabixAdapterF(pluginManager);
18
17
  pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
19
18
  return (file, index, adapterHint) => {
20
19
  const regexGuess = /\.(bb|bigbed)$/i;
@@ -33,16 +32,20 @@ export default class BedPlugin extends Plugin {
33
32
  return adapterGuesser(file, index, adapterHint);
34
33
  };
35
34
  });
36
- pluginManager.addAdapterType(() => new AdapterType({
37
- name: 'BedTabixAdapter',
38
- configSchema: bedTabixAdapterConfigSchema,
39
- getAdapterClass: () => import('./BedTabixAdapter/BedTabixAdapter').then(r => r.default),
40
- }));
41
- pluginManager.addAdapterType(() => new AdapterType({
42
- name: 'BedAdapter',
43
- configSchema: bedAdapterConfigSchema,
44
- getAdapterClass: () => import('./BedAdapter/BedAdapter').then(r => r.default),
45
- }));
35
+ pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
36
+ return (file, index, adapterHint) => {
37
+ const regexGuess = /\.bedpe\.gz$/i;
38
+ const adapterName = 'BedpeAdapter';
39
+ const fileName = getFileName(file);
40
+ if (regexGuess.test(fileName) || adapterHint === adapterName) {
41
+ return {
42
+ type: adapterName,
43
+ bedpeLocation: file,
44
+ };
45
+ }
46
+ return adapterGuesser(file, index, adapterHint);
47
+ };
48
+ });
46
49
  pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
47
50
  return (file, index, adapterHint) => {
48
51
  const regexGuess = /\.bed\.b?gz$/i;
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AACzE,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,OAAO,EAAE,YAAY,IAAI,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,YAAY,IAAI,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AAC/E,OAAO,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAErE,OAAO,EACL,WAAW,EACX,SAAS,EACT,aAAa,GAEd,MAAM,2BAA2B,CAAA;AAElC,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IAA7C;;QACE,SAAI,GAAG,WAAW,CAAA;IA0GpB,CAAC;IAxGC,OAAO,CAAC,aAA4B;QAClC,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;YACd,IAAI,EAAE,eAAe;YACrB,YAAY,EAAE,yBAAyB;YACvC,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,+BAA+B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;SAC/D,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,iBAAiB,CAAA;gBACpC,MAAM,WAAW,GAAG,eAAe,CAAA;gBACnC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,MAAM,GAAG,GAAG;oBACV,IAAI,EAAE,WAAW;oBACjB,cAAc,EAAE,IAAI;iBACrB,CAAA;gBAED,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;QAED,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;YACd,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,2BAA2B;YACzC,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,mCAAmC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;SACnE,CAAC,CACL,CAAA;QAED,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;YACd,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,sBAAsB;YACpC,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,yBAAyB,CAAC,CAAC,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,eAAe,CAAA;gBAClC,MAAM,WAAW,GAAG,iBAAiB,CAAA;gBACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,MAAM,SAAS,GAAG,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC7C,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,aAAa,EAAE,IAAI;wBACnB,KAAK,EAAE;4BACL,QAAQ,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;4BAC1C,SAAS,EAAE,aAAa,CAAC,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;QAED,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,SAAS,CAAA;gBAC5B,MAAM,WAAW,GAAG,YAAY,CAAA;gBAChC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,WAAW,EAAE,IAAI;qBAClB,CAAA;iBACF;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,OAAO,cAAc,MAAM,iBAAiB,CAAA;AAC5C,OAAO,aAAa,MAAM,gBAAgB,CAAA;AAC1C,OAAO,gBAAgB,MAAM,mBAAmB,CAAA;AAChD,OAAO,WAAW,MAAM,cAAc,CAAA;AAEtC,OAAO,EACL,WAAW,EACX,SAAS,EACT,aAAa,GAEd,MAAM,2BAA2B,CAAA;AAElC,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IAA7C;;QACE,SAAI,GAAG,WAAW,CAAA;IAwGpB,CAAC;IAtGC,OAAO,CAAC,aAA4B;QAClC,cAAc,CAAC,aAAa,CAAC,CAAA;QAC7B,WAAW,CAAC,aAAa,CAAC,CAAA;QAC1B,aAAa,CAAC,aAAa,CAAC,CAAA;QAC5B,gBAAgB,CAAC,aAAa,CAAC,CAAA;QAC/B,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,iBAAiB,CAAA;gBACpC,MAAM,WAAW,GAAG,eAAe,CAAA;gBACnC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,MAAM,GAAG,GAAG;oBACV,IAAI,EAAE,WAAW;oBACjB,cAAc,EAAE,IAAI;iBACrB,CAAA;gBAED,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;QAED,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,eAAe,CAAA;gBAClC,MAAM,WAAW,GAAG,cAAc,CAAA;gBAClC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,aAAa,EAAE,IAAI;qBACpB,CAAA;iBACF;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;QAED,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,eAAe,CAAA;gBAClC,MAAM,WAAW,GAAG,iBAAiB,CAAA;gBACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,MAAM,SAAS,GAAG,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC7C,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,aAAa,EAAE,IAAI;wBACnB,KAAK,EAAE;4BACL,QAAQ,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;4BAC1C,SAAS,EAAE,aAAa,CAAC,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;QAED,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,SAAS,CAAA;gBAC5B,MAAM,WAAW,GAAG,YAAY,CAAA;gBAChC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,WAAW,EAAE,IAAI;qBAClB,CAAA;iBACF;gBACD,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,CAAC,CAAA;QACH,CAAC,CACF,CAAA;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-bed",
3
- "version": "2.2.0",
3
+ "version": "2.2.2",
4
4
  "description": "JBrowse 2 bed adapters, tracks, etc.",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -27,7 +27,7 @@
27
27
  "build": "npm-run-all build:*",
28
28
  "test": "cd ../..; jest plugins/bed",
29
29
  "prepublishOnly": "yarn test",
30
- "prepack": "yarn build; yarn useDist",
30
+ "prepack": "yarn build && yarn useDist",
31
31
  "postpack": "yarn useSrc",
32
32
  "useDist": "node ../../scripts/useDist.js",
33
33
  "useSrc": "node ../../scripts/useSrc.js",
@@ -56,5 +56,5 @@
56
56
  "distModule": "esm/index.js",
57
57
  "srcModule": "src/index.ts",
58
58
  "module": "esm/index.js",
59
- "gitHead": "cf31db8d833117f8822510340664fb3f045975cb"
59
+ "gitHead": "abbc00e8feedbc58de84a7a3e735ec0224909b29"
60
60
  }