react-msaview 5.6.1 → 5.6.3

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 (94) hide show
  1. package/bundle/index.js +95 -95
  2. package/bundle/index.js.map +4 -4
  3. package/dist/clustalX.d.ts +4 -3
  4. package/dist/clustalX.js +25 -4
  5. package/dist/clustalX.js.map +1 -1
  6. package/dist/columnCounts.d.ts +37 -0
  7. package/dist/columnCounts.js +148 -0
  8. package/dist/columnCounts.js.map +1 -0
  9. package/dist/components/MSAView.js +1 -8
  10. package/dist/components/MSAView.js.map +1 -1
  11. package/dist/components/getVisibleLeaves.d.ts +6 -0
  12. package/dist/components/getVisibleLeaves.js.map +1 -0
  13. package/dist/components/msa/MSACanvasBlock.js +17 -54
  14. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  15. package/dist/components/msa/renderBoxFeatureCanvasBlock.d.ts +2 -1
  16. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +21 -19
  17. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  18. package/dist/components/msa/renderMSABlock.js +97 -96
  19. package/dist/components/msa/renderMSABlock.js.map +1 -1
  20. package/dist/components/msa/renderMSAMouseover.js +9 -32
  21. package/dist/components/msa/renderMSAMouseover.js.map +1 -1
  22. package/dist/components/msa/useMsaBlockMouse.d.ts +23 -0
  23. package/dist/components/msa/useMsaBlockMouse.js +45 -0
  24. package/dist/components/msa/useMsaBlockMouse.js.map +1 -0
  25. package/dist/components/tree/TreeCanvas.js +14 -19
  26. package/dist/components/tree/TreeCanvas.js.map +1 -1
  27. package/dist/components/tree/TreeCanvasBlock.js +40 -111
  28. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  29. package/dist/components/tree/renderTreeCanvas.d.ts +2 -0
  30. package/dist/components/tree/renderTreeCanvas.js +15 -3
  31. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  32. package/dist/components/tree/useTreeHover.d.ts +24 -0
  33. package/dist/components/tree/useTreeHover.js +44 -0
  34. package/dist/components/tree/useTreeHover.js.map +1 -0
  35. package/dist/hierarchy.js +15 -9
  36. package/dist/hierarchy.js.map +1 -1
  37. package/dist/index.d.ts +2 -1
  38. package/dist/model/msaModel.js +4 -3
  39. package/dist/model/msaModel.js.map +1 -1
  40. package/dist/model/treeModel.js +9 -8
  41. package/dist/model/treeModel.js.map +1 -1
  42. package/dist/model.d.ts +52 -10
  43. package/dist/model.js +208 -93
  44. package/dist/model.js.map +1 -1
  45. package/dist/propertyConservation.d.ts +2 -1
  46. package/dist/propertyConservation.js +36 -25
  47. package/dist/propertyConservation.js.map +1 -1
  48. package/dist/seqPosToGlobalCol.d.ts +7 -0
  49. package/dist/seqPosToGlobalCol.js +17 -0
  50. package/dist/seqPosToGlobalCol.js.map +1 -1
  51. package/dist/stripDefault.d.ts +21 -0
  52. package/dist/stripDefault.js +26 -0
  53. package/dist/stripDefault.js.map +1 -0
  54. package/dist/types.d.ts +16 -0
  55. package/dist/version.d.ts +1 -1
  56. package/dist/version.js +1 -1
  57. package/package.json +3 -3
  58. package/src/clustalX.test.ts +9 -11
  59. package/src/clustalX.ts +27 -28
  60. package/src/columnCounts.test.ts +58 -0
  61. package/src/columnCounts.ts +170 -0
  62. package/src/components/MSAView.tsx +1 -9
  63. package/src/components/{msa/getVisibleLeaves.ts → getVisibleLeaves.ts} +1 -1
  64. package/src/components/msa/MSACanvasBlock.tsx +42 -110
  65. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +25 -18
  66. package/src/components/msa/renderMSABlock.ts +113 -125
  67. package/src/components/msa/renderMSAMouseover.ts +11 -34
  68. package/src/components/msa/useMsaBlockMouse.ts +81 -0
  69. package/src/components/tree/TreeCanvas.tsx +16 -23
  70. package/src/components/tree/TreeCanvasBlock.tsx +62 -143
  71. package/src/components/tree/renderTreeCanvas.test.ts +100 -190
  72. package/src/components/tree/renderTreeCanvas.ts +14 -3
  73. package/src/components/tree/useTreeHover.ts +69 -0
  74. package/src/domainBands.test.ts +98 -0
  75. package/src/hierarchy.ts +15 -9
  76. package/src/index.ts +7 -0
  77. package/src/model/msaModel.ts +4 -6
  78. package/src/model/treeModel.ts +9 -14
  79. package/src/model.ts +241 -112
  80. package/src/propertyConservation.test.ts +2 -13
  81. package/src/propertyConservation.ts +40 -31
  82. package/src/rowSpace.test.ts +46 -0
  83. package/src/seqPosToGlobalCol.ts +18 -0
  84. package/src/stripDefault.test.ts +48 -0
  85. package/src/stripDefault.ts +35 -0
  86. package/src/types.ts +23 -0
  87. package/src/version.ts +1 -1
  88. package/dist/components/msa/getVisibleLeaves.d.ts +0 -6
  89. package/dist/components/msa/getVisibleLeaves.js.map +0 -1
  90. package/dist/useDevicePixelRatio.d.ts +0 -1
  91. package/dist/useDevicePixelRatio.js +0 -27
  92. package/dist/useDevicePixelRatio.js.map +0 -1
  93. package/src/useDevicePixelRatio.ts +0 -29
  94. /package/dist/components/{msa/getVisibleLeaves.js → getVisibleLeaves.js} +0 -0
