@jbrowse/plugin-sequence 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.
Files changed (142) hide show
  1. package/dist/BgzipFastaAdapter/BgzipFastaAdapter.js +16 -34
  2. package/dist/BgzipFastaAdapter/BgzipFastaAdapter.js.map +1 -1
  3. package/dist/BgzipFastaAdapter/configSchema.js +1 -1
  4. package/dist/BgzipFastaAdapter/configSchema.js.map +1 -1
  5. package/dist/BgzipFastaAdapter/index.d.ts +3 -1
  6. package/dist/BgzipFastaAdapter/index.js +38 -3
  7. package/dist/BgzipFastaAdapter/index.js.map +1 -1
  8. package/dist/ChromSizesAdapter/ChromSizesAdapter.d.ts +9 -9
  9. package/dist/ChromSizesAdapter/ChromSizesAdapter.js +34 -128
  10. package/dist/ChromSizesAdapter/ChromSizesAdapter.js.map +1 -1
  11. package/dist/ChromSizesAdapter/configSchema.js +1 -1
  12. package/dist/ChromSizesAdapter/configSchema.js.map +1 -1
  13. package/dist/ChromSizesAdapter/index.d.ts +3 -1
  14. package/dist/ChromSizesAdapter/index.js +38 -3
  15. package/dist/ChromSizesAdapter/index.js.map +1 -1
  16. package/dist/DivSequenceRenderer/components/DivSequenceRendering.js +51 -89
  17. package/dist/DivSequenceRenderer/components/DivSequenceRendering.js.map +1 -1
  18. package/dist/DivSequenceRenderer/configSchema.js +1 -1
  19. package/dist/DivSequenceRenderer/configSchema.js.map +1 -1
  20. package/dist/DivSequenceRenderer/index.d.ts +3 -2
  21. package/dist/DivSequenceRenderer/index.js +25 -5
  22. package/dist/DivSequenceRenderer/index.js.map +1 -1
  23. package/dist/GCContentAdapter/GCContentAdapter.d.ts +1 -7
  24. package/dist/GCContentAdapter/GCContentAdapter.js +75 -180
  25. package/dist/GCContentAdapter/GCContentAdapter.js.map +1 -1
  26. package/dist/GCContentAdapter/configSchema.js +3 -3
  27. package/dist/GCContentAdapter/configSchema.js.map +1 -1
  28. package/dist/GCContentAdapter/index.d.ts +1 -4
  29. package/dist/GCContentAdapter/index.js +15 -7
  30. package/dist/GCContentAdapter/index.js.map +1 -1
  31. package/dist/IndexedFastaAdapter/IndexedFastaAdapter.js +77 -171
  32. package/dist/IndexedFastaAdapter/IndexedFastaAdapter.js.map +1 -1
  33. package/dist/IndexedFastaAdapter/configSchema.js +1 -1
  34. package/dist/IndexedFastaAdapter/configSchema.js.map +1 -1
  35. package/dist/IndexedFastaAdapter/index.d.ts +3 -1
  36. package/dist/IndexedFastaAdapter/index.js +38 -3
  37. package/dist/IndexedFastaAdapter/index.js.map +1 -1
  38. package/dist/LinearReferenceSequenceDisplay/configSchema.js +6 -3
  39. package/dist/LinearReferenceSequenceDisplay/configSchema.js.map +1 -1
  40. package/dist/LinearReferenceSequenceDisplay/index.d.ts +3 -2
  41. package/dist/LinearReferenceSequenceDisplay/index.js +16 -5
  42. package/dist/LinearReferenceSequenceDisplay/index.js.map +1 -1
  43. package/dist/LinearReferenceSequenceDisplay/model.d.ts +1 -1
  44. package/dist/LinearReferenceSequenceDisplay/model.js +29 -33
  45. package/dist/LinearReferenceSequenceDisplay/model.js.map +1 -1
  46. package/dist/{referenceSeqTrackConfig.d.ts → ReferenceSequenceTrack/configSchema.d.ts} +0 -0
  47. package/dist/{referenceSeqTrackConfig.js → ReferenceSequenceTrack/configSchema.js} +19 -30
  48. package/dist/ReferenceSequenceTrack/configSchema.js.map +1 -0
  49. package/dist/ReferenceSequenceTrack/index.d.ts +3 -0
  50. package/dist/ReferenceSequenceTrack/index.js +19 -0
  51. package/dist/ReferenceSequenceTrack/index.js.map +1 -0
  52. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.d.ts +8 -0
  53. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.js +84 -0
  54. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.js.map +1 -0
  55. package/dist/SequenceSearchAdapter/configSchema.d.ts +2 -0
  56. package/dist/SequenceSearchAdapter/configSchema.js +28 -0
  57. package/dist/SequenceSearchAdapter/configSchema.js.map +1 -0
  58. package/dist/SequenceSearchAdapter/index.d.ts +3 -0
  59. package/dist/SequenceSearchAdapter/index.js +44 -0
  60. package/dist/SequenceSearchAdapter/index.js.map +1 -0
  61. package/dist/TwoBitAdapter/TwoBitAdapter.js +66 -174
  62. package/dist/TwoBitAdapter/TwoBitAdapter.js.map +1 -1
  63. package/dist/TwoBitAdapter/configSchema.js +1 -1
  64. package/dist/TwoBitAdapter/configSchema.js.map +1 -1
  65. package/dist/TwoBitAdapter/index.d.ts +3 -1
  66. package/dist/TwoBitAdapter/index.js +38 -3
  67. package/dist/TwoBitAdapter/index.js.map +1 -1
  68. package/dist/createExtensionPoints.d.ts +3 -0
  69. package/dist/createExtensionPoints.js +86 -0
  70. package/dist/createExtensionPoints.js.map +1 -0
  71. package/dist/index.js +27 -261
  72. package/dist/index.js.map +1 -1
  73. package/esm/BgzipFastaAdapter/index.d.ts +3 -1
  74. package/esm/BgzipFastaAdapter/index.js +15 -1
  75. package/esm/BgzipFastaAdapter/index.js.map +1 -1
  76. package/esm/ChromSizesAdapter/ChromSizesAdapter.d.ts +9 -9
  77. package/esm/ChromSizesAdapter/ChromSizesAdapter.js +20 -26
  78. package/esm/ChromSizesAdapter/ChromSizesAdapter.js.map +1 -1
  79. package/esm/ChromSizesAdapter/index.d.ts +3 -1
  80. package/esm/ChromSizesAdapter/index.js +15 -1
  81. package/esm/ChromSizesAdapter/index.js.map +1 -1
  82. package/esm/DivSequenceRenderer/index.d.ts +3 -2
  83. package/esm/DivSequenceRenderer/index.js +25 -2
  84. package/esm/DivSequenceRenderer/index.js.map +1 -1
  85. package/esm/GCContentAdapter/GCContentAdapter.d.ts +1 -7
  86. package/esm/GCContentAdapter/GCContentAdapter.js +7 -18
  87. package/esm/GCContentAdapter/GCContentAdapter.js.map +1 -1
  88. package/esm/GCContentAdapter/index.d.ts +1 -4
  89. package/esm/GCContentAdapter/index.js +11 -3
  90. package/esm/GCContentAdapter/index.js.map +1 -1
  91. package/esm/IndexedFastaAdapter/index.d.ts +3 -1
  92. package/esm/IndexedFastaAdapter/index.js +15 -1
  93. package/esm/IndexedFastaAdapter/index.js.map +1 -1
  94. package/esm/LinearReferenceSequenceDisplay/configSchema.js +1 -1
  95. package/esm/LinearReferenceSequenceDisplay/configSchema.js.map +1 -1
  96. package/esm/LinearReferenceSequenceDisplay/index.d.ts +3 -2
  97. package/esm/LinearReferenceSequenceDisplay/index.js +16 -2
  98. package/esm/LinearReferenceSequenceDisplay/index.js.map +1 -1
  99. package/esm/LinearReferenceSequenceDisplay/model.d.ts +1 -1
  100. package/esm/{referenceSeqTrackConfig.d.ts → ReferenceSequenceTrack/configSchema.d.ts} +0 -0
  101. package/esm/{referenceSeqTrackConfig.js → ReferenceSequenceTrack/configSchema.js} +1 -1
  102. package/esm/ReferenceSequenceTrack/configSchema.js.map +1 -0
  103. package/esm/ReferenceSequenceTrack/index.d.ts +3 -0
  104. package/esm/ReferenceSequenceTrack/index.js +14 -0
  105. package/esm/ReferenceSequenceTrack/index.js.map +1 -0
  106. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.d.ts +8 -0
  107. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.js +81 -0
  108. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.js.map +1 -0
  109. package/esm/SequenceSearchAdapter/configSchema.d.ts +2 -0
  110. package/esm/SequenceSearchAdapter/configSchema.js +26 -0
  111. package/esm/SequenceSearchAdapter/configSchema.js.map +1 -0
  112. package/esm/SequenceSearchAdapter/index.d.ts +3 -0
  113. package/esm/SequenceSearchAdapter/index.js +16 -0
  114. package/esm/SequenceSearchAdapter/index.js.map +1 -0
  115. package/esm/TwoBitAdapter/index.d.ts +3 -1
  116. package/esm/TwoBitAdapter/index.js +15 -1
  117. package/esm/TwoBitAdapter/index.js.map +1 -1
  118. package/esm/createExtensionPoints.d.ts +3 -0
  119. package/esm/createExtensionPoints.js +84 -0
  120. package/esm/createExtensionPoints.js.map +1 -0
  121. package/esm/index.js +19 -186
  122. package/esm/index.js.map +1 -1
  123. package/package.json +6 -8
  124. package/src/BgzipFastaAdapter/index.ts +22 -1
  125. package/src/ChromSizesAdapter/ChromSizesAdapter.ts +22 -42
  126. package/src/ChromSizesAdapter/index.ts +22 -1
  127. package/src/DivSequenceRenderer/index.ts +31 -2
  128. package/src/GCContentAdapter/GCContentAdapter.ts +15 -25
  129. package/src/GCContentAdapter/index.ts +17 -4
  130. package/src/IndexedFastaAdapter/index.ts +22 -1
  131. package/src/LinearReferenceSequenceDisplay/configSchema.ts +1 -1
  132. package/src/LinearReferenceSequenceDisplay/index.ts +19 -2
  133. package/src/{referenceSeqTrackConfig.ts → ReferenceSequenceTrack/configSchema.ts} +0 -0
  134. package/src/ReferenceSequenceTrack/index.ts +21 -0
  135. package/src/SequenceSearchAdapter/SequenceSearchAdapter.ts +103 -0
  136. package/src/SequenceSearchAdapter/configSchema.ts +31 -0
  137. package/src/SequenceSearchAdapter/index.ts +22 -0
  138. package/src/TwoBitAdapter/index.ts +21 -1
  139. package/src/createExtensionPoints.ts +122 -0
  140. package/src/index.ts +20 -268
  141. package/dist/referenceSeqTrackConfig.js.map +0 -1
  142. package/esm/referenceSeqTrackConfig.js.map +0 -1
