@jbrowse/plugin-data-management 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.
Files changed (285) hide show
  1. package/dist/AddConnectionWidget/components/AddConnectionWidget.d.ts +1 -2
  2. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +31 -62
  3. package/dist/AddConnectionWidget/components/ConfigureConnection.d.ts +4 -5
  4. package/dist/AddConnectionWidget/components/ConfigureConnection.js +5 -28
  5. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -3
  6. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +6 -32
  7. package/dist/AddConnectionWidget/index.d.ts +1 -1
  8. package/dist/AddConnectionWidget/index.js +18 -8
  9. package/dist/AddConnectionWidget/model.js +1 -1
  10. package/dist/AddTrackWidget/components/AddTrackStatusMessage.d.ts +9 -0
  11. package/dist/AddTrackWidget/components/AddTrackStatusMessage.js +16 -0
  12. package/dist/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.d.ts +4 -0
  13. package/dist/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.js +19 -0
  14. package/dist/AddTrackWidget/components/AddTrackWidget.d.ts +2 -3
  15. package/dist/AddTrackWidget/components/AddTrackWidget.js +7 -35
  16. package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +2 -3
  17. package/dist/AddTrackWidget/components/ConfirmTrack.js +38 -97
  18. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +2 -3
  19. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +24 -107
  20. package/dist/AddTrackWidget/components/PasteConfigWorkflow.d.ts +2 -3
  21. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +31 -51
  22. package/dist/AddTrackWidget/components/TextIndexingConfig.d.ts +2 -3
  23. package/dist/AddTrackWidget/components/TextIndexingConfig.js +38 -76
  24. package/dist/AddTrackWidget/components/TrackAdapterSelector.d.ts +2 -3
  25. package/dist/AddTrackWidget/components/TrackAdapterSelector.js +13 -40
  26. package/dist/AddTrackWidget/components/TrackSourceSelect.d.ts +2 -3
  27. package/dist/AddTrackWidget/components/TrackSourceSelect.js +4 -10
  28. package/dist/AddTrackWidget/components/TrackTypeSelector.d.ts +3 -4
  29. package/dist/AddTrackWidget/components/TrackTypeSelector.js +8 -17
  30. package/dist/AddTrackWidget/components/Unsupported.d.ts +1 -0
  31. package/dist/AddTrackWidget/components/Unsupported.js +15 -0
  32. package/dist/AddTrackWidget/components/doSubmit.d.ts +4 -0
  33. package/dist/AddTrackWidget/components/doSubmit.js +50 -0
  34. package/dist/AddTrackWidget/components/util.d.ts +2 -0
  35. package/dist/AddTrackWidget/components/util.js +15 -0
  36. package/dist/AddTrackWidget/index.d.ts +1 -1
  37. package/dist/AddTrackWidget/index.js +18 -8
  38. package/dist/AddTrackWidget/model.d.ts +16 -84
  39. package/dist/AddTrackWidget/model.js +46 -94
  40. package/dist/AssemblyManager/AssemblyAddForm.d.ts +5 -6
  41. package/dist/AssemblyManager/AssemblyAddForm.js +82 -128
  42. package/dist/AssemblyManager/AssemblyEditor.d.ts +4 -4
  43. package/dist/AssemblyManager/AssemblyEditor.js +7 -7
  44. package/dist/AssemblyManager/AssemblyManager.d.ts +5 -5
  45. package/dist/AssemblyManager/AssemblyManager.js +19 -55
  46. package/dist/AssemblyManager/AssemblyTable.d.ts +8 -12
  47. package/dist/AssemblyManager/AssemblyTable.js +42 -35
  48. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -3
  49. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +22 -50
  50. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +2 -3
  51. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +7 -35
  52. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -3
  53. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +21 -11
  54. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +1 -2
  55. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +8 -19
  56. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +3 -4
  57. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +9 -17
  58. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +3 -4
  59. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +14 -27
  60. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +3 -4
  61. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +10 -19
  62. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +2 -3
  63. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +21 -58
  64. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +3 -4
  65. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +22 -26
  66. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.d.ts +9 -0
  67. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.js +71 -0
  68. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +2 -3
  69. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +3 -5
  70. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +2 -3
  71. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +47 -82
  72. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +3 -4
  73. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +17 -112
  74. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +4 -5
  75. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +7 -32
  76. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +2 -3
  77. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +5 -9
  78. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +2 -3
  79. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +124 -124
  80. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +2 -3
  81. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +8 -17
  82. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +3 -4
  83. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -40
  84. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +2 -3
  85. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +6 -10
  86. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +2 -3
  87. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +46 -78
  88. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +3 -4
  89. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +19 -15
  90. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts +3 -4
  91. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +6 -8
  92. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +2 -3
  93. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +6 -19
  94. package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +4 -4
  95. package/dist/HierarchicalTrackSelectorWidget/components/util.js +1 -4
  96. package/dist/HierarchicalTrackSelectorWidget/facetedModel.d.ts +2 -61
  97. package/dist/HierarchicalTrackSelectorWidget/facetedModel.js +14 -76
  98. package/dist/HierarchicalTrackSelectorWidget/filterTracks.d.ts +1 -1
  99. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +2 -2
  100. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.js +0 -13
  101. package/dist/HierarchicalTrackSelectorWidget/index.d.ts +1 -1
  102. package/dist/HierarchicalTrackSelectorWidget/index.js +20 -10
  103. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +3 -177
  104. package/dist/HierarchicalTrackSelectorWidget/model.js +3 -183
  105. package/dist/HierarchicalTrackSelectorWidget/util.d.ts +2 -2
  106. package/dist/HierarchicalTrackSelectorWidget/util.js +0 -3
  107. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +2 -3
  108. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.js +19 -59
  109. package/dist/PluginStoreWidget/components/DeletePluginDialog.d.ts +1 -2
  110. package/dist/PluginStoreWidget/components/DeletePluginDialog.js +10 -23
  111. package/dist/PluginStoreWidget/components/InstalledPlugin.d.ts +3 -4
  112. package/dist/PluginStoreWidget/components/InstalledPlugin.js +45 -37
  113. package/dist/PluginStoreWidget/components/InstalledPluginsList.d.ts +3 -4
  114. package/dist/PluginStoreWidget/components/InstalledPluginsList.js +5 -5
  115. package/dist/PluginStoreWidget/components/PluginCard.d.ts +4 -6
  116. package/dist/PluginStoreWidget/components/PluginCard.js +25 -55
  117. package/dist/PluginStoreWidget/components/PluginStoreWidget.d.ts +2 -3
  118. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +53 -61
  119. package/dist/PluginStoreWidget/components/util.d.ts +1 -1
  120. package/dist/PluginStoreWidget/components/util.js +0 -1
  121. package/dist/PluginStoreWidget/index.d.ts +1 -1
  122. package/dist/PluginStoreWidget/index.js +18 -8
  123. package/dist/PluginStoreWidget/model.d.ts +2 -8
  124. package/dist/PluginStoreWidget/model.js +1 -19
  125. package/dist/{ucsc-trackhub → UCSCTrackHub}/configSchema.d.ts +0 -6
  126. package/dist/{ucsc-trackhub → UCSCTrackHub}/configSchema.js +2 -14
  127. package/{esm/ucsc-trackhub → dist/UCSCTrackHub}/doConnect.d.ts +1 -1
  128. package/dist/{ucsc-trackhub → UCSCTrackHub}/doConnect.js +19 -15
  129. package/dist/{ucsc-trackhub → UCSCTrackHub}/index.d.ts +1 -1
  130. package/dist/{ucsc-trackhub → UCSCTrackHub}/index.js +11 -9
  131. package/dist/{ucsc-trackhub → UCSCTrackHub}/model.d.ts +1 -14
  132. package/dist/{ucsc-trackhub → UCSCTrackHub}/model.js +18 -23
  133. package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.js +0 -3
  134. package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.d.ts +54 -37
  135. package/dist/UCSCTrackHub/ucscTrackHub.js +170 -0
  136. package/dist/UCSCTrackHub/util.d.ts +22 -0
  137. package/dist/UCSCTrackHub/util.js +41 -0
  138. package/dist/index.d.ts +11 -11
  139. package/dist/index.js +21 -11
  140. package/esm/AddConnectionWidget/components/AddConnectionWidget.d.ts +1 -2
  141. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +31 -39
  142. package/esm/AddConnectionWidget/components/ConfigureConnection.d.ts +4 -5
  143. package/esm/AddConnectionWidget/components/ConfigureConnection.js +5 -5
  144. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -3
  145. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +6 -9
  146. package/esm/AddConnectionWidget/index.d.ts +1 -1
  147. package/esm/AddConnectionWidget/index.js +1 -1
  148. package/esm/AddConnectionWidget/model.js +1 -1
  149. package/esm/AddTrackWidget/components/AddTrackStatusMessage.d.ts +9 -0
  150. package/esm/AddTrackWidget/components/AddTrackStatusMessage.js +13 -0
  151. package/esm/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.d.ts +4 -0
  152. package/esm/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.js +13 -0
  153. package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +2 -3
  154. package/esm/AddTrackWidget/components/AddTrackWidget.js +7 -12
  155. package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +2 -3
  156. package/esm/AddTrackWidget/components/ConfirmTrack.js +39 -75
  157. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +2 -3
  158. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +25 -85
  159. package/esm/AddTrackWidget/components/PasteConfigWorkflow.d.ts +2 -3
  160. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +31 -28
  161. package/esm/AddTrackWidget/components/TextIndexingConfig.d.ts +2 -3
  162. package/esm/AddTrackWidget/components/TextIndexingConfig.js +39 -54
  163. package/esm/AddTrackWidget/components/TrackAdapterSelector.d.ts +2 -3
  164. package/esm/AddTrackWidget/components/TrackAdapterSelector.js +13 -37
  165. package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +2 -3
  166. package/esm/AddTrackWidget/components/TrackSourceSelect.js +4 -7
  167. package/esm/AddTrackWidget/components/TrackTypeSelector.d.ts +3 -4
  168. package/esm/AddTrackWidget/components/TrackTypeSelector.js +8 -14
  169. package/esm/AddTrackWidget/components/Unsupported.d.ts +1 -0
  170. package/esm/AddTrackWidget/components/Unsupported.js +12 -0
  171. package/esm/AddTrackWidget/components/doSubmit.d.ts +4 -0
  172. package/esm/AddTrackWidget/components/doSubmit.js +47 -0
  173. package/esm/AddTrackWidget/components/util.d.ts +2 -0
  174. package/esm/AddTrackWidget/components/util.js +12 -0
  175. package/esm/AddTrackWidget/index.d.ts +1 -1
  176. package/esm/AddTrackWidget/index.js +1 -1
  177. package/esm/AddTrackWidget/model.d.ts +16 -84
  178. package/esm/AddTrackWidget/model.js +43 -94
  179. package/esm/AssemblyManager/AssemblyAddForm.d.ts +5 -6
  180. package/esm/AssemblyManager/AssemblyAddForm.js +82 -102
  181. package/esm/AssemblyManager/AssemblyEditor.d.ts +4 -4
  182. package/esm/AssemblyManager/AssemblyEditor.js +7 -4
  183. package/esm/AssemblyManager/AssemblyManager.d.ts +5 -5
  184. package/esm/AssemblyManager/AssemblyManager.js +19 -32
  185. package/esm/AssemblyManager/AssemblyTable.d.ts +8 -12
  186. package/esm/AssemblyManager/AssemblyTable.js +43 -36
  187. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -3
  188. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +22 -27
  189. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +2 -3
  190. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +7 -12
  191. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -3
  192. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +21 -11
  193. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +1 -2
  194. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +8 -16
  195. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +3 -4
  196. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +9 -14
  197. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +3 -4
  198. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +14 -27
  199. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +3 -4
  200. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +10 -16
  201. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +2 -3
  202. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +21 -35
  203. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +3 -4
  204. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +22 -26
  205. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.d.ts +9 -0
  206. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.js +69 -0
  207. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +2 -3
  208. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +3 -5
  209. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +2 -3
  210. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +47 -59
  211. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +3 -4
  212. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +17 -89
  213. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +4 -5
  214. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +7 -9
  215. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +2 -3
  216. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +5 -9
  217. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +2 -3
  218. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +108 -118
  219. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +2 -3
  220. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +8 -17
  221. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +3 -4
  222. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -17
  223. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +2 -3
  224. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +6 -10
  225. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +2 -3
  226. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +46 -55
  227. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +3 -4
  228. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +19 -15
  229. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts +3 -4
  230. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +6 -8
  231. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +2 -3
  232. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +6 -19
  233. package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +4 -4
  234. package/esm/HierarchicalTrackSelectorWidget/components/util.js +1 -4
  235. package/esm/HierarchicalTrackSelectorWidget/facetedModel.d.ts +2 -61
  236. package/esm/HierarchicalTrackSelectorWidget/facetedModel.js +12 -74
  237. package/esm/HierarchicalTrackSelectorWidget/filterTracks.d.ts +1 -1
  238. package/esm/HierarchicalTrackSelectorWidget/filterTracks.js +1 -1
  239. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +2 -2
  240. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.js +1 -14
  241. package/esm/HierarchicalTrackSelectorWidget/index.d.ts +1 -1
  242. package/esm/HierarchicalTrackSelectorWidget/index.js +3 -3
  243. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +3 -177
  244. package/esm/HierarchicalTrackSelectorWidget/model.js +4 -184
  245. package/esm/HierarchicalTrackSelectorWidget/util.d.ts +2 -2
  246. package/esm/HierarchicalTrackSelectorWidget/util.js +1 -4
  247. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +2 -3
  248. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.js +19 -36
  249. package/esm/PluginStoreWidget/components/DeletePluginDialog.d.ts +1 -2
  250. package/esm/PluginStoreWidget/components/DeletePluginDialog.js +10 -20
  251. package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +3 -4
  252. package/esm/PluginStoreWidget/components/InstalledPlugin.js +28 -30
  253. package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +3 -4
  254. package/esm/PluginStoreWidget/components/InstalledPluginsList.js +5 -5
  255. package/esm/PluginStoreWidget/components/PluginCard.d.ts +4 -6
  256. package/esm/PluginStoreWidget/components/PluginCard.js +27 -34
  257. package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +2 -3
  258. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +36 -54
  259. package/esm/PluginStoreWidget/components/util.d.ts +1 -1
  260. package/esm/PluginStoreWidget/components/util.js +1 -2
  261. package/esm/PluginStoreWidget/index.d.ts +1 -1
  262. package/esm/PluginStoreWidget/index.js +1 -1
  263. package/esm/PluginStoreWidget/model.d.ts +2 -8
  264. package/esm/PluginStoreWidget/model.js +1 -19
  265. package/esm/{ucsc-trackhub → UCSCTrackHub}/configSchema.d.ts +0 -6
  266. package/esm/{ucsc-trackhub → UCSCTrackHub}/configSchema.js +2 -14
  267. package/{dist/ucsc-trackhub → esm/UCSCTrackHub}/doConnect.d.ts +1 -1
  268. package/esm/{ucsc-trackhub → UCSCTrackHub}/doConnect.js +12 -8
  269. package/esm/{ucsc-trackhub → UCSCTrackHub}/index.d.ts +1 -1
  270. package/esm/UCSCTrackHub/index.js +15 -0
  271. package/esm/{ucsc-trackhub → UCSCTrackHub}/model.d.ts +1 -14
  272. package/esm/{ucsc-trackhub → UCSCTrackHub}/model.js +1 -16
  273. package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.js +0 -3
  274. package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.d.ts +54 -37
  275. package/esm/UCSCTrackHub/ucscTrackHub.js +162 -0
  276. package/esm/UCSCTrackHub/util.d.ts +22 -0
  277. package/esm/UCSCTrackHub/util.js +33 -0
  278. package/esm/index.d.ts +11 -11
  279. package/esm/index.js +3 -3
  280. package/package.json +4 -3
  281. package/dist/ucsc-trackhub/ucscTrackHub.js +0 -208
  282. package/esm/ucsc-trackhub/index.js +0 -13
  283. package/esm/ucsc-trackhub/ucscTrackHub.js +0 -195
  284. /package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.d.ts +0 -0
  285. /package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.d.ts +0 -0
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchGenomesFile = fetchGenomesFile;
4
+ exports.fetchTrackDbFile = fetchTrackDbFile;
5
+ exports.makeLoc = makeLoc;
6
+ exports.makeLocAlt = makeLocAlt;
7
+ exports.makeLoc2 = makeLoc2;
8
+ exports.resolve = resolve;
9
+ const ucsc_hub_1 = require("@gmod/ucsc-hub");
10
+ const io_1 = require("@jbrowse/core/util/io");
11
+ async function fetchGenomesFile(genomesLoc) {
12
+ const genomesFileText = await (0, io_1.openLocation)(genomesLoc).readFile('utf8');
13
+ return new ucsc_hub_1.GenomesFile(genomesFileText);
14
+ }
15
+ async function fetchTrackDbFile(trackDbLoc) {
16
+ const text = await (0, io_1.openLocation)(trackDbLoc).readFile('utf8');
17
+ return new ucsc_hub_1.TrackDbFile(text);
18
+ }
19
+ function makeLoc(first, base) {
20
+ return {
21
+ uri: new URL(first, new URL(base.uri, base.baseUri)).href,
22
+ locationType: 'UriLocation',
23
+ };
24
+ }
25
+ function makeLocAlt(first, alt, base) {
26
+ return first ? makeLoc(first, base) : makeLoc(alt, base);
27
+ }
28
+ function makeLoc2(first, alt) {
29
+ return first
30
+ ? {
31
+ uri: first,
32
+ locationType: 'LocalPath',
33
+ }
34
+ : {
35
+ uri: alt,
36
+ locationType: 'UriLocation',
37
+ };
38
+ }
39
+ function resolve(uri, baseUri) {
40
+ return new URL(uri, baseUri).href;
41
+ }
package/dist/index.d.ts CHANGED
@@ -1,20 +1,20 @@
1
1
  import Plugin from '@jbrowse/core/Plugin';
