jbrowse-plugin-gwas 2.0.1 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # v2.0.2
2
+
3
+ - Misc optimizations
4
+
1
5
  # v2.0.0
2
6
 
3
7
  - Add clickable features
@@ -26,10 +26,16 @@ export default function rendererFactory(pluginManager) {
26
26
  const opts = { ...scaleOpts, range: [0, height] };
27
27
  const width = (region.end - region.start) / bpPerPx;
28
28
  const rbush = new RBush();
29
+ const defaultColor = readConfObject(config, 'color');
29
30
  const scale = getScale(opts);
30
31
  const toY = (n) => height - scale(n) + YSCALEBAR_LABEL_OFFSET;
31
32
  let start = performance.now();
32
33
  checkStopToken(stopToken);
34
+ let lastRenderedBlobX = 0;
35
+ let lastRenderedBlobY = 0;
36
+ if (!config.color.isCallback) {
37
+ ctx.fillStyle = defaultColor;
38
+ }
33
39
  for (const feature of features.values()) {
34
40
  if (performance.now() - start > 200) {
35
41
  checkStopToken(stopToken);
@@ -37,18 +43,26 @@ export default function rendererFactory(pluginManager) {
37
43
  }
38
44
  const [leftPx] = featureSpanPx(feature, region, bpPerPx);
39
45
  const score = feature.get('score');
40
- ctx.fillStyle = readConfObject(config, 'color', { feature });
41
- ctx.beginPath();
42
46
  const y = toY(score);
43
- ctx.arc(leftPx, y, 2, 0, 2 * Math.PI);
44
- rbush.insert({
45
- minX: leftPx,
46
- minY: y,
47
- maxX: leftPx + 4,
48
- maxY: y + 4,
49
- feature: feature.toJSON(),
50
- });
51
- ctx.fill();
47
+ if (Math.abs(leftPx - lastRenderedBlobX) > 1 ||
48
+ Math.abs(y - lastRenderedBlobY) > 1) {
49
+ if (config.color.isCallback) {
50
+ ctx.fillStyle = readConfObject(config, 'color', { feature });
51
+ }
52
+ ctx.beginPath();
53
+ ctx.moveTo(leftPx, y);
54
+ ctx.arc(leftPx, y, 2, 0, 2 * Math.PI);
55
+ ctx.fill();
56
+ lastRenderedBlobY = y;
57
+ lastRenderedBlobX = leftPx;
58
+ rbush.insert({
59
+ minX: leftPx,
60
+ minY: y,
61
+ maxX: leftPx + 4,
62
+ maxY: y + 4,
63
+ feature: feature.toJSON(),
64
+ });
65
+ }
52
66
  }
53
67
  if (displayCrossHatches) {
54
68
  ctx.lineWidth = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"LinearManhattanRenderer.js","sourceRoot":"","sources":["../../src/LinearManhattanRenderer/LinearManhattanRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinearManhattanRenderer.js","sourceRoot":"","sources":["../../src/LinearManhattanRenderer/LinearManhattanRenderer.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,5 +2,6 @@ import Plugin from '@jbrowse/core/Plugin';
2
2
  import type PluginManager from '@jbrowse/core/PluginManager';
3
3
  export default class GWASPlugin extends Plugin {
4
4
  name: string;
5
+ version: string;
5
6
  install(pluginManager: PluginManager): void;
6
7
  }
package/dist/index.js CHANGED
@@ -1,10 +1,12 @@
1
1
  import Plugin from '@jbrowse/core/Plugin';
2
2
  import LinearManhattanDisplayF from './LinearManhattanDisplay';
3
3
  import LinearManhattanRendererF from './LinearManhattanRenderer';
4
+ import { version } from './version';
4
5
  export default class GWASPlugin extends Plugin {
5
6
  constructor() {
6
7
  super(...arguments);
7
8
  this.name = 'GWASPlugin';
9
+ this.version = version;
8
10
  }
9
11
  install(pluginManager) {
10
12
  LinearManhattanDisplayF(pluginManager);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,OAAO,uBAAuB,MAAM,0BAA0B,CAAA;AAC9D,OAAO,wBAAwB,MAAM,2BAA2B,CAAA;AAIhE,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAA9C;;QACE,SAAI,GAAG,YAAY,CAAA;IAMrB,CAAC;IAJC,OAAO,CAAC,aAA4B;QAClC,uBAAuB,CAAC,aAAa,CAAC,CAAA;QACtC,wBAAwB,CAAC,aAAa,CAAC,CAAA;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,OAAO,uBAAuB,MAAM,0BAA0B,CAAA;AAC9D,OAAO,wBAAwB,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAA9C;;QACE,SAAI,GAAG,YAAY,CAAA;QACnB,YAAO,GAAG,OAAO,CAAA;IAMnB,CAAC;IAJC,OAAO,CAAC,aAA4B;QAClC,uBAAuB,CAAC,aAAa,CAAC,CAAA;QACtC,wBAAwB,CAAC,aAAa,CAAC,CAAA;IACzC,CAAC;CACF"}