@jbrowse/plugin-alignments 2.6.3 → 2.7.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 (121) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +2 -1
  3. package/dist/AlignmentsFeatureDetail/util.d.ts +1 -3
  4. package/dist/BamAdapter/BamAdapter.d.ts +2 -9
  5. package/dist/CramAdapter/CramAdapter.d.ts +3 -11
  6. package/dist/CramAdapter/CramAdapter.js +2 -1
  7. package/dist/CramAdapter/util.js +3 -6
  8. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +3 -4
  9. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +3 -3
  10. package/dist/LinearAlignmentsDisplay/models/model.d.ts +5 -9
  11. package/dist/LinearAlignmentsDisplay/models/model.js +1 -0
  12. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +49 -27
  13. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +20 -2
  14. package/dist/LinearPileupDisplay/components/ColorByModifications.d.ts +4 -5
  15. package/dist/LinearPileupDisplay/components/ColorByModifications.js +3 -4
  16. package/dist/LinearPileupDisplay/components/ColorByTag.d.ts +7 -5
  17. package/dist/LinearPileupDisplay/components/ColorByTag.js +4 -7
  18. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -4
  19. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +2 -2
  20. package/dist/LinearPileupDisplay/components/SetFeatureHeight.d.ts +4 -5
  21. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +3 -3
  22. package/dist/LinearPileupDisplay/components/SetMaxHeight.d.ts +3 -4
  23. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +3 -3
  24. package/dist/LinearPileupDisplay/components/SortByTag.d.ts +3 -4
  25. package/dist/LinearPileupDisplay/components/SortByTag.js +3 -3
  26. package/dist/LinearPileupDisplay/model.d.ts +56 -35
  27. package/dist/LinearPileupDisplay/model.js +3 -2
  28. package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
  29. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +2 -1
  30. package/dist/LinearReadArcsDisplay/model.d.ts +9 -14
  31. package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
  32. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +2 -1
  33. package/dist/LinearReadCloudDisplay/drawPairChains.js +1 -2
  34. package/dist/LinearReadCloudDisplay/model.d.ts +13 -15
  35. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
  36. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +18 -423
  37. package/dist/LinearSNPCoverageDisplay/models/model.js +18 -0
  38. package/dist/MismatchParser/index.js +6 -8
  39. package/dist/PileupRenderer/PileupRenderer.js +0 -25
  40. package/dist/PileupRenderer/colorBy.js +1 -1
  41. package/dist/PileupRenderer/components/PileupRendering.d.ts +9 -10
  42. package/dist/PileupRenderer/components/PileupRendering.js +3 -5
  43. package/dist/PileupRenderer/getAlignmentShapeColor.js +1 -1
  44. package/dist/PileupRenderer/layoutFeature.js +1 -2
  45. package/dist/PileupRenderer/makeImageData.d.ts +1 -3
  46. package/dist/PileupRenderer/renderMethylation.js +5 -10
  47. package/dist/PileupRenderer/renderMismatches.d.ts +2 -6
  48. package/dist/PileupRenderer/renderMismatches.js +8 -11
  49. package/dist/PileupRenderer/renderModifications.js +4 -8
  50. package/dist/PileupRenderer/renderSoftClipping.js +26 -25
  51. package/dist/PileupRenderer/sortUtil.js +2 -2
  52. package/dist/SNPCoverageAdapter/util.d.ts +9 -13
  53. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +6 -12
  54. package/dist/shared/BaseDisplayComponent.d.ts +2 -2
  55. package/dist/shared/BaseDisplayComponent.js +2 -1
  56. package/dist/shared/FilterByTag.d.ts +6 -15
  57. package/dist/shared/FilterByTag.js +4 -6
  58. package/dist/shared/fetchChains.js +1 -0
  59. package/dist/shared/index.d.ts +9 -0
  60. package/dist/util.d.ts +3 -9
  61. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
  62. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +2 -1
  63. package/esm/AlignmentsFeatureDetail/util.d.ts +1 -3
  64. package/esm/BamAdapter/BamAdapter.d.ts +2 -9
  65. package/esm/CramAdapter/CramAdapter.d.ts +3 -11
  66. package/esm/CramAdapter/CramAdapter.js +2 -1
  67. package/esm/CramAdapter/util.js +3 -6
  68. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +3 -4
  69. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +3 -3
  70. package/esm/LinearAlignmentsDisplay/models/model.d.ts +5 -9
  71. package/esm/LinearAlignmentsDisplay/models/model.js +1 -0
  72. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +49 -27
  73. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +20 -2
  74. package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +4 -5
  75. package/esm/LinearPileupDisplay/components/ColorByModifications.js +3 -4
  76. package/esm/LinearPileupDisplay/components/ColorByTag.d.ts +7 -5
  77. package/esm/LinearPileupDisplay/components/ColorByTag.js +4 -7
  78. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -4
  79. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +2 -2
  80. package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +4 -5
  81. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +3 -3
  82. package/esm/LinearPileupDisplay/components/SetMaxHeight.d.ts +3 -4
  83. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +3 -3
  84. package/esm/LinearPileupDisplay/components/SortByTag.d.ts +3 -4
  85. package/esm/LinearPileupDisplay/components/SortByTag.js +3 -3
  86. package/esm/LinearPileupDisplay/model.d.ts +56 -35
  87. package/esm/LinearPileupDisplay/model.js +3 -2
  88. package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
  89. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +2 -1
  90. package/esm/LinearReadArcsDisplay/model.d.ts +9 -14
  91. package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
  92. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +2 -1
  93. package/esm/LinearReadCloudDisplay/drawPairChains.js +1 -2
  94. package/esm/LinearReadCloudDisplay/model.d.ts +13 -15
  95. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
  96. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +18 -423
  97. package/esm/LinearSNPCoverageDisplay/models/model.js +18 -0
  98. package/esm/MismatchParser/index.js +6 -8
  99. package/esm/PileupRenderer/PileupRenderer.js +0 -2
  100. package/esm/PileupRenderer/colorBy.js +1 -1
  101. package/esm/PileupRenderer/components/PileupRendering.d.ts +9 -10
  102. package/esm/PileupRenderer/components/PileupRendering.js +3 -5
  103. package/esm/PileupRenderer/getAlignmentShapeColor.js +1 -1
  104. package/esm/PileupRenderer/layoutFeature.js +1 -2
  105. package/esm/PileupRenderer/makeImageData.d.ts +1 -3
  106. package/esm/PileupRenderer/renderMethylation.js +5 -10
  107. package/esm/PileupRenderer/renderMismatches.d.ts +2 -6
  108. package/esm/PileupRenderer/renderMismatches.js +8 -11
  109. package/esm/PileupRenderer/renderModifications.js +4 -8
  110. package/esm/PileupRenderer/renderSoftClipping.js +26 -25
  111. package/esm/PileupRenderer/sortUtil.js +2 -2
  112. package/esm/SNPCoverageAdapter/util.d.ts +9 -13
  113. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +6 -12
  114. package/esm/shared/BaseDisplayComponent.d.ts +2 -2
  115. package/esm/shared/BaseDisplayComponent.js +3 -2
  116. package/esm/shared/FilterByTag.d.ts +6 -15
  117. package/esm/shared/FilterByTag.js +4 -6
  118. package/esm/shared/fetchChains.js +1 -0
  119. package/esm/shared/index.d.ts +9 -0
  120. package/esm/util.d.ts +3 -9
  121. package/package.json +3 -4
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import PluginManager from '@jbrowse/core/PluginManager';
3
- import { AnyConfigurationSchemaType, AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
4
4
  /**
5
5
  * #stateModel LinearSNPCoverageDisplay
6
6
  * extends `LinearWiggleDisplay`
@@ -19,11 +19,11 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
19
19
  key: import("mobx-state-tree").ISimpleType<string>;
20
20
  region: import("mobx-state-tree").IModelType<{
21
21
  refName: import("mobx-state-tree").ISimpleType<string>;
22
- start: import("mobx-state-tree").ISimpleType<number>;
23
- end: import("mobx-state-tree").ISimpleType<number>;
24
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>; /**
22
+ start: import("mobx-state-tree").ISimpleType<number>; /**
25
23
  * #property
26
24
  */
25
+ end: import("mobx-state-tree").ISimpleType<number>;
26
+ reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
27
27
  } & {
28
28
  assemblyName: import("mobx-state-tree").ISimpleType<string>;
29
29
  }, {
@@ -37,19 +37,16 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
37
37
  filled: boolean;
38
38
  reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
39
39
  features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
40
- layout: any;
40
+ layout: any; /**
41
+ * #property
42
+ */
41
43
  status: string;
42
44
  error: unknown;
43
45
  message: string | undefined;
44
46
  maxHeightReached: boolean;
45
47
  ReactComponent: ({ model, }: {
46
- /**
47
- * #property
48
- */
49
48
  model: any;
50
- }) => any; /**
51
- * #property
52
- */
49
+ }) => any;
53
50
  renderProps: any;
