jbrowse-plugin-mafviewer 1.4.3 → 1.4.5

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 (73) hide show
  1. package/README.md +1 -1
  2. package/dist/LinearMafDisplay/components/InsertionSequenceDialog/InsertionSequenceDialog.d.ts +14 -0
  3. package/dist/LinearMafDisplay/components/InsertionSequenceDialog/InsertionSequenceDialog.js +69 -0
  4. package/dist/LinearMafDisplay/components/InsertionSequenceDialog/InsertionSequenceDialog.js.map +1 -0
  5. package/dist/LinearMafDisplay/components/LinearMafDisplayComponent.js +4 -4
  6. package/dist/LinearMafDisplay/components/LinearMafDisplayComponent.js.map +1 -1
  7. package/dist/LinearMafDisplay/components/Sidebar/ColorLegend.js +2 -2
  8. package/dist/LinearMafDisplay/components/Sidebar/ColorLegend.js.map +1 -1
  9. package/dist/LinearMafDisplay/components/Sidebar/RectBg.d.ts +1 -1
  10. package/dist/LinearMafDisplay/components/Sidebar/RectBg.js +2 -3
  11. package/dist/LinearMafDisplay/components/Sidebar/RectBg.js.map +1 -1
  12. package/dist/LinearMafDisplay/components/Sidebar/SvgWrapper.js +81 -11
  13. package/dist/LinearMafDisplay/components/Sidebar/SvgWrapper.js.map +1 -1
  14. package/dist/LinearMafDisplay/components/Sidebar/Tree.js +30 -9
  15. package/dist/LinearMafDisplay/components/Sidebar/Tree.js.map +1 -1
  16. package/dist/LinearMafDisplay/components/Sidebar/YScaleBars.d.ts +0 -1
  17. package/dist/LinearMafDisplay/components/Sidebar/YScaleBars.js.map +1 -1
  18. package/dist/LinearMafDisplay/renderSvg.js +1 -1
  19. package/dist/LinearMafDisplay/renderSvg.js.map +1 -1
  20. package/dist/LinearMafDisplay/stateModel.d.ts +69 -3
  21. package/dist/LinearMafDisplay/stateModel.js +96 -1
  22. package/dist/LinearMafDisplay/stateModel.js.map +1 -1
  23. package/dist/LinearMafDisplay/util.d.ts +1 -0
  24. package/dist/LinearMafDisplay/util.js +3 -2
  25. package/dist/LinearMafDisplay/util.js.map +1 -1
  26. package/dist/LinearMafRenderer/LinearMafRenderer.d.ts +4 -7
  27. package/dist/LinearMafRenderer/LinearMafRenderer.js.map +1 -1
  28. package/dist/LinearMafRenderer/components/LinearMafRendering.js +27 -9
  29. package/dist/LinearMafRenderer/components/LinearMafRendering.js.map +1 -1
  30. package/dist/LinearMafRenderer/makeImageData.js +6 -7
  31. package/dist/LinearMafRenderer/makeImageData.js.map +1 -1
  32. package/dist/LinearMafRenderer/rendering/features.d.ts +0 -1
  33. package/dist/LinearMafRenderer/rendering/features.js +1 -14
  34. package/dist/LinearMafRenderer/rendering/features.js.map +1 -1
  35. package/dist/LinearMafRenderer/rendering/insertions.js +8 -6
  36. package/dist/LinearMafRenderer/rendering/insertions.js.map +1 -1
  37. package/dist/LinearMafRenderer/rendering/matches.d.ts +1 -1
  38. package/dist/LinearMafRenderer/rendering/matches.js +3 -15
  39. package/dist/LinearMafRenderer/rendering/matches.js.map +1 -1
  40. package/dist/LinearMafRenderer/rendering/spatialIndex.js +8 -2
  41. package/dist/LinearMafRenderer/rendering/spatialIndex.js.map +1 -1
  42. package/dist/LinearMafRenderer/rendering/text.js +1 -3
  43. package/dist/LinearMafRenderer/rendering/text.js.map +1 -1
  44. package/dist/LinearMafRenderer/rendering/types.d.ts +5 -4
  45. package/dist/jbrowse-plugin-mafviewer.umd.production.min.js +7 -7
  46. package/dist/jbrowse-plugin-mafviewer.umd.production.min.js.map +4 -4
  47. package/dist/util/fastaUtils.js +23 -50
  48. package/dist/util/fastaUtils.js.map +1 -1
  49. package/package.json +7 -7
  50. package/src/LinearMafDisplay/components/InsertionSequenceDialog/InsertionSequenceDialog.tsx +105 -0
  51. package/src/LinearMafDisplay/components/LinearMafDisplayComponent.tsx +4 -4
  52. package/src/LinearMafDisplay/components/Sidebar/ColorLegend.tsx +2 -6
  53. package/src/LinearMafDisplay/components/Sidebar/RectBg.tsx +8 -3
  54. package/src/LinearMafDisplay/components/Sidebar/SvgWrapper.tsx +117 -15
  55. package/src/LinearMafDisplay/components/Sidebar/Tree.tsx +53 -8
  56. package/src/LinearMafDisplay/components/Sidebar/YScaleBars.tsx +0 -1
  57. package/src/LinearMafDisplay/renderSvg.tsx +1 -1
  58. package/src/LinearMafDisplay/stateModel.ts +109 -1
  59. package/src/LinearMafDisplay/util.ts +4 -2
  60. package/src/LinearMafRenderer/LinearMafRenderer.ts +2 -4
  61. package/src/LinearMafRenderer/components/LinearMafRendering.tsx +49 -29
  62. package/src/LinearMafRenderer/makeImageData.ts +5 -14
  63. package/src/LinearMafRenderer/rendering/features.ts +2 -36
  64. package/src/LinearMafRenderer/rendering/insertions.ts +11 -6
  65. package/src/LinearMafRenderer/rendering/matches.ts +2 -27
  66. package/src/LinearMafRenderer/rendering/spatialIndex.ts +9 -2
  67. package/src/LinearMafRenderer/rendering/text.ts +1 -2
  68. package/src/LinearMafRenderer/rendering/types.ts +7 -4
  69. package/src/util/fastaUtils.ts +28 -54
  70. package/dist/LinearMafRenderer/components/util.d.ts +0 -1
  71. package/dist/LinearMafRenderer/components/util.js +0 -13
  72. package/dist/LinearMafRenderer/components/util.js.map +0 -1
  73. package/src/LinearMafRenderer/components/util.ts +0 -13
