@jbrowse/plugin-data-management 2.17.0 → 2.18.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 (249) hide show
  1. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +3 -5
  2. package/dist/AddConnectionWidget/components/ConfigureConnection.d.ts +3 -3
  3. package/dist/AddConnectionWidget/components/ConfigureConnection.js +2 -2
  4. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +1 -1
  5. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +1 -2
  6. package/dist/AddConnectionWidget/index.d.ts +1 -1
  7. package/dist/AddConnectionWidget/index.js +1 -1
  8. package/dist/AddConnectionWidget/model.js +1 -1
  9. package/dist/AddTrackWidget/components/AddTrackWidget.d.ts +1 -1
  10. package/dist/AddTrackWidget/components/AddTrackWidget.js +2 -3
  11. package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +1 -1
  12. package/dist/AddTrackWidget/components/ConfirmTrack.js +5 -6
  13. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +1 -1
  14. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +4 -5
  15. package/dist/AddTrackWidget/components/PasteConfigWorkflow.d.ts +1 -1
  16. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +2 -2
  17. package/dist/AddTrackWidget/components/TextIndexingConfig.d.ts +1 -1
  18. package/dist/AddTrackWidget/components/TextIndexingConfig.js +4 -7
  19. package/dist/AddTrackWidget/components/TrackAdapterSelector.d.ts +1 -1
  20. package/dist/AddTrackWidget/components/TrackAdapterSelector.js +2 -8
  21. package/dist/AddTrackWidget/components/TrackSourceSelect.d.ts +1 -1
  22. package/dist/AddTrackWidget/components/TrackSourceSelect.js +2 -2
  23. package/dist/AddTrackWidget/components/TrackTypeSelector.d.ts +1 -1
  24. package/dist/AddTrackWidget/components/TrackTypeSelector.js +1 -2
  25. package/dist/AddTrackWidget/index.d.ts +1 -1
  26. package/dist/AddTrackWidget/index.js +1 -1
  27. package/dist/AddTrackWidget/model.d.ts +3 -84
  28. package/dist/AddTrackWidget/model.js +3 -91
  29. package/dist/AssemblyManager/AssemblyAddForm.d.ts +4 -4
  30. package/dist/AssemblyManager/AssemblyAddForm.js +100 -99
  31. package/dist/AssemblyManager/AssemblyEditor.d.ts +3 -2
  32. package/dist/AssemblyManager/AssemblyEditor.js +10 -3
  33. package/dist/AssemblyManager/AssemblyManager.d.ts +4 -3
  34. package/dist/AssemblyManager/AssemblyManager.js +17 -31
  35. package/dist/AssemblyManager/AssemblyTable.d.ts +7 -10
  36. package/dist/AssemblyManager/AssemblyTable.js +53 -34
  37. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +1 -1
  38. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +3 -4
  39. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +1 -1
  40. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +1 -3
  41. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +1 -1
  42. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +3 -4
  43. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +2 -2
  44. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +2 -2
  45. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +2 -2
  46. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +2 -2
  47. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +4 -5
  48. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +2 -2
  49. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +3 -3
  50. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +1 -1
  51. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +5 -8
  52. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +2 -2
  53. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +0 -6
  54. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +1 -1
  55. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +1 -1
  56. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +1 -1
  57. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +1 -3
  58. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -2
  59. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +5 -8
  60. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +3 -3
  61. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +2 -2
  62. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +1 -1
  63. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +1 -2
  64. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +1 -1
  65. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +2 -5
  66. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +1 -1
  67. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +2 -3
  68. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +2 -2
  69. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +2 -14
  70. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +1 -1
  71. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +2 -3
  72. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +1 -1
  73. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +2 -6
  74. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +2 -2
  75. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +2 -4
  76. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts +2 -2
  77. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +3 -4
  78. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +1 -1
  79. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +1 -11
  80. package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +4 -4
  81. package/dist/HierarchicalTrackSelectorWidget/components/util.js +0 -1
  82. package/dist/HierarchicalTrackSelectorWidget/facetedModel.d.ts +1 -61
  83. package/dist/HierarchicalTrackSelectorWidget/facetedModel.js +12 -74
  84. package/dist/HierarchicalTrackSelectorWidget/filterTracks.d.ts +1 -1
  85. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +2 -2
  86. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.js +0 -13
  87. package/dist/HierarchicalTrackSelectorWidget/index.d.ts +1 -1
  88. package/dist/HierarchicalTrackSelectorWidget/index.js +3 -3
  89. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +3 -177
  90. package/dist/HierarchicalTrackSelectorWidget/model.js +3 -183
  91. package/dist/HierarchicalTrackSelectorWidget/util.d.ts +2 -2
  92. package/dist/HierarchicalTrackSelectorWidget/util.js +0 -3
  93. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +1 -1
  94. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.js +4 -5
  95. package/dist/PluginStoreWidget/components/DeletePluginDialog.js +1 -2
  96. package/dist/PluginStoreWidget/components/InstalledPlugin.d.ts +2 -2
  97. package/dist/PluginStoreWidget/components/InstalledPlugin.js +28 -27
  98. package/dist/PluginStoreWidget/components/InstalledPluginsList.d.ts +2 -2
  99. package/dist/PluginStoreWidget/components/InstalledPluginsList.js +1 -1
  100. package/dist/PluginStoreWidget/components/PluginCard.d.ts +3 -4
  101. package/dist/PluginStoreWidget/components/PluginCard.js +20 -18
  102. package/dist/PluginStoreWidget/components/PluginStoreWidget.d.ts +1 -1
  103. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +24 -20
  104. package/dist/PluginStoreWidget/components/util.d.ts +1 -1
  105. package/dist/PluginStoreWidget/components/util.js +0 -1
  106. package/dist/PluginStoreWidget/index.d.ts +1 -1
  107. package/dist/PluginStoreWidget/index.js +1 -1
  108. package/dist/PluginStoreWidget/model.d.ts +2 -8
  109. package/dist/PluginStoreWidget/model.js +1 -19
  110. package/dist/{ucsc-trackhub → UCSCTrackHub}/configSchema.d.ts +0 -6
  111. package/dist/{ucsc-trackhub → UCSCTrackHub}/configSchema.js +2 -14
  112. package/{esm/ucsc-trackhub → dist/UCSCTrackHub}/doConnect.d.ts +1 -1
  113. package/dist/{ucsc-trackhub → UCSCTrackHub}/doConnect.js +1 -5
  114. package/dist/{ucsc-trackhub → UCSCTrackHub}/index.d.ts +1 -1
  115. package/dist/{ucsc-trackhub → UCSCTrackHub}/index.js +11 -9
  116. package/dist/{ucsc-trackhub → UCSCTrackHub}/model.d.ts +1 -14
  117. package/dist/{ucsc-trackhub → UCSCTrackHub}/model.js +1 -16
  118. package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.js +0 -3
  119. package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.d.ts +1 -1
  120. package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.js +1 -15
  121. package/dist/index.d.ts +9 -9
  122. package/dist/index.js +4 -4
  123. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +3 -5
  124. package/esm/AddConnectionWidget/components/ConfigureConnection.d.ts +3 -3
  125. package/esm/AddConnectionWidget/components/ConfigureConnection.js +2 -2
  126. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +1 -1
  127. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +1 -2
  128. package/esm/AddConnectionWidget/index.d.ts +1 -1
  129. package/esm/AddConnectionWidget/index.js +1 -1
  130. package/esm/AddConnectionWidget/model.js +1 -1
  131. package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +1 -1
  132. package/esm/AddTrackWidget/components/AddTrackWidget.js +2 -3
  133. package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +1 -1
  134. package/esm/AddTrackWidget/components/ConfirmTrack.js +5 -6
  135. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +1 -1
  136. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +4 -5
  137. package/esm/AddTrackWidget/components/PasteConfigWorkflow.d.ts +1 -1
  138. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +2 -2
  139. package/esm/AddTrackWidget/components/TextIndexingConfig.d.ts +1 -1
  140. package/esm/AddTrackWidget/components/TextIndexingConfig.js +5 -8
  141. package/esm/AddTrackWidget/components/TrackAdapterSelector.d.ts +1 -1
  142. package/esm/AddTrackWidget/components/TrackAdapterSelector.js +2 -8
  143. package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +1 -1
  144. package/esm/AddTrackWidget/components/TrackSourceSelect.js +2 -2
  145. package/esm/AddTrackWidget/components/TrackTypeSelector.d.ts +1 -1
  146. package/esm/AddTrackWidget/components/TrackTypeSelector.js +1 -2
  147. package/esm/AddTrackWidget/index.d.ts +1 -1
  148. package/esm/AddTrackWidget/index.js +1 -1
  149. package/esm/AddTrackWidget/model.d.ts +3 -84
  150. package/esm/AddTrackWidget/model.js +3 -91
  151. package/esm/AssemblyManager/AssemblyAddForm.d.ts +4 -4
  152. package/esm/AssemblyManager/AssemblyAddForm.js +100 -96
  153. package/esm/AssemblyManager/AssemblyEditor.d.ts +3 -2
  154. package/esm/AssemblyManager/AssemblyEditor.js +10 -3
  155. package/esm/AssemblyManager/AssemblyManager.d.ts +4 -3
  156. package/esm/AssemblyManager/AssemblyManager.js +17 -31
  157. package/esm/AssemblyManager/AssemblyTable.d.ts +7 -10
  158. package/esm/AssemblyManager/AssemblyTable.js +54 -35
  159. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +1 -1
  160. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +3 -4
  161. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +1 -1
  162. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +1 -3
  163. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +1 -1
  164. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +3 -4
  165. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +2 -2
  166. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +2 -2
  167. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +2 -2
  168. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +2 -2
  169. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +4 -5
  170. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +2 -2
  171. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +3 -3
  172. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +1 -1
  173. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +5 -8
  174. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +2 -2
  175. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +0 -6
  176. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +1 -1
  177. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +1 -1
  178. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +1 -1
  179. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +1 -3
  180. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -2
  181. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +5 -8
  182. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +3 -3
  183. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +2 -2
  184. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +1 -1
  185. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +1 -2
  186. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +1 -1
  187. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +3 -6
  188. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +1 -1
  189. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +2 -3
  190. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +2 -2
  191. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +3 -15
  192. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +1 -1
  193. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +2 -3
  194. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +1 -1
  195. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +2 -6
  196. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +2 -2
  197. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +2 -4
  198. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts +2 -2
  199. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +3 -4
  200. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +1 -1
  201. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +1 -11
  202. package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +4 -4
  203. package/esm/HierarchicalTrackSelectorWidget/components/util.js +0 -1
  204. package/esm/HierarchicalTrackSelectorWidget/facetedModel.d.ts +1 -61
  205. package/esm/HierarchicalTrackSelectorWidget/facetedModel.js +6 -68
  206. package/esm/HierarchicalTrackSelectorWidget/filterTracks.d.ts +1 -1
  207. package/esm/HierarchicalTrackSelectorWidget/filterTracks.js +1 -1
  208. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +2 -2
  209. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.js +1 -14
  210. package/esm/HierarchicalTrackSelectorWidget/index.d.ts +1 -1
  211. package/esm/HierarchicalTrackSelectorWidget/index.js +3 -3
  212. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +3 -177
  213. package/esm/HierarchicalTrackSelectorWidget/model.js +4 -184
  214. package/esm/HierarchicalTrackSelectorWidget/util.d.ts +2 -2
  215. package/esm/HierarchicalTrackSelectorWidget/util.js +1 -4
  216. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +1 -1
  217. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.js +4 -5
  218. package/esm/PluginStoreWidget/components/DeletePluginDialog.js +1 -2
  219. package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +2 -2
  220. package/esm/PluginStoreWidget/components/InstalledPlugin.js +29 -28
  221. package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +2 -2
  222. package/esm/PluginStoreWidget/components/InstalledPluginsList.js +1 -1
  223. package/esm/PluginStoreWidget/components/PluginCard.d.ts +3 -4
  224. package/esm/PluginStoreWidget/components/PluginCard.js +22 -20
  225. package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +1 -1
  226. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +25 -21
  227. package/esm/PluginStoreWidget/components/util.d.ts +1 -1
  228. package/esm/PluginStoreWidget/components/util.js +1 -2
  229. package/esm/PluginStoreWidget/index.d.ts +1 -1
  230. package/esm/PluginStoreWidget/index.js +1 -1
  231. package/esm/PluginStoreWidget/model.d.ts +2 -8
  232. package/esm/PluginStoreWidget/model.js +1 -19
  233. package/esm/{ucsc-trackhub → UCSCTrackHub}/configSchema.d.ts +0 -6
  234. package/esm/{ucsc-trackhub → UCSCTrackHub}/configSchema.js +2 -14
  235. package/{dist/ucsc-trackhub → esm/UCSCTrackHub}/doConnect.d.ts +1 -1
  236. package/esm/{ucsc-trackhub → UCSCTrackHub}/doConnect.js +1 -5
  237. package/esm/{ucsc-trackhub → UCSCTrackHub}/index.d.ts +1 -1
  238. package/esm/UCSCTrackHub/index.js +15 -0
  239. package/esm/{ucsc-trackhub → UCSCTrackHub}/model.d.ts +1 -14
  240. package/esm/{ucsc-trackhub → UCSCTrackHub}/model.js +1 -16
  241. package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.js +0 -3
  242. package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.d.ts +1 -1
  243. package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscTrackHub.js +2 -16
  244. package/esm/index.d.ts +9 -9
  245. package/esm/index.js +3 -3
  246. package/package.json +2 -2
  247. package/esm/ucsc-trackhub/index.js +0 -13
  248. /package/dist/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.d.ts +0 -0
  249. /package/esm/{ucsc-trackhub → UCSCTrackHub}/ucscAssemblies.d.ts +0 -0
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = f;
4
- const mobx_state_tree_1 = require("mobx-state-tree");
5
- const mst_1 = require("@jbrowse/core/util/types/mst");
6
4
  const tracks_1 = require("@jbrowse/core/util/tracks");
