Skip to content

Commit 9254752

Browse files
committed
Bump deps
1 parent d267d8d commit 9254752

File tree

7 files changed

+6081
-6732
lines changed

7 files changed

+6081
-6732
lines changed

plugins/linear-genome-view/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx

+61-44
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,20 @@ import {
1111
isSelectionContainer,
1212
isSessionModelWithWidgets,
1313
isFeature,
14+
mergeIntervals,
1415
Feature,
1516
} from '@jbrowse/core/util'
1617
import { BaseBlock } from '@jbrowse/core/util/blockTypes'
1718
import CompositeMap from '@jbrowse/core/util/compositeMap'
1819
import { getParentRenderProps } from '@jbrowse/core/util/tracks'
19-
import { autorun } from 'mobx'
20-
import { addDisposer, isAlive, types,
21-
20+
import { autorun, when } from 'mobx'
21+
import {
22+
addDisposer,
23+
isAlive,
2224
getSnapshot,
23-
Instance } from 'mobx-state-tree'
25+
types,
26+
Instance,
27+
} from 'mobx-state-tree'
2428

2529
// icons
2630
import MenuOpenIcon from '@mui/icons-material/MenuOpen'
@@ -33,7 +37,6 @@ import BlockState from './serverSideRenderedBlock'
3337
import configSchema from './configSchema'
3438
import TrackHeightMixin from './TrackHeightMixin'
3539
import FeatureDensityMixin from './FeatureDensityMixin'
36-
import { nanoid } from '@jbrowse/core/util/nanoid'
3740

3841
type LGV = LinearGenomeViewModel
3942

@@ -306,6 +309,23 @@ function stateModelFactory() {
306309
* #method
307310
*/
308311
contextMenuItems(): MenuItem[] {
312+
const { contextMenuFeature } = self
313+
const singleTranscript = contextMenuFeature?.get('subfeatures')?.[0]
314+
const exons =
315+
singleTranscript
316+
?.get('subfeatures')
317+
?.filter(
318+
f => f.get('type') === 'exon' || f.get('type') === 'CDS',
319+
) || []
320+
const cds =
321+
singleTranscript
322+
?.get('subfeatures')
323+
?.filter(
324+
f => f.get('type') === 'exon' || f.get('type') === 'CDS',
325+
) || []
326+
327+
// some GFF3 features have CDS and no exon subfeatures
328+
const subs = exons.length ? exons : cds.length ? cds : []
309329
return [
310330
...(self.contextMenuFeature
311331
? [
@@ -327,47 +347,44 @@ function stateModelFactory() {
327347
}
328348
},
329349
},
330-
{
331-
label: 'Collapse introns',
332-
onClick: async () => {
333-
const { contextMenuFeature } = self
334-
if (contextMenuFeature) {
335-
const refName = contextMenuFeature.get('refName')
336-
const view = getContainingView(self) as LGV
337-
const singleTranscript =
338-
contextMenuFeature.get('subfeatures')?.[0]
339-
const res =
340-
singleTranscript
341-
?.get('subfeatures')
342-
?.filter(f => f.get('type') === 'exon')
343-
.map(f => ({
344-
refName,
345-
start: f.get('start') - 100,
346-
end: f.get('end') + 100,
347-
assemblyName: view.assemblyNames[0],
348-
})) || []
349-
res.sort((a, b) => a.start - b.start)
350+
...(exons.length > 0 && contextMenuFeature
351+
? [
352+
{
353+
label: 'Collapse introns',
354+
onClick: async () => {
355+
const refName = contextMenuFeature.get('refName')
356+
const view = getContainingView(self) as LGV
357+
const w = 100
358+
const res = mergeIntervals(
359+
subs.map(f => ({
360+
refName,
361+
start: f.get('start') - w,
362+
end: f.get('end') + w,
363+
assemblyName: view.assemblyNames[0],
364+
})),
365+
w,
366+
)
350367

351-
// need to strip ID before copying view snap
352-
const { id, ...rest } = getSnapshot(view)
353-
const newView = getSession(self).addView(
354-
'LinearGenomeView',
355-
{
356-
...rest,
357-
id: nanoid(),
358-
tracks: rest.tracks.map(track => {
359-
const { id, ...rest } = track
360-
return { ...rest, id: nanoid() }
361-
}),
362-
displayedRegions: res,
363-
},
364-
) as LGV
365-
await when(() => newView.initialized)
368+
// need to strip ID before copying view snap
369+
const { id, ...rest } = getSnapshot(view)
370+
const newView = getSession(self).addView(
371+
'LinearGenomeView',
372+
{
373+
...rest,
374+
tracks: rest.tracks.map(track => {
375+
const { id, ...rest } = track
376+
return { ...rest }
377+
}),
378+
displayedRegions: res,
379+
},
380+
) as LGV
381+
await when(() => newView.initialized)
366382

367-
newView.showAllRegions()
368-
}
369-
},
370-
},
383+
newView.showAllRegions()
384+
},
385+
},
386+
]
387+
: []),
371388
]
372389
: []),
373390
]