2
- import PluginManager from '@jbrowse/core/PluginManager';
3
- declare const AssemblyManager: import("react").LazyExoticComponent<({ rootModel, onClose, }: {
4
- rootModel: any;
5
- onClose: (arg: boolean) => void;
6
- }) => import("react").JSX.Element>;
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
+ declare const AssemblyManager: import("react").LazyExoticComponent<({ session, onClose, }: {
4
+ session: import("@jbrowse/core/util").AbstractSessionModel;
5
+ onClose: () => void;
6
+ }) => import("react/jsx-runtime").JSX.Element>;
7
7
  export default class DataManagementPlugin extends Plugin {
8
8
  name: string;
9
9
  exports: {
10
- AssemblyManager: import("react").LazyExoticComponent<({ rootModel, onClose, }: {
11
- rootModel: any;
12
- onClose: (arg: boolean) => void;
13
- }) => import("react").JSX.Element>;
10
+ AssemblyManager: import("react").LazyExoticComponent<({ session, onClose, }: {
11
+ session: import("@jbrowse/core/util").AbstractSessionModel;
12
+ onClose: () => void;
13
+ }) => import("react/jsx-runtime").JSX.Element>;
14
14
  };
15
15
  install(pluginManager: PluginManager): void;
16
16
  configure(_pluginManager: PluginManager): void;
17
17
  }