@@ -1,2 +1,3 @@
1
- export { default as ReactComponent } from './components/DivSequenceRendering';
2
- 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,3 +1,26 @@
1
- export { default as ReactComponent } from './components/DivSequenceRendering';
2
- export { default as configSchema } from './configSchema';
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ import ReactComponent from './components/DivSequenceRendering';
3
+ import configSchema from './configSchema';
4
+ /* adjust in both directions */
5
+ class DivSequenceRenderer extends FeatureRendererType {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.supportsSVG = true;
9
+ }
10
+ getExpandedRegion(region) {
11
+ return {
12
+ ...region,
13
+ start: Math.max(region.start - 3, 0),
14
+ end: region.end + 3,
15
+ };
16
+ }
17
+ }
18
+ export default (pluginManager) => {
19
+ pluginManager.addRendererType(() => new DivSequenceRenderer({
20
+ name: 'DivSequenceRenderer',
21
+ ReactComponent,
22
+ configSchema,
23
+ pluginManager,
24
+ }));
25
+ };
3
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/DivSequenceRenderer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/DivSequenceRenderer/index.ts"],"names":[],"mappings":"AAGA,OAAO,mBAAmB,MAAM,mEAAmE,CAAA;AACnG,OAAO,cAAc,MAAM,mCAAmC,CAAA;AAC9D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAEzC,+BAA+B;AAC/B,MAAM,mBAAoB,SAAQ,mBAAmB;IAArD;;QACE,gBAAW,GAAG,IAAI,CAAA;IASpB,CAAC;IAPC,iBAAiB,CAAC,MAAc;QAC9B,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC;SACpB,CAAA;IACH,CAAC;CACF;AAED,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,eAAe,CAC3B,GAAG,EAAE,CACH,IAAI,mBAAmB,CAAC;QACtB,IAAI,EAAE,qBAAqB;QAC3B,cAAc;QACd,YAAY;QACZ,aAAa;KACd,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
@@ -1,6 +1,5 @@
1
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';
2
+ import { Feature, Region } from '@jbrowse/core/util';
4
3
  export default class extends BaseFeatureDataAdapter {
5
4
  private windowSize;
6
5
  private windowDelta;
@@ -8,11 +7,6 @@ export default class extends BaseFeatureDataAdapter {
8
7
  static capabilities: string[];
9
8
  configure(): Promise<BaseFeatureDataAdapter>;
10
9
  getRefNames(): Promise<string[]>;
11
- /**
12
- * Fetch features for a certain region
13
- * @param param -
14
- * @returns Observable of Feature objects in the region
15
- */
16
10
  getFeatures(query: Region, opts: BaseOptions): import("rxjs").Observable<Feature>;
17
11
  /**
18
12
  * called to provide a hint that data tied to a certain region
@@ -1,7 +1,6 @@
1
1
  import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
2
  import { ObservableCreate } from '@jbrowse/core/util/rxjs';
3
- import SimpleFeature from '@jbrowse/core/util/simpleFeature';
4
- import { readConfObject } from '@jbrowse/core/configuration';
3
+ import { SimpleFeature } from '@jbrowse/core/util';
5
4
  import { toArray } from 'rxjs/operators';
6
5
  export default class default_1 extends BaseFeatureDataAdapter {
7
6
  constructor() {
@@ -12,27 +11,17 @@ export default class default_1 extends BaseFeatureDataAdapter {
12
11
  }
13
12
  async configure() {
14
13
  var _a;
15
- // instantiate the sequence adapter
16
- const sequenceAdapter = readConfObject(this.config, 'sequenceAdapter');
17
- const dataAdapter = await ((_a = this.getSubAdapter) === null || _a === void 0 ? void 0 : _a.call(this, sequenceAdapter));
18
- if (!dataAdapter) {
14
+ const adapter = await ((_a = this.getSubAdapter) === null || _a === void 0 ? void 0 : _a.call(this, this.getConf('sequenceAdapter')));
15
+ if (!adapter) {
19
16
  throw new Error('Error getting subadapter');
20
17
  }
21
- return dataAdapter.dataAdapter;
18
+ return adapter.dataAdapter;
22
19
  }
23
20
  async getRefNames() {
24
- const sequenceAdapter = await this.configure();
25
- return sequenceAdapter.getRefNames();
21
+ const adapter = await this.configure();
22
+ return adapter.getRefNames();
26
23
  }
27
- /**
28
- * Fetch features for a certain region
29
- * @param param -
30
- * @returns Observable of Feature objects in the region
31
- */
32
24
  getFeatures(query, opts) {
33
- this.windowSize = 1000;
34
- this.windowDelta = 1000;
35
- this.gcMode = 'content';
36
25
  return ObservableCreate(async (observer) => {
37
26
  var _a;
38
27
  const sequenceAdapter = await this.configure();
@@ -49,7 +38,7 @@ export default class default_1 extends BaseFeatureDataAdapter {
49
38
  ...query,
50
39
  start: queryStart,
51
40
  end: queryEnd,
52
- });
41
+ }, opts);
53
42
  const feats = await ret.pipe(toArray()).toPromise();
54
43
  const residues = ((_a = feats[0]) === null || _a === void 0 ? void 0 : _a.get('seq')) || '';
55
44
  for (let i = hw; i < residues.length - hw; i += this.windowDelta) {
@@ -1 +1 @@
1
- {"version":3,"file":"GCContentAdapter.js","sourceRoot":"","sources":["../../src/GCContentAdapter/GCContentAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GCContentAdapter.js","sourceRoot":"","sources":["../../src/GCContentAdapter/GCContentAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,3 @@
1
1
  import PluginManager from '@jbrowse/core/PluginManager';
2
- declare const _default: (pluginManager: PluginManager) => {
3
- configSchema: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
4
- getAdapterClass: () => Promise<typeof import("./GCContentAdapter").default>;
5
- };
2
+ declare const _default: (pluginManager: PluginManager) => void;
6
3
  export default _default;
@@ -1,8 +1,16 @@
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
1
2
  import configSchemaF from './configSchema';
2
3
  export default (pluginManager) => {
3
- return {
4
- configSchema: pluginManager.load(configSchemaF),
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'GCContentAdapter',
6
+ adapterMetadata: {
7
+ category: null,
8
+ hiddenFromGUI: true,
9
+ displayName: null,
10
+ description: null,
11
+ },
12
+ configSchema: configSchemaF(pluginManager),
5
13
  getAdapterClass: () => import('./GCContentAdapter').then(r => r.default),
6
- };
14
+ }));
7
15
  };
8
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/GCContentAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,gBAAgB,CAAA;AAE1C,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,OAAO;QACL,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACzE,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/GCContentAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AAEzE,OAAO,aAAa,MAAM,gBAAgB,CAAA;AAE1C,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;QACd,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE;YACf,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;SAClB;QACD,YAAY,EAAE,aAAa,CAAC,aAAa,CAAC;QAC1C,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACpD,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,16 @@
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: 'IndexedFastaAdapter',
6
+ configSchema,
7
+ adapterMetadata: {
8
+ category: null,
9
+ hiddenFromGUI: true,
10
+ displayName: null,
11
+ description: null,
12
+ },
13
+ getAdapterClass: () => import('./IndexedFastaAdapter').then(r => r.default),
14
+ }));
15
+ };
2
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/IndexedFastaAdapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/IndexedFastaAdapter/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,qBAAqB;QAC3B,YAAY;QACZ,eAAe,EAAE;YACf,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;SAClB;QACD,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACvD,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import { configSchema as divSequenceRendererConfigSchema } from '../DivSequenceRenderer';
2
+ import { default as divSequenceRendererConfigSchema } from '../DivSequenceRenderer/configSchema';
3
3
  export const configSchema = ConfigurationSchema('LinearReferenceSequenceDisplay', { renderer: divSequenceRendererConfigSchema }, { explicitIdentifier: 'displayId', explicitlyTyped: true });
