@jbrowse/plugin-alignments 2.1.7 → 2.2.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.
Files changed (138) hide show
  1. package/dist/AlignmentsTrack/index.d.ts +1 -1
  2. package/dist/AlignmentsTrack/index.js +16 -6
  3. package/dist/AlignmentsTrack/index.js.map +1 -1
  4. package/dist/BamAdapter/BamAdapter.d.ts +6 -2
  5. package/dist/BamAdapter/BamAdapter.js +35 -31
  6. package/dist/BamAdapter/BamAdapter.js.map +1 -1
  7. package/dist/BamAdapter/configSchema.d.ts +2 -2
  8. package/dist/BamAdapter/configSchema.js +27 -2
  9. package/dist/BamAdapter/configSchema.js.map +1 -1
  10. package/dist/CramAdapter/CramAdapter.d.ts +13 -7
  11. package/dist/CramAdapter/CramAdapter.js +56 -61
  12. package/dist/CramAdapter/CramAdapter.js.map +1 -1
  13. package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +14 -13
  14. package/dist/CramAdapter/CramSlightlyLazyFeature.js +28 -22
  15. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  16. package/dist/CramAdapter/configSchema.d.ts +2 -3
  17. package/dist/CramAdapter/configSchema.js +44 -22
  18. package/dist/CramAdapter/configSchema.js.map +1 -1
  19. package/dist/CramAdapter/index.js +1 -1
  20. package/dist/CramAdapter/index.js.map +1 -1
  21. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +5 -2
  22. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js +15 -20
  23. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -1
  24. package/dist/HtsgetBamAdapter/configSchema.d.ts +2 -2
  25. package/dist/HtsgetBamAdapter/configSchema.js +20 -3
  26. package/dist/HtsgetBamAdapter/configSchema.js.map +1 -1
  27. package/dist/LinearAlignmentsDisplay/models/configSchema.d.ts +1 -1
  28. package/dist/LinearAlignmentsDisplay/models/configSchema.js +23 -6
  29. package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +1 -1
  30. package/dist/LinearAlignmentsDisplay/models/model.d.ts +72 -5
  31. package/dist/LinearAlignmentsDisplay/models/model.js +95 -2
  32. package/dist/LinearAlignmentsDisplay/models/model.js.map +1 -1
  33. package/dist/LinearPileupDisplay/configSchema.js +20 -3
  34. package/dist/LinearPileupDisplay/configSchema.js.map +1 -1
  35. package/dist/LinearPileupDisplay/model.d.ts +87 -3
  36. package/dist/LinearPileupDisplay/model.js +616 -503
  37. package/dist/LinearPileupDisplay/model.js.map +1 -1
  38. package/dist/LinearSNPCoverageDisplay/models/configSchema.js +33 -4
  39. package/dist/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -1
  40. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +86 -3
  41. package/dist/LinearSNPCoverageDisplay/models/model.js +240 -159
  42. package/dist/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  43. package/dist/PileupRenderer/PileupRenderer.d.ts +1 -1
  44. package/dist/PileupRenderer/PileupRenderer.js +5 -6
  45. package/dist/PileupRenderer/PileupRenderer.js.map +1 -1
  46. package/dist/PileupRenderer/configSchema.d.ts +2 -2
  47. package/dist/PileupRenderer/configSchema.js +37 -2
  48. package/dist/PileupRenderer/configSchema.js.map +1 -1
  49. package/dist/SNPCoverageAdapter/configSchema.d.ts +2 -2
  50. package/dist/SNPCoverageAdapter/configSchema.js +11 -3
  51. package/dist/SNPCoverageAdapter/configSchema.js.map +1 -1
  52. package/dist/SNPCoverageRenderer/configSchema.d.ts +2 -2
  53. package/dist/SNPCoverageRenderer/configSchema.js +21 -1
  54. package/dist/SNPCoverageRenderer/configSchema.js.map +1 -1
  55. package/dist/SNPCoverageRenderer/index.d.ts +0 -1
  56. package/dist/SNPCoverageRenderer/index.js +1 -4
  57. package/dist/SNPCoverageRenderer/index.js.map +1 -1
  58. package/esm/AlignmentsTrack/index.d.ts +1 -1
  59. package/esm/AlignmentsTrack/index.js +16 -6
  60. package/esm/AlignmentsTrack/index.js.map +1 -1
  61. package/esm/BamAdapter/BamAdapter.d.ts +6 -2
  62. package/esm/BamAdapter/BamAdapter.js +35 -31
  63. package/esm/BamAdapter/BamAdapter.js.map +1 -1
  64. package/esm/BamAdapter/configSchema.d.ts +2 -2
  65. package/esm/BamAdapter/configSchema.js +27 -2
  66. package/esm/BamAdapter/configSchema.js.map +1 -1
  67. package/esm/CramAdapter/CramAdapter.d.ts +13 -7
  68. package/esm/CramAdapter/CramAdapter.js +56 -61
  69. package/esm/CramAdapter/CramAdapter.js.map +1 -1
  70. package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +14 -13
  71. package/esm/CramAdapter/CramSlightlyLazyFeature.js +28 -22
  72. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  73. package/esm/CramAdapter/configSchema.d.ts +2 -3
  74. package/esm/CramAdapter/configSchema.js +44 -22
  75. package/esm/CramAdapter/configSchema.js.map +1 -1
  76. package/esm/CramAdapter/index.js +2 -2
  77. package/esm/CramAdapter/index.js.map +1 -1
  78. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +5 -2
  79. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js +15 -20
  80. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -1
  81. package/esm/HtsgetBamAdapter/configSchema.d.ts +2 -2
  82. package/esm/HtsgetBamAdapter/configSchema.js +20 -3
  83. package/esm/HtsgetBamAdapter/configSchema.js.map +1 -1
  84. package/esm/LinearAlignmentsDisplay/models/configSchema.d.ts +1 -1
  85. package/esm/LinearAlignmentsDisplay/models/configSchema.js +23 -6
  86. package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +1 -1
  87. package/esm/LinearAlignmentsDisplay/models/model.d.ts +72 -5
  88. package/esm/LinearAlignmentsDisplay/models/model.js +95 -2
  89. package/esm/LinearAlignmentsDisplay/models/model.js.map +1 -1
  90. package/esm/LinearPileupDisplay/configSchema.js +20 -3
  91. package/esm/LinearPileupDisplay/configSchema.js.map +1 -1
  92. package/esm/LinearPileupDisplay/model.d.ts +87 -3
  93. package/esm/LinearPileupDisplay/model.js +616 -503
  94. package/esm/LinearPileupDisplay/model.js.map +1 -1
  95. package/esm/LinearSNPCoverageDisplay/models/configSchema.js +33 -4
  96. package/esm/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -1
  97. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +86 -3
  98. package/esm/LinearSNPCoverageDisplay/models/model.js +240 -159
  99. package/esm/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  100. package/esm/PileupRenderer/PileupRenderer.d.ts +1 -1
  101. package/esm/PileupRenderer/PileupRenderer.js +5 -6
  102. package/esm/PileupRenderer/PileupRenderer.js.map +1 -1
  103. package/esm/PileupRenderer/configSchema.d.ts +2 -2
  104. package/esm/PileupRenderer/configSchema.js +37 -2
  105. package/esm/PileupRenderer/configSchema.js.map +1 -1
  106. package/esm/SNPCoverageAdapter/configSchema.d.ts +2 -2
  107. package/esm/SNPCoverageAdapter/configSchema.js +11 -3
  108. package/esm/SNPCoverageAdapter/configSchema.js.map +1 -1
  109. package/esm/SNPCoverageRenderer/configSchema.d.ts +2 -2
  110. package/esm/SNPCoverageRenderer/configSchema.js +21 -1
  111. package/esm/SNPCoverageRenderer/configSchema.js.map +1 -1
  112. package/esm/SNPCoverageRenderer/index.d.ts +0 -1
  113. package/esm/SNPCoverageRenderer/index.js +1 -3
  114. package/esm/SNPCoverageRenderer/index.js.map +1 -1
  115. package/package.json +3 -3
  116. package/src/AlignmentsFeatureDetail/__snapshots__/index.test.js.snap +54 -54
  117. package/src/AlignmentsTrack/index.ts +18 -12
  118. package/src/BamAdapter/BamAdapter.ts +39 -39
  119. package/src/BamAdapter/configSchema.ts +57 -29
  120. package/src/CramAdapter/CramAdapter.test.ts +1 -2
  121. package/src/CramAdapter/CramAdapter.ts +83 -84
  122. package/src/CramAdapter/CramSlightlyLazyFeature.ts +34 -25
  123. package/src/CramAdapter/configSchema.ts +55 -30
  124. package/src/CramAdapter/index.ts +2 -2
  125. package/src/HtsgetBamAdapter/HtsgetBamAdapter.ts +14 -21
  126. package/src/HtsgetBamAdapter/configSchema.ts +36 -19
  127. package/src/LinearAlignmentsDisplay/models/configSchema.ts +23 -10
  128. package/src/LinearAlignmentsDisplay/models/model.tsx +99 -4
  129. package/src/LinearPileupDisplay/configSchema.ts +23 -5
  130. package/src/LinearPileupDisplay/model.ts +120 -4
  131. package/src/LinearSNPCoverageDisplay/models/configSchema.ts +36 -9
  132. package/src/LinearSNPCoverageDisplay/models/model.ts +83 -4
  133. package/src/PileupRenderer/PileupRenderer.tsx +5 -9
  134. package/src/PileupRenderer/configSchema.ts +39 -2
  135. package/src/SNPCoverageAdapter/configSchema.ts +18 -10
  136. package/src/SNPCoverageRenderer/configSchema.ts +23 -1
  137. package/src/SNPCoverageRenderer/index.ts +1 -8
  138. package/src/declare.d.ts +0 -1