18
18
  export { AssemblyManager };
19
- export { type AddTrackModel } from './AddTrackWidget/model';
20
- export { type HierarchicalTrackSelectorModel } from './HierarchicalTrackSelectorWidget';
19
+ export type { AddTrackModel } from './AddTrackWidget/model';
20
+ export type { HierarchicalTrackSelectorModel } from './HierarchicalTrackSelectorWidget';
package/dist/index.js CHANGED
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
@@ -29,11 +39,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
39
  exports.AssemblyManager = void 0;
30
40
  const react_1 = require("react");
31
41
  const Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
32
- const ucsc_trackhub_1 = __importDefault(require("./ucsc-trackhub"));
33
- const AddTrackWidget_1 = __importDefault(require("./AddTrackWidget"));
34
42
  const AddConnectionWidget_1 = __importDefault(require("./AddConnectionWidget"));
35
- const PluginStoreWidget_1 = __importDefault(require("./PluginStoreWidget"));
43
+ const AddTrackWidget_1 = __importDefault(require("./AddTrackWidget"));
36
44
  const HierarchicalTrackSelectorWidget_1 = __importDefault(require("./HierarchicalTrackSelectorWidget"));
45
+ const PluginStoreWidget_1 = __importDefault(require("./PluginStoreWidget"));
46
+ const UCSCTrackHub_1 = __importDefault(require("./UCSCTrackHub"));
37
47
  const AssemblyManager = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./AssemblyManager'))));