5
+ const mst_1 = require("@jbrowse/core/util/types/mst");
6
+ const mobx_state_tree_1 = require("mobx-state-tree");
7
7
  function isAbsoluteUrl(url = '') {
8
8
  try {
9
9
  new URL(url);
@@ -13,30 +13,17 @@ function isAbsoluteUrl(url = '') {
13
13
  return url.startsWith('/');
14
14
  }
15
15
  }
16
- /**
17
- * #stateModel AddTrackModel
18
- */
19
16
  function f(pluginManager) {
20
17
  return mobx_state_tree_1.types
21
18
  .model('AddTrackModel', {
22
- /**
23
- * #property
24
- */
25
19
  id: mst_1.ElementId,
26
- /**
27
- * #property
28
- */
29
20
  type: mobx_state_tree_1.types.literal('AddTrackWidget'),
30
- /**
31
- * #property
32
- */
33
21
  view: mobx_state_tree_1.types.safeReference(pluginManager.pluggableMstType('view', 'stateModel')),
34
22
  })
35
23
  .volatile(() => ({
36
24
  trackSource: 'fromFile',
37
25
  trackData: undefined,
38
26
  indexTrackData: undefined,
39
- // alts
40
27
  altAssemblyName: '',
41
28
  altTrackName: '',
42
29
  altTrackType: '',
@@ -45,63 +32,33 @@ function f(pluginManager) {
45
32
  textIndexingConf: undefined,
46
33
  }))
47
34
  .actions(self => ({
48
- /**
49
- * #action
50
- */
51
35
  setAdapterHint(obj) {
52
36
  self.adapterHint = obj;
53
37
  },
54
- /**
55
- * #action
56
- */
57
38
  setTrackSource(str) {
58
39
  self.trackSource = str;
59
40
  },
60
- /**
61
- * #action
62
- */
63
41
  setTextIndexingConf(conf) {
64
42
  self.textIndexingConf = conf;
65
43
  },
66
- /**
67
- * #action
68
- */
69
44
  setTextIndexTrack(flag) {
70
45
  self.textIndexTrack = flag;
71
46
  },
72
- /**
73
- * #action
74
- */
75
47
  setTrackData(obj) {
76
48
  self.trackData = obj;
77
49
  },
78
- /**
79
- * #action
80
- */
81
50
  setIndexTrackData(obj) {
82
51
  self.indexTrackData = obj;
83
52
  },
84
- /**
85
- * #action
86
- */
87
53
  setAssembly(str) {
88
54
  self.altAssemblyName = str;
89
55
  },
90
- /**
91
- * #action
92
- */
93
56
  setTrackName(str) {
94
57
  self.altTrackName = str;
95
58
  },
96
- /**
97
- * #action
98
- */
99
59
  setTrackType(str) {
100
60
  self.altTrackType = str;
101
61
  },
102
- /**
103
- * #action
104
- */
105
62
  clearData() {
106
63
  self.trackSource = '';
107
64
  self.altTrackName = '';
@@ -115,96 +72,54 @@ function f(pluginManager) {
115
72
  },
116
73
  }))
117
74
  .views(self => ({
118
- /**
119
- * #getter
120
- */
121
75
  get trackAdapter() {
122
76
  const { trackData, indexTrackData, adapterHint } = self;
123
77
  return trackData
124
78
  ? (0, tracks_1.guessAdapter)(trackData, indexTrackData, adapterHint, self)
125
79
  : undefined;
126
80
  },
127
- /**
128
- * #getter
129
- */
130
81
  get trackName() {
131
82
  return (self.altTrackName ||
132
83
  (self.trackData ? (0, tracks_1.getFileName)(self.trackData) : ''));
133
84
  },
134
- /**
135
- * #getter
136
- */
137
85
  get isFtp() {
138
86
  var _a, _b;
139
87
  const { trackData: track, indexTrackData: index } = self;
140
- return !!(
141
- // @ts-expect-error
142
- (((_a = index === null || index === void 0 ? void 0 : index.uri) === null || _a === void 0 ? void 0 : _a.startsWith('ftp://')) || ((_b = track === null || track === void 0 ? void 0 : track.uri) === null || _b === void 0 ? void 0 : _b.startsWith('ftp://'))));
88
+ return !!((((_a = index === null || index === void 0 ? void 0 : index.uri) === null || _a === void 0 ? void 0 : _a.startsWith('ftp://')) || ((_b = track === null || track === void 0 ? void 0 : track.uri) === null || _b === void 0 ? void 0 : _b.startsWith('ftp://'))));
143
89
  },
144
- /**
145
- * #getter
146
- */
147
90
  get isRelativeTrackUrl() {
148
91
  var _a;
149
- // @ts-expect-error
150
92
  const uri = (_a = self.trackData) === null || _a === void 0 ? void 0 : _a.uri;
151
93
  return uri ? !isAbsoluteUrl(uri) : false;
152
94
  },
153
- /**
154
- * #getter
155
- */
156
95
  get isRelativeIndexUrl() {
157
96
  var _a;
158
- // @ts-expect-error
159
97
  const uri = (_a = self.indexTrackData) === null || _a === void 0 ? void 0 : _a.uri;
160
98
  return uri ? !isAbsoluteUrl(uri) : false;
161
99
  },
162
- /**
163
- * #getter
164
- */
165
100
  get isRelativeUrl() {
166
101
  return this.isRelativeIndexUrl || this.isRelativeTrackUrl;
167
102
  },
168
- /**
169
- * #getter
170
- */
171
103
  get trackHttp() {
172
104
  var _a, _b;
173
- // @ts-expect-error
174
105
  return (_b = (_a = self.trackData) === null || _a === void 0 ? void 0 : _a.uri) === null || _b === void 0 ? void 0 : _b.startsWith('http://');
175
106
  },
176
- /**
177
- * #getter
178
- */
179
107
  get indexHttp() {
180
108
  var _a, _b;
181
- // @ts-expect-error
182
109
  return (_b = (_a = self.indexTrackData) === null || _a === void 0 ? void 0 : _a.uri) === null || _b === void 0 ? void 0 : _b.startsWith('http://');
183
110
  },
184
- /**
185
- * #getter
186
- */
187
111
  get wrongProtocol() {
188
112
  return (window.location.protocol === 'https:' &&
189
113
  (this.trackHttp || this.indexHttp));
190
114
  },
191
- /**
192
- * #getter
193
- */
194
115
  get unsupported() {
195
116
  var _a;
196
117
  return ((_a = this.trackAdapter) === null || _a === void 0 ? void 0 : _a.type) === tracks_1.UNSUPPORTED;
197
118
  },
198
- /**
199
- * #getter
200
- */
201
119
  get assembly() {
202
120
  var _a;
203
121
  return self.altAssemblyName || ((_a = self.view.assemblyNames) === null || _a === void 0 ? void 0 : _a[0]);
204
122
  },
205
- /**
206
- * #getter
207
- */
208
123
  get trackType() {
209
124
  return (self.altTrackType ||
210
125
  (this.trackAdapter
@@ -213,9 +128,6 @@ function f(pluginManager) {
213
128
  },
214
129
  }))
215
130
  .views(self => ({
216
- /**
217
- * #getter
218
- */
219
131
  get warningMessage() {
220
132
  if (self.isFtp) {
221
133
  return 'Warning: JBrowse cannot access files using the ftp protocol';
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { AbstractRootModel } from '@jbrowse/core/util/types';
3
- declare const AssemblyAddForm: ({ rootModel, setFormOpen, }: {
4
- rootModel: AbstractRootModel;
5
- setFormOpen: (arg: boolean) => void;
2
+ import type { AbstractSessionModel } from '@jbrowse/core/util/types';
3
+ declare const AssemblyAddForm: ({ session, onClose, }: {
4
+ session: AbstractSessionModel;
5
+ onClose: () => void;
6
6
  }) => React.JSX.Element;
7
7
  export default AssemblyAddForm;
@@ -22,58 +22,69 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  const react_1 = __importStar(require("react"));
30
- const mobx_react_1 = require("mobx-react");
31
- const material_1 = require("@mui/material");
32
27
  const ui_1 = require("@jbrowse/core/ui");
33
- // icons
34
- const Add_1 = __importDefault(require("@mui/icons-material/Add"));
28
+ const material_1 = require("@mui/material");
29
+ const mobx_react_1 = require("mobx-react");
35
30
  const AdapterSelector = (0, mobx_react_1.observer)(function ({ adapterSelection, setAdapterSelection, adapterTypes, }) {
36
- return (react_1.default.createElement(material_1.TextField, { value: adapterSelection, label: "Type", select: true, helperText: "Type of adapter to use", fullWidth: true, onChange: event => {
31
+ return (react_1.default.createElement(material_1.TextField, { value: adapterSelection, variant: "outlined", select: true, helperText: "Type of adapter to use", fullWidth: true, onChange: event => {
37
32
  setAdapterSelection(event.target.value);
38
33
  } }, adapterTypes.map(str => (react_1.default.createElement(material_1.MenuItem, { key: str, value: str }, str)))));
39
34
  });
40
- const AdapterInput = (0, mobx_react_1.observer)(function ({ adapterSelection, fastaLocation, faiLocation, gziLocation, twoBitLocation, chromSizesLocation, setFaiLocation, setGziLocation, setTwoBitLocation, setFastaLocation, setChromSizesLocation, }) {
41
- if (adapterSelection === 'IndexedFastaAdapter' ||
42
- adapterSelection === 'BgzipFastaAdapter') {
43
- return (react_1.default.createElement(material_1.Grid, { container: true, spacing: 2 },
44
- react_1.default.createElement(material_1.Grid, { item: true },
45
- react_1.default.createElement(ui_1.FileSelector, { name: "fastaLocation", location: fastaLocation, setLocation: loc => {
46
- setFastaLocation(loc);
47
- } })),
48
- react_1.default.createElement(material_1.Grid, { item: true },
49
- react_1.default.createElement(ui_1.FileSelector, { name: "faiLocation", location: faiLocation, setLocation: loc => {
50
- setFaiLocation(loc);
51
- } })),
52
- adapterSelection === 'BgzipFastaAdapter' ? (react_1.default.createElement(material_1.Grid, { item: true },
53
- react_1.default.createElement(ui_1.FileSelector, { name: "gziLocation", location: gziLocation, setLocation: loc => {
54
- setGziLocation(loc);
55
- } }))) : null));
56
- }
57
- if (adapterSelection === 'TwoBitAdapter') {
58
- return (react_1.default.createElement(material_1.Grid, { container: true, spacing: 2 },
59
- react_1.default.createElement(material_1.Grid, { item: true },
60
- react_1.default.createElement(ui_1.FileSelector, { name: "twoBitLocation", location: twoBitLocation, setLocation: loc => {
61
- setTwoBitLocation(loc);
62
- } })),
63
- react_1.default.createElement(material_1.Grid, { item: true },
64
- react_1.default.createElement(ui_1.FileSelector, { name: "chromSizesLocation (optional, can be added to speed up loading 2bit files with many contigs)", location: chromSizesLocation, setLocation: loc => {
65
- setChromSizesLocation(loc);
66
- } }))));
67
- }
68
- return null;
35
+ const UnindexedFastaAdapterInput = (0, mobx_react_1.observer)(function ({ fastaLocation, setFastaLocation, }) {
36
+ return (react_1.default.createElement(react_1.default.Fragment, null,
37
+ react_1.default.createElement(material_1.Alert, { severity: "warning", style: { margin: 30 } }, "Note: use only relatively small files for this type, it is loaded into memory"),
38
+ react_1.default.createElement("div", null,
39
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "fastaLocation", location: fastaLocation, setLocation: loc => {
40
+ setFastaLocation(loc);
41
+ } }))));
42
+ });
43
+ const IndexedFastaAdapterInput = (0, mobx_react_1.observer)(function ({ fastaLocation, faiLocation, setFaiLocation, setFastaLocation, }) {
44
+ return (react_1.default.createElement(react_1.default.Fragment, null,
45
+ react_1.default.createElement("div", null,
46
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "fastaLocation", location: fastaLocation, setLocation: loc => {
47
+ setFastaLocation(loc);
48
+ } })),
49
+ react_1.default.createElement("div", null,
50
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "faiLocation", location: faiLocation, setLocation: loc => {
51
+ setFaiLocation(loc);
52
+ } }))));
53
+ });
54
+ const BgzipFastaAdapterInput = (0, mobx_react_1.observer)(function ({ fastaLocation, faiLocation, gziLocation, setFaiLocation, setGziLocation, setFastaLocation, }) {
55
+ return (react_1.default.createElement(react_1.default.Fragment, null,
56
+ react_1.default.createElement("div", null,
57
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "fastaLocation", location: fastaLocation, setLocation: loc => {
58
+ setFastaLocation(loc);
59
+ } })),
60
+ react_1.default.createElement("div", null,
61
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "faiLocation", location: faiLocation, setLocation: loc => {
62
+ setFaiLocation(loc);
63
+ } })),
64
+ react_1.default.createElement("div", null,
65
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "gziLocation", location: gziLocation, setLocation: loc => {
66
+ setGziLocation(loc);
67
+ } }))));
68
+ });
69
+ const TwoBitAdapterInput = (0, mobx_react_1.observer)(function ({ twoBitLocation, chromSizesLocation, setTwoBitLocation, setChromSizesLocation, }) {
70
+ return (react_1.default.createElement(react_1.default.Fragment, null,
71
+ react_1.default.createElement("div", null,
72
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "twoBitLocation", location: twoBitLocation, setLocation: loc => {
73
+ setTwoBitLocation(loc);
74
+ } })),
75
+ react_1.default.createElement("div", null,
76
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, name: "chromSizesLocation (optional, can be added to speed up loading 2bit files with many contigs)", location: chromSizesLocation, setLocation: loc => {
77
+ setChromSizesLocation(loc);
78
+ } }))));
69
79
  });
70
80
  const blank = { uri: '' };
71
81
  const adapterTypes = [
72
82
  'IndexedFastaAdapter',
73
83
  'BgzipFastaAdapter',
84
+ 'UnindexedFastaAdapter',
74
85
  'TwoBitAdapter',
75
86
  ];
76
- const AssemblyAddForm = (0, mobx_react_1.observer)(function ({ rootModel, setFormOpen, }) {
87
+ const AssemblyAddForm = (0, mobx_react_1.observer)(function ({ session, onClose, }) {
77
88
  const [assemblyName, setAssemblyName] = (0, react_1.useState)('');
78
89
  const [assemblyDisplayName, setAssemblyDisplayName] = (0, react_1.useState)('');
79
90
  const [adapterSelection, setAdapterSelection] = (0, react_1.useState)(adapterTypes[0]);
@@ -82,75 +93,65 @@ const AssemblyAddForm = (0, mobx_react_1.observer)(function ({ rootModel, setFor
82
93
  const [gziLocation, setGziLocation] = (0, react_1.useState)(blank);
83
94
  const [twoBitLocation, setTwoBitLocation] = (0, react_1.useState)(blank);
84
95
  const [chromSizesLocation, setChromSizesLocation] = (0, react_1.useState)(blank);
85
- function createAssembly() {
86
- var _a, _b;
87
- if (assemblyName === '') {
88
- (_a = rootModel.session) === null || _a === void 0 ? void 0 : _a.notify("Can't create an assembly without a name");
89
- }
90
- else {
91
- setFormOpen(false);
92
- let newAssembly;
93
- if (adapterSelection === 'IndexedFastaAdapter') {
94
- newAssembly = {
95
- name: assemblyName,
96
- displayName: assemblyDisplayName,
97
- sequence: {
98
- adapter: {
99
- type: 'IndexedFastaAdapter',
100
- fastaLocation,
101
- faiLocation,
102
- },
103
- },
104
- };
105
- }
106
- else if (adapterSelection === 'BgzipFastaAdapter') {
107
- newAssembly = {
108
- name: assemblyName,
109
- displayName: assemblyDisplayName,
110
- sequence: {
111
- adapter: {
112
- type: 'BgzipFastaAdapter',
113
- fastaLocation,
114
- faiLocation,
115
- gziLocation,
116
- },
117
- },
118
- };
119
- }
120
- else if (adapterSelection === 'TwoBitAdapter') {
121
- newAssembly = {
122
- name: assemblyName,
123
- displayName: assemblyDisplayName,
124
- sequence: {
125
- adapter: {
126
- type: 'TwoBitAdapter',
127
- twoBitLocation,
128
- chromSizesLocation,
129
- },
130
- },
131
- };
132
- }
133
- else {
134
- throw new Error(`unknown ${adapterSelection}`);
135
- }
136
- rootModel.jbrowse.addAssemblyConf(newAssembly);
137
- (_b = rootModel.session) === null || _b === void 0 ? void 0 : _b.notify(`Successfully added ${assemblyName} assembly to JBrowse 2`, 'success');
138
- }
139
- }
140
- return (react_1.default.createElement("div", null,
141
- react_1.default.createElement(material_1.Paper, null,
96
+ return (react_1.default.createElement(react_1.default.Fragment, null,
97
+ react_1.default.createElement(material_1.DialogContent, null,
142
98
  react_1.default.createElement(material_1.TextField, { id: "assembly-name", label: "Assembly name", helperText: "The assembly name e.g. hg38", variant: "outlined", value: assemblyName, onChange: event => {
143
99
  setAssemblyName(event.target.value);
144
100
  }, slotProps: {
145
101
  htmlInput: { 'data-testid': 'assembly-name' },
146
102
  } }),
147
- react_1.default.createElement(material_1.TextField, { id: "assembly-name", label: "Assembly display name", helperText: 'A human readable display name for the assembly e.g. "Homo sapiens (hg38)"', variant: "outlined", value: assemblyDisplayName, onChange: event => {
103
+ react_1.default.createElement(material_1.TextField, { id: "assembly-name", label: "Assembly display name", helperText: '(optional) A human readable display name for the assembly e.g. "Homo sapiens (hg38)"', variant: "outlined", value: assemblyDisplayName, onChange: event => {
148
104
  setAssemblyDisplayName(event.target.value);
149
105
  }, slotProps: {
150
- htmlInput: { 'data-testid': 'assembly-display-name' },
106
+ htmlInput: {
107
+ 'data-testid': 'assembly-display-name',
108
+ },
151
109
  } }),
152
110
  react_1.default.createElement(AdapterSelector, { adapterSelection: adapterSelection, adapterTypes: adapterTypes, setAdapterSelection: setAdapterSelection }),
153
- react_1.default.createElement(AdapterInput, { adapterSelection: adapterSelection, fastaLocation: fastaLocation, faiLocation: faiLocation, gziLocation: gziLocation, twoBitLocation: twoBitLocation, chromSizesLocation: chromSizesLocation, setFaiLocation: setFaiLocation, setGziLocation: setGziLocation, setTwoBitLocation: setTwoBitLocation, setFastaLocation: setFastaLocation, setChromSizesLocation: setChromSizesLocation })),
154
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", startIcon: react_1.default.createElement(Add_1.default, null), onClick: createAssembly }, "Create new assembly")));
111
+ adapterSelection === 'IndexedFastaAdapter' ? (react_1.default.createElement(IndexedFastaAdapterInput, { fastaLocation: fastaLocation, faiLocation: faiLocation, setFaiLocation: setFaiLocation, setFastaLocation: setFastaLocation })) : adapterSelection === 'UnindexedFastaAdapter' ? (react_1.default.createElement(UnindexedFastaAdapterInput, { fastaLocation: fastaLocation, setFastaLocation: setFastaLocation })) : adapterSelection === 'TwoBitAdapter' ? (react_1.default.createElement(TwoBitAdapterInput, { twoBitLocation: twoBitLocation, chromSizesLocation: chromSizesLocation, setTwoBitLocation: setTwoBitLocation, setChromSizesLocation: setChromSizesLocation })) : (react_1.default.createElement(BgzipFastaAdapterInput, { fastaLocation: fastaLocation, gziLocation: gziLocation, faiLocation: faiLocation, setFaiLocation: setFaiLocation, setGziLocation: setGziLocation, setFastaLocation: setFastaLocation }))),
112
+ react_1.default.createElement(material_1.DialogActions, null,
113
+ react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", onClick: () => {
114
+ if (assemblyName === '') {
115
+ session.notify("Can't create an assembly without a name");
116
+ }
117
+ else {
118
+ onClose();
119
+ session.addAssembly({
120
+ name: assemblyName,
121
+ displayName: assemblyDisplayName,
122
+ sequence: {
123
+ type: 'ReferenceSequenceTrack',
124
+ trackId: `${assemblyName}-${performance.now()}`,
125
+ adapter: adapterSelection === 'IndexedFastaAdapter'
126
+ ? {
127
+ type: 'IndexedFastaAdapter',
128
+ fastaLocation,
129
+ faiLocation,
130
+ }
131
+ : adapterSelection === 'BgzipFastaAdapter'
132
+ ? {
133
+ type: 'BgzipFastaAdapter',
134
+ fastaLocation,
135
+ faiLocation,
136
+ gziLocation,
137
+ }
138
+ : adapterSelection === 'UnindexedFastaAdapter'
139
+ ? {
140
+ type: 'UnindexedFastaAdapter',
141
+ fastaLocation,
142
+ }
143
+ : {
144
+ type: 'TwoBitAdapter',
145
+ twoBitLocation,
146
+ chromSizesLocation,
147
+ },
148
+ },
149
+ });
150
+ session.notify(`Added "${assemblyName}"`, 'success');
151
+ }
152
+ } }, "Submit"),
153
+ react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", onClick: () => {
154
+ onClose();
155
+ } }, "Cancel"))));
155
156
  });
156
157
  exports.default = AssemblyAddForm;
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
- declare const AssemblyEditor: ({ assembly, }: {
2
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ declare const AssemblyEditor: ({ assembly, onClose, }: {
4
4
  assembly?: AnyConfigurationModel;
5
+ onClose: () => void;
5
6
  }) => React.JSX.Element;
6
7
  export default AssemblyEditor;
@@ -4,8 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const mobx_react_1 = require("mobx-react");
8
7
  const plugin_config_1 = require("@jbrowse/plugin-config");
8
+ const material_1 = require("@mui/material");
9
+ const mobx_react_1 = require("mobx-react");
9
10
  const mui_1 = require("tss-react/mui");
10
11
  const useStyles = (0, mui_1.makeStyles)()({
11
12
  container: {
@@ -13,8 +14,14 @@ const useStyles = (0, mui_1.makeStyles)()({
13
14
  maxHeight: 600,
14
15
  },
15
16
  });
16
- const AssemblyEditor = (0, mobx_react_1.observer)(function ({ assembly, }) {
17
+ const AssemblyEditor = (0, mobx_react_1.observer)(function ({ assembly, onClose, }) {
17
18
  const { classes } = useStyles();
18
- return (react_1.default.createElement("div", { className: classes.container }, assembly ? (react_1.default.createElement(plugin_config_1.ConfigurationEditor, { model: { target: assembly } })) : (react_1.default.createElement("div", null, "No assembly"))));
19
+ return (react_1.default.createElement(react_1.default.Fragment, null,
20
+ react_1.default.createElement(material_1.DialogContent, null,
21
+ react_1.default.createElement("div", { className: classes.container }, assembly ? (react_1.default.createElement(plugin_config_1.ConfigurationEditor, { model: { target: assembly } })) : (react_1.default.createElement("div", null, "No assembly")))),
22
+ react_1.default.createElement(material_1.DialogActions, null,
23
+ react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
24
+ onClose();
25
+ } }, "Back"))));
19
26
  });
20
27
  exports.default = AssemblyEditor;
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
- declare const AssemblyManager: ({ rootModel, onClose, }: {
3
- rootModel: any;
4
- onClose: (arg: boolean) => void;
2
+ import type { AbstractSessionModel } from '@jbrowse/core/util';
3
+ declare const AssemblyManager: ({ session, onClose, }: {
4
+ session: AbstractSessionModel;
5
+ onClose: () => void;
5
6
  }) => React.JSX.Element;
6
7
  export default AssemblyManager;
@@ -27,40 +27,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const react_1 = __importStar(require("react"));
30
- const mobx_react_1 = require("mobx-react");
31
- const material_1 = require("@mui/material");
32
30
  const ui_1 = require("@jbrowse/core/ui");
33
- // icons
34
- const Add_1 = __importDefault(require("@mui/icons-material/Add"));
35
- // locals
36
- const AssemblyTable_1 = __importDefault(require("./AssemblyTable"));
31
+ const mobx_react_1 = require("mobx-react");
37
32
  const AssemblyAddForm_1 = __importDefault(require("./AssemblyAddForm"));
38
33
  const AssemblyEditor_1 = __importDefault(require("./AssemblyEditor"));
39
- const AssemblyManager = (0, mobx_react_1.observer)(function ({ rootModel, onClose, }) {
34
+ const AssemblyTable_1 = __importDefault(require("./AssemblyTable"));
35
+ const AssemblyManager = (0, mobx_react_1.observer)(function ({ session, onClose, }) {
40
36
  const [isFormOpen, setFormOpen] = (0, react_1.useState)(false);
41
- const [isAssemblyBeingEdited, setIsAssemblyBeingEdited] = (0, react_1.useState)(false);
42
- const [assemblyBeingEdited, setAssemblyBeingEdited] = (0, react_1.useState)();
43
- const showAssemblyTable = !isFormOpen && !isAssemblyBeingEdited;
44
- return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: () => {
45
- onClose(false);
46
- }, title: "Assembly manager" },
47
- react_1.default.createElement(material_1.DialogContent, null,
48
- showAssemblyTable ? (react_1.default.createElement(AssemblyTable_1.default, { rootModel: rootModel, setIsAssemblyBeingEdited: setIsAssemblyBeingEdited, setAssemblyBeingEdited: setAssemblyBeingEdited })) : null,
49
- isAssemblyBeingEdited ? (react_1.default.createElement(AssemblyEditor_1.default, { assembly: assemblyBeingEdited })) : null,
50
- isFormOpen ? (react_1.default.createElement(AssemblyAddForm_1.default, { rootModel: rootModel, setFormOpen: setFormOpen })) : null),
51
- react_1.default.createElement(material_1.DialogActions, null,
52
- isFormOpen ? (react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
53
- setFormOpen(false);
54
- } }, "Back")) : null,
55
- isAssemblyBeingEdited ? (react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
56
- setIsAssemblyBeingEdited(false);
57
- } }, "Back")) : null,
58
- showAssemblyTable ? (react_1.default.createElement(react_1.default.Fragment, null,
59
- react_1.default.createElement(material_1.Button, { color: "secondary", variant: "contained", onClick: () => {
60
- onClose(false);
61
- } }, "Close"),
62
- react_1.default.createElement(material_1.Button, { variant: "contained", startIcon: react_1.default.createElement(Add_1.default, null), onClick: () => {
63
- setFormOpen(true);
64
- } }, "Add new assembly"))) : null)));
37
+ const [editingAssembly, setEditingAssembly] = (0, react_1.useState)();
38
+ return (react_1.default.createElement(ui_1.Dialog, { open: true, title: "Assembly manager", onClose: () => {
39
+ onClose();
40
+ } }, editingAssembly ? (react_1.default.createElement(AssemblyEditor_1.default, { assembly: editingAssembly, onClose: () => {
41
+ setEditingAssembly(undefined);
42
+ } })) : isFormOpen ? (react_1.default.createElement(AssemblyAddForm_1.default, { session: session, onClose: () => {
43
+ setFormOpen(false);
44
+ } })) : (react_1.default.createElement(AssemblyTable_1.default, { session: session, onClose: () => {
45
+ onClose();
46
+ }, onAddAssembly: () => {
47
+ setFormOpen(true);
48
+ }, onEditAssembly: arg => {
49
+ setEditingAssembly(arg);
50
+ } }))));
65
51
  });
66
52
  exports.default = AssemblyManager;
@@ -1,13 +1,10 @@
1
1
  import React from 'react';
2
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
- declare const AssemblyTable: ({ rootModel, setIsAssemblyBeingEdited, setAssemblyBeingEdited, }: {
4
- rootModel: {
5
- jbrowse: {
6
- removeAssemblyConf: (arg: string) => void;
7
- assemblies: AnyConfigurationModel[];
8
- };
9
- };
10
- setIsAssemblyBeingEdited(arg: boolean): void;
11
- setAssemblyBeingEdited(arg: AnyConfigurationModel): void;
2
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import type { AbstractSessionModel } from '@jbrowse/core/util';
4
+ declare const AssemblyTable: ({ onEditAssembly, onAddAssembly, onClose, session, }: {
5
+ onEditAssembly: (arg: AnyConfigurationModel) => void;
6
+ onAddAssembly: () => void;
7
+ onClose: () => void;
8
+ session: AbstractSessionModel;
12
9
  }) => React.JSX.Element;
13
10
  export default AssemblyTable;