54
51
  } & {
55
52
  doReload(): void;
@@ -88,7 +85,9 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
88
85
  type: string;
89
86
  description: string;
90
87
  defaultValue: string;
91
- contextVariable: string[];
88
+ contextVariable: string[]; /**
89
+ * #property
90
+ */
92
91
  };
93
92
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
94
93
  } & {
@@ -98,19 +97,11 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
98
97
  minSize: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
99
98
  color: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
100
99
  posColor: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
101
- negColor: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>; /**
102
- * #property
103
- */
104
- summaryScoreMode: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>; /**
105
- * #property
106
- */
100
+ negColor: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
101
+ summaryScoreMode: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
107
102
  rendererTypeNameState: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
108
- scale: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>; /**
109
- * #property
110
- */
111
- autoscale: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>; /**
112
- * #property
113
- */
103
+ scale: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
104
+ autoscale: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
114
105
  displayCrossHatches: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<boolean>>;
115
106
  constraints: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IModelType<{
116
107
  max: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
@@ -155,406 +146,10 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
155
146
  type: import("mobx-state-tree").ISimpleType<string>;
156
147
  tag: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
157
148
  }, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
158
- }, {
159
- rendererTypeName: string;
160
- error: unknown;
161
- message: string | undefined;
162
- } & {
163
- readonly RenderingComponent: import("react").FC<{
164
- model: {
165
- id: string;
166
- type: string;
167
- rpcDriverName: string | undefined;
168
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
169
- rendererTypeName: string;
170
- error: unknown;
171
- message: string | undefined;
172
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
173
- id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
174
- type: import("mobx-state-tree").ISimpleType<string>;
175
- rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
176
- }, {
177
- rendererTypeName: string;
178
- error: unknown;
179
- message: string | undefined;
180
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
181
- onHorizontalScroll?: Function | undefined;
182
- blockState?: Record<string, any> | undefined;
183
- }>;
184
- readonly DisplayBlurb: import("react").FC<{
185
- model: {
186
- id: string;
187
- type: string;
188
- rpcDriverName: string | undefined;
189
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
190
- rendererTypeName: string;
191
- error: unknown;
192
- message: string | undefined;
193
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
194
- id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
195
- type: import("mobx-state-tree").ISimpleType<string>;
196
- rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
197
- }, {
198
- rendererTypeName: string;
199
- error: unknown;
200
- message: string | undefined;
201
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
202
- }> | null;
203
- readonly adapterConfig: any; /**
204
- * #getter
205
- */
206
- readonly parentTrack: any;
207
- renderProps(): any;
208
- readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
209
- readonly DisplayMessageComponent: import("react").FC<any> | undefined;
210
- trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
211
- readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
212
- regionCannotBeRendered(): null;
213
- } & {
214
- setMessage(arg?: string | undefined): void;
215
- setError(error?: unknown): void;
216
- setRpcDriverName(rpcDriverName: string): void;
217
- reload(): void;
218
- } & {
219
- scrollTop: number;
220
- } & {
221
- readonly height: number;
222
- } & {
223
- setScrollTop(scrollTop: number): void;
224
- setHeight(displayHeight: number): number;
225
- resizeHeight(distance: number): number;
226
- } & {
227
- featureDensityStatsP: Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats> | undefined;
228
- featureDensityStats: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined;
229
- currStatsBpPerPx: number;
230
- } & {
231
- readonly currentBytesRequested: number;
232
- readonly currentFeatureScreenDensity: number;
233
- readonly maxFeatureScreenDensity: any;
234
- readonly featureDensityStatsReady: boolean;
235
- readonly maxAllowableBytes: number;
236
- } & {
237
- afterAttach(): void;
238
- } & {
239
- setCurrStatsBpPerPx(n: number): void;
240
- setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined): void;
241
- getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
242
- setFeatureDensityStatsP(arg: any): void;
243
- setFeatureDensityStats(featureDensityStats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined): void;
244
- clearFeatureDensityStats(): void;
245
- } & {
246
- readonly regionTooLarge: boolean;
247
- readonly regionTooLargeReason: string;
248
- } & {
249
- regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
250
- regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
251
- } & {
252
- featureIdUnderMouse: string | undefined;
253
- contextMenuFeature: import("@jbrowse/core/util").Feature | undefined;
254
- } & {
255
- readonly blockType: "dynamicBlocks" | "staticBlocks";
256
- readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
257
- } & {
258
- readonly renderDelay: number;
259
- readonly TooltipComponent: import("react").FC<any>;
260
- readonly selectedFeatureId: string | undefined;
261
- readonly DisplayMessageComponent: import("react").FC<any> | undefined;
262
- } & {
263
- readonly features: import("@jbrowse/core/util/compositeMap").default<string, import("@jbrowse/core/util").Feature>;
264
- readonly featureUnderMouse: import("@jbrowse/core/util").Feature | undefined;
265
- getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
266
- getFeatureByID(blockKey: string, id: string): [number, number, number, number] | undefined;
267
- searchFeatureByID(id: string): [number, number, number, number] | undefined;
268
- } & {
269
- addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
270
- deleteBlock(key: string): void;
271
- selectFeature(feature: import("@jbrowse/core/util").Feature): void;
272
- clearFeatureSelection(): void;
273
- setFeatureIdUnderMouse(feature?: string | undefined): void;
274
- setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature | undefined): void;
275
- } & {
276
- reload(): Promise<void>;
277
- } & {
278
- trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
279
- contextMenuItems(): import("@jbrowse/core/ui").MenuItem[];
280
- renderProps(): any;
281
- } & {
282
- renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
283
- afterAttach(): void;
284
- } & {
285
- message: string | undefined;
286
- stats: {
287
- scoreMin: number;
288
- scoreMax: number;
289
- } | undefined;
290
- statsFetchInProgress: AbortController | undefined;
291
- } & {
292
- updateQuantitativeStats(stats: {
293
- scoreMin: number;
294
- scoreMax: number;
295
- }): void;
296
- setColor(color?: string | undefined): void;
297
- setPosColor(color?: string | undefined): void;
298
- setNegColor(color?: string | undefined): void;
299
- setLoading(aborter: AbortController): void;
300
- selectFeature(feature: import("@jbrowse/core/util").Feature): void;
301
- setResolution(res: number): void;
302
- setFill(fill: number): void;
303
- toggleLogScale(): void;
304
- setScaleType(scale?: string | undefined): void;
305
- setSummaryScoreMode(val: string): void;
306
- setAutoscale(val: string): void;
307
- setMaxScore(val?: number | undefined): void;
308
- setRendererType(val: string): void;
309
- setMinScore(val?: number | undefined): void;
310
- toggleCrossHatches(): void;
311
- setCrossHatches(cross: boolean): void;
312
- } & {
313
- readonly adapterTypeName: any;
314
- readonly rendererTypeNameSimple: any;
315
- readonly filters: undefined;
316
- readonly scaleType: any;
317
- readonly maxScore: any;
318
- readonly minScore: any;
319
- } & {
320
- readonly adapterCapabilities: string[];
321
- readonly rendererConfig: {
322
- [x: string]: any;
323
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
324
- setSubschema(slotName: string, data: unknown): any;
325
- } & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
326
- readonly autoscaleType: any;
327
- } & {
328
- readonly domain: number[] | undefined;
329
- } & {
330
- readonly filled: boolean;
331
- readonly summaryScoreModeSetting: string;
332
- readonly scaleOpts: {
333
- domain: number[] | undefined;
334
- stats: {
335
- scoreMin: number;
336
- scoreMax: number;
337
- } | undefined;
338
- autoscaleType: any;
339
- scaleType: any;
340
- inverted: any;
341
- };
342
- readonly canHaveFill: boolean;
343
- readonly displayCrossHatchesSetting: boolean;
344
- readonly hasResolution: boolean;
345
- readonly hasGlobalStats: boolean;
346
- } & {
347
- scoreTrackMenuItems(): ({
348
- label: string;
349
- subMenu: {
350
- label: string;
351
- onClick: () => void;
352
- }[];
353
- onClick?: undefined;
354
- } | {
355
- label: string;
356
- subMenu: {
357
- label: string;
358
- type: string;
359
- checked: boolean;
360
- onClick: () => void;
361
- }[];
362
- onClick?: undefined;
363
- } | {
364
- label: string;
365
- onClick: () => void;
366
- subMenu?: undefined;
367
- })[];
368
- } & {
369
- reload(): Promise<void>;
370
- } & {
371
- readonly TooltipComponent: import("react").FC<{}>;
372
- readonly rendererTypeName: string; /**
373
- * #property
374
- */
375
- } & {
376
- readonly ticks: {
377
- range: number[];
378
- values: number[];
379
- format: (d: import("d3-scale").NumberValue) => string;
380
- position: import("d3-scale").ScaleLinear<number, number, never> | import("d3-scale").ScaleQuantize<number, never>;
381
- } | undefined;
382
- } & {
383
- renderProps(): any;
384
- readonly needsScalebar: boolean;
385
- readonly fillSetting: 0 | 1 | 2;
386
- } & {
387
- trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
388
- label: string;
389
- subMenu: ({
390
- label: string;
391
- subMenu: {
392
- label: string;
393
- onClick: () => void;
394
- }[];
395
- onClick?: undefined;
396
- } | {
397
- label: string;
398
- subMenu: {
399
- label: string;
400
- type: string;
401
- checked: boolean;
402
- onClick: () => void;
403
- }[];
404
- onClick?: undefined;
405
- } | {
406
- label: string;
407
- onClick: () => void;
408
- subMenu?: undefined;
409
- })[];
410
- type?: undefined;
411
- checked?: undefined;
412
- onClick?: undefined;
413
- } | {
414
- label: string;
415
- subMenu: {
416
- label: string;
417
- type: string;
418
- checked: boolean; /**
419
- * #getter
420
- */
421
- onClick: () => void;
422
- }[];
423
- type?: undefined;
424
- checked?: undefined;
425
- onClick?: undefined;
426
- } | {
427
- type: string;
428
- label: string;
429
- checked: boolean;
430
- onClick: () => void;
431
- subMenu?: undefined;
432
- })[];
433
- } & {
434
- afterAttach(): void;
435
- renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
436
- } & {
437
- modificationTagMap: import("mobx").ObservableMap<string, string>;
438
- modificationsReady: boolean;
439
- } & {
440
- /**
441
- * #action
442
- */
443
- setConfig(configuration: AnyConfigurationModel): void;
444
149
  /**
445
- * #action
446
- */
447
- setFilterBy(filter: {
448
- flagInclude: number;
449
- flagExclude: number;
450
- readName?: string;
451
- tagFilter?: {
452
- tag: string;
453
- value: string;
454
- };
455
- }): void;
456
- /**
457
- * #action
458
- */
459
- setColorBy(colorBy?: {
460
- type: string;
461
- tag?: string;
462
- }): void;
463
- /**
464
- * #action
465
- */
466
- updateModificationColorMap(uniqueModifications: string[]): void;
467
- } & {
468
- /**
469
- * #getter
470
- */
471
- readonly rendererConfig: {
472
- [x: string]: any;
473
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
474
- setSubschema(slotName: string, data: unknown): any;
475
- } & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
476
- /**
477
- * #getter
478
- */
479
- readonly drawArcsSetting: any;
480
- /**
481
- * #getter
482
- */
483
- readonly drawInterbaseCountsSetting: any;
484
- /**
485
- * #getter
486
- */
487
- readonly drawIndicatorsSetting: any;
488
- /**
489
- * #getter
490
- */
491
- readonly autorunReady: boolean;
492
- readonly renderReady: boolean;
493
- readonly ready: boolean;
494
- /**
495
- * #method
496
- */
497
- renderProps(): any;
498
- } & {
499
- /**
500
- * #action
501
- */
502
- setModificationsReady(flag: boolean): void;
503
- /**
504
- * #action
505
- */
506
- toggleDrawIndicators(): void;
507
- /**
508
- * #action
509
- */
510
- toggleDrawInterbaseCounts(): void;
511
- /**
512
- * #action
513
- */
514
- toggleDrawArcs(): void;
515
- } & {
516
- afterAttach(): void;
517
- } & {
518
- /**
519
- * #getter
520
- */
521
- readonly TooltipComponent: (props: {
522
- model: {
523
- featureUnderMouse: import("@jbrowse/core/util").Feature;
524
- };
525
- height: number;
526
- offsetMouseCoord: [number, number];
527
- clientMouseCoord: [number, number];
528
- clientRect?: DOMRect | undefined;
529
- }) => import("react").JSX.Element | null;
530
- /**
531
- * #getter
532
- */
533
- readonly adapterConfig: {
534
- type: string;
535
- subadapter: any;
536
- };
537
- /**
538
- * #getter
539
- */
540
- readonly rendererTypeName: string | undefined;
541
- /**
542
- * #getter
543
- */
544
- readonly needsScalebar: boolean;
545
- /**
546
- * #method
547
- */
548
- contextMenuItems(): never[];
549
- /**
550
- * #method
150
+ * #property
551
151
  */
552
- trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
553
- label: string;
554
- type: string;
555
- checked: any;
556
- onClick: () => void;
557
- })[];
558
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
152
+ jexlFilters: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>, [undefined]>;
153
+ }, never, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
559
154
  export type SNPCoverageDisplayModel = ReturnType<typeof stateModelFactory>;