@@ -1,4 +1,3 @@
1
- import { getCharWidthHeight } from '../util';
2
1
  import { CHAR_SIZE_WIDTH, VERTICAL_TEXT_OFFSET } from './types';
3
2
  function getLetter(a, showAsUpperCase) {
4
3
  return showAsUpperCase ? a.toUpperCase() : a;
@@ -14,8 +13,7 @@ function getLetter(a, showAsUpperCase) {
14
13
  * @param rowTop - Top pixel position of the row
15
14
  */
16
15
  export function renderText(context, alignment, origAlignment, seq, leftPx, rowTop) {
17
- const { ctx, scale, hp2, rowHeight, showAllLetters, mismatchRendering, contrastForBase, showAsUpperCase, } = context;
18
- const { charHeight } = getCharWidthHeight();
16
+ const { ctx, scale, hp2, rowHeight, showAllLetters, mismatchRendering, contrastForBase, showAsUpperCase, charHeight, } = context;
19
17
  // Render text labels when zoomed in enough and row is tall enough
20
18
  if (scale >= CHAR_SIZE_WIDTH) {
21
19
  for (let i = 0, genomicOffset = 0, seqLength = alignment.length; i < seqLength; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/LinearMafRenderer/rendering/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAI/D,SAAS,SAAS,CAAC,CAAS,EAAE,eAAwB;IACpD,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACxB,OAAyB,EACzB,SAAiB,EACjB,aAAqB,EACrB,GAAW,EACX,MAAc,EACd,MAAc;IAEd,MAAM,EACJ,GAAG,EACH,KAAK,EACL,GAAG,EACH,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,eAAe,GAChB,GAAG,OAAO,CAAA;IACX,MAAM,EAAE,UAAU,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAE3C,kEAAkE;IAClE,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;QAC7B,KACE,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC,MAAM,EAC1D,CAAC,GAAG,SAAS,EACb,CAAC,EAAE,EACH,CAAC;YACD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnB,8CAA8C;gBAC9C,MAAM,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,aAAa,CAAA;gBAC3C,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA,CAAC,iCAAiC;gBACtF,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAE,CAAA;gBACjC,iEAAiE;gBACjE,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,IAAI,WAAW,KAAK,GAAG,EAAE,CAAC;oBACtE,GAAG,CAAC,SAAS,GAAG,iBAAiB;wBAC/B,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,wCAAwC;wBACpF,CAAC,CAAC,OAAO,CAAA;oBACX,IAAI,SAAS,GAAG,UAAU,EAAE,CAAC;wBAC3B,oCAAoC;wBACpC,GAAG,CAAC,QAAQ,CACV,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,EAClD,IAAI,GAAG,UAAU,EACjB,GAAG,GAAG,MAAM,GAAG,oBAAoB,CACpC,CAAA;oBACH,CAAC;gBACH,CAAC;gBACD,aAAa,EAAE,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/LinearMafRenderer/rendering/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAI/D,SAAS,SAAS,CAAC,CAAS,EAAE,eAAwB;IACpD,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACxB,OAAyB,EACzB,SAAiB,EACjB,aAAqB,EACrB,GAAW,EACX,MAAc,EACd,MAAc;IAEd,MAAM,EACJ,GAAG,EACH,KAAK,EACL,GAAG,EACH,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,UAAU,GACX,GAAG,OAAO,CAAA;IAEX,kEAAkE;IAClE,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;QAC7B,KACE,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC,MAAM,EAC1D,CAAC,GAAG,SAAS,EACb,CAAC,EAAE,EACH,CAAC;YACD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnB,8CAA8C;gBAC9C,MAAM,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,aAAa,CAAA;gBAC3C,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA,CAAC,iCAAiC;gBACtF,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAE,CAAA;gBACjC,iEAAiE;gBACjE,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,IAAI,WAAW,KAAK,GAAG,EAAE,CAAC;oBACtE,GAAG,CAAC,SAAS,GAAG,iBAAiB;wBAC/B,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,wCAAwC;wBACpF,CAAC,CAAC,OAAO,CAAA;oBACX,IAAI,SAAS,GAAG,UAAU,EAAE,CAAC;wBAC3B,oCAAoC;wBACpC,GAAG,CAAC,QAAQ,CACV,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,EAClD,IAAI,GAAG,UAAU,EACjB,GAAG,GAAG,MAAM,GAAG,oBAAoB,CACpC,CAAA;oBACH,CAAC;gBACH,CAAC;gBACD,aAAa,EAAE,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -11,10 +11,7 @@ export declare const MIN_ROW_HEIGHT_FOR_BORDERS = 5;
11
11
  export declare const HIGH_BP_PER_PX_THRESHOLD = 10;
12
12
  export declare const INSERTION_BORDER_HEIGHT = 5;
13
13
  export declare const MIN_X_DISTANCE = 0.5;
14
- export interface Sample {
15
- id: string;
16
- color?: string;
17
- }
14
+ export type { Sample } from '../../LinearMafDisplay/types';
18
15
  export interface GenomicRegion {
19
16
  start: number;
20
17
  end: number;
@@ -26,6 +23,7 @@ export interface RenderedBase {
26
23
  base: string;
27
24
  sampleId: number;
28
25
  isInsertion?: boolean;
26
+ isLargeInsertion?: boolean;
29
27
  }
30
28
  /**
31
29
  * Shared rendering context containing all necessary parameters for rendering operations
@@ -33,6 +31,7 @@ export interface RenderedBase {
33
31
  export interface RenderingContext {
34
32
  ctx: CanvasRenderingContext2D;
35
33
  scale: number;
34
+ bpPerPx: number;
36
35
  canvasWidth: number;
37
36
  rowHeight: number;
38
37
  h: number;
@@ -43,6 +42,8 @@ export interface RenderingContext {
43
42
  showAllLetters: boolean;
44
43
  mismatchRendering: boolean;
45
44
  showAsUpperCase: boolean;
45
+ charWidth: number;
46
+ charHeight: number;
46
47
  spatialIndex: RenderedBase[];
47
48
  spatialIndexCoords: number[];
48
49
  lastInsertedX: number;