4
4
  //# sourceMappingURL=configSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/LinearReferenceSequenceDisplay/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,YAAY,IAAI,+BAA+B,EAAE,MAAM,wBAAwB,CAAA;AAExF,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAC7C,gCAAgC,EAChC,EAAE,QAAQ,EAAE,+BAA+B,EAAE,EAC7C,EAAE,kBAAkB,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,CAC3D,CAAA"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/LinearReferenceSequenceDisplay/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,+BAA+B,EAAE,MAAM,qCAAqC,CAAA;AAEhG,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAC7C,gCAAgC,EAChC,EAAE,QAAQ,EAAE,+BAA+B,EAAE,EAC7C,EAAE,kBAAkB,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,CAC3D,CAAA"}
@@ -1,2 +1,3 @@
1
- export { configSchema } from './configSchema';
2
- export { modelFactory } from './model';
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const _default: (pluginManager: PluginManager) => void;
3
+ export default _default;
@@ -1,3 +1,17 @@
1
- export { configSchema } from './configSchema';
2
- export { modelFactory } from './model';
1
+ import { BaseLinearDisplayComponent } from '@jbrowse/plugin-linear-genome-view';
2
+ import { configSchema } from './configSchema';
3
+ import { modelFactory } from './model';
4
+ export default (pluginManager) => {
5
+ pluginManager.addDisplayType(() => {
6
+ const stateModel = modelFactory(configSchema);
7
+ return {
8
+ name: 'LinearReferenceSequenceDisplay',
9
+ configSchema,
10
+ stateModel,
11
+ trackType: 'ReferenceSequenceTrack',
12
+ viewType: 'LinearGenomeView',
13
+ ReactComponent: BaseLinearDisplayComponent,
14
+ };
15
+ });
16
+ };
3
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/LinearReferenceSequenceDisplay/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/LinearReferenceSequenceDisplay/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAAC,GAAG,EAAE;QAChC,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,CAAA;QAC7C,OAAO;YACL,IAAI,EAAE,gCAAgC;YACtC,YAAY;YACZ,UAAU;YACV,SAAS,EAAE,wBAAwB;YACnC,QAAQ,EAAE,kBAAkB;YAC5B,cAAc,EAAE,0BAA0B;SAC3C,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -182,7 +182,7 @@ export declare function modelFactory(configSchema: AnyConfigurationSchemaType):
182
182
  }[];