38
48
  exports.AssemblyManager = AssemblyManager;
39
49
  class DataManagementPlugin extends Plugin_1.default {
@@ -45,7 +55,7 @@ class DataManagementPlugin extends Plugin_1.default {
45
55
  };
46
56
  }
47
57
  install(pluginManager) {
48
- (0, ucsc_trackhub_1.default)(pluginManager);
58
+ (0, UCSCTrackHub_1.default)(pluginManager);
49
59
  (0, AddTrackWidget_1.default)(pluginManager);
50
60
  (0, HierarchicalTrackSelectorWidget_1.default)(pluginManager);
51
61
  (0, AddConnectionWidget_1.default)(pluginManager);
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
1
  declare const AddConnectionWidget: ({ model }: {
3
2
  model: unknown;
4
- }) => React.JSX.Element;
3
+ }) => import("react/jsx-runtime").JSX.Element;
5
4
  export default AddConnectionWidget;
@@ -1,12 +1,12 @@
1
- import React, { useMemo, useState } from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo, useState } from 'react';
3
+ import { getEnv, getSession, isSessionModelWithWidgets, } from '@jbrowse/core/util';
4
+ import { isSessionWithConnections } from '@jbrowse/product-core';
2
5
  import { Button, Step, StepContent, StepLabel, Stepper } from '@mui/material';
3
- import { getSession, getEnv, isSessionModelWithWidgets, } from '@jbrowse/core/util';
4
- import { makeStyles } from 'tss-react/mui';
5
6
  import { observer } from 'mobx-react';
6
- // locals
7
+ import { makeStyles } from 'tss-react/mui';
7
8
  import ConfigureConnection from './ConfigureConnection';
8
9
  import ConnectionTypeSelect from './ConnectionTypeSelect';
