jbrowse-plugin-protein3d 0.0.3 → 0.0.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 (196) hide show
  1. package/dist/AddHighlightModel/GenomeMouseoverHighlight.js +3 -9
  2. package/dist/AddHighlightModel/GenomeMouseoverHighlight.js.map +1 -1
  3. package/dist/AddHighlightModel/HighlightComponents.d.ts +1 -2
  4. package/dist/AddHighlightModel/HighlightComponents.js.map +1 -1
  5. package/dist/AddHighlightModel/ProteinToGenomeClickHighlight.js +4 -3
  6. package/dist/AddHighlightModel/ProteinToGenomeClickHighlight.js.map +1 -1
  7. package/dist/AddHighlightModel/ProteinToGenomeHoverHighlight.d.ts +1 -2
  8. package/dist/AddHighlightModel/ProteinToGenomeHoverHighlight.js +4 -3
  9. package/dist/AddHighlightModel/ProteinToGenomeHoverHighlight.js.map +1 -1
  10. package/dist/AddHighlightModel/util.js +1 -1
  11. package/dist/AddHighlightModel/util.js.map +1 -1
  12. package/dist/AlphaFoldConfidenceAdapter/AlphaFoldConfidenceAdapter.d.ts +16 -0
  13. package/dist/AlphaFoldConfidenceAdapter/AlphaFoldConfidenceAdapter.js +43 -0
  14. package/dist/AlphaFoldConfidenceAdapter/AlphaFoldConfidenceAdapter.js.map +1 -0
  15. package/dist/AlphaFoldConfidenceAdapter/configSchema.d.ts +13 -0
  16. package/dist/AlphaFoldConfidenceAdapter/configSchema.js +16 -0
  17. package/dist/AlphaFoldConfidenceAdapter/configSchema.js.map +1 -0
  18. package/dist/AlphaFoldConfidenceAdapter/index.d.ts +2 -0
  19. package/dist/AlphaFoldConfidenceAdapter/index.js +11 -0
  20. package/dist/AlphaFoldConfidenceAdapter/index.js.map +1 -0
  21. package/dist/AlphaMissensePathogenicityAdapter/AlphaMissensePathogenicityAdapter.d.ts +30 -0
  22. package/dist/AlphaMissensePathogenicityAdapter/AlphaMissensePathogenicityAdapter.js +78 -0
  23. package/dist/AlphaMissensePathogenicityAdapter/AlphaMissensePathogenicityAdapter.js.map +1 -0
  24. package/dist/AlphaMissensePathogenicityAdapter/configSchema.d.ts +13 -0
  25. package/dist/AlphaMissensePathogenicityAdapter/configSchema.js +16 -0
  26. package/dist/AlphaMissensePathogenicityAdapter/configSchema.js.map +1 -0
  27. package/dist/AlphaMissensePathogenicityAdapter/index.d.ts +2 -0
  28. package/dist/AlphaMissensePathogenicityAdapter/index.js +11 -0
  29. package/dist/AlphaMissensePathogenicityAdapter/index.js.map +1 -0
  30. package/dist/LaunchProteinView/components/AlphaFoldDBSearch.js +162 -13
  31. package/dist/LaunchProteinView/components/AlphaFoldDBSearch.js.map +1 -1
  32. package/dist/LaunchProteinView/components/AlphaFoldDBSearchStatus.js +8 -6
  33. package/dist/LaunchProteinView/components/AlphaFoldDBSearchStatus.js.map +1 -1
  34. package/dist/LaunchProteinView/components/HelpButton.js +6 -2
  35. package/dist/LaunchProteinView/components/HelpButton.js.map +1 -1
  36. package/dist/LaunchProteinView/components/HelpDialog.js +3 -1
  37. package/dist/LaunchProteinView/components/HelpDialog.js.map +1 -1
  38. package/dist/LaunchProteinView/components/LaunchProteinViewDialog.js +12 -4
  39. package/dist/LaunchProteinView/components/LaunchProteinViewDialog.js.map +1 -1
  40. package/dist/LaunchProteinView/components/MSATable.js +3 -1
  41. package/dist/LaunchProteinView/components/MSATable.js.map +1 -1
  42. package/dist/LaunchProteinView/components/ManualUniProtIDEntry.d.ts +8 -0
  43. package/dist/LaunchProteinView/components/ManualUniProtIDEntry.js +225 -0
  44. package/dist/LaunchProteinView/components/ManualUniProtIDEntry.js.map +1 -0
  45. package/dist/LaunchProteinView/components/TranscriptSelector.js +3 -1
  46. package/dist/LaunchProteinView/components/TranscriptSelector.js.map +1 -1
  47. package/dist/LaunchProteinView/components/UserProvidedStructure.js +19 -12
  48. package/dist/LaunchProteinView/components/UserProvidedStructure.js.map +1 -1
  49. package/dist/LaunchProteinView/components/calculateProteinSequence.js +5 -3
  50. package/dist/LaunchProteinView/components/calculateProteinSequence.js.map +1 -1
  51. package/dist/LaunchProteinView/components/useLocalStructureFileSequence.d.ts +1 -1
  52. package/dist/LaunchProteinView/components/useLocalStructureFileSequence.js +29 -9
  53. package/dist/LaunchProteinView/components/useLocalStructureFileSequence.js.map +1 -1
  54. package/dist/LaunchProteinView/components/useRemoteStructureFileSequence.d.ts +1 -1
  55. package/dist/LaunchProteinView/components/useRemoteStructureFileSequence.js +25 -8
  56. package/dist/LaunchProteinView/components/useRemoteStructureFileSequence.js.map +1 -1
  57. package/dist/LaunchProteinView/components/util.js +1 -1
  58. package/dist/LaunchProteinView/index.js +7 -3
  59. package/dist/LaunchProteinView/index.js.map +1 -1
  60. package/dist/ProteinView/{loadStructureFromData.d.ts → addStructureFromData.d.ts} +2 -2
  61. package/dist/ProteinView/{loadStructureFromData.js → addStructureFromData.js} +3 -8
  62. package/dist/ProteinView/addStructureFromData.js.map +1 -0
  63. package/dist/ProteinView/{loadStructureFromURL.d.ts → addStructureFromURL.d.ts} +2 -2
  64. package/dist/ProteinView/{loadStructureFromURL.js → addStructureFromURL.js} +11 -9
  65. package/dist/ProteinView/addStructureFromURL.js.map +1 -0
  66. package/dist/ProteinView/clearSelection.js +1 -1
  67. package/dist/ProteinView/clearSelection.js.map +1 -1
  68. package/dist/ProteinView/components/ProteinAlignment.d.ts +2 -2
  69. package/dist/ProteinView/components/ProteinAlignment.js +37 -26
  70. package/dist/ProteinView/components/ProteinAlignment.js.map +1 -1
  71. package/dist/ProteinView/components/ProteinAlignmentHelpButton.d.ts +2 -2
  72. package/dist/ProteinView/components/ProteinAlignmentHelpButton.js +6 -4
  73. package/dist/ProteinView/components/ProteinAlignmentHelpButton.js.map +1 -1
  74. package/dist/ProteinView/components/ProteinAlignmentHelpDialog.js +6 -5
  75. package/dist/ProteinView/components/ProteinAlignmentHelpDialog.js.map +1 -1
  76. package/dist/ProteinView/components/ProteinView.js +18 -60
  77. package/dist/ProteinView/components/ProteinView.js.map +1 -1
  78. package/dist/ProteinView/components/{Header.js → ProteinViewHeader.js} +29 -12
  79. package/dist/ProteinView/components/ProteinViewHeader.js.map +1 -0
  80. package/dist/ProteinView/components/SplitString.d.ts +4 -4
  81. package/dist/ProteinView/components/SplitString.js +3 -3
  82. package/dist/ProteinView/components/SplitString.js.map +1 -1
  83. package/dist/ProteinView/genomeToProtein.d.ts +2 -2
  84. package/dist/ProteinView/genomeToProtein.js +4 -5
  85. package/dist/ProteinView/genomeToProtein.js.map +1 -1
  86. package/dist/ProteinView/highlightResidue.js +2 -2
  87. package/dist/ProteinView/highlightResidue.js.map +1 -1
  88. package/dist/ProteinView/launchRemotePairwiseAlignment.d.ts +2 -5
  89. package/dist/ProteinView/launchRemotePairwiseAlignment.js +7 -3
  90. package/dist/ProteinView/launchRemotePairwiseAlignment.js.map +1 -1
  91. package/dist/ProteinView/model.d.ts +492 -160
  92. package/dist/ProteinView/model.js +62 -246
  93. package/dist/ProteinView/model.js.map +1 -1
  94. package/dist/ProteinView/proteinToGenomeMapping.d.ts +6 -6
  95. package/dist/ProteinView/proteinToGenomeMapping.js +29 -28
  96. package/dist/ProteinView/proteinToGenomeMapping.js.map +1 -1
  97. package/dist/ProteinView/selectResidue.js +1 -1
  98. package/dist/ProteinView/selectResidue.js.map +1 -1
  99. package/dist/ProteinView/structureModel.d.ts +183 -0
  100. package/dist/ProteinView/structureModel.js +407 -0
  101. package/dist/ProteinView/structureModel.js.map +1 -0
  102. package/dist/ProteinView/useProteinView.d.ts +1 -4
  103. package/dist/ProteinView/useProteinView.js +3 -15
  104. package/dist/ProteinView/useProteinView.js.map +1 -1
  105. package/dist/ProteinView/util.d.ts +3 -3
  106. package/dist/ProteinView/util.js +8 -6
  107. package/dist/ProteinView/util.js.map +1 -1
  108. package/dist/UniProtVariationAdapter/UniProtVariationAdapter.d.ts +15 -0
  109. package/dist/UniProtVariationAdapter/UniProtVariationAdapter.js +55 -0
  110. package/dist/UniProtVariationAdapter/UniProtVariationAdapter.js.map +1 -0
  111. package/dist/UniProtVariationAdapter/configSchema.d.ts +17 -0
  112. package/dist/UniProtVariationAdapter/configSchema.js +20 -0
  113. package/dist/UniProtVariationAdapter/configSchema.js.map +1 -0
  114. package/dist/UniProtVariationAdapter/index.d.ts +2 -0
  115. package/dist/UniProtVariationAdapter/index.js +11 -0
  116. package/dist/UniProtVariationAdapter/index.js.map +1 -0
  117. package/dist/genomeToTranscriptMapping.d.ts +2 -2
  118. package/dist/genomeToTranscriptMapping.js +3 -3
  119. package/dist/genomeToTranscriptMapping.js.map +1 -1
  120. package/dist/index.js +6 -0
  121. package/dist/index.js.map +1 -1
  122. package/dist/jbrowse-plugin-protein3d.umd.production.min.js +2506 -1658
  123. package/dist/jbrowse-plugin-protein3d.umd.production.min.js.map +4 -4
  124. package/dist/mappings.d.ts +12 -10
  125. package/dist/mappings.js +7 -7
  126. package/dist/mappings.js.map +1 -1
  127. package/dist/mappings.test.js +7 -5
  128. package/dist/mappings.test.js.map +1 -1
  129. package/dist/test_data/gene.d.ts +577 -64
  130. package/dist/test_data/gene.js +1 -1
  131. package/dist/test_data/gene.js.map +1 -1
  132. package/package.json +20 -19
  133. package/src/AddHighlightModel/GenomeMouseoverHighlight.tsx +4 -17
  134. package/src/AddHighlightModel/HighlightComponents.tsx +1 -3
  135. package/src/AddHighlightModel/ProteinToGenomeClickHighlight.tsx +17 -14
  136. package/src/AddHighlightModel/ProteinToGenomeHoverHighlight.tsx +18 -17
  137. package/src/AddHighlightModel/util.ts +1 -1
  138. package/src/AlphaFoldConfidenceAdapter/AlphaFoldConfidenceAdapter.ts +63 -0
  139. package/src/AlphaFoldConfidenceAdapter/configSchema.ts +21 -0
  140. package/src/AlphaFoldConfidenceAdapter/index.ts +19 -0
  141. package/src/AlphaMissensePathogenicityAdapter/AlphaMissensePathogenicityAdapter.ts +109 -0
  142. package/src/AlphaMissensePathogenicityAdapter/configSchema.ts +21 -0
  143. package/src/AlphaMissensePathogenicityAdapter/index.ts +19 -0
  144. package/src/LaunchProteinView/components/AlphaFoldDBSearch.tsx +173 -12
  145. package/src/LaunchProteinView/components/AlphaFoldDBSearchStatus.tsx +8 -6
  146. package/src/LaunchProteinView/components/HelpButton.tsx +10 -2
  147. package/src/LaunchProteinView/components/HelpDialog.tsx +6 -1
  148. package/src/LaunchProteinView/components/LaunchProteinViewDialog.tsx +20 -4
  149. package/src/LaunchProteinView/components/MSATable.tsx +3 -1
  150. package/src/LaunchProteinView/components/ManualUniProtIDEntry.tsx +332 -0
  151. package/src/LaunchProteinView/components/TranscriptSelector.tsx +9 -7
  152. package/src/LaunchProteinView/components/UserProvidedStructure.tsx +18 -13
  153. package/src/LaunchProteinView/components/calculateProteinSequence.ts +6 -4
  154. package/src/LaunchProteinView/components/useLocalStructureFileSequence.ts +28 -9
  155. package/src/LaunchProteinView/components/useRemoteStructureFileSequence.ts +23 -8
  156. package/src/LaunchProteinView/components/util.ts +1 -1
  157. package/src/LaunchProteinView/index.ts +36 -26
  158. package/src/ProteinView/{loadStructureFromData.ts → addStructureFromData.ts} +2 -8
  159. package/src/ProteinView/{loadStructureFromURL.ts → addStructureFromURL.ts} +11 -11
  160. package/src/ProteinView/clearSelection.ts +1 -1
  161. package/src/ProteinView/components/ProteinAlignment.tsx +51 -35
  162. package/src/ProteinView/components/ProteinAlignmentHelpButton.tsx +4 -4
  163. package/src/ProteinView/components/ProteinAlignmentHelpDialog.tsx +15 -11
  164. package/src/ProteinView/components/ProteinView.tsx +22 -82
  165. package/src/ProteinView/components/{Header.tsx → ProteinViewHeader.tsx} +44 -23
  166. package/src/ProteinView/components/SplitString.tsx +8 -8
  167. package/src/ProteinView/genomeToProtein.ts +5 -9
  168. package/src/ProteinView/highlightResidue.ts +2 -2
  169. package/src/ProteinView/launchRemotePairwiseAlignment.ts +6 -3
  170. package/src/ProteinView/model.ts +75 -287
  171. package/src/ProteinView/proteinToGenomeMapping.ts +40 -38
  172. package/src/ProteinView/selectResidue.ts +1 -1
  173. package/src/ProteinView/structureModel.ts +512 -0
  174. package/src/ProteinView/useProteinView.ts +2 -19
  175. package/src/ProteinView/util.ts +20 -9
  176. package/src/UniProtVariationAdapter/UniProtVariationAdapter.ts +99 -0
  177. package/src/UniProtVariationAdapter/configSchema.ts +25 -0
  178. package/src/UniProtVariationAdapter/index.ts +17 -0
  179. package/src/__snapshots__/mappings.test.ts.snap +224 -224
  180. package/src/genomeToTranscriptMapping.ts +9 -9
  181. package/src/index.ts +6 -0
  182. package/src/mappings.test.ts +7 -5
  183. package/src/mappings.ts +25 -23
  184. package/src/test_data/gene.ts +3 -3
  185. package/dist/ProteinView/components/Header.js.map +0 -1
  186. package/dist/ProteinView/loadStructureFromData.js.map +0 -1
  187. package/dist/ProteinView/loadStructureFromURL.js.map +0 -1
  188. package/dist/ProteinView/useProteinViewClickBehavior.d.ts +0 -8
  189. package/dist/ProteinView/useProteinViewClickBehavior.js +0 -34
  190. package/dist/ProteinView/useProteinViewClickBehavior.js.map +0 -1
  191. package/dist/ProteinView/useProteinViewHoverBehavior.d.ts +0 -6
  192. package/dist/ProteinView/useProteinViewHoverBehavior.js +0 -31
  193. package/dist/ProteinView/useProteinViewHoverBehavior.js.map +0 -1
  194. package/src/ProteinView/useProteinViewClickBehavior.ts +0 -48
  195. package/src/ProteinView/useProteinViewHoverBehavior.ts +0 -44
  196. /package/dist/ProteinView/components/{Header.d.ts → ProteinViewHeader.d.ts} +0 -0
