@jbrowse/plugin-data-management 2.2.1 → 2.3.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/AddTrackWidget/components/AddTrackWidget.js +28 -5
- package/dist/AddTrackWidget/components/AddTrackWidget.js.map +1 -1
- package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +2 -3
- package/dist/AddTrackWidget/components/ConfirmTrack.js +30 -177
- package/dist/AddTrackWidget/components/ConfirmTrack.js.map +1 -1
- package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +1 -1
- package/dist/AddTrackWidget/components/TextIndexingConfig.d.ts +6 -0
- package/dist/AddTrackWidget/components/TextIndexingConfig.js +109 -0
- package/dist/AddTrackWidget/components/TextIndexingConfig.js.map +1 -0
- package/dist/AddTrackWidget/components/TrackAdapterSelector.d.ts +6 -0
- package/dist/AddTrackWidget/components/TrackAdapterSelector.js +50 -0
- package/dist/AddTrackWidget/components/TrackAdapterSelector.js.map +1 -0
- package/dist/AddTrackWidget/components/TrackTypeSelector.d.ts +6 -0
- package/dist/AddTrackWidget/components/TrackTypeSelector.js +27 -0
- package/dist/AddTrackWidget/components/TrackTypeSelector.js.map +1 -0
- package/dist/AssemblyManager/AssemblyAddForm.js +14 -41
- package/dist/AssemblyManager/AssemblyAddForm.js.map +1 -1
- package/dist/AssemblyManager/AssemblyEditor.js +2 -1
- package/dist/AssemblyManager/AssemblyEditor.js.map +1 -1
- package/dist/AssemblyManager/AssemblyManager.js +14 -54
- package/dist/AssemblyManager/AssemblyManager.js.map +1 -1
- package/dist/AssemblyManager/AssemblyTable.js +24 -47
- package/dist/AssemblyManager/AssemblyTable.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +3 -4
- package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js +4 -12
- package/dist/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js +5 -13
- package/dist/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +1 -1
- package/dist/HierarchicalTrackSelectorWidget/model.d.ts +2 -1
- package/dist/HierarchicalTrackSelectorWidget/model.js +6 -6
- package/dist/HierarchicalTrackSelectorWidget/model.js.map +1 -1
- package/dist/PluginStoreWidget/components/CustomPluginForm.js +1 -11
- package/dist/PluginStoreWidget/components/CustomPluginForm.js.map +1 -1
- package/dist/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -1
- package/dist/ucsc-trackhub/index.d.ts +2 -2
- package/dist/ucsc-trackhub/index.js.map +1 -1
- package/dist/ucsc-trackhub/model.d.ts +3 -2
- package/dist/ucsc-trackhub/model.js +41 -40
- package/dist/ucsc-trackhub/model.js.map +1 -1
- package/dist/ucsc-trackhub/ucscAssemblies.js.map +1 -1
- package/esm/AddTrackWidget/components/AddTrackWidget.js +6 -6
- package/esm/AddTrackWidget/components/AddTrackWidget.js.map +1 -1
- package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +2 -3
- package/esm/AddTrackWidget/components/ConfirmTrack.js +28 -175
- package/esm/AddTrackWidget/components/ConfirmTrack.js.map +1 -1
- package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +1 -1
- package/esm/AddTrackWidget/components/TextIndexingConfig.d.ts +6 -0
- package/esm/AddTrackWidget/components/TextIndexingConfig.js +81 -0
- package/esm/AddTrackWidget/components/TextIndexingConfig.js.map +1 -0
- package/esm/AddTrackWidget/components/TrackAdapterSelector.d.ts +6 -0
- package/esm/AddTrackWidget/components/TrackAdapterSelector.js +45 -0
- package/esm/AddTrackWidget/components/TrackAdapterSelector.js.map +1 -0
- package/esm/AddTrackWidget/components/TrackTypeSelector.d.ts +6 -0
- package/esm/AddTrackWidget/components/TrackTypeSelector.js +22 -0
- package/esm/AddTrackWidget/components/TrackTypeSelector.js.map +1 -0
- package/esm/AssemblyManager/AssemblyAddForm.js +9 -36
- package/esm/AssemblyManager/AssemblyAddForm.js.map +1 -1
- package/esm/AssemblyManager/AssemblyEditor.js +2 -1
- package/esm/AssemblyManager/AssemblyEditor.js.map +1 -1
- package/esm/AssemblyManager/AssemblyManager.js +15 -55
- package/esm/AssemblyManager/AssemblyManager.js.map +1 -1
- package/esm/AssemblyManager/AssemblyTable.js +25 -48
- package/esm/AssemblyManager/AssemblyTable.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +3 -4
- package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js +5 -13
- package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js +6 -14
- package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +1 -1
- package/esm/HierarchicalTrackSelectorWidget/model.d.ts +2 -1
- package/esm/HierarchicalTrackSelectorWidget/model.js +7 -7
- package/esm/HierarchicalTrackSelectorWidget/model.js.map +1 -1
- package/esm/PluginStoreWidget/components/CustomPluginForm.js +2 -12
- package/esm/PluginStoreWidget/components/CustomPluginForm.js.map +1 -1
- package/esm/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -1
- package/esm/ucsc-trackhub/index.d.ts +2 -2
- package/esm/ucsc-trackhub/index.js.map +1 -1
- package/esm/ucsc-trackhub/model.d.ts +3 -2
- package/esm/ucsc-trackhub/model.js +41 -40
- package/esm/ucsc-trackhub/model.js.map +1 -1
- package/esm/ucsc-trackhub/ucscAssemblies.js.map +1 -1
- package/package.json +4 -5
- package/src/AddTrackWidget/components/AddTrackWidget.test.tsx +3 -4
- package/src/AddTrackWidget/components/AddTrackWidget.tsx +6 -9
- package/src/AddTrackWidget/components/ConfirmTrack.tsx +36 -296
- package/src/AddTrackWidget/components/DefaultAddTrackWorkflow.tsx +0 -1
- package/src/AddTrackWidget/components/TextIndexingConfig.tsx +134 -0
- package/src/AddTrackWidget/components/TrackAdapterSelector.tsx +73 -0
- package/src/AddTrackWidget/components/TrackTypeSelector.tsx +46 -0
- package/src/AssemblyManager/AssemblyAddForm.tsx +147 -182
- package/src/AssemblyManager/AssemblyEditor.tsx +5 -1
- package/src/AssemblyManager/AssemblyManager.test.tsx +1 -1
- package/src/AssemblyManager/AssemblyManager.tsx +70 -137
- package/src/AssemblyManager/AssemblyTable.tsx +65 -97
- package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.tsx +4 -4
- package/src/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.tsx +5 -20
- package/src/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.tsx +12 -22
- package/src/HierarchicalTrackSelectorWidget/components/__snapshots__/HierarchicalTrackSelector.test.tsx.snap +1 -1
- package/src/HierarchicalTrackSelectorWidget/model.ts +14 -9
- package/src/PluginStoreWidget/components/CustomPluginForm.tsx +1 -18
- package/src/PluginStoreWidget/components/PluginStoreWidget.tsx +1 -0
- package/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.js.snap +0 -22
- package/src/ucsc-trackhub/{index.js → index.ts} +0 -0
- package/src/ucsc-trackhub/model.ts +119 -0
- package/src/ucsc-trackhub/{ucscAssemblies.js → ucscAssemblies.ts} +0 -0
- package/src/ucsc-trackhub/model.js +0 -125
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { BaseConnectionModelFactory } from '@jbrowse/core/pluggableElementTypes/models'
|
|
2
|
-
import {
|
|
3
|
-
ConfigurationReference,
|
|
4
|
-
readConfObject,
|
|
5
|
-
getConf,
|
|
6
|
-
} from '@jbrowse/core/configuration'
|
|
7
|
-
import { getSession } from '@jbrowse/core/util'
|
|
8
|
-
import { types } from 'mobx-state-tree'
|
|
9
|
-
import configSchema from './configSchema'
|
|
10
|
-
import {
|
|
11
|
-
fetchGenomesFile,
|
|
12
|
-
fetchHubFile,
|
|
13
|
-
fetchTrackDbFile,
|
|
14
|
-
generateTracks,
|
|
15
|
-
} from './ucscTrackHub'
|
|
16
|
-
|
|
17
|
-
export default function UCSCTrackHubConnection(pluginManager) {
|
|
18
|
-
return types.compose(
|
|
19
|
-
'UCSCTrackHubConnection',
|
|
20
|
-
BaseConnectionModelFactory(pluginManager),
|
|
21
|
-
types
|
|
22
|
-
.model({
|
|
23
|
-
configuration: ConfigurationReference(configSchema),
|
|
24
|
-
type: types.literal('UCSCTrackHubConnection'),
|
|
25
|
-
})
|
|
26
|
-
.actions(self => ({
|
|
27
|
-
connect() {
|
|
28
|
-
const connectionName = getConf(self, 'name')
|
|
29
|
-
const hubFileLocation = getConf(self, 'hubTxtLocation')
|
|
30
|
-
const session = getSession(self)
|
|
31
|
-
fetchHubFile(hubFileLocation)
|
|
32
|
-
.then(hubFile => {
|
|
33
|
-
const genomesFileLocation = hubFileLocation.uri
|
|
34
|
-
? {
|
|
35
|
-
uri: new URL(
|
|
36
|
-
hubFile.get('genomesFile'),
|
|
37
|
-
hubFileLocation.uri,
|
|
38
|
-
).href,
|
|
39
|
-
locationType: 'UriLocation',
|
|
40
|
-
}
|
|
41
|
-
: {
|
|
42
|
-
localPath: hubFile.get('genomesFile'),
|
|
43
|
-
locationType: 'LocalPathLocation',
|
|
44
|
-
}
|
|
45
|
-
return Promise.all([
|
|
46
|
-
hubFile,
|
|
47
|
-
fetchGenomesFile(genomesFileLocation),
|
|
48
|
-
])
|
|
49
|
-
})
|
|
50
|
-
.then(([hubFile, genomesFile]) => {
|
|
51
|
-
const trackDbData = []
|
|
52
|
-
for (const [genomeName, genome] of genomesFile) {
|
|
53
|
-
const assemblyNames = getConf(self, 'assemblyNames')
|
|
54
|
-
if (
|
|
55
|
-
assemblyNames.length > 0 &&
|
|
56
|
-
!assemblyNames.includes(genomeName)
|
|
57
|
-
) {
|
|
58
|
-
break
|
|
59
|
-
}
|
|
60
|
-
const assemblyConf = session.assemblies.find(
|
|
61
|
-
assembly => readConfObject(assembly, 'name') === genomeName,
|
|
62
|
-
)
|
|
63
|
-
if (!assemblyConf) {
|
|
64
|
-
throw new Error(
|
|
65
|
-
`Cannot find assembly for "${genomeName}" from the genomes file for connection "${connectionName}"`,
|
|
66
|
-
)
|
|
67
|
-
}
|
|
68
|
-
const trackDbFileLocation = hubFileLocation.uri
|
|
69
|
-
? {
|
|
70
|
-
uri: new URL(
|
|
71
|
-
genome.get('trackDb'),
|
|
72
|
-
new URL(
|
|
73
|
-
hubFile.get('genomesFile'),
|
|
74
|
-
hubFileLocation.uri,
|
|
75
|
-
),
|
|
76
|
-
).href,
|
|
77
|
-
locationType: 'UriLocation',
|
|
78
|
-
}
|
|
79
|
-
: {
|
|
80
|
-
localPath: genome.get('trackDb'),
|
|
81
|
-
locationType: 'LocalPathLocation',
|
|
82
|
-
}
|
|
83
|
-
trackDbData.push(
|
|
84
|
-
Promise.all([
|
|
85
|
-
trackDbFileLocation,
|
|
86
|
-
fetchTrackDbFile(trackDbFileLocation),
|
|
87
|
-
genomeName,
|
|
88
|
-
assemblyConf,
|
|
89
|
-
]),
|
|
90
|
-
)
|
|
91
|
-
}
|
|
92
|
-
return Promise.all([...trackDbData])
|
|
93
|
-
})
|
|
94
|
-
.then(trackDbData => {
|
|
95
|
-
for (const [
|
|
96
|
-
trackDbFileLocation,
|
|
97
|
-
trackDbFile,
|
|
98
|
-
genomeName,
|
|
99
|
-
assemblyConf,
|
|
100
|
-
] of trackDbData) {
|
|
101
|
-
const sequenceAdapter = readConfObject(assemblyConf, [
|
|
102
|
-
'sequence',
|
|
103
|
-
'adapter',
|
|
104
|
-
])
|
|
105
|
-
const tracks = generateTracks(
|
|
106
|
-
trackDbFile,
|
|
107
|
-
trackDbFileLocation,
|
|
108
|
-
genomeName,
|
|
109
|
-
sequenceAdapter,
|
|
110
|
-
)
|
|
111
|
-
self.addTrackConfs(tracks)
|
|
112
|
-
}
|
|
113
|
-
})
|
|
114
|
-
.catch(error => {
|
|
115
|
-
console.error(error)
|
|
116
|
-
session.notify(
|
|
117
|
-
`There was a problem connecting to the UCSC Track Hub "${self.name}". Please make sure you have entered a valid hub.txt file. The error that was thrown is: "${error}"`,
|
|
118
|
-
'error',
|
|
119
|
-
)
|
|
120
|
-
session.breakConnection(self.configuration)
|
|
121
|
-
})
|
|
122
|
-
},
|
|
123
|
-
})),
|
|
124
|
-
)
|
|
125
|
-
}
|