560
155
  export default stateModelFactory;
@@ -8,6 +8,7 @@ const mobx_1 = require("mobx");
8
8
  const configuration_1 = require("@jbrowse/core/configuration");
9
9
  const plugin_wiggle_1 = require("@jbrowse/plugin-wiggle");
10
10
  const util_1 = require("@jbrowse/core/util");
11
+ const serializableFilterChain_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain"));
11
12
  // locals
12
13
  const Tooltip_1 = __importDefault(require("../components/Tooltip"));
13
14
  const shared_1 = require("../../shared");
@@ -49,6 +50,10 @@ function stateModelFactory(pluginManager, configSchema) {
49
50
  type: mobx_state_tree_1.types.string,
50
51
  tag: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.string),
51
52
  })),
53
+ /**
54
+ * #property
55
+ */
56
+ jexlFilters: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.array(mobx_state_tree_1.types.string), []),
52
57
  }))
53
58
  .volatile(() => ({
54
59
  modificationTagMap: mobx_1.observable.map({}),
@@ -73,6 +78,12 @@ function stateModelFactory(pluginManager, configSchema) {
73
78
  setColorBy(colorBy) {
74
79
  self.colorBy = (0, mobx_state_tree_1.cast)(colorBy);
75
80
  },
81
+ /**
82
+ * #action
83
+ */
84
+ setJexlFilters(filters) {
85
+ self.jexlFilters = (0, mobx_state_tree_1.cast)(filters);
86
+ },
76
87
  /**
77
88
  * #action
78
89
  */
@@ -147,6 +158,7 @@ function stateModelFactory(pluginManager, configSchema) {
147
158
  return {
148
159
  ...superProps,
149
160
  notReady: !this.ready,
161
+ filters: self.filters,
150
162
  modificationTagMap: Object.fromEntries(modificationTagMap.toJSON()),
151
163
  // must use getSnapshot because otherwise changes to e.g. just the
152
164
  // colorBy.type are not read
@@ -269,6 +281,12 @@ function stateModelFactory(pluginManager, configSchema) {
269
281
  },
270
282
  ];
271
283
  },
284
+ /**
285
+ * #getter
286
+ */
287
+ get filters() {
288
+ return new serializableFilterChain_1.default({ filters: self.jexlFilters });
289
+ },
272
290
  };
273
291
  });
274
292
  }