package/dist/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
+ import type { ColumnCounts } from './columnCounts.ts';
1
2
  /**
2
3
  * Per-column property conservation using Shannon entropy over physicochemical
3
4
  * classes rather than exact residues. Returns 0-1 where 1 = every non-gap
4
5
  * residue shares one property class. Mirrors the identity-conservation formula
5
6
  * so the two tracks are directly comparable: (1 - H/Hmax) * (1 - gapFraction).
6
7
  */
7
- export declare function calculatePropertyConservation(colStats: Record<string, number>[], colStatsSums: number[]): number[];
8
+ export declare function calculatePropertyConservation(counts: ColumnCounts): number[];
@@ -1,3 +1,4 @@
1
+ import { numResidueSlots, residueSlotOfLetter } from "./columnCounts.js";
1
2
  // Disjoint physicochemical classes for the 20 standard amino acids. Property
2
3
  // conservation asks a different question than identity conservation: a column
3
4
  // can vary in exact residue yet stay within one property class (a conservative
@@ -28,39 +29,49 @@ const aminoPropertyClass = {
28
29
  G: 'special',
29
30
  P: 'special',
30
31
  };
31
- const numPropertyClasses = new Set(Object.values(aminoPropertyClass)).size;
32
- const maxPropertyEntropy = Math.log2(numPropertyClasses);
32
+ const propertyClasses = [...new Set(Object.values(aminoPropertyClass))];
33
+ const maxPropertyEntropy = Math.log2(propertyClasses.length);
34
+ // residue slot -> index into propertyClasses (-1 for residues with no class,
35
+ // e.g. X or '*'), so the per-column tally needs no string lookups
36
+ const classOfSlot = new Int8Array(numResidueSlots).fill(-1);
37
+ for (const [letter, cls] of Object.entries(aminoPropertyClass)) {
38
+ classOfSlot[residueSlotOfLetter(letter)] = propertyClasses.indexOf(cls);
39
+ }
33
40
  /**
34
41
  * Per-column property conservation using Shannon entropy over physicochemical
35
42
  * classes rather than exact residues. Returns 0-1 where 1 = every non-gap
36
43
  * residue shares one property class. Mirrors the identity-conservation formula
37
44
  * so the two tracks are directly comparable: (1 - H/Hmax) * (1 - gapFraction).
38
45
  */