9
- import { isSessionWithConnections } from '@jbrowse/product-core';
10
10
  const useStyles = makeStyles()(theme => ({
11
11
  root: {
12
12
  marginTop: theme.spacing(1),
@@ -30,40 +30,32 @@ const AddConnectionWidget = observer(function ({ model }) {
30
30
  const { classes } = useStyles();
31
31
  const session = getSession(model);
32
32
  const { pluginManager } = getEnv(session);
33
- // useMemo is needed for react@18+mobx-react@9, previous code called configScema.create directly in a setConfigModel useState hook setter but this caused infinite loop
34
33
  const configModel = useMemo(() => connectionType === null || connectionType === void 0 ? void 0 : connectionType.configSchema.create({ connectionId }, getEnv(model)), [connectionId, connectionType, model]);
35
- return (React.createElement("div", { className: classes.root },
36
- React.createElement(Stepper, { className: classes.stepper, activeStep: activeStep, orientation: "vertical" }, steps.map(label => (React.createElement(Step, { key: label },
37
- React.createElement(StepLabel, null, label),
38
- React.createElement(StepContent, null,
39
- activeStep === 0 ? (React.createElement(ConnectionTypeSelect, { connectionTypeChoices: pluginManager.getConnectionElements(), connectionType: connectionType, setConnectionType: c => {
40
- setConnectionType(c);
41
- if (!c) {
42
- return;
43
- }
44
- setConnectionId(`${c.name}-${Date.now()}`);
45
- } })) : connectionType && configModel ? (React.createElement(ConfigureConnection, { connectionType: connectionType, model: configModel, session: session })) : null,
46
- React.createElement("div", { className: classes.actionsContainer },
47
- React.createElement(Button, { disabled: activeStep === 0, onClick: () => {
48
- setActiveStep(activeStep - 1);
49
- }, className: classes.button }, "Back"),
50
- React.createElement(Button, { disabled: !((activeStep === 0 && connectionType) ||
51
- (activeStep === 1 && configModel)), variant: "contained", color: "primary", onClick: () => {
52
- if (activeStep === steps.length - 1) {
53
- if (configModel && isSessionWithConnections(session)) {
54
- const conf = session.addConnectionConf(configModel);
55
- session.makeConnection(conf);
56
- }
57
- else {
58
- session.notify('No config model to add');
59
- }
60
- if (isSessionModelWithWidgets(session)) {
61
- session.hideWidget(model);
62
- }
63
- }
64
- else {
65
- setActiveStep(activeStep + 1);
66
- }
67
- }, className: classes.button, "data-testid": "addConnectionNext" }, activeStep === steps.length - 1 ? 'Connect' : 'Next')))))))));
34
+ return (_jsx("div", { className: classes.root, children: _jsx(Stepper, { className: classes.stepper, activeStep: activeStep, orientation: "vertical", children: steps.map(label => (_jsxs(Step, { children: [_jsx(StepLabel, { children: label }), _jsxs(StepContent, { children: [activeStep === 0 ? (_jsx(ConnectionTypeSelect, { connectionTypeChoices: pluginManager.getConnectionElements(), connectionType: connectionType, setConnectionType: c => {
35
+ setConnectionType(c);
36
+ if (!c) {
37
+ return;
38
+ }
39
+ setConnectionId(`${c.name}-${Date.now()}`);
40
+ } })) : connectionType && configModel ? (_jsx(ConfigureConnection, { connectionType: connectionType, model: configModel, session: session })) : null, _jsxs("div", { className: classes.actionsContainer, children: [_jsx(Button, { disabled: activeStep === 0, onClick: () => {
41
+ setActiveStep(activeStep - 1);
42
+ }, className: classes.button, children: "Back" }), _jsx(Button, { disabled: !((activeStep === 0 && connectionType) ||
43
+ (activeStep === 1 && configModel)), variant: "contained", color: "primary", onClick: () => {
44
+ if (activeStep === steps.length - 1) {
45
+ if (configModel && isSessionWithConnections(session)) {
46
+ const conf = session.addConnectionConf(configModel);
47
+ session.makeConnection(conf);
48
+ }
49
+ else {
50
+ session.notify('No config model to add');
51
+ }
52
+ if (isSessionModelWithWidgets(session)) {
53
+ session.hideWidget(model);
54
+ }
55
+ }
56
+ else {
57
+ setActiveStep(activeStep + 1);
58
+ }
59
+ }, className: classes.button, "data-testid": "addConnectionNext", children: activeStep === steps.length - 1 ? 'Connect' : 'Next' })] })] })] }, label))) }) }));
68
60
  });
69
61
  export default AddConnectionWidget;
@@ -1,10 +1,9 @@
1
- import React from 'react';
2
- import { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
3
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
4
- import { AbstractSessionModel } from '@jbrowse/core/util';
1
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ import type { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
3
+ import type { AbstractSessionModel } from '@jbrowse/core/util';
5
4
  declare const ConfigureConnection: ({ connectionType, model, session, }: {
6
5
  connectionType: ConnectionType;
7
6
  model: AnyConfigurationModel;
8
7
  session: AbstractSessionModel;
9
- }) => React.JSX.Element;
8
+ }) => import("react/jsx-runtime").JSX.Element;
10
9
  export default ConfigureConnection;
@@ -1,10 +1,10 @@
1
- import React, { Suspense } from 'react';
2
- import { observer } from 'mobx-react';
3
- import { ConfigurationEditor } from '@jbrowse/plugin-config';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Suspense } from 'react';
4
3
  import { LoadingEllipses } from '@jbrowse/core/ui';
4
+ import { ConfigurationEditor } from '@jbrowse/plugin-config';
5
+ import { observer } from 'mobx-react';
5
6
  const ConfigureConnection = observer(function ({ connectionType, model, session, }) {
6
7
  const ConfigEditorComponent = connectionType.configEditorComponent || ConfigurationEditor;
7
- return (React.createElement(Suspense, { fallback: React.createElement(LoadingEllipses, null) },
8
- React.createElement(ConfigEditorComponent, { model: { target: model }, session: session })));
8
+ return (_jsx(Suspense, { fallback: _jsx(LoadingEllipses, {}), children: _jsx(ConfigEditorComponent, { model: { target: model }, session: session }) }));
9
9
  });
10
10
  export default ConfigureConnection;
@@ -1,8 +1,7 @@
1
- import React from 'react';
2
- import { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
1
+ import type { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
3
2
  declare const ConnectionTypeSelect: ({ connectionTypeChoices, connectionType, setConnectionType, }: {
4
3
  connectionTypeChoices: ConnectionType[];
5
4
  connectionType?: ConnectionType;
6
5
  setConnectionType: (c?: ConnectionType) => void;
7
- }) => React.JSX.Element;
6
+ }) => import("react/jsx-runtime").JSX.Element;
8
7
  export default ConnectionTypeSelect;
@@ -1,8 +1,8 @@
1
- import React, { useEffect } from 'react';
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect } from 'react';
3
+ import OpenInNewIcon from '@mui/icons-material/OpenInNew';
2
4
  import { IconButton, MenuItem, TextField } from '@mui/material';
3
5
  import { observer } from 'mobx-react';
4
- // icons
5
- import OpenInNewIcon from '@mui/icons-material/OpenInNew';
6
6
  const ConnectionTypeSelect = observer(function ConnectionTypeSelect({ connectionTypeChoices, connectionType, setConnectionType, }) {
7
7
  const firstChoice = connectionTypeChoices[0];
8
8
  useEffect(() => {
@@ -10,11 +10,8 @@ const ConnectionTypeSelect = observer(function ConnectionTypeSelect({ connection
10
10
  setConnectionType(firstChoice);
11
11
  }
12
12
  }, [connectionType, firstChoice, setConnectionType]);
13
- return (React.createElement("form", { autoComplete: "off" }, connectionType ? (React.createElement(TextField, { value: connectionType.name, label: "connectionType", helperText: connectionType.description ? (React.createElement(React.Fragment, null,
14
- connectionType.description,
15
- connectionType.url ? (React.createElement(IconButton, { href: connectionType.url, rel: "noopener noreferrer", target: "_blank" },
16
- React.createElement(OpenInNewIcon, null))) : null)) : null, select: true, fullWidth: true, onChange: event => {
17
- setConnectionType(connectionTypeChoices.find(c => c.name === event.target.value));
18
- }, variant: "outlined" }, connectionTypeChoices.map(c => (React.createElement(MenuItem, { key: c.name, value: c.name }, c.displayName || c.name))))) : null));
13
+ return (_jsx("form", { autoComplete: "off", children: connectionType ? (_jsx(TextField, { value: connectionType.name, label: "connectionType", helperText: connectionType.description ? (_jsxs(_Fragment, { children: [connectionType.description, connectionType.url ? (_jsx(IconButton, { href: connectionType.url, rel: "noopener noreferrer", target: "_blank", children: _jsx(OpenInNewIcon, {}) })) : null] })) : null, select: true, fullWidth: true, onChange: event => {
14
+ setConnectionType(connectionTypeChoices.find(c => c.name === event.target.value));
15
+ }, variant: "outlined", children: connectionTypeChoices.map(c => (_jsx(MenuItem, { value: c.name, children: c.displayName || c.name }, c.name))) })) : null }));
19
16
  });
20
17
  export default ConnectionTypeSelect;
@@ -1,2 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function AddConnectionWidgetF(pluginManager: PluginManager): void;
@@ -1,6 +1,6 @@
1
+ import { lazy } from 'react';
1
2
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
3
  import { WidgetType } from '@jbrowse/core/pluggableElementTypes';
3
- import { lazy } from 'react';
4
4
  import stateModel from './model';
5
5
  const configSchema = ConfigurationSchema('AddConnectionWidget', {});
6
6
  export default function AddConnectionWidgetF(pluginManager) {
@@ -1,5 +1,5 @@
1
- import { types } from 'mobx-state-tree';
2
1
  import { ElementId } from '@jbrowse/core/util/types/mst';
2
+ import { types } from 'mobx-state-tree';
3
3
  export default types.model('AddConnectionModel', {
4
4
  id: ElementId,
5
5
  type: types.literal('AddConnectionWidget'),
@@ -0,0 +1,9 @@
1
+ export default function StatusMessage({ trackAdapter, trackType, }: {
2
+ trackAdapter: {
3
+ type: string;
4
+ subadapter?: {
5
+ type: string;
6
+ };
7
+ };
8
+ trackType: string;
9
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Typography } from '@mui/material';
3
+ import { makeStyles } from 'tss-react/mui';
4
+ const useStyles = makeStyles()(theme => ({
5
+ spacing: {
6
+ marginBottom: theme.spacing(3),
7
+ },
8
+ }));
9
+ export default function StatusMessage({ trackAdapter, trackType, }) {
10
+ const { classes } = useStyles();
11
+ const { type, subadapter } = trackAdapter;
12
+ return type === 'SNPCoverageAdapter' ? (_jsxs(Typography, { className: classes.spacing, children: ["Selected ", _jsx("code", { children: trackType }), ". Using adapter ", _jsx("code", { children: type }), " with subadapter ", _jsx("code", { children: subadapter === null || subadapter === void 0 ? void 0 : subadapter.type }), ". Please enter a track name and, if necessary, update the track type."] })) : (_jsxs(Typography, { className: classes.spacing, children: ["Using adapter ", _jsx("code", { children: type }), " and guessing track type", ' ', _jsx("code", { children: trackType }), ". Please enter a track name and, if necessary, update the track type."] }));
13
+ }
@@ -0,0 +1,4 @@
1
+ import type { AddTrackModel } from '../model';
2
+ export default function UnknownAdapterPrompt({ model, }: {
3
+ model: AddTrackModel;
4
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Link, Typography } from '@mui/material';
3
+ import { makeStyles } from 'tss-react/mui';
4
+ import TrackAdapterSelector from './TrackAdapterSelector';
5
+ const useStyles = makeStyles()(theme => ({
6
+ spacing: {
7
+ marginBottom: theme.spacing(3),
8
+ },
9
+ }));
10
+ export default function UnknownAdapterPrompt({ model, }) {
11
+ const { classes } = useStyles();
12
+ return (_jsxs(_Fragment, { children: [_jsxs(Typography, { className: classes.spacing, children: ["JBrowse was not able to guess the adapter type for this data, but it may be in the list below. If not, you can", ' ', _jsx(Link, { href: "https://github.com/GMOD/jbrowse-components/releases", target: "_blank", rel: "noopener noreferrer", children: "check for new releases" }), ' ', "of JBrowse to see if they support this data type or", ' ', _jsx(Link, { href: "https://github.com/GMOD/jbrowse-components/issues/new", target: "_blank", rel: "noopener noreferrer", children: "file an issue" }), ' ', "and add a feature request for this data type."] }), _jsx(TrackAdapterSelector, { model: model })] }));
13
+ }
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
- import { AddTrackModel } from '../model';
1
+ import type { AddTrackModel } from '../model';
3
2
  declare const AddTrackSelector: ({ model, }: {
4
3
  model: AddTrackModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
6
5
  export default AddTrackSelector;
@@ -1,7 +1,8 @@
1
- import React, { Suspense, useState } from 'react';
2
- import { observer } from 'mobx-react';
3
- import { FormControl, FormHelperText, Select, MenuItem } from '@mui/material';
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Suspense, useState } from 'react';
4
3
  import { getEnv } from '@jbrowse/core/util';
4
+ import { FormControl, FormHelperText, MenuItem, Select } from '@mui/material';
5
+ import { observer } from 'mobx-react';
5
6
  import DefaultAddTrackWorkflow from './DefaultAddTrackWorkflow';
6
7
  import PasteConfigWorkflow from './PasteConfigWorkflow';
7
8
  const AddTrackSelector = observer(function ({ model, }) {
@@ -13,16 +14,10 @@ const AddTrackSelector = observer(function ({ model, }) {
13
14
  .pluginManager.getAddTrackWorkflowElements()
14
15
  .map(w => [w.name, w.ReactComponent])),
15
16
  };
16
- // make sure the selected value is in the list
17
17
  const val2 = ComponentMap[val] ? val : 'Default add track workflow';
18
18
  const Component = ComponentMap[val2];
19
- return (React.createElement(React.Fragment, null,
20
- React.createElement(FormControl, null,
21
- React.createElement(Select, { value: val2, onChange: event => {
22
- setVal(event.target.value);
23
- } }, Object.keys(ComponentMap).map(e => (React.createElement(MenuItem, { key: e, value: e }, e)))),
24
- React.createElement(FormHelperText, null, "Type of add track workflow")),
25
- React.createElement(Suspense, { fallback: null },
26
- React.createElement(Component, { model: model }))));
19
+ return (_jsxs(_Fragment, { children: [_jsxs(FormControl, { children: [_jsx(Select, { value: val2, onChange: event => {
20
+ setVal(event.target.value);
21
+ }, children: Object.keys(ComponentMap).map(e => (_jsx(MenuItem, { value: e, children: e }, e))) }), _jsx(FormHelperText, { children: "Type of add track workflow" })] }), _jsx(Suspense, { fallback: null, children: _jsx(Component, { model: model }) })] }));
27
22
  });
28
23
  export default AddTrackSelector;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
- import { AddTrackModel } from '../model';
1
+ import type { AddTrackModel } from '../model';
3
2
  declare const ConfirmTrack: ({ model, }: {
4
3
  model: AddTrackModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
6
5
  export default ConfirmTrack;
@@ -1,51 +1,22 @@
1
- import React, { useEffect, useState } from 'react';
2
- import { Checkbox, FormControl, FormControlLabel, Link, TextField, Typography, } from '@mui/material';
3
- import { makeStyles } from 'tss-react/mui';
4
- import { isSupportedIndexingAdapter, getSession, isElectron, } from '@jbrowse/core/util';
5
- import { observer } from 'mobx-react';
6
- import { UNKNOWN } from '@jbrowse/core/util/tracks';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Suspense, useEffect, useState } from 'react';
7
3
  import { AssemblySelector } from '@jbrowse/core/ui';
4
+ import { getEnv, getSession, isElectron, isSupportedIndexingAdapter, } from '@jbrowse/core/util';
5
+ import { UNKNOWN } from '@jbrowse/core/util/tracks';
6
+ import { Checkbox, FormControl, FormControlLabel, TextField, Typography, } from '@mui/material';
7
+ import { observer } from 'mobx-react';
8
+ import { makeStyles } from 'tss-react/mui';
9
+ import StatusMessage from './AddTrackStatusMessage';
10
+ import UnknownAdapterPrompt from './AddTrackUnknownAdapterPrompt';
8
11
  import TextIndexingConfig from './TextIndexingConfig';
9
- import TrackTypeSelector from './TrackTypeSelector';
10
12
  import TrackAdapterSelector from './TrackAdapterSelector';
13
+ import TrackTypeSelector from './TrackTypeSelector';
14
+ import Unsupported from './Unsupported';
11
15
  const useStyles = makeStyles()(theme => ({
12
16
  spacing: {
13
17
  marginBottom: theme.spacing(3),
14
18
  },
15
19
  }));
16
- function StatusMessage({ trackAdapter, trackType, }) {
17
- const { classes } = useStyles();
18
- const { type, subadapter } = trackAdapter;
19
- return type === 'SNPCoverageAdapter' ? (React.createElement(Typography, { className: classes.spacing },
20
- "Selected ",
21
- React.createElement("code", null, trackType),
22
- ". Using adapter ",
23
- React.createElement("code", null, type),
24
- " with subadapter ",
25
- React.createElement("code", null, subadapter === null || subadapter === void 0 ? void 0 : subadapter.type),
26
- ". Please enter a track name and, if necessary, update the track type.")) : (React.createElement(Typography, { className: classes.spacing },
27
- "Using adapter ",
28
- React.createElement("code", null, type),
29
- " and guessing track type",
30
- ' ',
31
- React.createElement("code", null, trackType),
32
- ". Please enter a track name and, if necessary, update the track type."));
33
- }
34
- function UnknownAdapterPrompt({ model }) {
35
- const { classes } = useStyles();
36
- return (React.createElement(React.Fragment, null,
37
- React.createElement(Typography, { className: classes.spacing },
38
- "JBrowse was not able to guess the adapter type for this data, but it may be in the list below. If not, you can",
39
- ' ',
40
- React.createElement(Link, { href: "https://github.com/GMOD/jbrowse-components/releases", target: "_blank", rel: "noopener noreferrer" }, "check for new releases"),
41
- ' ',
42
- "of JBrowse to see if they support this data type or",
43
- ' ',
44
- React.createElement(Link, { href: "https://github.com/GMOD/jbrowse-components/issues/new", target: "_blank", rel: "noopener noreferrer" }, "file an issue"),
45
- ' ',
46
- "and add a feature request for this data type."),
47
- React.createElement(TrackAdapterSelector, { model: model })));
48
- }
49
20
  const ConfirmTrack = observer(function ConfirmTrack({ model, }) {
50
21
  const { classes } = useStyles();
51
22
  const [check, setCheck] = useState(true);
@@ -57,48 +28,41 @@ const ConfirmTrack = observer(function ConfirmTrack({ model, }) {
57
28
  }
58
29
  }, [adapterHint, trackAdapter, trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type, model]);
59
30
  if (unsupported) {
60
- return (React.createElement(Typography, { className: classes.spacing },
61
- "This version of JBrowse cannot display data of this type. It is possible, however, that there is a newer version that can display them. You can",
62
- ' ',
63
- React.createElement(Link, { href: "https://github.com/GMOD/jbrowse-components/releases", target: "_blank", rel: "noopener noreferrer" }, "check for new releases"),
64
- ' ',
65
- "of JBrowse or",
66
- ' ',
67
- React.createElement(Link, { href: "https://github.com/GMOD/jbrowse-components/issues/new", target: "_blank", rel: "noopener noreferrer" }, "file an issue"),
68
- ' ',
69
- "and add a feature request for this data type."));
31
+ return _jsx(Unsupported, {});
70
32
  }
71
- if ((trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type) === UNKNOWN) {
72
- return React.createElement(UnknownAdapterPrompt, { model: model });
33
+ else if ((trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type) === UNKNOWN) {
34
+ return _jsx(UnknownAdapterPrompt, { model: model });
73
35
  }
74
- if (!(trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type)) {
75
- return React.createElement(Typography, null, "Could not recognize this data type.");
36
+ else if (!(trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type)) {
37
+ return _jsx(Typography, { children: "Could not recognize this data type." });
76
38
  }
77
- const supportedForIndexing = isSupportedIndexingAdapter(trackAdapter.type);
78
- return (React.createElement("div", null,
79
- React.createElement(StatusMessage, { trackAdapter: trackAdapter, trackType: trackType }),
80
- warningMessage ? (React.createElement(Typography, { style: { color: 'orange' } }, warningMessage)) : null,
81
- React.createElement(TextField, { className: classes.spacing, label: "trackName", helperText: "A name for this track", fullWidth: true, value: trackName, onChange: event => {
82
- model.setTrackName(event.target.value);
83
- }, slotProps: {
84
- htmlInput: { 'data-testid': 'trackNameInput' },
85
- } }),
86
- React.createElement(TrackAdapterSelector, { model: model }),
87
- React.createElement(TrackTypeSelector, { model: model }),
88
- React.createElement(AssemblySelector, { session: session, helperText: "Select assembly to add track to", selected: model.assembly, onChange: asm => {
39
+ else {
40
+ const supportedForIndexing = isSupportedIndexingAdapter(trackAdapter.type);
41
+ const { pluginManager } = getEnv(model);
42
+ const Component = pluginManager.evaluateExtensionPoint('Core-addTrackComponent', ({ model }) => (_jsx(AssemblySelector, { session: session, helperText: "Select assembly to add track to", selected: model.assembly, onChange: asm => {
89
43
  model.setAssembly(asm);
90
44
  }, TextFieldProps: {
91
45
  fullWidth: true,
92
46
  SelectProps: {
93
- // @ts-expect-error
94
- SelectDisplayProps: { 'data-testid': 'assemblyNameSelect' },
47
+ SelectDisplayProps: {
48
+ 'data-testid': 'assemblyNameSelect',
49
+ },
95
50
  },
96
- } }),
97
- isElectron && supportedForIndexing && (React.createElement(FormControl, null,
98
- React.createElement(FormControlLabel, { label: 'Index track for text searching?', control: React.createElement(Checkbox, { checked: check, onChange: e => {
99
- setCheck(e.target.checked);
100
- model.setTextIndexTrack(e.target.checked);
101
- } }) }))),
102
- isElectron && check && supportedForIndexing ? (React.createElement(TextIndexingConfig, { model: model })) : null));
51
+ } })), { model });
52
+ return (_jsxs("div", { children: [_jsx(StatusMessage, { trackAdapter: trackAdapter, trackType: trackType }), warningMessage ? (_jsx(Typography, { color: "warning", children: warningMessage })) : null, _jsx(TextField, { className: classes.spacing, label: "trackName", helperText: "A name for this track", fullWidth: true, value: trackName, onChange: event => {
53
+ model.setTrackName(event.target.value);
54
+ }, slotProps: {
55
+ htmlInput: {
56
+ 'data-testid': 'trackNameInput',
57
+ },
58
+ } }), _jsxs("div", { style: {
59
+ display: 'flex',
60
+ flexDirection: 'column',
61
+ gap: 10,
62
+ }, children: [_jsx(TrackAdapterSelector, { model: model }), _jsx(TrackTypeSelector, { model: model }), _jsx(Suspense, { fallback: null, children: _jsx(Component, { model: model }) })] }), isElectron && supportedForIndexing && (_jsx(FormControl, { children: _jsx(FormControlLabel, { label: "Index track for text searching?", control: _jsx(Checkbox, { checked: check, onChange: e => {
63
+ setCheck(e.target.checked);
64
+ model.setTextIndexTrack(e.target.checked);
65
+ } }) }) })), isElectron && check && supportedForIndexing ? (_jsx(TextIndexingConfig, { model: model })) : null] }));
66
+ }
103
67
  });
104
68
  export default ConfirmTrack;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
- import { AddTrackModel } from '../model';
1
+ import type { AddTrackModel } from '../model';
3
2
  declare const DefaultAddTrackWorkflow: ({ model, }: {
4
3
  model: AddTrackModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
6
5
  export default DefaultAddTrackWorkflow;