@jbrowse/plugin-data-management 2.3.4 → 2.4.1
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/AddConnectionWidget/components/ConnectionTypeSelect.js +1 -1
- package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js.map +1 -1
- package/dist/AddTrackWidget/components/ConfirmTrack.js +1 -1
- package/dist/AddTrackWidget/components/ConfirmTrack.js.map +1 -1
- package/dist/AddTrackWidget/components/TextIndexingConfig.js +2 -2
- package/dist/AddTrackWidget/components/TextIndexingConfig.js.map +1 -1
- package/dist/AddTrackWidget/components/TrackAdapterSelector.js +1 -1
- package/dist/AddTrackWidget/components/TrackAdapterSelector.js.map +1 -1
- package/dist/AddTrackWidget/components/TrackTypeSelector.js +1 -1
- package/dist/AddTrackWidget/components/TrackTypeSelector.js.map +1 -1
- package/dist/AddTrackWidget/model.js +5 -5
- package/dist/AddTrackWidget/model.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +9 -9
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +0 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +2 -2
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +5 -5
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/util.js +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/util.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/index.d.ts +2 -4
- package/dist/HierarchicalTrackSelectorWidget/index.js +4 -2
- package/dist/HierarchicalTrackSelectorWidget/index.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/model.d.ts +1 -1
- package/dist/HierarchicalTrackSelectorWidget/model.js +15 -6
- package/dist/HierarchicalTrackSelectorWidget/model.js.map +1 -1
- package/dist/PluginStoreWidget/components/InstalledPluginsList.js +4 -4
- package/dist/PluginStoreWidget/components/InstalledPluginsList.js.map +1 -1
- package/dist/PluginStoreWidget/components/PluginCard.d.ts +2 -3
- package/dist/PluginStoreWidget/components/PluginCard.js +7 -7
- package/dist/PluginStoreWidget/components/PluginCard.js.map +1 -1
- package/dist/PluginStoreWidget/components/PluginStoreWidget.js +3 -3
- package/dist/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.js.map +1 -1
- package/dist/ucsc-trackhub/ucscTrackHub.d.ts +1 -2
- package/dist/ucsc-trackhub/ucscTrackHub.js +11 -11
- package/dist/ucsc-trackhub/ucscTrackHub.js.map +1 -1
- package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +1 -1
- package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js.map +1 -1
- package/esm/AddTrackWidget/components/ConfirmTrack.js +1 -1
- package/esm/AddTrackWidget/components/ConfirmTrack.js.map +1 -1
- package/esm/AddTrackWidget/components/TextIndexingConfig.js +2 -2
- package/esm/AddTrackWidget/components/TextIndexingConfig.js.map +1 -1
- package/esm/AddTrackWidget/components/TrackAdapterSelector.js +1 -1
- package/esm/AddTrackWidget/components/TrackAdapterSelector.js.map +1 -1
- package/esm/AddTrackWidget/components/TrackTypeSelector.js +1 -1
- package/esm/AddTrackWidget/components/TrackTypeSelector.js.map +1 -1
- package/esm/AddTrackWidget/model.js +5 -5
- package/esm/AddTrackWidget/model.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +9 -9
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +0 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +5 -5
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/util.js +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/util.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/index.d.ts +2 -4
- package/esm/HierarchicalTrackSelectorWidget/index.js +2 -1
- package/esm/HierarchicalTrackSelectorWidget/index.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/model.d.ts +1 -1
- package/esm/HierarchicalTrackSelectorWidget/model.js +15 -6
- package/esm/HierarchicalTrackSelectorWidget/model.js.map +1 -1
- package/esm/PluginStoreWidget/components/InstalledPluginsList.js +4 -4
- package/esm/PluginStoreWidget/components/InstalledPluginsList.js.map +1 -1
- package/esm/PluginStoreWidget/components/PluginCard.d.ts +2 -3
- package/esm/PluginStoreWidget/components/PluginCard.js +7 -7
- package/esm/PluginStoreWidget/components/PluginCard.js.map +1 -1
- package/esm/PluginStoreWidget/components/PluginStoreWidget.js +3 -3
- package/esm/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -1
- package/esm/index.d.ts +2 -3
- package/esm/index.js.map +1 -1
- package/esm/ucsc-trackhub/ucscTrackHub.d.ts +1 -2
- package/esm/ucsc-trackhub/ucscTrackHub.js +9 -10
- package/esm/ucsc-trackhub/ucscTrackHub.js.map +1 -1
- package/package.json +2 -2
- package/src/AddConnectionWidget/components/AddConnectionWidget.test.tsx +4 -4
- package/src/AddConnectionWidget/components/ConnectionTypeSelect.tsx +0 -1
- package/src/AddConnectionWidget/components/__snapshots__/AddConnectionWidget.test.tsx.snap +2 -2
- package/src/AddTrackWidget/components/ConfirmTrack.tsx +1 -1
- package/src/AddTrackWidget/components/TextIndexingConfig.tsx +0 -2
- package/src/AddTrackWidget/components/TrackAdapterSelector.tsx +1 -1
- package/src/AddTrackWidget/components/TrackTypeSelector.tsx +1 -1
- package/src/AddTrackWidget/index.test.tsx +2 -2
- package/src/AddTrackWidget/model.ts +5 -5
- package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.test.tsx +4 -4
- package/src/HierarchicalTrackSelectorWidget/components/__snapshots__/HierarchicalTrackSelector.test.tsx.snap +4 -4
- package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.tsx +9 -9
- package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.tsx +4 -5
- package/src/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.tsx +0 -2
- package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.tsx +1 -4
- package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.tsx +4 -4
- package/src/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.tsx +1 -1
- package/src/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.tsx +4 -5
- package/src/HierarchicalTrackSelectorWidget/components/util.ts +1 -1
- package/src/HierarchicalTrackSelectorWidget/index.ts +7 -4
- package/src/HierarchicalTrackSelectorWidget/model.ts +14 -6
- package/src/PluginStoreWidget/components/InstalledPluginsList.tsx +8 -6
- package/src/PluginStoreWidget/components/PluginCard.tsx +8 -10
- package/src/PluginStoreWidget/components/PluginStoreWidget.test.tsx +3 -3
- package/src/PluginStoreWidget/components/PluginStoreWidget.tsx +3 -7
- package/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap +2 -2
- package/src/index.ts +5 -5
- package/src/ucsc-trackhub/ucscTrackHub.ts +9 -10
|
@@ -12,19 +12,21 @@ function InstalledPluginsList({
|
|
|
12
12
|
pluginManager: PluginManager
|
|
13
13
|
model: PluginStoreModel
|
|
14
14
|
}) {
|
|
15
|
-
const { plugins } = pluginManager
|
|
15
|
+
const { plugins } = pluginManager
|
|
16
16
|
|
|
17
|
-
const corePlugins =
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
const corePlugins = new Set(
|
|
18
|
+
plugins
|
|
19
|
+
.filter(p => pluginManager.pluginMetadata[p.name]?.isCore)
|
|
20
|
+
.map(p => p.name),
|
|
21
|
+
)
|
|
20
22
|
|
|
21
23
|
const externalPlugins = plugins.filter(
|
|
22
|
-
plugin => !corePlugins.
|
|
24
|
+
plugin => !corePlugins.has(plugin.name),
|
|
23
25
|
)
|
|
24
26
|
|
|
25
27
|
return (
|
|
26
28
|
<List>
|
|
27
|
-
{externalPlugins.length ? (
|
|
29
|
+
{externalPlugins.length > 0 ? (
|
|
28
30
|
externalPlugins
|
|
29
31
|
.filter(plugin =>
|
|
30
32
|
plugin.name.toLowerCase().includes(model.filterText.toLowerCase()),
|
|
@@ -20,9 +20,11 @@ import { makeStyles } from 'tss-react/mui'
|
|
|
20
20
|
import PersonIcon from '@mui/icons-material/Person'
|
|
21
21
|
import AddIcon from '@mui/icons-material/Add'
|
|
22
22
|
import CheckIcon from '@mui/icons-material/Check'
|
|
23
|
+
|
|
24
|
+
// locals
|
|
23
25
|
import { PluginStoreModel } from '../model'
|
|
24
26
|
|
|
25
|
-
const useStyles = makeStyles()(
|
|
27
|
+
const useStyles = makeStyles()({
|
|
26
28
|
card: {
|
|
27
29
|
margin: '1em',
|
|
28
30
|
},
|
|
@@ -38,9 +40,9 @@ const useStyles = makeStyles()(() => ({
|
|
|
38
40
|
alignItems: 'center',
|
|
39
41
|
margin: '0.4em 0em',
|
|
40
42
|
},
|
|
41
|
-
})
|
|
43
|
+
})
|
|
42
44
|
|
|
43
|
-
function PluginCard({
|
|
45
|
+
export default observer(function PluginCard({
|
|
44
46
|
plugin,
|
|
45
47
|
model,
|
|
46
48
|
adminMode,
|
|
@@ -52,9 +54,8 @@ function PluginCard({
|
|
|
52
54
|
const { classes } = useStyles()
|
|
53
55
|
const session = getSession(model)
|
|
54
56
|
const { pluginManager } = getEnv(model)
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
)
|
|
57
|
+
const { runtimePluginDefinitions } = pluginManager
|
|
58
|
+
const isInstalled = runtimePluginDefinitions.some(d => d.url === plugin.url)
|
|
58
59
|
const [tempDisabled, setTempDisabled] = useState(false)
|
|
59
60
|
const disableButton = isInstalled || tempDisabled
|
|
60
61
|
|
|
@@ -86,7 +87,6 @@ function PluginCard({
|
|
|
86
87
|
<CardActions>
|
|
87
88
|
<Button
|
|
88
89
|
variant="contained"
|
|
89
|
-
color="primary"
|
|
90
90
|
disabled={disableButton}
|
|
91
91
|
startIcon={isInstalled ? <CheckIcon /> : <AddIcon />}
|
|
92
92
|
onClick={() => {
|
|
@@ -103,6 +103,4 @@ function PluginCard({
|
|
|
103
103
|
</CardActions>
|
|
104
104
|
</Card>
|
|
105
105
|
)
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
export default observer(PluginCard)
|
|
106
|
+
})
|
|
@@ -34,17 +34,17 @@ beforeEach(() => {
|
|
|
34
34
|
model = session.addWidget('PluginStoreWidget', 'pluginStoreWidget')
|
|
35
35
|
const { location } = window
|
|
36
36
|
|
|
37
|
-
// @ts-
|
|
37
|
+
// @ts-expect-error
|
|
38
38
|
delete window.location
|
|
39
39
|
window.location = {
|
|
40
40
|
...location,
|
|
41
41
|
reload: jest.fn(),
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
// @ts-
|
|
44
|
+
// @ts-expect-error
|
|
45
45
|
fetch.resetMocks()
|
|
46
46
|
|
|
47
|
-
// @ts-
|
|
47
|
+
// @ts-expect-error
|
|
48
48
|
fetch.mockResponse(JSON.stringify(plugins))
|
|
49
49
|
})
|
|
50
50
|
|
|
@@ -32,7 +32,7 @@ const useStyles = makeStyles()(theme => ({
|
|
|
32
32
|
margin: theme.spacing(1),
|
|
33
33
|
},
|
|
34
34
|
expandIcon: {
|
|
35
|
-
color:
|
|
35
|
+
color: theme.palette.tertiary.contrastText,
|
|
36
36
|
},
|
|
37
37
|
adminBadge: {
|
|
38
38
|
margin: '0.5em',
|
|
@@ -106,7 +106,6 @@ function PluginStoreWidget({ model }: { model: PluginStoreModel }) {
|
|
|
106
106
|
<div className={classes.customPluginButton}>
|
|
107
107
|
<Button
|
|
108
108
|
variant="contained"
|
|
109
|
-
color="primary"
|
|
110
109
|
onClick={() => setCustomPluginFormOpen(true)}
|
|
111
110
|
>
|
|
112
111
|
Add custom plugin
|
|
@@ -127,10 +126,7 @@ function PluginStoreWidget({ model }: { model: PluginStoreModel }) {
|
|
|
127
126
|
InputProps={{
|
|
128
127
|
endAdornment: (
|
|
129
128
|
<InputAdornment position="end">
|
|
130
|
-
<IconButton
|
|
131
|
-
color="secondary"
|
|
132
|
-
onClick={() => model.clearFilterText()}
|
|
133
|
-
>
|
|
129
|
+
<IconButton onClick={() => model.clearFilterText()}>
|
|
134
130
|
<ClearIcon />
|
|
135
131
|
</IconButton>
|
|
136
132
|
</InputAdornment>
|
|
@@ -171,7 +167,7 @@ function PluginStoreWidget({ model }: { model: PluginStoreModel }) {
|
|
|
171
167
|
})
|
|
172
168
|
.map(plugin => (
|
|
173
169
|
<PluginCard
|
|
174
|
-
key={
|
|
170
|
+
key={plugin.name}
|
|
175
171
|
plugin={plugin}
|
|
176
172
|
model={model}
|
|
177
173
|
adminMode={!!adminMode}
|
|
@@ -29,7 +29,7 @@ exports[`renders with the available plugins 1`] = `
|
|
|
29
29
|
class="MuiInputAdornment-root MuiInputAdornment-positionEnd MuiInputAdornment-standard MuiInputAdornment-sizeSmall css-1laqsz7-MuiInputAdornment-root"
|
|
30
30
|
>
|
|
31
31
|
<button
|
|
32
|
-
class="MuiButtonBase-root MuiIconButton-root MuiIconButton-
|
|
32
|
+
class="MuiButtonBase-root MuiIconButton-root MuiIconButton-sizeSmall css-9vna8i-MuiButtonBase-root-MuiIconButton-root"
|
|
33
33
|
tabindex="0"
|
|
34
34
|
type="button"
|
|
35
35
|
>
|
|
@@ -789,7 +789,7 @@ exports[`renders with the available plugins 1`] = `
|
|
|
789
789
|
class="MuiTypography-root MuiTypography-h5 css-1ldbtdh-MuiTypography-root"
|
|
790
790
|
>
|
|
791
791
|
<a
|
|
792
|
-
class="MuiTypography-root MuiTypography-inherit MuiLink-root MuiLink-underlineAlways css-
|
|
792
|
+
class="MuiTypography-root MuiTypography-inherit MuiLink-root MuiLink-underlineAlways css-ygjubp-MuiTypography-root-MuiLink-root"
|
|
793
793
|
href="https://github.com/GMOD/jbrowse-plugin-msaview#readme"
|
|
794
794
|
rel="noopener"
|
|
795
795
|
target="_blank"
|
package/src/index.ts
CHANGED
|
@@ -3,12 +3,10 @@ import Plugin from '@jbrowse/core/Plugin'
|
|
|
3
3
|
import PluginManager from '@jbrowse/core/PluginManager'
|
|
4
4
|
import UCSCTrackHubConnectionF from './ucsc-trackhub'
|
|
5
5
|
import AddTrackWidgetF from './AddTrackWidget'
|
|
6
|
-
|
|
6
|
+
|
|
7
7
|
import AddConnectionWidgetF from './AddConnectionWidget'
|
|
8
8
|
import PluginStoreWidgetF from './PluginStoreWidget'
|
|
9
|
-
import HierarchicalTrackSelectorWidgetF
|
|
10
|
-
HierarchicalTrackSelectorModel,
|
|
11
|
-
} from './HierarchicalTrackSelectorWidget'
|
|
9
|
+
import HierarchicalTrackSelectorWidgetF from './HierarchicalTrackSelectorWidget'
|
|
12
10
|
|
|
13
11
|
const SetDefaultSession = lazy(() => import('./SetDefaultSession'))
|
|
14
12
|
|
|
@@ -34,4 +32,6 @@ export default class extends Plugin {
|
|
|
34
32
|
}
|
|
35
33
|
|
|
36
34
|
export { AssemblyManager, SetDefaultSession }
|
|
37
|
-
|
|
35
|
+
|
|
36
|
+
export { type AddTrackModel } from './AddTrackWidget/model'
|
|
37
|
+
export { type HierarchicalTrackSelectorModel } from './HierarchicalTrackSelectorWidget'
|
|
@@ -6,9 +6,6 @@ import {
|
|
|
6
6
|
generateUnsupportedTrackConf,
|
|
7
7
|
generateUnknownTrackConf,
|
|
8
8
|
} from '@jbrowse/core/util/tracks'
|
|
9
|
-
import ucscAssemblies from './ucscAssemblies'
|
|
10
|
-
|
|
11
|
-
export { ucscAssemblies }
|
|
12
9
|
|
|
13
10
|
export async function fetchHubFile(hubLocation: FileLocation) {
|
|
14
11
|
try {
|
|
@@ -63,16 +60,16 @@ export function generateTracks(
|
|
|
63
60
|
) {
|
|
64
61
|
const tracks: any = []
|
|
65
62
|
|
|
66
|
-
trackDb.
|
|
67
|
-
const trackKeys =
|
|
68
|
-
const parentTrackKeys = [
|
|
63
|
+
for (const [trackName, track] of trackDb.entries()) {
|
|
64
|
+
const trackKeys = [...track.keys()]
|
|
65
|
+
const parentTrackKeys = new Set([
|
|
69
66
|
'superTrack',
|
|
70
67
|
'compositeTrack',
|
|
71
68
|
'container',
|
|
72
69
|
'view',
|
|
73
|
-
]
|
|
74
|
-
if (trackKeys.some(key => parentTrackKeys.
|
|
75
|
-
|
|
70
|
+
])
|
|
71
|
+
if (trackKeys.some(key => parentTrackKeys.has(key))) {
|
|
72
|
+
continue
|
|
76
73
|
}
|
|
77
74
|
const parentTracks = []
|
|
78
75
|
let currentTrackName = trackName
|
|
@@ -99,7 +96,7 @@ export function generateTracks(
|
|
|
99
96
|
trackId: `ucsc-trackhub-${objectHash(res)}`,
|
|
100
97
|
assemblyNames: [assemblyName],
|
|
101
98
|
})
|
|
102
|
-
}
|
|
99
|
+
}
|
|
103
100
|
|
|
104
101
|
return tracks
|
|
105
102
|
}
|
|
@@ -324,3 +321,5 @@ function makeTrackConfig(
|
|
|
324
321
|
return generateUnknownTrackConf(name, baseTrackType, categories)
|
|
325
322
|
}
|
|
326
323
|
}
|
|
324
|
+
|
|
325
|
+
export { default as ucscAssemblies } from './ucscAssemblies'
|