@jbrowse/plugin-alignments 2.17.0 → 3.0.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.
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -3
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +25 -24
- package/dist/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
- package/dist/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
- package/dist/AlignmentsFeatureDetail/Flags.d.ts +1 -2
- package/dist/AlignmentsFeatureDetail/Flags.js +8 -10
- package/dist/AlignmentsFeatureDetail/Formatter.d.ts +1 -2
- package/dist/AlignmentsFeatureDetail/Formatter.js +11 -39
- package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +4 -7
- package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +46 -54
- package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +4 -7
- package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +58 -61
- package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +3 -4
- package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.js +4 -5
- package/dist/AlignmentsFeatureDetail/PairLink.d.ts +2 -3
- package/dist/AlignmentsFeatureDetail/PairLink.js +3 -7
- package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +3 -4
- package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.js +6 -9
- package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +2 -3
- package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +21 -31
- package/dist/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
- package/dist/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
- package/dist/AlignmentsFeatureDetail/index.d.ts +1 -1
- package/dist/AlignmentsFeatureDetail/index.js +17 -7
- package/dist/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
- package/dist/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
- package/dist/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
- package/dist/AlignmentsFeatureDetail/tagInfo.js +1 -1
- package/dist/AlignmentsFeatureDetail/util.d.ts +1 -1
- package/dist/AlignmentsTrack/configSchemaF.d.ts +1 -1
- package/dist/AlignmentsTrack/configSchemaF.js +1 -8
- package/dist/AlignmentsTrack/index.d.ts +1 -1
- package/dist/AlignmentsTrack/index.js +0 -3
- package/dist/BamAdapter/BamAdapter.d.ts +6 -5
- package/dist/BamAdapter/BamAdapter.js +21 -39
- package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
- package/dist/BamAdapter/BamSlightlyLazyFeature.js +0 -3
- package/dist/BamAdapter/configSchema.d.ts +0 -17
- package/dist/BamAdapter/configSchema.js +1 -22
- package/dist/BamAdapter/index.d.ts +1 -1
- package/dist/BamAdapter/index.js +17 -7
- package/dist/CramAdapter/CramAdapter.d.ts +6 -9
- package/dist/CramAdapter/CramAdapter.js +25 -43
- package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
- package/dist/CramAdapter/CramSlightlyLazyFeature.js +0 -17
- package/dist/CramAdapter/CramTestAdapters.d.ts +3 -3
- package/dist/CramAdapter/CramTestAdapters.js +6 -6
- package/dist/CramAdapter/configSchema.d.ts +0 -14
- package/dist/CramAdapter/configSchema.js +1 -19
- package/dist/CramAdapter/index.d.ts +1 -1
- package/dist/CramAdapter/index.js +17 -8
- package/dist/CramAdapter/util.d.ts +2 -2
- package/dist/CramAdapter/util.js +1 -24
- package/dist/GuessAlignmentsTypes/index.d.ts +1 -1
- package/dist/GuessAlignmentsTypes/index.js +19 -34
- package/dist/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
- package/dist/HtsgetBamAdapter/configSchema.d.ts +0 -9
- package/dist/HtsgetBamAdapter/configSchema.js +1 -14
- package/dist/HtsgetBamAdapter/index.d.ts +1 -1
- package/dist/HtsgetBamAdapter/index.js +18 -8
- package/dist/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
- package/dist/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -3
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -18
- package/dist/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
- package/dist/LinearAlignmentsDisplay/configSchema.js +3 -20
- package/dist/LinearAlignmentsDisplay/index.d.ts +1 -1
- package/dist/LinearAlignmentsDisplay/index.js +1 -2
- package/dist/LinearAlignmentsDisplay/model.d.ts +7 -77
- package/dist/LinearAlignmentsDisplay/model.js +10 -85
- package/dist/LinearAlignmentsDisplay/util.d.ts +1 -1
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +52 -164
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +71 -145
- package/dist/LinearPileupDisplay/components/ColorByTagDialog.d.ts +1 -2
- package/dist/LinearPileupDisplay/components/ColorByTagDialog.js +12 -41
- package/dist/LinearPileupDisplay/components/GroupByDialog.d.ts +3 -4
- package/dist/LinearPileupDisplay/components/GroupByDialog.js +106 -92
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -8
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +3 -7
- package/dist/LinearPileupDisplay/components/SetFeatureHeightDialog.d.ts +1 -2
- package/dist/LinearPileupDisplay/components/SetFeatureHeightDialog.js +15 -44
- package/dist/LinearPileupDisplay/components/SetMaxHeightDialog.d.ts +1 -2
- package/dist/LinearPileupDisplay/components/SetMaxHeightDialog.js +12 -40
- package/dist/LinearPileupDisplay/components/SortByTagDialog.d.ts +1 -2
- package/dist/LinearPileupDisplay/components/SortByTagDialog.js +17 -46
- package/dist/LinearPileupDisplay/configSchema.d.ts +13 -16
- package/dist/LinearPileupDisplay/configSchema.js +12 -30
- package/dist/LinearPileupDisplay/index.d.ts +1 -1
- package/dist/LinearPileupDisplay/index.js +2 -2
- package/dist/LinearPileupDisplay/model.d.ts +123 -111
- package/dist/LinearPileupDisplay/model.js +29 -109
- package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -3
- package/dist/LinearReadArcsDisplay/components/ReactComponent.js +6 -33
- package/dist/LinearReadArcsDisplay/configSchema.d.ts +12 -20
- package/dist/LinearReadArcsDisplay/configSchema.js +8 -31
- package/dist/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
- package/dist/LinearReadArcsDisplay/drawFeats.js +1 -9
- package/dist/LinearReadArcsDisplay/index.d.ts +1 -1
- package/dist/LinearReadArcsDisplay/index.js +18 -9
- package/dist/LinearReadArcsDisplay/model.d.ts +16 -94
- package/dist/LinearReadArcsDisplay/model.js +34 -111
- package/dist/LinearReadArcsDisplay/util.d.ts +1 -1
- package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -3
- package/dist/LinearReadCloudDisplay/components/ReactComponent.js +6 -33
- package/dist/LinearReadCloudDisplay/configSchema.d.ts +5 -17
- package/dist/LinearReadCloudDisplay/configSchema.js +3 -28
- package/dist/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
- package/dist/LinearReadCloudDisplay/drawFeats.js +2 -2
- package/dist/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
- package/dist/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
- package/dist/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
- package/dist/LinearReadCloudDisplay/drawPairChains.js +0 -3
- package/dist/LinearReadCloudDisplay/index.d.ts +1 -1
- package/dist/LinearReadCloudDisplay/index.js +18 -9
- package/dist/LinearReadCloudDisplay/model.d.ts +14 -56
- package/dist/LinearReadCloudDisplay/model.js +34 -75
- package/dist/LinearReadCloudDisplay/util.js +0 -1
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -3
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +16 -55
- package/dist/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
- package/dist/LinearSNPCoverageDisplay/configSchema.js +16 -32
- package/dist/LinearSNPCoverageDisplay/index.d.ts +1 -1
- package/dist/LinearSNPCoverageDisplay/index.js +1 -2
- package/dist/LinearSNPCoverageDisplay/model.d.ts +13 -54
- package/dist/LinearSNPCoverageDisplay/model.js +69 -159
- package/dist/MismatchParser/cigarToMismatches.d.ts +2 -3
- package/dist/MismatchParser/cigarToMismatches.js +4 -7
- package/dist/MismatchParser/getNextRefPos.js +0 -2
- package/dist/MismatchParser/index.d.ts +3 -4
- package/dist/MismatchParser/index.js +1 -9
- package/dist/MismatchParser/mdToMismatches.d.ts +2 -3
- package/dist/MismatchParser/mdToMismatches.js +0 -6
- package/dist/ModificationParser/index.d.ts +1 -1
- package/dist/ModificationParser/index.js +1 -18
- package/dist/PileupRPC/base.d.ts +2 -2
- package/dist/PileupRPC/base.js +0 -1
- package/dist/PileupRPC/index.d.ts +1 -1
- package/dist/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
- package/dist/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
- package/dist/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
- package/dist/PileupRPC/methods/GetReducedFeatures.js +3 -5
- package/dist/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
- package/dist/PileupRPC/methods/GetVisibleModifications.js +1 -1
- package/dist/PileupRPC/util.d.ts +1 -1
- package/dist/PileupRenderer/PileupLayoutSession.d.ts +5 -5
- package/dist/PileupRenderer/PileupLayoutSession.js +2 -5
- package/dist/PileupRenderer/PileupRenderer.d.ts +14 -24
- package/dist/PileupRenderer/PileupRenderer.js +28 -23
- package/dist/PileupRenderer/colorBy.d.ts +2 -2
- package/dist/PileupRenderer/colorBy.js +0 -6
- package/dist/PileupRenderer/components/PileupRendering.d.ts +2 -3
- package/dist/PileupRenderer/components/PileupRendering.js +15 -43
- package/dist/PileupRenderer/configSchema.d.ts +5 -31
- package/dist/PileupRenderer/configSchema.js +6 -35
- package/dist/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
- package/dist/PileupRenderer/getAlignmentShapeColor.js +1 -6
- package/dist/PileupRenderer/index.d.ts +1 -1
- package/dist/PileupRenderer/index.js +1 -1
- package/dist/PileupRenderer/layoutFeature.d.ts +2 -2
- package/dist/PileupRenderer/layoutFeature.js +0 -1
- package/dist/PileupRenderer/layoutFeatures.d.ts +5 -2
- package/dist/PileupRenderer/layoutFeatures.js +6 -4
- package/dist/PileupRenderer/makeImageData.d.ts +3 -4
- package/dist/PileupRenderer/makeImageData.js +10 -2
- package/dist/PileupRenderer/renderAlignment.d.ts +3 -3
- package/dist/PileupRenderer/renderAlignment.js +3 -5
- package/dist/PileupRenderer/renderAlignmentShape.d.ts +3 -3
- package/dist/PileupRenderer/renderAlignmentShape.js +1 -1
- package/dist/PileupRenderer/renderMethylation.d.ts +4 -4
- package/dist/PileupRenderer/renderMethylation.js +0 -4
- package/dist/PileupRenderer/renderMismatches.d.ts +5 -4
- package/dist/PileupRenderer/renderMismatches.js +19 -25
- package/dist/PileupRenderer/renderModifications.d.ts +3 -3
- package/dist/PileupRenderer/renderModifications.js +1 -3
- package/dist/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
- package/dist/PileupRenderer/renderPerBaseLettering.js +0 -1
- package/dist/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
- package/dist/PileupRenderer/renderPerBaseQuality.js +2 -2
- package/dist/PileupRenderer/renderSoftClipping.d.ts +5 -5
- package/dist/PileupRenderer/renderSoftClipping.js +0 -4
- package/dist/PileupRenderer/sortUtil.d.ts +2 -2
- package/dist/PileupRenderer/sortUtil.js +1 -4
- package/dist/PileupRenderer/types.d.ts +26 -0
- package/dist/PileupRenderer/types.js +2 -0
- package/dist/PileupRenderer/util.d.ts +2 -2
- package/dist/PileupRenderer/util.js +1 -3
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +4 -6
- package/dist/SNPCoverageAdapter/configSchema.d.ts +0 -4
- package/dist/SNPCoverageAdapter/configSchema.js +1 -8
- package/dist/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
- package/dist/SNPCoverageAdapter/generateCoverageBins.js +25 -247
- package/dist/SNPCoverageAdapter/index.d.ts +1 -1
- package/dist/SNPCoverageAdapter/index.js +17 -7
- package/dist/SNPCoverageAdapter/processDepth.d.ts +8 -0
- package/dist/SNPCoverageAdapter/processDepth.js +38 -0
- package/dist/SNPCoverageAdapter/processMismatches.d.ts +9 -0
- package/dist/SNPCoverageAdapter/processMismatches.js +58 -0
- package/dist/SNPCoverageAdapter/processModifications.d.ts +10 -0
- package/dist/SNPCoverageAdapter/processModifications.js +49 -0
- package/dist/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
- package/dist/SNPCoverageAdapter/processReferenceCpGs.js +63 -0
- package/dist/SNPCoverageAdapter/util.d.ts +10 -0
- package/dist/SNPCoverageAdapter/util.js +41 -0
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +2 -18
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +35 -288
- package/dist/SNPCoverageRenderer/configSchema.d.ts +3 -18
- package/dist/SNPCoverageRenderer/configSchema.js +4 -22
- package/dist/SNPCoverageRenderer/index.d.ts +1 -1
- package/dist/SNPCoverageRenderer/index.js +2 -2
- package/dist/SNPCoverageRenderer/makeImage.d.ts +2 -0
- package/dist/SNPCoverageRenderer/makeImage.js +270 -0
- package/dist/SNPCoverageRenderer/types.d.ts +19 -0
- package/dist/SNPCoverageRenderer/types.js +2 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +29 -19
- package/dist/shared/afterAttach.d.ts +1 -1
- package/dist/shared/afterAttach.js +0 -2
- package/dist/shared/color.d.ts +1 -1
- package/dist/shared/color.js +0 -8
- package/dist/shared/components/BaseDisplayComponent.d.ts +3 -4
- package/dist/shared/components/BaseDisplayComponent.js +13 -19
- package/dist/shared/components/FilterByTagDialog.d.ts +2 -3
- package/dist/shared/components/FilterByTagDialog.js +44 -94
- package/dist/shared/fetchChains.d.ts +2 -2
- package/dist/shared/fetchChains.js +1 -2
- package/dist/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
- package/dist/shared/getMaximumModificationAtEachPosition.js +1 -2
- package/dist/shared/getUniqueModifications.d.ts +5 -5
- package/dist/shared/getUniqueTags.d.ts +4 -4
- package/dist/shared/renderSvgUtil.d.ts +1 -2
- package/dist/shared/renderSvgUtil.js +20 -19
- package/dist/shared/util.d.ts +11 -1
- package/dist/shared/util.js +27 -1
- package/dist/util.d.ts +4 -4
- package/dist/util.js +3 -9
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -3
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +8 -17
- package/esm/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
- package/esm/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
- package/esm/AlignmentsFeatureDetail/Flags.d.ts +1 -2
- package/esm/AlignmentsFeatureDetail/Flags.js +8 -10
- package/esm/AlignmentsFeatureDetail/Formatter.d.ts +1 -2
- package/esm/AlignmentsFeatureDetail/Formatter.js +11 -16
- package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +4 -7
- package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +30 -48
- package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +4 -7
- package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +41 -54
- package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +3 -4
- package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.js +4 -5
- package/esm/AlignmentsFeatureDetail/PairLink.d.ts +2 -3
- package/esm/AlignmentsFeatureDetail/PairLink.js +3 -4
- package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +3 -4
- package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.js +6 -9
- package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +2 -3
- package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +22 -29
- package/esm/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
- package/esm/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
- package/esm/AlignmentsFeatureDetail/index.d.ts +1 -1
- package/esm/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
- package/esm/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
- package/esm/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
- package/esm/AlignmentsFeatureDetail/tagInfo.js +1 -1
- package/esm/AlignmentsFeatureDetail/util.d.ts +1 -1
- package/esm/AlignmentsTrack/configSchemaF.d.ts +1 -1
- package/esm/AlignmentsTrack/configSchemaF.js +1 -8
- package/esm/AlignmentsTrack/index.d.ts +1 -1
- package/esm/AlignmentsTrack/index.js +0 -3
- package/esm/BamAdapter/BamAdapter.d.ts +6 -5
- package/esm/BamAdapter/BamAdapter.js +19 -37
- package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
- package/esm/BamAdapter/BamSlightlyLazyFeature.js +0 -3
- package/esm/BamAdapter/configSchema.d.ts +0 -17
- package/esm/BamAdapter/configSchema.js +1 -22
- package/esm/BamAdapter/index.d.ts +1 -1
- package/esm/CramAdapter/CramAdapter.d.ts +6 -9
- package/esm/CramAdapter/CramAdapter.js +24 -42
- package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
- package/esm/CramAdapter/CramSlightlyLazyFeature.js +0 -17
- package/esm/CramAdapter/CramTestAdapters.d.ts +3 -3
- package/esm/CramAdapter/CramTestAdapters.js +6 -6
- package/esm/CramAdapter/configSchema.d.ts +0 -14
- package/esm/CramAdapter/configSchema.js +1 -19
- package/esm/CramAdapter/index.d.ts +1 -1
- package/esm/CramAdapter/index.js +0 -1
- package/esm/CramAdapter/util.d.ts +2 -2
- package/esm/CramAdapter/util.js +1 -24
- package/esm/GuessAlignmentsTypes/index.d.ts +1 -1
- package/esm/GuessAlignmentsTypes/index.js +20 -35
- package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
- package/esm/HtsgetBamAdapter/configSchema.d.ts +0 -9
- package/esm/HtsgetBamAdapter/configSchema.js +1 -14
- package/esm/HtsgetBamAdapter/index.d.ts +1 -1
- package/esm/HtsgetBamAdapter/index.js +1 -1
- package/esm/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
- package/esm/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -3
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -15
- package/esm/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
- package/esm/LinearAlignmentsDisplay/configSchema.js +3 -20
- package/esm/LinearAlignmentsDisplay/index.d.ts +1 -1
- package/esm/LinearAlignmentsDisplay/index.js +1 -2
- package/esm/LinearAlignmentsDisplay/model.d.ts +7 -77
- package/esm/LinearAlignmentsDisplay/model.js +11 -86
- package/esm/LinearAlignmentsDisplay/util.d.ts +1 -1
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +52 -164
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +56 -140
- package/esm/LinearPileupDisplay/components/ColorByTagDialog.d.ts +1 -2
- package/esm/LinearPileupDisplay/components/ColorByTagDialog.js +12 -18
- package/esm/LinearPileupDisplay/components/GroupByDialog.d.ts +3 -4
- package/esm/LinearPileupDisplay/components/GroupByDialog.js +106 -69
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -8
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +3 -4
- package/esm/LinearPileupDisplay/components/SetFeatureHeightDialog.d.ts +1 -2
- package/esm/LinearPileupDisplay/components/SetFeatureHeightDialog.js +15 -21
- package/esm/LinearPileupDisplay/components/SetMaxHeightDialog.d.ts +1 -2
- package/esm/LinearPileupDisplay/components/SetMaxHeightDialog.js +12 -17
- package/esm/LinearPileupDisplay/components/SortByTagDialog.d.ts +1 -2
- package/esm/LinearPileupDisplay/components/SortByTagDialog.js +17 -23
- package/esm/LinearPileupDisplay/configSchema.d.ts +13 -16
- package/esm/LinearPileupDisplay/configSchema.js +12 -30
- package/esm/LinearPileupDisplay/index.d.ts +1 -1
- package/esm/LinearPileupDisplay/index.js +2 -2
- package/esm/LinearPileupDisplay/model.d.ts +123 -111
- package/esm/LinearPileupDisplay/model.js +13 -103
- package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -3
- package/esm/LinearReadArcsDisplay/components/ReactComponent.js +6 -10
- package/esm/LinearReadArcsDisplay/configSchema.d.ts +12 -20
- package/esm/LinearReadArcsDisplay/configSchema.js +8 -31
- package/esm/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
- package/esm/LinearReadArcsDisplay/drawFeats.js +1 -9
- package/esm/LinearReadArcsDisplay/index.d.ts +1 -1
- package/esm/LinearReadArcsDisplay/index.js +1 -2
- package/esm/LinearReadArcsDisplay/model.d.ts +16 -94
- package/esm/LinearReadArcsDisplay/model.js +18 -105
- package/esm/LinearReadArcsDisplay/util.d.ts +1 -1
- package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -3
- package/esm/LinearReadCloudDisplay/components/ReactComponent.js +6 -10
- package/esm/LinearReadCloudDisplay/configSchema.d.ts +5 -17
- package/esm/LinearReadCloudDisplay/configSchema.js +3 -28
- package/esm/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
- package/esm/LinearReadCloudDisplay/drawFeats.js +2 -2
- package/esm/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
- package/esm/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
- package/esm/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
- package/esm/LinearReadCloudDisplay/drawPairChains.js +0 -3
- package/esm/LinearReadCloudDisplay/index.d.ts +1 -1
- package/esm/LinearReadCloudDisplay/index.js +1 -2
- package/esm/LinearReadCloudDisplay/model.d.ts +14 -56
- package/esm/LinearReadCloudDisplay/model.js +17 -68
- package/esm/LinearReadCloudDisplay/util.js +0 -1
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -3
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +16 -52
- package/esm/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
- package/esm/LinearSNPCoverageDisplay/configSchema.js +16 -32
- package/esm/LinearSNPCoverageDisplay/index.d.ts +1 -1
- package/esm/LinearSNPCoverageDisplay/index.js +1 -2
- package/esm/LinearSNPCoverageDisplay/model.d.ts +13 -54
- package/esm/LinearSNPCoverageDisplay/model.js +53 -153
- package/esm/MismatchParser/cigarToMismatches.d.ts +2 -3
- package/esm/MismatchParser/cigarToMismatches.js +4 -7
- package/esm/MismatchParser/getNextRefPos.js +0 -2
- package/esm/MismatchParser/index.d.ts +3 -4
- package/esm/MismatchParser/index.js +1 -9
- package/esm/MismatchParser/mdToMismatches.d.ts +2 -3
- package/esm/MismatchParser/mdToMismatches.js +0 -6
- package/esm/ModificationParser/index.d.ts +1 -1
- package/esm/ModificationParser/index.js +1 -18
- package/esm/PileupRPC/base.d.ts +2 -2
- package/esm/PileupRPC/base.js +0 -1
- package/esm/PileupRPC/index.d.ts +1 -1
- package/esm/PileupRPC/index.js +1 -1
- package/esm/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
- package/esm/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
- package/esm/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
- package/esm/PileupRPC/methods/GetReducedFeatures.js +3 -5
- package/esm/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
- package/esm/PileupRPC/methods/GetVisibleModifications.js +1 -1
- package/esm/PileupRPC/util.d.ts +1 -1
- package/esm/PileupRenderer/PileupLayoutSession.d.ts +5 -5
- package/esm/PileupRenderer/PileupLayoutSession.js +2 -5
- package/esm/PileupRenderer/PileupRenderer.d.ts +14 -24
- package/esm/PileupRenderer/PileupRenderer.js +12 -17
- package/esm/PileupRenderer/colorBy.d.ts +2 -2
- package/esm/PileupRenderer/colorBy.js +1 -7
- package/esm/PileupRenderer/components/PileupRendering.d.ts +2 -3
- package/esm/PileupRenderer/components/PileupRendering.js +15 -20
- package/esm/PileupRenderer/configSchema.d.ts +5 -31
- package/esm/PileupRenderer/configSchema.js +6 -35
- package/esm/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
- package/esm/PileupRenderer/getAlignmentShapeColor.js +2 -7
- package/esm/PileupRenderer/index.d.ts +1 -1
- package/esm/PileupRenderer/index.js +1 -1
- package/esm/PileupRenderer/layoutFeature.d.ts +2 -2
- package/esm/PileupRenderer/layoutFeature.js +0 -1
- package/esm/PileupRenderer/layoutFeatures.d.ts +5 -2
- package/esm/PileupRenderer/layoutFeatures.js +7 -5
- package/esm/PileupRenderer/makeImageData.d.ts +3 -4
- package/esm/PileupRenderer/makeImageData.js +10 -2
- package/esm/PileupRenderer/renderAlignment.d.ts +3 -3
- package/esm/PileupRenderer/renderAlignment.js +3 -5
- package/esm/PileupRenderer/renderAlignmentShape.d.ts +3 -3
- package/esm/PileupRenderer/renderAlignmentShape.js +1 -1
- package/esm/PileupRenderer/renderMethylation.d.ts +4 -4
- package/esm/PileupRenderer/renderMethylation.js +0 -4
- package/esm/PileupRenderer/renderMismatches.d.ts +5 -4
- package/esm/PileupRenderer/renderMismatches.js +19 -25
- package/esm/PileupRenderer/renderModifications.d.ts +3 -3
- package/esm/PileupRenderer/renderModifications.js +1 -3
- package/esm/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
- package/esm/PileupRenderer/renderPerBaseLettering.js +0 -1
- package/esm/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
- package/esm/PileupRenderer/renderPerBaseQuality.js +2 -2
- package/esm/PileupRenderer/renderSoftClipping.d.ts +5 -5
- package/esm/PileupRenderer/renderSoftClipping.js +1 -5
- package/esm/PileupRenderer/sortUtil.d.ts +2 -2
- package/esm/PileupRenderer/sortUtil.js +1 -4
- package/esm/PileupRenderer/types.d.ts +26 -0
- package/esm/PileupRenderer/types.js +1 -0
- package/esm/PileupRenderer/util.d.ts +2 -2
- package/esm/PileupRenderer/util.js +1 -3
- package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
- package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +5 -7
- package/esm/SNPCoverageAdapter/configSchema.d.ts +0 -4
- package/esm/SNPCoverageAdapter/configSchema.js +1 -8
- package/esm/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
- package/esm/SNPCoverageAdapter/generateCoverageBins.js +24 -246
- package/esm/SNPCoverageAdapter/index.d.ts +1 -1
- package/esm/SNPCoverageAdapter/processDepth.d.ts +8 -0
- package/esm/SNPCoverageAdapter/processDepth.js +35 -0
- package/esm/SNPCoverageAdapter/processMismatches.d.ts +9 -0
- package/esm/SNPCoverageAdapter/processMismatches.js +55 -0
- package/esm/SNPCoverageAdapter/processModifications.d.ts +10 -0
- package/esm/SNPCoverageAdapter/processModifications.js +46 -0
- package/esm/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
- package/esm/SNPCoverageAdapter/processReferenceCpGs.js +60 -0
- package/esm/SNPCoverageAdapter/util.d.ts +10 -0
- package/esm/SNPCoverageAdapter/util.js +35 -0
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +2 -18
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +3 -289
- package/esm/SNPCoverageRenderer/configSchema.d.ts +3 -18
- package/esm/SNPCoverageRenderer/configSchema.js +4 -22
- package/esm/SNPCoverageRenderer/index.d.ts +1 -1
- package/esm/SNPCoverageRenderer/index.js +2 -2
- package/esm/SNPCoverageRenderer/makeImage.d.ts +2 -0
- package/esm/SNPCoverageRenderer/makeImage.js +267 -0
- package/esm/SNPCoverageRenderer/types.d.ts +19 -0
- package/esm/SNPCoverageRenderer/types.js +1 -0
- package/esm/index.d.ts +2 -2
- package/esm/index.js +10 -10
- package/esm/shared/afterAttach.d.ts +1 -1
- package/esm/shared/afterAttach.js +0 -2
- package/esm/shared/color.d.ts +1 -1
- package/esm/shared/color.js +0 -8
- package/esm/shared/components/BaseDisplayComponent.d.ts +3 -4
- package/esm/shared/components/BaseDisplayComponent.js +13 -16
- package/esm/shared/components/FilterByTagDialog.d.ts +2 -3
- package/esm/shared/components/FilterByTagDialog.js +44 -71
- package/esm/shared/fetchChains.d.ts +2 -2
- package/esm/shared/fetchChains.js +1 -2
- package/esm/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
- package/esm/shared/getMaximumModificationAtEachPosition.js +1 -2
- package/esm/shared/getUniqueModifications.d.ts +5 -5
- package/esm/shared/getUniqueTags.d.ts +4 -4
- package/esm/shared/renderSvgUtil.d.ts +1 -2
- package/esm/shared/renderSvgUtil.js +3 -9
- package/esm/shared/util.d.ts +11 -1
- package/esm/shared/util.js +24 -0
- package/esm/util.d.ts +4 -4
- package/esm/util.js +3 -9
- package/package.json +6 -7
|
@@ -7,11 +7,8 @@ export function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
|
|
|
7
7
|
let lastSkipPos = 0;
|
|
8
8
|
const mismatchRecords = [];
|
|
9
9
|
const skips = cigarMismatches.filter(cigar => cigar.type === 'skip');
|
|
10
|
-
// convert a position on the reference sequence to a position on the template
|
|
11
|
-
// sequence, taking into account hard and soft clipping of reads
|
|
12
10
|
function nextRecord() {
|
|
13
11
|
mismatchRecords.push(curr);
|
|
14
|
-
// get a new mismatch record ready
|
|
15
12
|
curr = {
|
|
16
13
|
start: curr.start + curr.length,
|
|
17
14
|
length: 0,
|
|
@@ -40,7 +37,6 @@ export function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
|
|
|
40
37
|
lastRefOffset = refOffset;
|
|
41
38
|
return templateOffset - (refOffset - refCoord);
|
|
42
39
|
}
|
|
43
|
-
// now actually parse the MD string
|
|
44
40
|
const md = mdstring.match(mdRegex) || [];
|
|
45
41
|
for (const token of md) {
|
|
46
42
|
const num = +token;
|
|
@@ -51,8 +47,6 @@ export function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
|
|
|
51
47
|
curr.start += token.length - 1;
|
|
52
48
|
}
|
|
53
49
|
else {
|
|
54
|
-
// mismatch
|
|
55
|
-
// eslint-disable-next-line @typescript-eslint/prefer-for-of
|
|
56
50
|
for (let j = 0; j < token.length; j += 1) {
|
|
57
51
|
curr.length = 1;
|
|
58
52
|
while (lastSkipPos < skips.length) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Feature } from '@jbrowse/core/util';
|
|
1
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
2
2
|
export declare function getModProbabilities(feature: Feature): number[] | undefined;
|
|
3
3
|
export declare function getModPositions(mm: string, fseq: string, fstrand: number): {
|
|
4
4
|
type: string;
|
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
import { revcom } from '@jbrowse/core/util';
|
|
2
|
-
import { getTagAlt } from '../util';
|
|
3
2
|
import { getNextRefPos } from '../MismatchParser';
|
|
3
|
+
import { getTagAlt } from '../util';
|
|
4
4
|
const modificationRegex = new RegExp(/([A-Z])([-+])([^,.?]+)([.?])?/);
|
|
5
|
-
// ML stores probabilities as array of numerics and MP is scaled phred scores
|
|
6
|
-
// https://github.com/samtools/hts-specs/pull/418/files#diff-e765c6479316309f56b636f88189cdde8c40b854c7bdcce9ee7fe87a4e76febcR596
|
|
7
|
-
//
|
|
8
|
-
// if we have ML or Ml, it is an 8bit probability, divide by 255
|
|
9
|
-
//
|
|
10
|
-
// if we have MP or Mp it is phred scaled ASCII, which can go up to 90 but has
|
|
11
|
-
// very high likelihood basecalls at that point, we really only care about low
|
|
12
|
-
// qual calls <20 approx
|
|
13
5
|
export function getModProbabilities(feature) {
|
|
14
6
|
var _a;
|
|
15
7
|
const m = getTagAlt(feature, 'ML', 'Ml') || [];
|
|
@@ -23,15 +15,11 @@ export function getModPositions(mm, fseq, fstrand) {
|
|
|
23
15
|
const result = [];
|
|
24
16
|
for (const mod of mods) {
|
|
25
17
|
const [basemod, ...skips] = mod.split(',');
|
|
26
|
-
// regexes based on parse_mm.pl from hts-specs
|
|
27
|
-
// https://github.com/samtools/hts-specs/blob/master/test/SAMtags/parse_mm.pl
|
|
28
18
|
const matches = modificationRegex.exec(basemod);
|
|
29
19
|
if (!matches) {
|
|
30
20
|
throw new Error('bad format for MM tag');
|
|
31
21
|
}
|
|
32
22
|
const [, base, strand, typestr] = matches;
|
|
33
|
-
// can be a multi e.g. C+mh for both meth (m) and hydroxymeth (h) so split,
|
|
34
|
-
// and they can also be chemical codes (ChEBI) e.g. C+16061
|
|
35
23
|
const types = typestr.split(/(\d+|.)/).filter(f => !!f);
|
|
36
24
|
if (strand === '-') {
|
|
37
25
|
console.warn('unsupported negative strand modifications');
|
|
@@ -42,7 +30,6 @@ export function getModPositions(mm, fseq, fstrand) {
|
|
|
42
30
|
strand: strand,
|
|
43
31
|
});
|
|
44
32
|
}
|
|
45
|
-
// this logic based on parse_mm.pl from hts-specs
|
|
46
33
|
for (const type of types) {
|
|
47
34
|
let i = 0;
|
|
48
35
|
const positions = [];
|
|
@@ -57,8 +44,6 @@ export function getModPositions(mm, fseq, fstrand) {
|
|
|
57
44
|
if (fstrand === -1) {
|
|
58
45
|
const pos = seq.length - i;
|
|
59
46
|
if (pos >= 0) {
|
|
60
|
-
// avoid negative-number-positions in array, seen in #4629 cause
|
|
61
|
-
// unknown, could warrant some further investigation
|
|
62
47
|
positions.unshift(pos);
|
|
63
48
|
}
|
|
64
49
|
}
|
|
@@ -87,8 +72,6 @@ export function getModTypes(mm) {
|
|
|
87
72
|
throw new Error('bad format for MM tag');
|
|
88
73
|
}
|
|
89
74
|
const [, base, strand, typestr] = matches;
|
|
90
|
-
// can be a multi e.g. C+mh for both meth (m) and hydroxymeth (h) so
|
|
91
|
-
// split, and they can also be chemical codes (ChEBI) e.g. C+16061
|
|
92
75
|
return typestr
|
|
93
76
|
.split(/(\d+|.)/)
|
|
94
77
|
.filter(f => !!f)
|
package/esm/PileupRPC/base.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import RpcMethodType from '@jbrowse/core/pluggableElementTypes/RpcMethodType';
|
|
2
|
-
import { RenderArgs } from '@jbrowse/core/rpc/coreRpcMethods';
|
|
2
|
+
import type { RenderArgs } from '@jbrowse/core/rpc/coreRpcMethods';
|
|
3
3
|
export default abstract class PileupBaseRPC extends RpcMethodType {
|
|
4
4
|
serializeArguments(args: RenderArgs & {
|
|
5
|
-
|
|
5
|
+
stopToken?: string;
|
|
6
6
|
statusCallback?: (arg: string) => void;
|
|
7
7
|
}, rpcDriver: string): Promise<Record<string, unknown>>;
|
|
8
8
|
}
|
package/esm/PileupRPC/base.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import RpcMethodType from '@jbrowse/core/pluggableElementTypes/RpcMethodType';
|
|
2
2
|
import { renameRegionsIfNeeded } from '@jbrowse/core/util';
|
|
3
|
-
// specialized get features to return limited data about alignments
|
|
4
3
|
export default class PileupBaseRPC extends RpcMethodType {
|
|
5
4
|
async serializeArguments(args, rpcDriver) {
|
|
6
5
|
var _a;
|
package/esm/PileupRPC/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function PileupRPCMethodsF(pm: PluginManager): void;
|
package/esm/PileupRPC/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PileupGetGlobalValueForTag,
|
|
1
|
+
import { PileupGetGlobalValueForTag, PileupGetReducedFeatures, PileupGetVisibleModifications, } from './rpcMethods';
|
|
2
2
|
export default function PileupRPCMethodsF(pm) {
|
|
3
3
|
pm.addRpcMethod(() => new PileupGetGlobalValueForTag(pm));
|
|
4
4
|
pm.addRpcMethod(() => new PileupGetVisibleModifications(pm));
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Region } from '@jbrowse/core/util';
|
|
2
|
-
import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
|
|
3
1
|
import PileupBaseRPC from '../base';
|
|
2
|
+
import type { Region } from '@jbrowse/core/util';
|
|
4
3
|
export default class PileupGetGlobalValueForTag extends PileupBaseRPC {
|
|
5
4
|
name: string;
|
|
6
5
|
execute(args: {
|
|
7
6
|
adapterConfig: Record<string, unknown>;
|
|
8
|
-
|
|
7
|
+
stopToken?: string;
|
|
9
8
|
headers?: Record<string, string>;
|
|
10
9
|
regions: Region[];
|
|
11
10
|
sessionId: string;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
2
|
-
import { toArray } from 'rxjs/operators';
|
|
3
2
|
import { firstValueFrom } from 'rxjs';
|
|
4
|
-
|
|
3
|
+
import { toArray } from 'rxjs/operators';
|
|
5
4
|
import PileupBaseRPC from '../base';
|
|
6
5
|
export default class PileupGetGlobalValueForTag extends PileupBaseRPC {
|
|
7
6
|
constructor() {
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Region } from '@jbrowse/core/util';
|
|
2
|
-
import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
|
|
3
1
|
import PileupBaseRPC from '../base';
|
|
2
|
+
import type { Region } from '@jbrowse/core/util';
|
|
4
3
|
export default class PileupGetReducedFeatures extends PileupBaseRPC {
|
|
5
4
|
name: string;
|
|
6
5
|
execute(args: {
|
|
7
6
|
adapterConfig: Record<string, unknown>;
|
|
8
|
-
|
|
7
|
+
stopToken?: string;
|
|
9
8
|
headers?: Record<string, string>;
|
|
10
9
|
regions: Region[];
|
|
11
10
|
sessionId: string;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
2
2
|
import { dedupe, groupBy } from '@jbrowse/core/util';
|
|
3
|
-
import { toArray } from 'rxjs/operators';
|
|
4
3
|
import { firstValueFrom } from 'rxjs';
|
|
5
|
-
|
|
6
|
-
import { filterForPairs, getInsertSizeStats } from '../util';
|
|
7
|
-
import PileupBaseRPC from '../base';
|
|
4
|
+
import { toArray } from 'rxjs/operators';
|
|
8
5
|
import { getClip } from '../../MismatchParser';
|
|
9
|
-
|
|
6
|
+
import PileupBaseRPC from '../base';
|
|
7
|
+
import { filterForPairs, getInsertSizeStats } from '../util';
|
|
10
8
|
export default class PileupGetReducedFeatures extends PileupBaseRPC {
|
|
11
9
|
constructor() {
|
|
12
10
|
super(...arguments);
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
|
|
2
|
-
import { Region } from '@jbrowse/core/util';
|
|
3
|
-
import { ModificationType } from '../../shared/types';
|
|
4
1
|
import PileupBaseRPC from '../base';
|
|
2
|
+
import type { ModificationType } from '../../shared/types';
|
|
3
|
+
import type { Region } from '@jbrowse/core/util';
|
|
5
4
|
export default class PileupGetVisibleModifications extends PileupBaseRPC {
|
|
6
5
|
name: string;
|
|
7
6
|
execute(args: {
|
|
8
7
|
adapterConfig: Record<string, unknown>;
|
|
9
|
-
|
|
8
|
+
stopToken?: string;
|
|
10
9
|
headers?: Record<string, string>;
|
|
11
10
|
regions: Region[];
|
|
12
11
|
sessionId: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
2
|
-
import { toArray } from 'rxjs/operators';
|
|
3
2
|
import { firstValueFrom } from 'rxjs';
|
|
3
|
+
import { toArray } from 'rxjs/operators';
|
|
4
4
|
import { getModTypes } from '../../ModificationParser';
|
|
5
5
|
import { getTagAlt } from '../../util';
|
|
6
6
|
import PileupBaseRPC from '../base';
|
package/esm/PileupRPC/util.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { LayoutSession } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
2
|
+
import type { FilterBy, SortedBy } from '../shared/types';
|
|
3
|
+
import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
4
|
+
import type SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain';
|
|
5
|
+
import type GranularRectLayout from '@jbrowse/core/util/layouts/GranularRectLayout';
|
|
6
|
+
import type MultiLayout from '@jbrowse/core/util/layouts/MultiLayout';
|
|
7
7
|
export interface PileupLayoutSessionProps {
|
|
8
8
|
config: AnyConfigurationModel;
|
|
9
9
|
bpPerPx: number;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import deepEqual from 'fast-deep-equal';
|
|
2
|
-
import { LayoutSession } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
3
1
|
import { readConfObject } from '@jbrowse/core/configuration';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
// - extra conditions to see if cached layout is valid
|
|
2
|
+
import { LayoutSession } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
3
|
+
import deepEqual from 'fast-deep-equal';
|
|
7
4
|
export class PileupLayoutSession extends LayoutSession {
|
|
8
5
|
constructor(args) {
|
|
9
6
|
super(args);
|
|
@@ -1,29 +1,16 @@
|
|
|
1
|
-
import BoxRendererType
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
export interface RenderArgsDeserialized extends BoxRenderArgsDeserialized {
|
|
7
|
-
colorBy?: ColorBy;
|
|
8
|
-
colorTagMap?: Record<string, string>;
|
|
9
|
-
visibleModifications?: Record<string, ModificationTypeWithColor>;
|
|
10
|
-
sortedBy?: SortedBy;
|
|
11
|
-
showSoftClip: boolean;
|
|
12
|
-
highResolutionScaling: number;
|
|
13
|
-
}
|
|
14
|
-
export interface RenderArgsDeserializedWithFeaturesAndLayout extends RenderArgsDeserialized {
|
|
15
|
-
features: Map<string, Feature>;
|
|
16
|
-
layout: BaseLayout<Feature>;
|
|
17
|
-
regionSequence?: string;
|
|
18
|
-
}
|
|
1
|
+
import BoxRendererType from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
2
|
+
import { PileupLayoutSession } from './PileupLayoutSession';
|
|
3
|
+
import type { PileupLayoutSessionProps } from './PileupLayoutSession';
|
|
4
|
+
import type { RenderArgsDeserialized } from './types';
|
|
5
|
+
import type { Region } from '@jbrowse/core/util';
|
|
19
6
|
export default class PileupRenderer extends BoxRendererType {
|
|
20
7
|
supportsSVG: boolean;
|
|
21
|
-
fetchSequence(renderProps: RenderArgsDeserialized): Promise<any>;
|
|
8
|
+
fetchSequence(renderProps: RenderArgsDeserialized, region: Region): Promise<any>;
|
|
22
9
|
getExpandedRegion(region: Region, renderArgs: RenderArgsDeserialized): {
|
|
23
10
|
start: number;
|
|
24
11
|
end: number;
|
|
25
|
-
reversed?: boolean | undefined;
|
|
26
12
|
refName: string;
|
|
13
|
+
reversed?: boolean | undefined;
|
|
27
14
|
assemblyName: string;
|
|
28
15
|
};
|
|
29
16
|
render(renderProps: RenderArgsDeserialized): Promise<{
|
|
@@ -32,8 +19,9 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
32
19
|
height: number;
|
|
33
20
|
width: number;
|
|
34
21
|
maxHeightReached: boolean;
|
|
22
|
+
containsNoTransferables: boolean;
|
|
35
23
|
canvasRecordedData: any;
|
|
36
|
-
reactElement?:
|
|
24
|
+
reactElement?: React.ReactElement;
|
|
37
25
|
html?: string;
|
|
38
26
|
} | {
|
|
39
27
|
features: Map<any, any>;
|
|
@@ -41,7 +29,8 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
41
29
|
height: number;
|
|
42
30
|
width: number;
|
|
43
31
|
maxHeightReached: boolean;
|
|
44
|
-
|
|
32
|
+
containsNoTransferables: boolean;
|
|
33
|
+
reactElement: import("react/jsx-runtime").JSX.Element;
|
|
45
34
|
html?: string;
|
|
46
35
|
} | {
|
|
47
36
|
features: Map<any, any>;
|
|
@@ -49,10 +38,11 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
49
38
|
height: number;
|
|
50
39
|
width: number;
|
|
51
40
|
maxHeightReached: boolean;
|
|
41
|
+
containsNoTransferables: boolean;
|
|
52
42
|
imageData: any;
|
|
53
|
-
reactElement?:
|
|
43
|
+
reactElement?: React.ReactElement;
|
|
54
44
|
html?: string;
|
|
55
45
|
}>;
|
|
56
46
|
createSession(args: PileupLayoutSessionProps): PileupLayoutSession;
|
|
57
47
|
}
|
|
58
|
-
export type { RenderArgs, RenderResults,
|
|
48
|
+
export type { RenderArgs, RenderArgsSerialized, RenderResults, ResultsDeserialized, ResultsSerialized, } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import BoxRendererType from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
2
|
-
import { notEmpty, renderToAbstractCanvas, } from '@jbrowse/core/util';
|
|
3
1
|
import { readConfObject } from '@jbrowse/core/configuration';
|
|
4
2
|
import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
5
|
-
import
|
|
6
|
-
|
|
3
|
+
import BoxRendererType from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
|
|
4
|
+
import { renderToAbstractCanvas } from '@jbrowse/core/util';
|
|
5
|
+
import { PileupLayoutSession } from './PileupLayoutSession';
|
|
7
6
|
import { fetchSequence } from '../util';
|
|
8
7
|
import { layoutFeats } from './layoutFeatures';
|
|
9
8
|
export default class PileupRenderer extends BoxRendererType {
|
|
@@ -11,14 +10,13 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
11
10
|
super(...arguments);
|
|
12
11
|
this.supportsSVG = true;
|
|
13
12
|
}
|
|
14
|
-
async fetchSequence(renderProps) {
|
|
15
|
-
const { sessionId,
|
|
13
|
+
async fetchSequence(renderProps, region) {
|
|
14
|
+
const { sessionId, adapterConfig } = renderProps;
|
|
16
15
|
const { sequenceAdapter } = adapterConfig;
|
|
17
16
|
if (!sequenceAdapter) {
|
|
18
17
|
return undefined;
|
|
19
18
|
}
|
|
20
19
|
const { dataAdapter } = await getAdapter(this.pluginManager, sessionId, sequenceAdapter);
|
|
21
|
-
const region = regions[0];
|
|
22
20
|
return fetchSequence({
|
|
23
21
|
...region,
|
|
24
22
|
start: Math.max(0, region.start - 1),
|
|
@@ -31,7 +29,6 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
31
29
|
const maxClippingSize = readConfObject(config, 'maxClippingSize');
|
|
32
30
|
const bpExpansion = showSoftClip ? Math.round(maxClippingSize) : 0;
|
|
33
31
|
return {
|
|
34
|
-
// xref https://github.com/mobxjs/mobx-state-tree/issues/1524 for Omit
|
|
35
32
|
...region,
|
|
36
33
|
start: Math.floor(Math.max(start - bpExpansion, 0)),
|
|
37
34
|
end: Math.ceil(end + bpExpansion),
|
|
@@ -40,25 +37,22 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
40
37
|
async render(renderProps) {
|
|
41
38
|
const features = await this.getFeatures(renderProps);
|
|
42
39
|
const layout = this.createLayoutInWorker(renderProps);
|
|
43
|
-
const { regions, bpPerPx } = renderProps;
|
|
40
|
+
const { colorBy, regions, bpPerPx } = renderProps;
|
|
44
41
|
const region = regions[0];
|
|
45
|
-
const
|
|
42
|
+
const regionSequence = (colorBy === null || colorBy === void 0 ? void 0 : colorBy.type) === 'methylation' && features.size
|
|
43
|
+
? await this.fetchSequence(renderProps, region)
|
|
44
|
+
: undefined;
|
|
45
|
+
const { layoutRecords, height } = layoutFeats({
|
|
46
46
|
...renderProps,
|
|
47
47
|
features,
|
|
48
48
|
layout,
|
|
49
49
|
});
|
|
50
|
-
// only need reference sequence if there are features and only for some
|
|
51
|
-
// cases
|
|
52
|
-
const regionSequence = features.size
|
|
53
|
-
? await this.fetchSequence(renderProps)
|
|
54
|
-
: undefined;
|
|
55
50
|
const width = (region.end - region.start) / bpPerPx;
|
|
56
|
-
const height = Math.max(layout.getTotalHeight(), 1);
|
|
57
51
|
const { makeImageData } = await import('./makeImageData');
|
|
58
52
|
const res = await renderToAbstractCanvas(width, height, renderProps, ctx => {
|
|
59
53
|
makeImageData({
|
|
60
54
|
ctx,
|
|
61
|
-
layoutRecords
|
|
55
|
+
layoutRecords,
|
|
62
56
|
canvasWidth: width,
|
|
63
57
|
renderArgs: {
|
|
64
58
|
...renderProps,
|
|
@@ -85,6 +79,7 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
85
79
|
height,
|
|
86
80
|
width,
|
|
87
81
|
maxHeightReached: layout.maxHeightReached,
|
|
82
|
+
containsNoTransferables: true,
|
|
88
83
|
};
|
|
89
84
|
}
|
|
90
85
|
createSession(args) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
2
|
-
import { Feature } from '@jbrowse/core/util';
|
|
1
|
+
import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
2
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
3
3
|
export declare function colorByInsertSize(feature: Feature): string;
|
|
4
4
|
export declare function colorByMappingQuality(feature: Feature): string;
|
|
5
5
|
export declare function colorByStrand(feature: Feature): "#EC8B8B" | "#8F8FD8";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { readConfObject
|
|
1
|
+
import { readConfObject } from '@jbrowse/core/configuration';
|
|
2
2
|
import { fillColor } from '../shared/color';
|
|
3
3
|
import { orientationTypes } from '../util';
|
|
4
4
|
export function colorByInsertSize(feature) {
|
|
@@ -30,27 +30,21 @@ export function colorByOrientation(feature, config) {
|
|
|
30
30
|
function getStranded(feature) {
|
|
31
31
|
const flags = feature.get('flags');
|
|
32
32
|
const strand = feature.get('strand');
|
|
33
|
-
// is paired
|
|
34
33
|
if (flags & 1) {
|
|
35
|
-
// first-of-pair?
|
|
36
34
|
const flipper = flags & 64 ? -1 : 1;
|
|
37
|
-
// proper pairing
|
|
38
35
|
if (flags & 2) {
|
|
39
36
|
return strand * flipper === 1 ? 'color_rev_strand' : 'color_fwd_strand';
|
|
40
37
|
}
|
|
41
|
-
// mate missing, separate color
|
|
42
38
|
if (flags & 8) {
|
|
43
39
|
return strand * flipper === 1
|
|
44
40
|
? 'color_rev_missing_mate'
|
|
45
41
|
: 'color_fwd_missing_mate';
|
|
46
42
|
}
|
|
47
|
-
// same chrom without proper pairing gets separate color
|
|
48
43
|
if (feature.get('refName') === feature.get('next_ref')) {
|
|
49
44
|
return strand * flipper === 1
|
|
50
45
|
? 'color_rev_strand_not_proper'
|
|
51
46
|
: 'color_fwd_strand_not_proper';
|
|
52
47
|
}
|
|
53
|
-
// abberant chrom
|
|
54
48
|
return strand === 1 ? 'color_fwd_diff_chr' : 'color_rev_diff_chr';
|
|
55
49
|
}
|
|
56
50
|
return 'color_unknown';
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Region } from '@jbrowse/core/util/types';
|
|
1
|
+
import type { Region } from '@jbrowse/core/util/types';
|
|
3
2
|
import type { BaseLinearDisplayModel } from '@jbrowse/plugin-linear-genome-view';
|
|
4
3
|
declare const PileupRendering: (props: {
|
|
5
4
|
blockKey: string;
|
|
@@ -23,5 +22,5 @@ declare const PileupRendering: (props: {
|
|
|
23
22
|
};
|
|
24
23
|
};
|
|
25
24
|
onMouseMove?: (event: React.MouseEvent, featureId?: string) => void;
|
|
26
|
-
}) =>
|
|
25
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
27
26
|
export default PileupRendering;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
3
|
import { PrerenderedCanvas } from '@jbrowse/core/ui';
|
|
3
4
|
import { bpSpanPx } from '@jbrowse/core/util';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
@@ -81,9 +82,7 @@ const PileupRendering = observer(function (props) {
|
|
|
81
82
|
onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(event, displayModel === null || displayModel === void 0 ? void 0 : displayModel.getFeatureOverlapping(blockKey, clientBp, offsetY));
|
|
82
83
|
}
|
|
83
84
|
function callMouseHandler(handlerName, event) {
|
|
84
|
-
// @ts-expect-error
|
|
85
85
|
const featureHandler = props[`onFeature${handlerName}`];
|
|
86
|
-
// @ts-expect-error
|
|
87
86
|
const canvasHandler = props[`on${handlerName}`];
|
|
88
87
|
if (featureHandler && featureIdUnderMouse) {
|
|
89
88
|
featureHandler(event, featureIdUnderMouse);
|
|
@@ -93,8 +92,7 @@ const PileupRendering = observer(function (props) {
|
|
|
93
92
|
}
|
|
94
93
|
}
|
|
95
94
|
const canvasWidth = Math.ceil(width);
|
|
96
|
-
|
|
97
|
-
return (React.createElement("div", { ref: ref, "data-testid": [
|
|
95
|
+
return (_jsxs("div", { ref: ref, "data-testid": [
|
|
98
96
|
'pileup-overlay',
|
|
99
97
|
sortedBy === null || sortedBy === void 0 ? void 0 : sortedBy.type,
|
|
100
98
|
colorBy === null || colorBy === void 0 ? void 0 : colorBy.type,
|
|
@@ -120,20 +118,17 @@ const PileupRendering = observer(function (props) {
|
|
|
120
118
|
onClick(event);
|
|
121
119
|
}, onContextMenu: event => {
|
|
122
120
|
onContextMenu(event);
|
|
123
|
-
}, onFocus: () => { }, onBlur: () => { } },
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
pointerEvents: 'none',
|
|
136
|
-
...selected,
|
|
137
|
-
} })) : null));
|
|
121
|
+
}, onFocus: () => { }, onBlur: () => { }, children: [_jsx(PrerenderedCanvas, { ...props, style: { position: 'absolute', left: 0, top: 0 } }), firstRender && highlight ? (_jsx("div", { style: {
|
|
122
|
+
position: 'absolute',
|
|
123
|
+
backgroundColor: '#0003',
|
|
124
|
+
pointerEvents: 'none',
|
|
125
|
+
...highlight,
|
|
126
|
+
} })) : null, firstRender && selected ? (_jsx("div", { style: {
|
|
127
|
+
position: 'absolute',
|
|
128
|
+
border: '2px solid #00b8ff',
|
|
129
|
+
boxSizing: 'content-box',
|
|
130
|
+
pointerEvents: 'none',
|
|
131
|
+
...selected,
|
|
132
|
+
} })) : null] }));
|
|
138
133
|
});
|
|
139
134
|
export default PileupRendering;
|
|
@@ -1,84 +1,58 @@
|
|
|
1
1
|
declare const PileupRenderer: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
2
|
-
/**
|
|
3
|
-
* #slot
|
|
4
|
-
* default magenta here is used to detect the user has not customized this
|
|
5
|
-
*/
|
|
6
2
|
color: {
|
|
7
3
|
type: string;
|
|
8
4
|
description: string;
|
|
9
5
|
defaultValue: string;
|
|
10
6
|
contextVariable: string[];
|
|
11
7
|
};
|
|
12
|
-
/**
|
|
13
|
-
* #slot
|
|
14
|
-
*/
|
|
15
8
|
orientationType: {
|
|
16
9
|
type: string;
|
|
17
10
|
model: import("mobx-state-tree").ISimpleType<string>;
|
|
18
11
|
defaultValue: string;
|
|
19
12
|
description: string;
|
|
20
13
|
};
|
|
21
|
-
/**
|
|
22
|
-
* #slot
|
|
23
|
-
*/
|
|
24
14
|
displayMode: {
|
|
25
15
|
type: string;
|
|
26
16
|
model: import("mobx-state-tree").ISimpleType<string>;
|
|
27
17
|
description: string;
|
|
28
18
|
defaultValue: string;
|
|
29
19
|
};
|
|
30
|
-
/**
|
|
31
|
-
* #slot
|
|
32
|
-
*/
|
|
33
20
|
minSubfeatureWidth: {
|
|
34
21
|
type: string;
|
|
35
22
|
description: string;
|
|
36
23
|
defaultValue: number;
|
|
37
24
|
};
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
25
|
+
hideSmallIndels: {
|
|
26
|
+
type: string;
|
|
27
|
+
description: string;
|
|
28
|
+
defaultValue: boolean;
|
|
29
|
+
};
|
|
41
30
|
maxHeight: {
|
|
42
31
|
type: string;
|
|
43
32
|
description: string;
|
|
44
33
|
defaultValue: number;
|
|
45
34
|
};
|
|
46
|
-
/**
|
|
47
|
-
* #slot
|
|
48
|
-
*/
|
|
49
35
|
maxClippingSize: {
|
|
50
36
|
type: string;
|
|
51
37
|
description: string;
|
|
52
38
|
defaultValue: number;
|
|
53
39
|
};
|
|
54
|
-
/**
|
|
55
|
-
* #slot
|
|
56
|
-
*/
|
|
57
40
|
height: {
|
|
58
41
|
type: string;
|
|
59
42
|
description: string;
|
|
60
43
|
defaultValue: number;
|
|
61
44
|
contextVariable: string[];
|
|
62
45
|
};
|
|
63
|
-
/**
|
|
64
|
-
* #slot
|
|
65
|
-
*/
|
|
66
46
|
noSpacing: {
|
|
67
47
|
type: string;
|
|
68
48
|
description: string;
|
|
69
49
|
defaultValue: boolean;
|
|
70
50
|
};
|
|
71
|
-
/**
|
|
72
|
-
* #slot
|
|
73
|
-
*/
|
|
74
51
|
largeInsertionIndicatorScale: {
|
|
75
52
|
type: string;
|
|
76
53
|
description: string;
|
|
77
54
|
defaultValue: number;
|
|
78
55
|
};
|
|
79
|
-
/**
|
|
80
|
-
* #slot
|
|
81
|
-
*/
|
|
82
56
|
mismatchAlpha: {
|
|
83
57
|
type: string;
|
|
84
58
|
defaultValue: boolean;
|