plugins/linear-genome-view/src/BaseLinearDisplay/models/serverSideRenderedBlock.ts

+1-8
Original file line numberDiff line numberDiff line change
@@ -242,12 +242,6 @@ export function renderBlockData(
242242
const layoutId = getContainingView(display).id
243243
const cannotBeRenderedReason = display.regionCannotBeRendered(self.region)
244244

245-
const asm = assemblyManager.get(regionAsm)!
246-
const regions = [getSnapshot(self.region)]
247-
const parentRegions = regions.map(region => {
248-
const r = asm?.getCanonicalRefName(region.refName)
249-
return asm.regions?.find(b => b.refName === r)
250-
})
251245
return {
252246
rendererType,
253247
rpcManager,
@@ -261,8 +255,7 @@ export function renderBlockData(
261255
}
262256
},
263257
assemblyName: self.region.assemblyName,
264-
regions,
265-
parentRegions,
258+
regions: [getSnapshot(self.region)],
266259
adapterConfig,
267260
rendererType: rendererType.name,
268261
sessionId,

plugins/linear-genome-view/src/LinearGenomeView/components/Header.tsx

+6-3
Original file line numberDiff line numberDiff line change
@@ -112,11 +112,14 @@ const Controls = ({ model }: { model: LGV }) => {
112112
}
113113

114114
const LinearGenomeViewHeader = observer(({ model }: { model: LGV }) => {
115-
const Wrapper = model.hideHeaderOverview ? React.Fragment : OverviewScalebar
116115
return !model.hideHeader ? (
117-
<Wrapper model={model}>
116+
model.hideHeaderOverview ? (
118117
<Controls model={model} />
119-
</Wrapper>
118+
) : (
119+
<OverviewScalebar model={model}>
120+
<Controls model={model} />
121+
</OverviewScalebar>
122+
)
120123
) : null
121124
})
122125

plugins/sequence/src/DivSequenceRenderer/components/DivSequenceRendering.test.tsx

-5
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import DivRenderingConfigSchema from '../configSchema'
77
test('renders with one, zoomed way out', () => {
88
const { container } = render(
99
<DivSequenceRendering
10-
rowHeight={13}
1110
regions={[
1211
{ assemblyName: 'volvox', refName: 'zonk', start: 0, end: 1000 },
1312
]}
@@ -39,7 +38,6 @@ test('renders with one, zoomed way out', () => {
3938
test('renders with one feature with no seq, zoomed in, should throw', () => {
4039
const { container } = render(
4140
<DivSequenceRendering
42-
rowHeight={13}
4341
regions={[
4442
{ assemblyName: 'volvox', refName: 'zonk', start: 0, end: 1000 },
4543
]}
@@ -70,7 +68,6 @@ test('renders with one feature with no seq, zoomed in, should throw', () => {
7068
test('renders with one feature with an incorrect seq, zoomed in, should throw', () => {
7169
const { container } = render(
7270
<DivSequenceRendering
73-
rowHeight={13}
7471
regions={[
7572
{ assemblyName: 'volvox', refName: 'zonk', start: 0, end: 1000 },
7673
]}
@@ -102,7 +99,6 @@ test('renders with one feature with an incorrect seq, zoomed in, should throw',
10299
test('renders with one feature with a correct seq, zoomed in, should render nicely', () => {
103100
const { container } = render(
104101
<DivSequenceRendering
105-
rowHeight={13}
106102
regions={[
107103
{ assemblyName: 'volvox', refName: 'zonk', start: 0, end: 1000 },
108104
]}
@@ -134,7 +130,6 @@ test('renders with one feature with a correct seq, zoomed in, should render nice
134130
test('renders with one feature reversed with a correct seq, zoomed in, should render nicely', () => {
135131
const { container } = render(
136132
<DivSequenceRendering
137-
rowHeight={13}
138133
regions={[
139134
{
140135
assemblyName: 'volvox',

plugins/sequence/src/LinearReferenceSequenceDisplay/components/SetHeightDialog.tsx

-68
This file was deleted.

plugins/svg/src/SvgFeatureRenderer/components/util.ts

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export interface Glyph
2020
selected?: boolean
2121
config: AnyConfigurationModel
2222
region: Region
23-
parentRegion: Region
2423
bpPerPx: number
2524
topLevel?: boolean
2625
[key: string]: unknown

0 commit comments

Comments
 (0)