39
- export function calculatePropertyConservation(colStats, colStatsSums) {
40
- return colStats.map((stats, i) => {
41
- const total = colStatsSums[i];
42
- if (!total) {
43
- return 0;
44
- }
45
- let nonGapTotal = 0;
46
- const classCounts = {};
47
- for (const [letter, count] of Object.entries(stats)) {
48
- const cls = aminoPropertyClass[letter];
49
- if (cls) {
50
- classCounts[cls] = (classCounts[cls] ?? 0) + count;
51
- nonGapTotal += count;
46
+ export function calculatePropertyConservation(counts) {
47
+ const classCounts = new Float64Array(propertyClasses.length);
48
+ return Array.from({ length: counts.numColumns }, (_, col) => {
49
+ const total = counts.total(col);
50
+ let score = 0;
51
+ if (total) {
52
+ classCounts.fill(0);
53
+ let nonGapTotal = 0;
54
+ counts.forEachResidue(col, (slot, count) => {
55
+ const cls = classOfSlot[slot];
56
+ if (cls >= 0) {
57
+ classCounts[cls] += count;
58
+ nonGapTotal += count;
59
+ }
60
+ });
61
+ if (nonGapTotal > 0) {
62
+ let entropy = 0;
63
+ for (const count of classCounts) {
64
+ if (count > 0) {
65
+ const freq = count / nonGapTotal;
66
+ entropy -= freq * Math.log2(freq);
67
+ }
68
+ }
69
+ const gapFraction = (total - nonGapTotal) / total;
70
+ score =
71
+ Math.max(0, 1 - entropy / maxPropertyEntropy) * (1 - gapFraction);
52
72
  }
53
73
  }
54
- if (nonGapTotal === 0) {
55
- return 0;
56
- }
57
- let entropy = 0;
58
- for (const count of Object.values(classCounts)) {
59
- const freq = count / nonGapTotal;
60
- entropy -= freq * Math.log2(freq);
61
- }
62
- const gapFraction = (total - nonGapTotal) / total;
63
- return Math.max(0, 1 - entropy / maxPropertyEntropy) * (1 - gapFraction);
74
+ return score;
64
75
  });
65
76
  }
66
77
  //# sourceMappingURL=propertyConservation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"propertyConservation.js","sourceRoot":"","sources":["../src/propertyConservation.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,6CAA6C;AAC7C,EAAE;AACF,2EAA2E;AAC3E,iFAAiF;AACjF,MAAM,kBAAkB,GAA2B;IACjD,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS;CACb,CAAA;AAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAA;AAC1E,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;AAExD;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,QAAkC,EAClC,YAAsB;IAEtB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;QAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,CAAA;QACnB,MAAM,WAAW,GAA2B,EAAE,CAAA;QAC9C,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;YACtC,IAAI,GAAG,EAAE,CAAC;gBACR,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAA;gBAClD,WAAW,IAAI,KAAK,CAAA;YACtB,CAAC;QACH,CAAC;QACD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,KAAK,GAAG,WAAW,CAAA;YAChC,OAAO,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,KAAK,CAAA;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"propertyConservation.js","sourceRoot":"","sources":["../src/propertyConservation.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,13 @@
13
13
  * seqPosToGlobalCol({ row: "A-TG-C", seqPos: 2 }) // → 3 (G)
14
14
  * seqPosToGlobalCol({ row: "A-TG-C", seqPos: 3 }) // → 5 (C)
15
15
  */
16
+ /**
17
+ * The global column of every ungapped sequence position in a row, i.e.
18
+ * index[seqPos] is the column holding the seqPos-th non-gap character. Amortizes
19
+ * repeated seqPosToGlobalCol lookups (the domain overlay does one per feature
20
+ * per row) into a single pass per row.
21
+ */
22
+ export declare function buildSeqPosIndex(row: string): Int32Array<ArrayBuffer>;
16
23
  export declare function seqPosToGlobalCol({ row, seqPos, }: {
17
24
  row: string;
18
25
  seqPos: number;
@@ -14,6 +14,23 @@ import { isBlank } from "./util.js";
14
14
  * seqPosToGlobalCol({ row: "A-TG-C", seqPos: 2 }) // → 3 (G)
15
15
  * seqPosToGlobalCol({ row: "A-TG-C", seqPos: 3 }) // → 5 (C)
16
16
  */
17
+ /**
18
+ * The global column of every ungapped sequence position in a row, i.e.
19
+ * index[seqPos] is the column holding the seqPos-th non-gap character. Amortizes
20
+ * repeated seqPosToGlobalCol lookups (the domain overlay does one per feature
21
+ * per row) into a single pass per row.
22
+ */
23
+ export function buildSeqPosIndex(row) {
24
+ const index = new Int32Array(row.length);
25
+ let n = 0;
26
+ for (let col = 0; col < row.length; col++) {
27
+ // bit trick: (code - 45) >>> 0 <= 1 checks for '-' (45) or '.' (46)
28
+ if (!((row.charCodeAt(col) - 45) >>> 0 <= 1)) {
29
+ index[n++] = col;
30
+ }
31
+ }
32
+ return index.subarray(0, n);
33
+ }
17
34
  export function seqPosToGlobalCol({ row, seqPos, }) {
18
35
  let nonGapCount = 0;
19
36
  let globalCol = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"seqPosToGlobalCol.js","sourceRoot":"","sources":["../src/seqPosToGlobalCol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,GAAG,EACH,MAAM,GAIP;IACC,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,uCAAuC;IACvC,OAAO,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC7B,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC3B,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,WAAW,EAAE,CAAA;QACf,CAAC;QACD,SAAS,EAAE,CAAA;IACb,CAAC;IACD,oEAAoE;IACpE,iEAAiE;IACjE,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AACrC,CAAC"}
1
+ {"version":3,"file":"seqPosToGlobalCol.js","sourceRoot":"","sources":["../src/seqPosToGlobalCol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;;;;;;;;;;;;GAcG;AACH;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACxC,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;QAC1C,oEAAoE;QACpE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAA;QAClB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,GAAG,EACH,MAAM,GAIP;IACC,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,uCAAuC;IACvC,OAAO,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC7B,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC3B,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,WAAW,EAAE,CAAA;QACf,CAAC;QACD,SAAS,EAAE,CAAA;IACb,CAAC;IACD,oEAAoE;IACpE,iEAAiE;IACjE,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AACrC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { IAnyType, IOptionalIType, OptionalDefaultValueOrFunction } from '@jbrowse/mobx-state-tree';
2
+ /**
3
+ * `types.stripDefault`, degrading to `types.optional` on hosts that lack it.
4
+ *
5
+ * stripDefault keeps defaulted properties out of snapshots, but it exists only
6
+ * in the mobx-state-tree that ships with unreleased @jbrowse/core. This package
7
+ * declares `@jbrowse/mobx-state-tree: ^5.0.0`, and inside jbrowse-web the host
8
+ * supplies its own copy at runtime -- the plugin bundle externalizes it -- so we
9
+ * genuinely do not know which version we are calling until we are running.
10
+ *
11
+ * Calling it where it is absent throws while the model is being constructed,
12
+ * which in a plugin bundle means PluginLoader rejects and the entire app renders
13
+ * its error page. Losing minimal snapshots is a far better failure than losing
14
+ * the session, so this degrades instead.
15
+ *
16
+ * The two signatures are identical, so behaviour differs only in that defaults
17
+ * reappear in snapshots on older hosts (bigger session snapshots and shared
18
+ * URLs, nothing incorrect). stripDefaultSnapshot.test.ts still pins the stripped
19
+ * behaviour, since dev runs against a version that has it.
20
+ */
21
+ export declare function stripDefault<IT extends IAnyType>(type: IT, defaultValue: OptionalDefaultValueOrFunction<IT>): IOptionalIType<IT, [undefined]>;
@@ -0,0 +1,26 @@
1
+ import { types } from '@jbrowse/mobx-state-tree';
2
+ /**
3
+ * `types.stripDefault`, degrading to `types.optional` on hosts that lack it.
4
+ *
5
+ * stripDefault keeps defaulted properties out of snapshots, but it exists only
6
+ * in the mobx-state-tree that ships with unreleased @jbrowse/core. This package
7
+ * declares `@jbrowse/mobx-state-tree: ^5.0.0`, and inside jbrowse-web the host
8
+ * supplies its own copy at runtime -- the plugin bundle externalizes it -- so we
9
+ * genuinely do not know which version we are calling until we are running.
10
+ *
11
+ * Calling it where it is absent throws while the model is being constructed,
12
+ * which in a plugin bundle means PluginLoader rejects and the entire app renders
13
+ * its error page. Losing minimal snapshots is a far better failure than losing
14
+ * the session, so this degrades instead.
15
+ *
16
+ * The two signatures are identical, so behaviour differs only in that defaults
17
+ * reappear in snapshots on older hosts (bigger session snapshots and shared
18
+ * URLs, nothing incorrect). stripDefaultSnapshot.test.ts still pins the stripped
19
+ * behaviour, since dev runs against a version that has it.
20
+ */
21
+ export function stripDefault(type, defaultValue) {
22
+ return typeof types.stripDefault === 'function'
23
+ ? types.stripDefault(type, defaultValue)
24
+ : types.optional(type, defaultValue);
25
+ }
26
+ //# sourceMappingURL=stripDefault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripDefault.js","sourceRoot":"","sources":["../src/stripDefault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAQhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAQ,EACR,YAAgD;IAEhD,OAAO,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU;QAC7C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;QACxC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;AACxC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -20,6 +20,22 @@ export interface BasicTrack {
20
20
  ReactComponent: React.FC<any>;
21
21
  model: TextTrackModel & BarTrackModel;
22
22
  }
23
+ export interface TidyDomainAnnotation {
24
+ id: string;
25
+ name: string;
26
+ accession: string;
27
+ description: string;
28
+ featureType?: string;
29
+ start: number;
30
+ end: number;
31
+ strand?: number;
32
+ }
33
+ export interface DomainBand {
34
+ annotation: TidyDomainAnnotation;
35
+ startCol: number;
36
+ endCol: number;
37
+ stackIndex: number;
38
+ }
23
39
  export interface Node {
24
40
  children?: Node[];
25
41
  name?: string;
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "5.6.1";
1
+ export declare const version = "5.6.3";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '5.6.1';
1
+ export const version = '5.6.3';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-msaview",
3
3
  "author": "Colin",
4
- "version": "5.6.1",
4
+ "version": "5.6.3",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "repository": {
@@ -41,8 +41,8 @@
41
41
  "dependencies": {
42
42
  "colord": "^2.9.3",
43
43
  "flatbush": "^4.6.2",
44
- "@jbrowse/svgcanvas": "5.6.1",
45
- "msa-parsers": "5.6.1"
44
+ "@jbrowse/svgcanvas": "5.6.3",
45
+ "msa-parsers": "5.6.3"
46
46
  },
47
47
  "scripts": {
48
48
  "clean": "rimraf dist bundle",
@@ -1,13 +1,11 @@
1
1
  import { describe, expect, test } from 'vitest'
2
2
 
3
3
  import { clustalXColumnColors } from './clustalX.ts'
4
+ import { columnCountsFromColumns } from './columnCounts.ts'
4
5
 
5
- function counts(letters: string) {
6
- const stats: Record<string, number> = {}
7
- for (const c of letters) {
8
- stats[c] = (stats[c] ?? 0) + 1
9
- }
10
- return stats
6
+ // one alignment column, given top-to-bottom
7
+ function column(letters: string) {
8
+ return clustalXColumnColors(columnCountsFromColumns([letters]), 0)
11
9
  }
12
10
 
13
11
  const BLUE = 'rgb(128,179,230)'
@@ -20,7 +18,7 @@ const CYAN = 'rgb(26, 179, 179)'
20
18
 
21
19
  describe('clustalXColumnColors', () => {
22
20
  test('hydrophobic column (all L) colors the hydrophobic group', () => {
23
- expect(clustalXColumnColors(counts('LLLLLLLLLL'), 10)).toEqual({
21
+ expect(column('LLLLLLLLLL')).toEqual({
24
22
  W: BLUE,
25
23
  L: BLUE,
26
24
  V: BLUE,
@@ -37,13 +35,13 @@ describe('clustalXColumnColors', () => {
37
35
  })
38
36
 
39
37
  test('glycine is always colored when present', () => {
40
- expect(clustalXColumnColors(counts('GGGGGGGGGG'), 10)).toEqual({
38
+ expect(column('GGGGGGGGGG')).toEqual({
41
39
  G: ORANGE,
42
40
  })
43
41
  })
44
42
 
45
43
  test('proline is always colored, and counts as hydrophobic', () => {
46
- expect(clustalXColumnColors(counts('PPPPPPPPPP'), 10)).toEqual({
44
+ expect(column('PPPPPPPPPP')).toEqual({
47
45
  W: BLUE,
48
46
  L: BLUE,
49
47
  V: BLUE,
@@ -61,7 +59,7 @@ describe('clustalXColumnColors', () => {
61
59
  })
62
60
 
63
61
  test('positively charged column (all K)', () => {
64
- expect(clustalXColumnColors(counts('KKKKKKKKKK'), 10)).toEqual({
62
+ expect(column('KKKKKKKKKK')).toEqual({
65
63
  K: RED,
66
64
  R: RED,
67
65
  E: 'rgb(192, 72, 192)',
@@ -71,6 +69,6 @@ describe('clustalXColumnColors', () => {
71
69
  })
72
70
 
73
71
  test('unconserved column produces no colors', () => {
74
- expect(clustalXColumnColors(counts('XXXXXXXXXX'), 10)).toEqual({})
72
+ expect(column('XXXXXXXXXX')).toEqual({})
75
73
  })
76
74
  })
package/src/clustalX.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  // ClustalX consensus coloring.
2
2
  // ref http://www.jalview.org/help/html/colourSchemes/clustal.html
3
3
 
4
+ import type { ColumnCounts } from './columnCounts.ts'
5
+
4
6
  const BLUE = 'rgb(128,179,230)'
5
7
  const RED = '#d88'
6
8
  const MAGENTA_E = 'rgb(192, 72, 192)'
@@ -13,35 +15,32 @@ const YELLOW = 'rgb(204, 204, 0)'
13
15
  const CYAN = 'rgb(26, 179, 179)'
14
16
 
15
17
  /**
16
- * Computes the ClustalX letter->color map for a single alignment column given
17
- * its residue counts (`stats`) and total residue count (`total`).
18
+ * Computes the ClustalX letter->color map for a single alignment column, read
19
+ * out of the alignment-wide `ColumnCounts` tally.
18
20
  */
19
- export function clustalXColumnColors(
20
- stats: Record<string, number>,
21
- total: number,
22
- ) {
23
- const {
24
- W = 0,
25
- L = 0,
26
- V = 0,
27
- I = 0,
28
- M = 0,
29
- A = 0,
30
- F = 0,
31
- C = 0,
32
- H = 0,
33
- P = 0,
34
- R = 0,
35
- K = 0,
36
- Q = 0,
37
- E = 0,
38
- D = 0,
39
- T = 0,
40
- S = 0,
41
- G = 0,
42
- Y = 0,
43
- N = 0,
44
- } = stats
21
+ export function clustalXColumnColors(counts: ColumnCounts, col: number) {
22
+ const total = counts.total(col)
23
+ const n = (letter: string) => counts.count(col, letter)
24
+ const W = n('W')
25
+ const L = n('L')
26
+ const V = n('V')
27
+ const I = n('I')
28
+ const M = n('M')
29
+ const A = n('A')
30
+ const F = n('F')
31
+ const C = n('C')
32
+ const H = n('H')
33
+ const P = n('P')
34
+ const R = n('R')
35
+ const K = n('K')
36
+ const Q = n('Q')
37
+ const E = n('E')
38
+ const D = n('D')
39
+ const T = n('T')
40
+ const S = n('S')
41
+ const G = n('G')
42
+ const Y = n('Y')
43
+ const N = n('N')
45
44
 
46
45
  const hydrophobic = W + L + V + I + M + A + F + C + H + P + Y
47
46
  const KR = K + R