@@ -1,16 +1,30 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
2
  import { types } from 'mobx-state-tree';
3
- export default types.late(() => ConfigurationSchema('BamAdapter', {
3
+ /**
4
+ * #config BamAdapter
5
+ * used to configure BAM adapter
6
+ */
7
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
8
+ const configSchema = ConfigurationSchema('BamAdapter', {
9
+ /**
10
+ * #slot
11
+ */
4
12
  bamLocation: {
5
13
  type: 'fileLocation',
6
14
  defaultValue: { uri: '/path/to/my.bam', locationType: 'UriLocation' },
7
15
  },
8
16
  index: ConfigurationSchema('BamIndex', {
17
+ /**
18
+ * #slot index.indexType
19
+ */
9
20
  indexType: {
10
21
  model: types.enumeration('IndexType', ['BAI', 'CSI']),
11
22
  type: 'stringEnum',
12
23
  defaultValue: 'BAI',
13
24
  },
25
+ /**
26
+ * #slot index.location
27
+ */
14
28
  location: {
15
29
  type: 'fileLocation',
16
30
  defaultValue: {
@@ -19,13 +33,24 @@ export default types.late(() => ConfigurationSchema('BamAdapter', {
19
33
  },
20
34
  },
21
35
  }),
36
+ /**
37
+ * #slot
38
+ */
22
39
  fetchSizeLimit: {
23
40
  type: 'number',
41
+ description: 'used to determine when to display a warning to the user that too much data will be fetched',
24
42
  defaultValue: 5000000,
25
43
  },
44
+ /**
45
+ * #slot
46
+ * generally refers to the reference genome assembly's sequence adapter
47
+ * currently needs to be manually added
48
+ */
26
49
  sequenceAdapter: {
27
50
  type: 'frozen',
51
+ description: 'sequence data adapter, used to calculate SNPs when BAM reads lacking MD tags',
28
52
  defaultValue: null,
29
53
  },
30
- }, { explicitlyTyped: true }));
54
+ }, { explicitlyTyped: true });
55
+ export default configSchema;
31
56
  //# sourceMappingURL=configSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/BamAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,eAAe,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAC7B,mBAAmB,CACjB,YAAY,EACZ;IACE,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE;KACtE;IACD,KAAK,EAAE,mBAAmB,CAAC,UAAU,EAAE;QACrC,SAAS,EAAE;YACT,KAAK,EAAE,KAAK,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,qBAAqB;gBAC1B,YAAY,EAAE,aAAa;aAC5B;SACF;KACF,CAAC;IACF,cAAc,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,OAAS;KACxB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CACF,CAAA"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/BamAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC;;;GAGG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,YAAY,GAAG,mBAAmB,CACtC,YAAY,EACZ;IACE;;OAEG;IACH,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE;KACtE;IAED,KAAK,EAAE,mBAAmB,CAAC,UAAU,EAAE;QACrC;;WAEG;QACH,SAAS,EAAE;YACT,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACrD,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,KAAK;SACpB;QACD;;WAEG;QACH,QAAQ,EAAE;YACR,IAAI,EAAE,cAAc;YACpB,YAAY,EAAE;gBACZ,GAAG,EAAE,qBAAqB;gBAC1B,YAAY,EAAE,aAAa;aAC5B;SACF;KACF,CAAC;IACF;;OAEG;IACH,cAAc,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,4FAA4F;QAC9F,YAAY,EAAE,OAAS;KACxB;IACD;;;;OAIG;IACH,eAAe,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,8EAA8E;QAChF,YAAY,EAAE,IAAI;KACnB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA;AAED,eAAe,YAAY,CAAA"}
@@ -1,10 +1,11 @@
1
- import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
1
+ import { IndexedCramFile, CramRecord } from '@gmod/cram';
2
+ import { BaseFeatureDataAdapter, BaseOptions, BaseSequenceAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
2
3
  import { Region, Feature } from '@jbrowse/core/util';
3
4
  import CramSlightlyLazyFeature from './CramSlightlyLazyFeature';
4
5
  interface Header {
5
6
  idToName?: string[];
6
7
  nameToId?: Record<string, number>;
7
- readGroups?: number[];
8
+ readGroups?: (string | undefined)[];
8
9
  }
9
10
  interface FilterBy {
10
11
  flagInclude: number;
@@ -18,13 +19,18 @@ interface FilterBy {
18
19
  export default class CramAdapter extends BaseFeatureDataAdapter {
19
20
  samHeader: Header;
20
21
  private setupP?;
22
+ private configureP?;
21
23
  private seqIdToRefName;
22
24
  private seqIdToOriginalRefName;
25
+ configurePre(): Promise<{
26
+ cram: IndexedCramFile;
27
+ sequenceAdapter: BaseSequenceAdapter;
28
+ }>;
23
29
  configure(): Promise<{
24
- cram: any;
25
- sequenceAdapter: BaseFeatureDataAdapter | import("@jbrowse/core/data_adapters/BaseAdapter").BaseSequenceAdapter;
30
+ cram: IndexedCramFile;
31
+ sequenceAdapter: BaseSequenceAdapter;
26
32
  }>;
27
- getHeader(opts?: BaseOptions): Promise<any>;
33
+ getHeader(opts?: BaseOptions): Promise<string | undefined>;
28
34
  private seqFetch;
29
35
  private setupPre;
30
36
  private setup;
@@ -38,9 +44,9 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
38
44
  filterBy: FilterBy;
39
45
  }): import("rxjs").Observable<Feature>;
40
46
  freeResources(): void;
41
- cramRecordToFeature(record: unknown): CramSlightlyLazyFeature;
47
+ cramRecordToFeature(record: CramRecord): CramSlightlyLazyFeature;
42
48
  estimateRegionsStats(regions: Region[], opts?: BaseOptions): Promise<{
43
- bytes: any;
49
+ bytes: number;
44
50
  fetchSizeLimit: any;
45
51
  }>;
46
52
  /**
@@ -12,7 +12,7 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
12
12
  // maps a seqId to original refname, passed specially to render args, to a seqid
13
13
  this.seqIdToOriginalRefName = [];
14
14
  }
15
- async configure() {
15
+ async configurePre() {
16
16
  const cramLocation = this.getConf('cramLocation');
17
17
  const craiLocation = this.getConf('craiLocation');
18
18
  if (!cramLocation) {
@@ -21,38 +21,43 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
21
21
  if (!craiLocation) {
22
22
  throw new Error('missing craiLocation argument');
23
23
  }
24
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
24
+ const pm = this.pluginManager;
25
25
  const cram = new IndexedCramFile({
26
- cramFilehandle: openLocation(cramLocation, this.pluginManager),
27
- index: new CraiIndex({
28
- filehandle: openLocation(craiLocation, this.pluginManager),
29
- }),
30
- seqFetch: this.seqFetch.bind(this),
26
+ cramFilehandle: openLocation(cramLocation, pm),
27
+ index: new CraiIndex({ filehandle: openLocation(craiLocation, pm) }),
28
+ seqFetch: (...args) => this.seqFetch(...args),
31
29
  checkSequenceMD5: false,
32
30
  fetchSizeLimit: 200000000, // just make this a large size to avoid hitting it
33
31
  });
34
- // instantiate the sequence adapter
35
- const sequenceAdapterType = this.getConf(['sequenceAdapter', 'type']);
36
32
  if (!this.getSubAdapter) {
37
33
  throw new Error('Error getting subadapter');
38
34
  }
39
35
  const seqConf = this.getConf('sequenceAdapter');
40
- const { dataAdapter: sequenceAdapter } = await this.getSubAdapter(seqConf);
41
- if (!(sequenceAdapter instanceof BaseFeatureDataAdapter)) {
42
- throw new Error(`CRAM feature adapters cannot use sequence adapters of type '${sequenceAdapterType}'`);
36
+ const subadapter = await this.getSubAdapter(seqConf);
37
+ return {
38
+ cram,
39
+ sequenceAdapter: subadapter.dataAdapter,
40
+ };
41
+ }
42
+ async configure() {
43
+ if (!this.configureP) {
44
+ this.configureP = this.configurePre().catch(e => {
45
+ this.configureP = undefined;
46
+ throw e;
47
+ });
43
48
  }
44
- return { cram, sequenceAdapter };
49
+ return this.configureP;
45
50
  }
46
51
  async getHeader(opts) {
47
52
  const { cram } = await this.configure();
48
- return cram.cram.getHeaderText(opts);
53
+ return cram.cram.getHeaderText();
49
54
  }
50
55
  async seqFetch(seqId, start, end) {
51
56
  start -= 1; // convert from 1-based closed to interbase
52
57
  const { sequenceAdapter } = await this.configure();
53
58
  const refName = this.refIdToOriginalName(seqId) || this.refIdToName(seqId);
54
59
  if (!refName) {
55
- return undefined;
60
+ throw new Error('unknown');
56
61
  }
57
62
  const seqChunks = await sequenceAdapter
58
63
  .getFeatures({
@@ -82,10 +87,10 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
82
87
  }
83
88
  async setupPre(opts) {
84
89
  const { statusCallback = () => { } } = opts || {};
85
- const configured = await this.configure();
90
+ const conf = await this.configure();
86
91
  statusCallback('Downloading index');
87
- const { cram } = configured;
88
- const samHeader = await cram.cram.getSamHeader(opts === null || opts === void 0 ? void 0 : opts.signal);
92
+ const { cram } = conf;
93
+ const samHeader = await cram.cram.getSamHeader();
89
94
  // use the @SQ lines in the header to figure out the
90
95
  // mapping between ref ID numbers and names
91
96
  const idToName = [];
@@ -108,7 +113,7 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
108
113
  const data = { idToName, nameToId, readGroups };
109
114
  statusCallback('');
110
115
  this.samHeader = data;
111
- return { samHeader: data, ...configured };
116
+ return { samHeader: data, ...conf };
112
117
  }
113
118
  async setup(opts) {
114
119
  if (!this.setupP) {
@@ -140,13 +145,8 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
140
145
  // use info from the SAM header if possible, but fall back to using
141
146
  // the ref seq order from when the browser's refseqs were loaded
142
147
  refIdToName(refId) {
143
- if (this.samHeader.idToName) {
144
- return this.samHeader.idToName[refId];
145
- }
146
- if (this.seqIdToRefName) {
147
- return this.seqIdToRefName[refId];
148
- }
149
- return undefined;
148
+ var _a, _b;
149
+ return ((_a = this.samHeader.idToName) === null || _a === void 0 ? void 0 : _a[refId]) || ((_b = this.seqIdToRefName) === null || _b === void 0 ? void 0 : _b[refId]);
150
150
  }
151
151
  refIdToOriginalName(refId) {
152
152
  return this.seqIdToOriginalRefName[refId];
@@ -155,44 +155,37 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
155
155
  const { signal, filterBy, statusCallback = () => { } } = opts || {};
156
156
  const { refName, start, end, originalRefName } = region;
157
157
  return ObservableCreate(async (observer) => {
158
- const { cram, sequenceAdapter } = await this.setup(opts);
159
- statusCallback('Downloading alignments');
160
- if (!this.seqIdToRefName) {
161
- this.seqIdToRefName = await sequenceAdapter.getRefNames(opts);
162
- }
158
+ const { cram } = await this.setup(opts);
163
159
  const refId = this.refNameToId(refName);
164
- if (refId !== undefined) {
165
- if (originalRefName) {
166
- this.seqIdToOriginalRefName[refId] = originalRefName;
167
- }
168
- const records = await cram.getRecordsForRange(refId, start, end, opts);
169
- checkAbortSignal(signal);
170
- const { flagInclude = 0, flagExclude = 0, tagFilter, readName, } = filterBy || {};
171
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
172
- let filtered = records.filter((record) => {
173
- const flags = record.flags;
174
- return (flags & flagInclude) === flagInclude && !(flags & flagExclude);
175
- });
176
- if (tagFilter) {
177
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
178
- filtered = filtered.filter((record) => {
179
- const val = record[tagFilter.tag];
180
- return val === '*' ? val !== undefined : val === tagFilter.value;
181
- });
182
- }
183
- if (readName) {
184
- filtered = filtered.filter(
185
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
186
- (record) => record.readName === readName);
187
- }
188
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
189
- filtered.forEach((record) => {
190
- observer.next(this.cramRecordToFeature(record));
160
+ if (refId === undefined) {
161
+ console.warn('Unknown refName', refName);
162
+ observer.complete();
163
+ return;
164
+ }
165
+ if (originalRefName) {
166
+ this.seqIdToOriginalRefName[refId] = originalRefName;
167
+ }
168
+ statusCallback('Downloading alignments');
169
+ const records = await cram.getRecordsForRange(refId, start, end);
170
+ checkAbortSignal(signal);
171
+ const { flagInclude = 0, flagExclude = 0, tagFilter, readName, } = filterBy || {};
172
+ let filtered = records.filter(record => {
173
+ const flags = record.flags;
174
+ return (flags & flagInclude) === flagInclude && !(flags & flagExclude);
175
+ });
176
+ if (tagFilter) {
177
+ filtered = filtered.filter(record => {
178
+ // @ts-ignore
179
+ const val = record[tagFilter.tag];
180
+ return val === '*' ? val !== undefined : val === tagFilter.value;
191
181
  });
192
182
  }
193
- else {
194
- console.warn('Unknown refName', refName);
183
+ if (readName) {
184
+ filtered = filtered.filter(record => record.readName === readName);
195
185
  }
186
+ filtered.forEach(record => {
187
+ observer.next(this.cramRecordToFeature(record));
188
+ });
196
189
  statusCallback('');
197
190
  observer.complete();
198
191
  }, signal);
@@ -220,7 +213,9 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
220
213
  const blockResults = await Promise.all(regions.map(region => {
221
214
  const { refName, start, end } = region;
222
215
  const chrId = this.refNameToId(refName);
223
- return cram.index.getEntriesForRange(chrId, start, end);
216
+ return chrId !== undefined
217
+ ? cram.index.getEntriesForRange(chrId, start, end)
218
+ : [{ sliceBytes: 0 }];
224
219
  }));
225
220
  return blockResults.flat().reduce((a, b) => a + b.sliceBytes, 0);
226
221
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CramAdapter.js","sourceRoot":"","sources":["../../src/CramAdapter/CramAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CramAdapter.js","sourceRoot":"","sources":["../../src/CramAdapter/CramAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Feature, SimpleFeatureSerialized } from '@jbrowse/core/util/simpleFeature';
2
+ import { CramRecord } from '@gmod/cram';
2
3
  import CramAdapter from './CramAdapter';
3
4
  export interface Mismatch {
4
5
  qual?: number;
@@ -13,28 +14,28 @@ export interface Mismatch {
13
14
  export default class CramSlightlyLazyFeature implements Feature {
14
15
  private record;
15
16
  private _store;
16
- constructor(record: any, _store: CramAdapter);
17
- _get_name(): any;
17
+ constructor(record: CramRecord, _store: CramAdapter);
18
+ _get_name(): string | undefined;
18
19
  _get_start(): number;
19
20
  _get_end(): number;
20
- _get_cram_read_features(): any;
21
+ _get_cram_read_features(): import("@gmod/cram/dist/cramFile/record").ReadFeature[] | undefined;
21
22
  _get_type(): string;
22
- _get_score(): any;
23
- _get_flags(): any;
23
+ _get_score(): number | undefined;
24
+ _get_flags(): number;
24
25
  _get_strand(): 1 | -1;
25
- _read_group_id(): number | undefined;
26
- _get_qual(): any;
27
- qualRaw(): any;
26
+ _read_group_id(): string | undefined;
27
+ _get_qual(): string;
28
+ qualRaw(): number[] | null | undefined;
28
29
  _get_seq_id(): string | undefined;
29
30
  _get_refName(): string | undefined;
30
31
  _get_is_paired(): boolean;
31
- _get_pair_orientation(): any;
32
- _get_template_length(): any;
32
+ _get_pair_orientation(): string | null | undefined;
33
+ _get_template_length(): number | undefined;
33
34
  _get_next_seq_id(): string | undefined;
34
- _get_next_pos(): any;
35
+ _get_next_pos(): number | undefined;
35
36
  _get_next_segment_position(): string | undefined;
36
- _get_tags(): any;
37
- _get_seq(): any;
37
+ _get_tags(): Record<string, string>;
38
+ _get_seq(): string | null | undefined;
38
39
  _get_CIGAR(): string;
39
40
  tags(): string[];
40
41
  id(): string;
@@ -1,7 +1,6 @@
1
1
  export default class CramSlightlyLazyFeature {
2
2
  // uses parameter properties to automatically create fields on the class
3
3
  // https://www.typescriptlang.org/docs/handbook/classes.html#parameter-properties
4
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
4
  constructor(record, _store) {
6
5
  this.record = record;
7
6
  this._store = _store;
@@ -13,7 +12,8 @@ export default class CramSlightlyLazyFeature {
13
12
  return this.record.alignmentStart - 1;
14
13
  }
15
14
  _get_end() {
16
- return this.record.alignmentStart + this.record.lengthOnRef - 1;
15
+ var _a;
16
+ return this.record.alignmentStart + ((_a = this.record.lengthOnRef) !== null && _a !== void 0 ? _a : 1) - 1;
17
17
  }
18
18
  _get_cram_read_features() {
19
19
  return this.record.readFeatures;
@@ -83,12 +83,16 @@ export default class CramSlightlyLazyFeature {
83
83
  let cigar = '';
84
84
  let op = 'M';
85
85
  let oplen = 0;
86
+ if (!this.record._refRegion) {
87
+ return '';
88
+ }
86
89
  // not sure I should access these, but...
87
90
  const ref = this.record._refRegion.seq;
88
91
  const refStart = this.record._refRegion.start;
89
92
  let last_pos = this.record.alignmentStart;
90
93
  let sublen = 0;
91
94
  if (typeof this.record.readFeatures !== 'undefined') {
95
+ let insLen = 0;
92
96
  // @ts-ignore
93
97
  for (let i = 0; i < this.record.readFeatures.length; i++) {
94
98
  const { code, refPos, sub, data } = this.record.readFeatures[i];
@@ -103,6 +107,10 @@ export default class CramSlightlyLazyFeature {
103
107
  op = 'M';
104
108
  oplen += sublen;
105
109
  }
110
+ if (insLen > 0 && code !== 'i') {
111
+ cigar += `${insLen}I`;
112
+ insLen = 0;
113
+ }
106
114
  if (code === 'b') {
107
115
  // An array of bases stored verbatim
108
116
  const ret = data.split(',');
@@ -143,11 +151,11 @@ export default class CramSlightlyLazyFeature {
143
151
  }
144
152
  else if (code === 'i') {
145
153
  // Single base insertion
146
- seq += data;
154
+ // seq += data
147
155
  if (oplen) {
148
156
  cigar += oplen + op;
149
157
  }
150
- cigar += `${1}I`;
158
+ insLen++;
151
159
  oplen = 0;
152
160
  }
153
161
  else if (code === 'P') {
@@ -229,18 +237,10 @@ export default class CramSlightlyLazyFeature {
229
237
  return 0;
230
238
  }
231
239
  toJSON() {
232
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
233
- const tags = {};
234
- this.tags().forEach((t) => {
235
- const val = this.get(t);
236
- if (val !== undefined) {
237
- tags[t] = val;
238
- }
239
- });
240
240
  return {
241
- ...tags,
242
- name: this.get('name'),
243
- type: this.get('type'),
241
+ ...Object.fromEntries(this.tags()
242
+ .map(t => [t, this.get(t)])
243
+ .filter(elt => elt[1] !== undefined)),
244
244
  uniqueId: this.id(),
245
245
  };
246
246
  }
@@ -253,10 +253,21 @@ export default class CramSlightlyLazyFeature {
253
253
  const start = this.get('start');
254
254
  const mismatches = new Array(readFeatures.length);
255
255
  let j = 0;
256
+ let insLen = 0;
257
+ let refPos = 0;
256
258
  for (let i = 0; i < readFeatures.length; i++) {
257
259
  const f = readFeatures[i];
258
260
  const { code, pos, data, sub, ref } = f;
259
- const refPos = f.refPos - 1 - start;
261
+ if (insLen > 0 && code !== 'i') {
262
+ mismatches[j++] = {
263
+ start: refPos,
264
+ type: 'insertion',
265
+ base: `${insLen}`,
266
+ length: 0,
267
+ };
268
+ insLen = 0;
269
+ }
270
+ refPos = f.refPos - 1 - start;
260
271
  if (code === 'X') {
261
272
  // substitution
262
273
  mismatches[j++] = {
@@ -332,12 +343,7 @@ export default class CramSlightlyLazyFeature {
332
343
  else if (code === 'i') {
333
344
  // single-base insertion
334
345
  // insertion
335
- mismatches[j++] = {
336
- start: refPos,
337
- type: 'insertion',
338
- base: data,
339
- length: 1,
340
- };
346
+ insLen++;
341
347
  }
342
348
  else if (code === 'Q') {
343
349
  // single quality value
@@ -1 +1 @@
1
- {"version":3,"file":"CramSlightlyLazyFeature.js","sourceRoot":"","sources":["../../src/CramAdapter/CramSlightlyLazyFeature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CramSlightlyLazyFeature.js","sourceRoot":"","sources":["../../src/CramAdapter/CramSlightlyLazyFeature.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
- declare const _default: (pluginManager: PluginManager) => import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
3
- export default _default;
1
+ declare const configSchema: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
2
+ export default configSchema;
@@ -1,26 +1,48 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import { types } from 'mobx-state-tree';
3
- export default (pluginManager) => {
4
- return types.late(() => ConfigurationSchema('CramAdapter', {
5
- fetchSizeLimit: {
6
- type: 'number',
7
- defaultValue: 3000000,
2
+ /**
3
+ * #config CramAdapter
4
+ * used to configure CRAM adapter
5
+ */
6
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
7
+ const configSchema = ConfigurationSchema('CramAdapter', {
8
+ /**
9
+ * #slot fetchSizeLimit
10
+ */
11
+ fetchSizeLimit: {
12
+ type: 'number',
13
+ description: 'used to determine when to display a warning to the user that too much data will be fetched',
14
+ defaultValue: 3000000,
15
+ },
16
+ /**
17
+ * #slot cramLocation
18
+ */
19
+ cramLocation: {
20
+ type: 'fileLocation',
21
+ defaultValue: {
22
+ uri: '/path/to/my.cram',
23
+ locationType: 'UriLocation',
8
24
  },
9
- cramLocation: {
10
- type: 'fileLocation',
11
- defaultValue: {
12
- uri: '/path/to/my.cram',
13
- locationType: 'UriLocation',
14
- },
25
+ },
26
+ /**
27
+ * #slot craiLocation
28
+ */
29
+ craiLocation: {
30
+ type: 'fileLocation',
31
+ defaultValue: {
32
+ uri: '/path/to/my.cram.crai',
33
+ locationType: 'UriLocation',
15
34
  },
16
- craiLocation: {
17
- type: 'fileLocation',
18
- defaultValue: {
19
- uri: '/path/to/my.cram.crai',
20
- locationType: 'UriLocation',
21
- },
22
- },
23
- sequenceAdapter: pluginManager.pluggableConfigSchemaType('adapter'),
24
- }, { explicitlyTyped: true }));
25
- };
35
+ },
36
+ /**
37
+ * #slot sequenceAdapter
38
+ * generally refers to the reference genome assembly's sequence adapter
39
+ * currently needs to be manually added
40
+ */
41
+ sequenceAdapter: {
42
+ type: 'frozen',
43
+ description: 'sequence data adapter, used to calculate SNPs when BAM reads lacking MD tags',
44
+ defaultValue: null,
45
+ },
46
+ }, { explicitlyTyped: true });
47
+ export default configSchema;
26
48
  //# sourceMappingURL=configSchema.js.map