@@ -151,8 +151,7 @@ function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
151
151
  }
152
152
  // now actually parse the MD string
153
153
  const md = mdstring.match(mdRegex) || [];
154
- for (let i = 0; i < md.length; i++) {
155
- const token = md[i];
154
+ for (const token of md) {
156
155
  const num = +token;
157
156
  if (!Number.isNaN(num)) {
158
157
  curr.start += num;
@@ -162,6 +161,7 @@ function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
162
161
  }
163
162
  else {
164
163
  // mismatch
164
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
165
165
  for (let j = 0; j < token.length; j += 1) {
166
166
  curr.length = 1;
167
167
  while (lastSkipPos < skips.length) {
@@ -274,8 +274,7 @@ function getModificationPositions(mm, fseq, fstrand) {
274
274
  const seq = fstrand === -1 ? (0, util_1.revcom)(fseq) : fseq;
275
275
  const mods = mm.split(';').filter(mod => !!mod);
276
276
  const result = [];
277
- for (let i = 0; i < mods.length; i++) {
278
- const mod = mods[i];
277
+ for (const mod of mods) {
279
278
  const [basemod, ...skips] = mod.split(',');
280
279
  // regexes based on parse_mm.pl from hts-specs
281
280
  const matches = basemod.match(modificationRegex);
@@ -295,12 +294,11 @@ function getModificationPositions(mm, fseq, fstrand) {
295
294
  // sequence of the read, if we have a modification type e.g. C+m;2 and a
296
295
  // sequence ACGTACGTAC we skip the two instances of C and go to the last
297
296
  // C
298
- for (let j = 0; j < types.length; j++) {
299
- const type = types[j];
297
+ for (const type of types) {
300
298
  let i = 0;
301
299
  const positions = [];
302
- for (let k = 0; k < skips.length; k++) {
303
- let delta = +skips[k];
300
+ for (const d of skips) {
301
+ let delta = +d;
304
302
  do {
305
303
  if (base === 'N' || base === seq[i]) {
306
304
  delta--;
@@ -1,27 +1,4 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
@@ -81,7 +58,6 @@ class PileupRenderer extends BoxRendererType_1.default {
81
58
  : undefined;
82
59
  const width = (region.end - region.start) / bpPerPx;
83
60
  const height = Math.max(layout.getTotalHeight(), 1);
84
- const Color = await Promise.resolve().then(() => __importStar(require('color'))).then(f => f.default);
85
61
  const res = await (0, util_1.renderToAbstractCanvas)(width, height, renderProps, ctx => (0, makeImageData_1.makeImageData)({
86
62
  ctx,
87
63
  layoutRecords: layoutRecords.filter(util_1.notEmpty),
@@ -91,7 +67,6 @@ class PileupRenderer extends BoxRendererType_1.default {
91
67
  layout,
92
68
  features,
93
69
  regionSequence,
94
- Color,
95
70
  },
96
71
  }));
97
72
  const results = await super.render({
@@ -12,7 +12,7 @@ function colorByInsertSize(feature) {
12
12
  }
13
13
  exports.colorByInsertSize = colorByInsertSize;
14
14
  function colorByMappingQuality(feature) {
15
- return `hsl(${feature.get('mq')},50%,50%)`;
15
+ return `hsl(${feature.get('score')},50%,50%)`;
16
16
  }
17
17
  exports.colorByMappingQuality = colorByMappingQuality;
18
18
  function getOrientation(feature, config) {
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { Region } from '@jbrowse/core/util/types';
3
3
  import type { BaseLinearDisplayModel } from '@jbrowse/plugin-linear-genome-view';
4
- declare function PileupRendering(props: {
4
+ declare const PileupRendering: (props: {
5
5
  blockKey: string;
6
6
  displayModel: BaseLinearDisplayModel;
7
7
  width: number;
@@ -12,17 +12,16 @@ declare function PileupRendering(props: {
12
12
  type: string;
13
13
  pos: number;
14
14
  refName: string;
15
- };
15
+ } | undefined;
16
16
  colorBy?: {
17
17
  type: string;
18
- tag?: string;
19
- };
18
+ tag?: string | undefined;
19
+ } | undefined;
20
20
  filterBy?: {
21
21
  tagFilter?: {
22
22
  tag: string;
23
- };
24
- };
25
- onMouseMove?: (event: React.MouseEvent, featureId?: string) => void;
26
- }): React.JSX.Element;
27
- declare const _default: typeof PileupRendering;
28
- export default _default;
23
+ } | undefined;
24
+ } | undefined;
25
+ onMouseMove?: ((event: React.MouseEvent, featureId?: string) => void) | undefined;
26
+ }) => React.JSX.Element;
27
+ export default PileupRendering;