@@ -3,18 +3,12 @@ import { observer } from 'mobx-react';
3
3
  import { getSession } from '@jbrowse/core/util';
4
4
  // locals
5
5
  import Highlight from './Highlight';
6
+ import { checkHovered } from '../ProteinView/util';
6
7
  const GenomeMouseoverHighlight = observer(function ({ model, }) {
7
- const { hovered } = getSession(model);
8
- return hovered &&
9
- typeof hovered === 'object' &&
10
- 'hoverPosition' in hovered ? (React.createElement(HoverHighlight, { model: model })) : null;
11
- });
12
- const HoverHighlight = observer(function ({ model, }) {
13
8
  const session = getSession(model);
14
- if (session.views.some(s => s.type === 'ProteinView')) {
15
- const { hovered } = session;
9
+ const { views, hovered } = session;
10
+ if (checkHovered(hovered) && views.some(s => s.type === 'ProteinView')) {
16
11
  const { assemblyNames } = model;
17
- // @ts-expect-error
18
12
  const { coord, refName } = hovered.hoverPosition;
19
13
  return (React.createElement(Highlight, { model: model, start: coord - 1, end: coord, refName: refName, assemblyName: assemblyNames[0] }));
20
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GenomeMouseoverHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/GenomeMouseoverHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,SAAS;AACT,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,MAAM,wBAAwB,GAAG,QAAQ,CAAC,UAAU,EAClD,KAAK,GAGN;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACrC,OAAO,OAAO;QACZ,OAAO,OAAO,KAAK,QAAQ;QAC3B,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC,CAC7B,oBAAC,cAAc,IAAC,KAAK,EAAE,KAAK,GAAI,CACjC,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAC,CAAA;AAEF,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,EACxC,KAAK,GAGN;IACC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACjC,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC;QACtD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QAC3B,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;QAC/B,mBAAmB;QACnB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,CAAA;QAChD,OAAO,CACL,oBAAC,SAAS,IACR,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,GAAG,CAAC,EAChB,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,GAC9B,CACH,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,CAAA;AAEF,eAAe,wBAAwB,CAAA"}
1
+ {"version":3,"file":"GenomeMouseoverHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/GenomeMouseoverHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,SAAS;AACT,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,wBAAwB,GAAG,QAAQ,CAAC,UAAU,EAClD,KAAK,GAGN;IACC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAClC,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC;QACvE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;QAC/B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,CAAA;QAChD,OAAO,CACL,oBAAC,SAAS,IACR,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,GAAG,CAAC,EAChB,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,aAAa,CAAC,CAAC,CAAE,GAC/B,CACH,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,CAAA;AAEF,eAAe,wBAAwB,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
3
- type LGV = LinearGenomeViewModel;
4
3
  declare const HighlightComponents: ({ model, }: {
5
- model: LGV;
4
+ model: LinearGenomeViewModel;
6
5
  }) => React.JSX.Element;
7
6
  export default HighlightComponents;
@@ -1 +1 @@
1
- {"version":3,"file":"HighlightComponents.js","sourceRoot":"","sources":["../../src/AddHighlightModel/HighlightComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC,SAAS;AACT,OAAO,6BAA6B,MAAM,iCAAiC,CAAA;AAC3E,OAAO,6BAA6B,MAAM,iCAAiC,CAAA;AAC3E,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AAIjE,MAAM,mBAAmB,GAAG,QAAQ,CAAC,SAAS,SAAS,CAAC,EACtD,KAAK,GAGN;IACC,OAAO,CACL;QACE,oBAAC,6BAA6B,IAAC,KAAK,EAAE,KAAK,GAAI;QAC/C,oBAAC,6BAA6B,IAAC,KAAK,EAAE,KAAK,GAAI;QAC/C,oBAAC,wBAAwB,IAAC,KAAK,EAAE,KAAK,GAAI,CACzC,CACJ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"HighlightComponents.js","sourceRoot":"","sources":["../../src/AddHighlightModel/HighlightComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC,SAAS;AACT,OAAO,6BAA6B,MAAM,iCAAiC,CAAA;AAC3E,OAAO,6BAA6B,MAAM,iCAAiC,CAAA;AAC3E,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AAEjE,MAAM,mBAAmB,GAAG,QAAQ,CAAC,SAAS,SAAS,CAAC,EACtD,KAAK,GAGN;IACC,OAAO,CACL;QACE,oBAAC,6BAA6B,IAAC,KAAK,EAAE,KAAK,GAAI;QAC/C,oBAAC,6BAA6B,IAAC,KAAK,EAAE,KAAK,GAAI;QAC/C,oBAAC,wBAAwB,IAAC,KAAK,EAAE,KAAK,GAAI,CACzC,CACJ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,mBAAmB,CAAA"}
@@ -5,9 +5,10 @@ import Highlight from './Highlight';
5
5
  const ProteinToGenomeClickHighlight = observer(function ({ model, }) {
6
6
  const { assemblyManager, views } = getSession(model);
7
7
  const { assemblyNames } = model;
8
- const p = views.find(f => f.type === 'ProteinView');
9
- const assembly = assemblyManager.get(assemblyNames[0]);
10
- return assembly ? (React.createElement(React.Fragment, null, p?.clickGenomeHighlights.map((r, idx) => (React.createElement(Highlight, { key: `${JSON.stringify(r)}-${idx}}`, start: r.start, end: r.end, refName: r.refName, assemblyName: assemblyNames[0], model: model }))))) : null;
8
+ const proteinView = views.find(f => f.type === 'ProteinView');
9
+ const assemblyName = assemblyNames[0];
10
+ const assembly = assemblyManager.get(assemblyName);
11
+ return assembly ? (React.createElement(React.Fragment, null, proteinView?.structures.map(structure => structure.clickGenomeHighlights.map((r, idx) => (React.createElement(Highlight, { key: `${JSON.stringify(r)}-${idx}}`, start: r.start, end: r.end, refName: r.refName, assemblyName: assemblyName, model: model })))))) : null;
11
12
  });
12
13
  export default ProteinToGenomeClickHighlight;
13
14
  //# sourceMappingURL=ProteinToGenomeClickHighlight.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProteinToGenomeClickHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/ProteinToGenomeClickHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,OAAO,SAAS,MAAM,aAAa,CAAA;AAInC,MAAM,6BAA6B,GAAG,QAAQ,CAAC,UAAU,EACvD,KAAK,GAGN;IACC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;IAC/B,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAClB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CACG,CAAA;IAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACtD,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,0CACG,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CACxC,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,EACnC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,EAC9B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CACD,CACJ,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAC,CAAA;AAEF,eAAe,6BAA6B,CAAA"}
1
+ {"version":3,"file":"ProteinToGenomeClickHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/ProteinToGenomeClickHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,OAAO,SAAS,MAAM,aAAa,CAAA;AAInC,MAAM,6BAA6B,GAAG,QAAQ,CAAC,UAAU,EACvD,KAAK,GAGN;IACC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;IAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAE/C,CAAA;IACb,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAE,CAAA;IACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,0CACG,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACvC,SAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAC9C,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,EACnC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CACH,CACA,CACJ,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAC,CAAA;AAEF,eAAe,6BAA6B,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
3
- type LGV = LinearGenomeViewModel;
4
3
  declare const ProteinToGenomeHoverHighlight: ({ model, }: {
5
- model: LGV;
4
+ model: LinearGenomeViewModel;
6
5
  }) => React.JSX.Element | null;
7
6
  export default ProteinToGenomeHoverHighlight;
@@ -5,9 +5,10 @@ import Highlight from './Highlight';
5
5
  const ProteinToGenomeHoverHighlight = observer(function ({ model, }) {
6
6
  const { assemblyManager, views } = getSession(model);
7
7
  const { assemblyNames } = model;
8
- const p = views.find(f => f.type === 'ProteinView');
9
- const assembly = assemblyManager.get(assemblyNames[0]);
10
- return assembly ? (React.createElement(React.Fragment, null, p?.hoverGenomeHighlights.map((r, idx) => (React.createElement(Highlight, { key: `${JSON.stringify(r)}-${idx}`, start: r.start, end: r.end, refName: r.refName, assemblyName: assemblyNames[0], model: model }))))) : null;
8
+ const proteinView = views.find(f => f.type === 'ProteinView');
9
+ const assemblyName = assemblyNames[0];
10
+ const assembly = assemblyManager.get(assemblyName);
11
+ return assembly ? (React.createElement(React.Fragment, null, proteinView?.structures.map(structure => structure.hoverGenomeHighlights.map((r, idx) => (React.createElement(Highlight, { key: `${JSON.stringify(r)}-${idx}`, start: r.start, end: r.end, refName: r.refName, assemblyName: assemblyName, model: model })))))) : null;
11
12
  });
12
13
  export default ProteinToGenomeHoverHighlight;
13
14
  //# sourceMappingURL=ProteinToGenomeHoverHighlight.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProteinToGenomeHoverHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/ProteinToGenomeHoverHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,OAAO,SAAS,MAAM,aAAa,CAAA;AAInC,MAAM,6BAA6B,GAAG,QAAQ,CAAC,UAAU,EACvD,KAAK,GAGN;IACC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;IAC/B,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAClB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CACG,CAAA;IAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACtD,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,0CACG,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CACxC,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAClC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,EAC9B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CACD,CACJ,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAC,CAAA;AAEF,eAAe,6BAA6B,CAAA"}
1
+ {"version":3,"file":"ProteinToGenomeHoverHighlight.js","sourceRoot":"","sources":["../../src/AddHighlightModel/ProteinToGenomeHoverHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,MAAM,6BAA6B,GAAG,QAAQ,CAAC,UAAU,EACvD,KAAK,GAGN;IACC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;IAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAE/C,CAAA;IACb,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAE,CAAA;IACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,0CACG,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACvC,SAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAC9C,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAClC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CACH,CACA,CACJ,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAC,CAAA;AAEF,eAAe,6BAA6B,CAAA"}
@@ -5,7 +5,7 @@ export const useStyles = makeStyles()({
5
5
  background: 'rgba(255,255,0,0.2)',
6
6
  border: '1px solid rgba(50,50,0,0.2)',
7
7
  position: 'absolute',
8
- zIndex: 1000,
8
+ zIndex: 99,
9
9
  textAlign: 'center',
10
10
  pointerEvents: 'none',
11
11
  overflow: 'hidden',
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/AddHighlightModel/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;IACpC,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,6BAA6B;QACrC,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,IAAI;QACZ,SAAS,EAAE,QAAQ;QACnB,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,QAAQ;KACnB;IACD,UAAU,EAAE;QACV,MAAM,EAAE,iBAAiB;KAC1B;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/AddHighlightModel/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;IACpC,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,6BAA6B;QACrC,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,EAAE;QACV,SAAS,EAAE,QAAQ;QACnB,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,QAAQ;KACnB;IACD,UAAU,EAAE;QACV,MAAM,EAAE,iBAAiB;KAC1B;CACF,CAAC,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { Region, Feature } from '@jbrowse/core/util';
3
+ export default class AlphaFoldConfidenceAdapter extends BaseFeatureDataAdapter {
4
+ static capabilities: string[];
5
+ feats: Promise<{
6
+ uniqueId: string;
7
+ start: number;
8
+ end: number;
9
+ score: number;
10
+ }[]> | undefined;
11
+ private loadDataP;
12
+ private loadData;
13
+ getRefNames(_opts?: BaseOptions): Promise<never[]>;
14
+ getFeatures(query: Region, opts?: BaseOptions): import("rxjs").Observable<Feature>;
15
+ freeResources(): void;
16
+ }
@@ -0,0 +1,43 @@
1
+ import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { openLocation } from '@jbrowse/core/util/io';
3
+ import { ObservableCreate } from '@jbrowse/core/util/rxjs';
4
+ import { doesIntersect2, SimpleFeature, } from '@jbrowse/core/util';
5
+ export default class AlphaFoldConfidenceAdapter extends BaseFeatureDataAdapter {
6
+ static capabilities = ['getFeatures', 'getRefNames'];
7
+ feats;
8
+ async loadDataP() {
9
+ const scores = JSON.parse(await openLocation(this.getConf('location')).readFile('utf8'));
10
+ return scores.residueNumber.map((value, idx) => ({
11
+ uniqueId: `feat-${idx}`,
12
+ start: value,
13
+ end: value + 1,
14
+ score: scores.confidenceScore[idx],
15
+ }));
16
+ }
17
+ async loadData(_opts = {}) {
18
+ if (!this.feats) {
19
+ this.feats = this.loadDataP().catch((e) => {
20
+ this.feats = undefined;
21
+ throw e;
22
+ });
23
+ }
24
+ return this.feats;
25
+ }
26
+ async getRefNames(_opts = {}) {
27
+ return [];
28
+ }
29
+ getFeatures(query, opts = {}) {
30
+ return ObservableCreate(async (observer) => {
31
+ const { start, end, refName } = query;
32
+ const data = await this.loadData();
33
+ for (const f of data) {
34
+ if (doesIntersect2(f.start, f.end, start, end)) {
35
+ observer.next(new SimpleFeature({ ...f, refName }));
36
+ }
37
+ }
38
+ observer.complete();
39
+ }, opts.signal);
40
+ }
41
+ freeResources() { }
42
+ }
43
+ //# sourceMappingURL=AlphaFoldConfidenceAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlphaFoldConfidenceAdapter.js","sourceRoot":"","sources":["../../src/AlphaFoldConfidenceAdapter/AlphaFoldConfidenceAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAEvB,MAAM,yCAAyC,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAGL,cAAc,EACd,aAAa,GACd,MAAM,oBAAoB,CAAA;AAE3B,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,sBAAsB;IACrE,MAAM,CAAC,YAAY,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;IAEpD,KAAK,CAEC;IAEL,KAAK,CAAC,SAAS;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,MAAM,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CACJ,CAAA;QAE3D,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/C,QAAQ,EAAE,QAAQ,GAAG,EAAE;YACvB,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,KAAK,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,GAAG,CAAE;SACpC,CAAC,CAAC,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,QAAqB,EAAE;QAC5C,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;gBACjD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;gBACtB,MAAM,CAAC,CAAA;YACT,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAqB,EAAE;QAC9C,OAAO,EAAE,CAAA;IACX,CAAC;IAEM,WAAW,CAAC,KAAa,EAAE,OAAoB,EAAE;QACtD,OAAO,gBAAgB,CAAU,KAAK,EAAC,QAAQ,EAAC,EAAE;YAChD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;YACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;YAClC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC/C,QAAQ,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBACrD,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,QAAQ,EAAE,CAAA;QACrB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACjB,CAAC;IAEM,aAAa,KAAU,CAAC"}
@@ -0,0 +1,13 @@
1
+ declare const AlphaFoldConfidenceAdapter: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
+ /**
3
+ * #slot
4
+ */
5
+ location: {
6
+ type: string;
7
+ defaultValue: {
8
+ uri: string;
9
+ locationType: string;
10
+ };
11
+ };
12
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
13
+ export default AlphaFoldConfidenceAdapter;
@@ -0,0 +1,16 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ /**
3
+ * #config AlphaFoldConfidenceAdapter
4
+ */
5
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
6
+ const AlphaFoldConfidenceAdapter = ConfigurationSchema('AlphaFoldConfidenceAdapter', {
7
+ /**
8
+ * #slot
9
+ */
10
+ location: {
11
+ type: 'fileLocation',
12
+ defaultValue: { uri: '/path/to/my.bed.gz', locationType: 'UriLocation' },
13
+ },
14
+ }, { explicitlyTyped: true });
15
+ export default AlphaFoldConfidenceAdapter;
16
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/AlphaFoldConfidenceAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE;;GAEG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,0BAA0B,GAAG,mBAAmB,CACpD,4BAA4B,EAC5B;IACE;;OAEG;IACH,QAAQ,EAAE;QACR,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,YAAY,EAAE,aAAa,EAAE;KACzE;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA;AACD,eAAe,0BAA0B,CAAA"}
@@ -0,0 +1,2 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ export default function AlphaFoldConfidenceAdapterF(pluginManager: PluginManager): void;
@@ -0,0 +1,11 @@
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
+ import configSchema from './configSchema';
3
+ export default function AlphaFoldConfidenceAdapterF(pluginManager) {
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'AlphaFoldConfidenceAdapter',
6
+ displayName: 'AlphaFoldConfidence adapter',
7
+ configSchema,
8
+ getAdapterClass: () => import('./AlphaFoldConfidenceAdapter').then(r => r.default),
9
+ }));
10
+ }
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/AlphaFoldConfidenceAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AAEzE,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAEzC,MAAM,CAAC,OAAO,UAAU,2BAA2B,CACjD,aAA4B;IAE5B,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;QACd,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE,6BAA6B;QAC1C,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,8BAA8B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KAC9D,CAAC,CACL,CAAA;AACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { Region, Feature } from '@jbrowse/core/util';
3
+ export default class AlphaMissensePathogenicityAdapter extends BaseFeatureDataAdapter {
4
+ static capabilities: string[];
5
+ feats: Promise<{
6
+ uniqueId: string;
7
+ start: number;
8
+ end: number;
9
+ score: number;
10
+ ref: string;
11
+ variant: string;
12
+ am_class: string;
13
+ }[]> | undefined;
14
+ private loadDataP;
15
+ private loadData;
16
+ getGlobalStats(_opts?: BaseOptions): Promise<{
17
+ scoreMin: number;
18
+ scoreMax: number;
19
+ }>;
20
+ getMultiRegionFeatureDensityStats(_regions: Region[]): Promise<{
21
+ featureDensity: number;
22
+ }>;
23
+ getRefNames(_opts?: BaseOptions): Promise<never[]>;
24
+ getFeatures(query: Region, opts?: BaseOptions): import("rxjs").Observable<Feature>;
25
+ getSources(): Promise<{
26
+ name: string;
27
+ __name: string;
28
+ }[]>;
29
+ freeResources(): void;
30
+ }
@@ -0,0 +1,78 @@
1
+ import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { openLocation } from '@jbrowse/core/util/io';
3
+ import { ObservableCreate } from '@jbrowse/core/util/rxjs';
4
+ import { doesIntersect2, SimpleFeature, max, min, } from '@jbrowse/core/util';
5
+ export default class AlphaMissensePathogenicityAdapter extends BaseFeatureDataAdapter {
6
+ static capabilities = ['getFeatures', 'getRefNames'];
7
+ feats;
8
+ async loadDataP() {
9
+ const scores = await openLocation(this.getConf('location')).readFile('utf8');
10
+ return scores
11
+ .split('\n')
12
+ .slice(1)
13
+ .map(f => f.trim())
14
+ .filter(f => !!f)
15
+ .map((row, idx) => {
16
+ const [protein_variant, score, am_class] = row.split(',');
17
+ const ref = protein_variant[0];
18
+ const variant = protein_variant.at(-1);
19
+ const coord = protein_variant.slice(1, -1);
20
+ return {
21
+ uniqueId: `feat-${idx}`,
22
+ ref: ref,
23
+ variant: variant,
24
+ start: +coord,
25
+ end: +coord + 1,
26
+ score: +score,
27
+ am_class: am_class,
28
+ };
29
+ });
30
+ }
31
+ async loadData(_opts = {}) {
32
+ if (!this.feats) {
33
+ this.feats = this.loadDataP().catch((e) => {
34
+ this.feats = undefined;
35
+ throw e;
36
+ });
37
+ }
38
+ return this.feats;
39
+ }
40
+ async getGlobalStats(_opts) {
41
+ const data = await this.loadData();
42
+ const scoreMin = min(data.map(s => s.score));
43
+ const scoreMax = max(data.map(s => s.score));
44
+ return { scoreMin, scoreMax };
45
+ }
46
+ // always render bigwig instead of calculating a feature density for it
47
+ async getMultiRegionFeatureDensityStats(_regions) {
48
+ return { featureDensity: 0 };
49
+ }
50
+ async getRefNames(_opts = {}) {
51
+ return [];
52
+ }
53
+ getFeatures(query, opts = {}) {
54
+ return ObservableCreate(async (observer) => {
55
+ const { start, end, refName } = query;
56
+ const data = await this.loadData();
57
+ for (const f of data) {
58
+ if (doesIntersect2(f.start, f.end, start, end)) {
59
+ observer.next(new SimpleFeature({ ...f, refName, source: f.variant }));
60
+ }
61
+ }
62
+ observer.complete();
63
+ }, opts.signal);
64
+ }
65
+ async getSources() {
66
+ const sources = new Set();
67
+ const data = await this.loadData();
68
+ for (const f of data) {
69
+ sources.add(f.variant);
70
+ }
71
+ return [...sources].map(s => ({
72
+ name: s,
73
+ __name: s,
74
+ }));
75
+ }
76
+ freeResources() { }
77
+ }
78
+ //# sourceMappingURL=AlphaMissensePathogenicityAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlphaMissensePathogenicityAdapter.js","sourceRoot":"","sources":["../../src/AlphaMissensePathogenicityAdapter/AlphaMissensePathogenicityAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ declare const AlphaMissensePathogenicityAdapter: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
+ /**
3
+ * #slot
4
+ */
5
+ location: {
6
+ type: string;
7
+ defaultValue: {
8
+ uri: string;
9
+ locationType: string;
10
+ };
11
+ };
12
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
13
+ export default AlphaMissensePathogenicityAdapter;
@@ -0,0 +1,16 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ /**
3
+ * #config AlphaMissensePathogenicityAdapter
4
+ */
5
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
6
+ const AlphaMissensePathogenicityAdapter = ConfigurationSchema('AlphaMissensePathogenicityAdapter', {
7
+ /**
8
+ * #slot
9
+ */
10
+ location: {
11
+ type: 'fileLocation',
12
+ defaultValue: { uri: '/path/to/my.bed.gz', locationType: 'UriLocation' },
13
+ },
14
+ }, { explicitlyTyped: true });
15
+ export default AlphaMissensePathogenicityAdapter;
16
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/AlphaMissensePathogenicityAdapter/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE;;GAEG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,iCAAiC,GAAG,mBAAmB,CAC3D,mCAAmC,EACnC;IACE;;OAEG;IACH,QAAQ,EAAE;QACR,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,YAAY,EAAE,aAAa,EAAE;KACzE;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA;AACD,eAAe,iCAAiC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ export default function AlphaMissensePathogenicityAdapterF(pluginManager: PluginManager): void;
@@ -0,0 +1,11 @@
1
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType';
2
+ import configSchema from './configSchema';
3
+ export default function AlphaMissensePathogenicityAdapterF(pluginManager) {
4
+ pluginManager.addAdapterType(() => new AdapterType({
5
+ name: 'AlphaMissensePathogenicityAdapter',
6
+ displayName: 'AlphaMissensePathogenicity adapter',
7
+ configSchema,
8
+ getAdapterClass: () => import('./AlphaMissensePathogenicityAdapter').then(r => r.default),
9
+ }));
10
+ }
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/AlphaMissensePathogenicityAdapter/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iDAAiD,CAAA;AAEzE,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAEzC,MAAM,CAAC,OAAO,UAAU,kCAAkC,CACxD,aAA4B;IAE5B,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,WAAW,CAAC;QACd,IAAI,EAAE,mCAAmC;QACzC,WAAW,EAAE,oCAAoC;QACjD,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CACpB,MAAM,CAAC,qCAAqC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACrE,CAAC,CACL,CAAA;AACH,CAAC"}