183
183
  renderProps(): any;
184
184
  } & {
185
- renderSvg(opts: import("@jbrowse/plugin-linear-genome-view/src/LinearGenomeView").ExportSvgOptions & {
185
+ renderSvg(opts: import("@jbrowse/plugin-linear-genome-view/dist/LinearGenomeView").ExportSvgOptions & {
186
186
  overrideHeight: number;
187
187
  }): Promise<JSX.Element>;
188
188
  } & {
@@ -60,4 +60,4 @@ export function createReferenceSeqTrackConfig(pluginManager) {
60
60
  }),
61
61
  });
62
62
  }
63
- //# sourceMappingURL=referenceSeqTrackConfig.js.map
63
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/ReferenceSequenceTrack/configSchema.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAGjE;;;;EAIE;AACF,MAAM,UAAU,6BAA6B,CAAC,aAA4B;IACxE,OAAO,mBAAmB,CACxB,wBAAwB,EACxB;QACE,OAAO,EAAE,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC;QAC3D,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qBAAqB;YAClC,YAAY,EAAE,EAAE;SACjB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kCAAkC;YAC/C,YAAY,EAAE,EAAE;SACjB;KACF,EACD;QACE,kBAAkB,EAAE,CAAC,CAAC,EAAE;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YAC9B,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,IAAI,CAAA;YAC9B,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,EAAE;gBACpC,oEAAoE;gBACpE,oEAAoE;gBACpE,WAAW;gBACX,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC3D,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACvD,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;wBACvC,QAAQ,CAAC,IAAI,CAAC;4BACZ,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE;4BAChD,IAAI,EAAE,WAAW,CAAC,IAAI;yBACvB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;aACH;YACD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAA;QAC9B,CAAC;QACD,kBAAkB,EAAE,SAAS;QAC7B,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;YACvB,cAAc,CAAC,WAAgD;gBAC7D,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;gBAC5B,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAA;iBAChD;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS,CACvD,CAAA;gBACD,IAAI,OAAO,EAAE;oBACX,OAAO,OAAO,CAAA;iBACf;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YAClC,CAAC;SACF,CAAC;KACH,CACF,CAAA;AACH,CAAC"}
@@ -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,14 @@
1
+ import TrackType from '@jbrowse/core/pluggableElementTypes/TrackType';
2
+ import { createBaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
3
+ import { createReferenceSeqTrackConfig } from './configSchema';
4
+ export default (pluginManager) => {
5
+ pluginManager.addTrackType(() => {
6
+ const configSchema = createReferenceSeqTrackConfig(pluginManager);
7
+ return new TrackType({
8
+ name: 'ReferenceSequenceTrack',
9
+ configSchema,
10
+ stateModel: createBaseTrackModel(pluginManager, 'ReferenceSequenceTrack', configSchema),
11
+ });
12
+ });
13
+ };
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ReferenceSequenceTrack/index.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,+CAA+C,CAAA;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAA;AACjF,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAA;AAE9D,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE;QAC9B,MAAM,YAAY,GAAG,6BAA6B,CAAC,aAAa,CAAC,CAAA;QAEjE,OAAO,IAAI,SAAS,CAAC;YACnB,IAAI,EAAE,wBAAwB;YAC9B,YAAY;YACZ,UAAU,EAAE,oBAAoB,CAC9B,aAAa,EACb,wBAAwB,EACxB,YAAY,CACb;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { Feature, Region } from '@jbrowse/core/util';
3
+ export default class extends BaseFeatureDataAdapter {
4
+ configure(): Promise<BaseFeatureDataAdapter>;
5
+ getRefNames(): Promise<string[]>;
6
+ getFeatures(query: Region, opts: BaseOptions): import("rxjs").Observable<Feature>;
7
+ freeResources(): void;
8
+ }
@@ -0,0 +1,81 @@
1
+ import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { ObservableCreate } from '@jbrowse/core/util/rxjs';
3
+ import { SimpleFeature, revcom, doesIntersect2, } from '@jbrowse/core/util';
4
+ import { toArray } from 'rxjs/operators';
5
+ export default class extends BaseFeatureDataAdapter {
6
+ async configure() {
7
+ var _a;
8
+ const adapter = await ((_a = this.getSubAdapter) === null || _a === void 0 ? void 0 : _a.call(this, this.getConf('sequenceAdapter')));
9
+ if (!adapter) {
10
+ throw new Error('Error getting subadapter');
11
+ }
12
+ return adapter.dataAdapter;
13
+ }
14
+ async getRefNames() {
15
+ const adapter = await this.configure();
16
+ return adapter.getRefNames();
17
+ }
18
+ getFeatures(query, opts) {
19
+ return ObservableCreate(async (observer) => {
20
+ var _a;
21
+ const sequenceAdapter = await this.configure();
22
+ const hw = 1000;
23
+ let { start: queryStart, end: queryEnd } = query;
24
+ queryStart = Math.max(0, queryStart - hw);
25
+ queryEnd += hw;
26
+ if (queryEnd < 0 || queryStart > queryEnd) {
27
+ observer.complete();
28
+ return;
29
+ }
30
+ const ret = sequenceAdapter.getFeatures({
31
+ ...query,
32
+ start: queryStart,
33
+ end: queryEnd,
34
+ }, opts);
35
+ const feats = await ret.pipe(toArray()).toPromise();
36
+ const residues = ((_a = feats[0]) === null || _a === void 0 ? void 0 : _a.get('seq')) || '';
37
+ const search = this.getConf('search');
38
+ const searchFoward = this.getConf('searchForward');
39
+ const searchReverse = this.getConf('searchReverse');
40
+ const caseInsensitive = this.getConf('caseInsensitive');
41
+ const re = new RegExp(search, 'g' + (caseInsensitive ? 'i' : ''));
42
+ if (search) {
43
+ if (searchFoward) {
44
+ const matches = residues.matchAll(re);
45
+ for (const match of matches) {
46
+ const s = queryStart + (match.index || 0);
47
+ if (doesIntersect2(s, s + search.length, query.start, query.end)) {
48
+ observer.next(new SimpleFeature({
49
+ uniqueId: `${this.id}-match-${s}-p`,
50
+ refName: query.refName,
51
+ start: s,
52
+ end: s + match[0].length,
53
+ name: match[0],
54
+ strand: 1,
55
+ }));
56
+ }
57
+ }
58
+ }
59
+ if (searchReverse) {
60
+ const matches = revcom(residues).matchAll(re);
61
+ for (const match of matches) {
62
+ const s = queryEnd - (match.index || 0);
63
+ if (doesIntersect2(s, s + search.length, query.start, query.end)) {
64
+ observer.next(new SimpleFeature({
65
+ uniqueId: `${this.id}-match-${s}-n`,
66
+ refName: query.refName,
67
+ start: s - match[0].length,
68
+ name: match[0],
69
+ end: s,
70
+ strand: -1,
71
+ }));
72
+ }
73
+ }
74
+ }
75
+ }
76
+ observer.complete();
77
+ });
78
+ }
79
+ freeResources() { }
80
+ }
81
+ //# sourceMappingURL=SequenceSearchAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SequenceSearchAdapter.js","sourceRoot":"","sources":["../../src/SequenceSearchAdapter/SequenceSearchAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const configSchema: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
2
+ export default configSchema;
@@ -0,0 +1,26 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ const configSchema = ConfigurationSchema('SequenceSearchAdapter', {
3
+ search: {
4
+ type: 'string',
5
+ defaultValue: '',
6
+ description: 'Search string or regex to search for',
7
+ },
8
+ sequenceAdapter: {
9
+ type: 'frozen',
10
+ defaultValue: null,
11
+ },
12
+ searchForward: {
13
+ type: 'boolean',
14
+ defaultValue: true,
15
+ },
16
+ searchReverse: {
17
+ type: 'boolean',
18
+ defaultValue: true,
19
+ },
20
+ caseInsensitive: {
21
+ type: 'boolean',
22
+ defaultValue: true,
23
+ },
24
+ }, { explicitlyTyped: true });
25
+ export default configSchema;
26
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/SequenceSearchAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,MAAM,YAAY,GAAG,mBAAmB,CACtC,uBAAuB,EACvB;IACE,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,sCAAsC;KACpD;IACD,eAAe,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,IAAI;KACnB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,IAAI;KACnB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,IAAI;KACnB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA;AAED,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,16 @@
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
+ import configSchema from './configSchema';
3
+ export default (pluginManager) => {
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'SequenceSearchAdapter',
6
+ adapterMetadata: {
7
+ category: null,
8
+ hiddenFromGUI: true,
9
+ displayName: null,
10
+ description: null,
11
+ },
12
+ configSchema,
13
+ getAdapterClass: () => import('./SequenceSearchAdapter').then(r => r.default),
14
+ }));
15
+ };
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SequenceSearchAdapter/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,uBAAuB;QAC7B,eAAe,EAAE;YACf,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;SAClB;QACD,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACzD,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,16 @@
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: 'TwoBitAdapter',
6
+ configSchema,
7
+ adapterMetadata: {
8
+ category: null,
9
+ hiddenFromGUI: true,
10
+ displayName: null,
11
+ description: null,
12
+ },
13
+ getAdapterClass: () => import('./TwoBitAdapter').then(r => r.default),
14
+ }));
15
+ };
2
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/TwoBitAdapter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/TwoBitAdapter/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;YACf,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;SAClB;QACD,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"}
@@ -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,84 @@
1
+ import { makeIndex, getFileName, } from '@jbrowse/core/util/tracks';
2
+ export default (pluginManager) => {
3
+ pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
4
+ return (file, index, adapterHint) => {
5
+ const regexGuess = /\.2bit$/i;
6
+ const adapterName = 'TwoBitAdapter';
7
+ const fileName = getFileName(file);
8
+ const obj = {
9
+ type: adapterName,
10
+ twoBitLocation: file,
11
+ };
12
+ if (regexGuess.test(fileName) && !adapterHint) {
13
+ return obj;
14
+ }
15
+ else if (adapterHint === adapterName) {
16
+ return obj;
17
+ }
18
+ return adapterGuesser(file, index, adapterHint);
19
+ };
20
+ });
21
+ pluginManager.addToExtensionPoint('Core-guessTrackTypeForLocation', (trackTypeGuesser) => {
22
+ return (adapterName) => {
23
+ if (adapterName === 'TwoBitAdapter') {
24
+ return 'ReferenceSequenceTrack';
25
+ }
26
+ return trackTypeGuesser(adapterName);
27
+ };
28
+ });
29
+ pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
30
+ return (file, index, adapterHint) => {
31
+ const regexGuess = /\.(fa|fasta|fas|fna|mfa)$/i;
32
+ const adapterName = 'IndexedFastaAdapter';
33
+ const fileName = getFileName(file);
34
+ const obj = {
35
+ type: adapterName,
36
+ fastaLocation: file,
37
+ faiLocation: index || makeIndex(file, '.fai'),
38
+ };
39
+ if (regexGuess.test(fileName) && !adapterHint) {
40
+ return obj;
41
+ }
42
+ else if (adapterHint === adapterName) {
43
+ return obj;
44
+ }
45
+ return adapterGuesser(file, index, adapterHint);
46
+ };
47
+ });
48
+ pluginManager.addToExtensionPoint('Core-guessTrackTypeForLocation', (trackTypeGuesser) => {
49
+ return (adapterName) => {
50
+ if (adapterName === 'IndexedFastaAdapter') {
51
+ return 'ReferenceSequenceTrack';
52
+ }
53
+ return trackTypeGuesser(adapterName);
54
+ };
55
+ });
56
+ pluginManager.addToExtensionPoint('Core-guessAdapterForLocation', (adapterGuesser) => {
57
+ return (file, index, adapterHint) => {
58
+ const regexGuess = /\.(fa|fasta|fas|fna|mfa)\.b?gz$/i;
59
+ const adapterName = 'BgzipFastaAdapter';
60
+ const fileName = getFileName(file);
61
+ const obj = {
62
+ type: adapterName,
63
+ faiLocation: makeIndex(file, '.fai'),
64
+ gziLocation: makeIndex(file, '.gzi'),
65
+ };
66
+ if (regexGuess.test(fileName) && !adapterHint) {
67
+ return obj;
68
+ }
69
+ else if (adapterHint === adapterName) {
70
+ return obj;
71
+ }
72
+ return adapterGuesser(file, index, adapterHint);
73
+ };
74
+ });
75
+ pluginManager.addToExtensionPoint('Core-guessTrackTypeForLocation', (trackTypeGuesser) => {
76
+ return (adapterName) => {
77
+ if (adapterName === 'BgzipFastaAdapter') {
78
+ return 'ReferenceSequenceTrack';
79
+ }
80
+ return trackTypeGuesser(adapterName);
81
+ };
82
+ });
83
+ };
84
+ //# sourceMappingURL=createExtensionPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createExtensionPoints.js","sourceRoot":"","sources":["../src/createExtensionPoints.ts"],"names":[],"mappings":"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"}