@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
@@ -1,14 +1,12 @@
1
- import { types, addDisposer } from 'mobx-state-tree';
2
- import { autorun, observable } from 'mobx';
3
- import { getConf, readConfObject, } from '@jbrowse/core/configuration';
1
+ import { getConf, readConfObject } from '@jbrowse/core/configuration';
4
2
  import { dedupe, getSession, localStorageGetItem, localStorageSetItem, notEmpty, } from '@jbrowse/core/util';
5
3
  import { ElementId } from '@jbrowse/core/util/types/mst';
6
- // locals
4
+ import { autorun, observable } from 'mobx';
5
+ import { addDisposer, types } from 'mobx-state-tree';
6
+ import { facetedStateTreeF } from './facetedModel';
7
7
  import { filterTracks } from './filterTracks';
8
8
  import { generateHierarchy } from './generateHierarchy';
9
9
  import { findSubCategories, findTopLevelCategories } from './util';
10
- import { facetedStateTreeF } from './facetedModel';
11
- // for settings that are config dependent
12
10
  function keyConfigPostFix() {
13
11
  return typeof window !== 'undefined'
14
12
  ? [
@@ -24,8 +22,6 @@ function recentlyUsedK(assemblyNames) {
24
22
  .filter(f => !!f)
25
23
  .join('-');
26
24
  }
27
- // this has a extra } at the end because that's how it was initially
28
- // released
29
25
  function favoritesK() {
30
26
  return `favoriteTracks-${keyConfigPostFix()}}`;
31
27
  }
@@ -55,185 +51,86 @@ function localStorageSetJSON(key, val) {
55
51
  }
56
52
  }
57
53
  const MAX_RECENTLY_USED = 10;
58
- /**
59
- * #stateModel HierarchicalTrackSelectorWidget
60
- */
61
54
  export default function stateTreeFactory(pluginManager) {
62
55
  return types
63
56
  .model('HierarchicalTrackSelectorWidget', {
64
- /**
65
- * #property
66
- */
67
57
  id: ElementId,
68
- /**
69
- * #property
70
- */
71
58
  type: types.literal('HierarchicalTrackSelectorWidget'),
72
- /**
73
- * #property
74
- */
75
59
  view: types.safeReference(pluginManager.pluggableMstType('view', 'stateModel')),
76
- /**
77
- * #property
78
- */
79
60
  faceted: types.optional(facetedStateTreeF(), {}),
80
61
  })
81
62
  .volatile(() => ({
82
- /**
83
- * #volatile
84
- */
85
63
  favorites: localStorageGetJSON(favoritesK(), []),
86
- /**
87
- * #volatile
88
- */
89
64
  recentlyUsed: [],
90
- /**
91
- * #volatile
92
- */
93
65
  selection: [],
94
- /**
95
- * #volatile
96
- */
97
66
  sortTrackNames: localStorageGetJSON(sortTrackNamesK(), undefined),
98
- /**
99
- * #volatile
100
- */
101
67
  sortCategories: localStorageGetJSON(sortCategoriesK(), undefined),
102
- /**
103
- * #volatile
104
- */
105
68
  collapsed: observable.map(),
106
- /**
107
- * #volatile
108
- */
109
69
  filterText: '',
110
- /**
111
- * #volatile
112
- */
113
70
  recentlyUsedCounter: 0,
114
- /**
115
- * #volatile
116
- */
117
71
  favoritesCounter: 0,
118
72
  }))
119
73
  .views(self => ({
120
- /**
121
- * #getter
122
- */
123
74
  get shownTrackIds() {
124
75
  var _a, _b;
125
76
  return new Set((_b = (_a = self.view) === null || _a === void 0 ? void 0 : _a.tracks) === null || _b === void 0 ? void 0 : _b.map((t) => t.configuration.trackId));
126
77
  },
127
- /**
128
- * #getter
129
- */
130
78
  get selectionSet() {
131
79
  return new Set(self.selection);
132
80
  },
133
- /**
134
- * #getter
135
- */
136
81
  get favoritesSet() {
137
82
  return new Set(self.favorites);
138
83
  },
139
- /**
140
- * #getter
141
- */
142
84
  get recentlyUsedSet() {
143
85
  return new Set(self.recentlyUsed);
144
86
  },
145
- /**
146
- * #getter
147
- */
148
87
  get assemblyNames() {
149
88
  var _a;
150
89
  return ((_a = self.view) === null || _a === void 0 ? void 0 : _a.assemblyNames) || [];
151
90
  },
152
91
  }))
153
92
  .actions(self => ({
154
- /**
155
- * #action
156
- */
157
93
  setSortTrackNames(val) {
158
94
  self.sortTrackNames = val;
159
95
  },
160
- /**
161
- * #action
162
- */
163
96
  setSortCategories(val) {
164
97
  self.sortCategories = val;
165
98
  },
166
- /**
167
- * #action
168
- */
169
99
  setSelection(elt) {
170
100
  self.selection = elt;
171
101
  },
172
- /**
173
- * #action
174
- */
175
102
  addToSelection(elt) {
176
103
  self.selection = dedupe([...self.selection, ...elt], e => e.trackId);
177
104
  },
178
- /**
179
- * #action
180
- */
181
105
  removeFromSelection(elt) {
182
106
  const s = new Set(elt);
183
107
  self.selection = self.selection.filter(f => !s.has(f));
184
108
  },
185
- /**
186
- * #action
187
- */
188
109
  clearSelection() {
189
110
  self.selection = [];
190
111
  },
191
- /**
192
- * #action
193
- */
194
112
  addToFavorites(trackId) {
195
113
  self.favoritesCounter += 1;
196
114
  self.favorites = [...self.favorites, trackId];
197
115
  },
198
- /**
199
- * #action
200
- */
201
116
  removeFromFavorites(trackId) {
202
117
  self.favorites = self.favorites.filter(f => f !== trackId);
203
118
  },
204
- /**
205
- * #action
206
- */
207
119
  clearFavorites() {
208
120
  self.favorites = [];
209
121
  },
210
- /**
211
- * #action
212
- */
213
122
  setRecentlyUsedCounter(val) {
214
123
  self.recentlyUsedCounter = val;
215
124
  },
216
- /**
217
- * #action
218
- */
219
125
  setRecentlyUsed(str) {
220
126
  self.recentlyUsed = str;
221
127
  },
222
- /**
223
- * #action
224
- */
225
128
  setFavorites(str) {
226
129
  self.favorites = str;
227
130
  },
228
- /**
229
- * #action
230
- */
231
131
  setFavoritesCounter(val) {
232
132
  self.favoritesCounter = val;
233
133
  },
234
- /**
235
- * #action
236
- */
237
134
  addToRecentlyUsed(id) {
238
135
  if (!self.recentlyUsed.includes(id)) {
239
136
  self.recentlyUsedCounter = Math.min(self.recentlyUsedCounter + 1, MAX_RECENTLY_USED);
@@ -243,77 +140,41 @@ export default function stateTreeFactory(pluginManager) {
243
140
  : [...self.recentlyUsed, id];
244
141
  }
245
142
  },
246
- /**
247
- * #action
248
- */
249
143
  clearRecentlyUsed() {
250
144
  self.recentlyUsed = [];
251
145
  },
252
- /**
253
- * #action
254
- */
255
146
  setView(view) {
256
147
  self.view = view;
257
148
  },
258
- /**
259
- * #action
260
- */
261
149
  toggleCategory(pathName) {
262
150
  self.collapsed.set(pathName, !self.collapsed.get(pathName));
263
151
  },
264
- /**
265
- * #action
266
- */
267
152
  setCategoryCollapsed(pathName, status) {
268
153
  self.collapsed.set(pathName, status);
269
154
  },
270
- /**
271
- * #action
272
- */
273
155
  expandAllCategories() {
274
156
  self.collapsed.clear();
275
157
  },
276
- /**
277
- * #action
278
- */
279
158
  setCollapsedCategories(str) {
280
159
  self.collapsed.replace(str);
281
160
  },
282
- /**
283
- * #action
284
- */
285
161
  clearFilterText() {
286
162
  self.filterText = '';
287
163
  },
288
- /**
289
- * #action
290
- */
291
164
  setFilterText(newText) {
292
165
  self.filterText = newText;
293
166
  },
294
167
  }))
295
168
  .views(self => ({
296
- /**
297
- * #method
298
- */
299
169
  isSelected(track) {
300
170
  return self.selectionSet.has(track);
301
171
  },
302
- /**
303
- * #method
304
- */
305
172
  isFavorite(trackId) {
306
173
  return self.favoritesSet.has(trackId);
307
174
  },
308
- /**
309
- * #method
310
- */
311
175
  isRecentlyUsed(trackId) {
312
176
  return self.recentlyUsedSet.has(trackId);
313
177
  },
314
- /**
315
- * #method
316
- */
317
178
  getRefSeqTrackConf(assemblyName) {
318
179
  const { assemblyManager } = getSession(self);
319
180
  const assembly = assemblyManager.get(assemblyName);
@@ -330,33 +191,20 @@ export default function stateTreeFactory(pluginManager) {
330
191
  },
331
192
  }))
332
193
  .views(self => ({
333
- /**
334
- * #getter
335
- */
336
194
  get activeSortTrackNames() {
337
195
  var _a;
338
196
  return ((_a = self.sortTrackNames) !== null && _a !== void 0 ? _a : getConf(getSession(self), ['hierarchical', 'sort', 'trackNames']));
339
197
  },
340
- /**
341
- * #getter
342
- */
343
198
  get activeSortCategories() {
344
199
  var _a;
345
200
  return ((_a = self.sortCategories) !== null && _a !== void 0 ? _a : getConf(getSession(self), ['hierarchical', 'sort', 'categories']));
346
201
  },
347
- /**
348
- * #getter
349
- * filter out tracks that don't match the current assembly/display types
350
- */
351
202
  get configAndSessionTrackConfigurations() {
352
203
  return [
353
204
  ...self.assemblyNames.map(a => self.getRefSeqTrackConf(a)),
354
205
  ...filterTracks(getSession(self).tracks, self),
355
206
  ].filter(notEmpty);
356
207
  },
357
- /**
358
- * #getter
359
- */
360
208
  get allTrackConfigurations() {
361
209
  const { connectionInstances = [] } = getSession(self);
362
210
  return [
@@ -364,27 +212,16 @@ export default function stateTreeFactory(pluginManager) {
364
212
  ...connectionInstances.flatMap(c => c.tracks),
365
213
  ];
366
214
  },
367
- /**
368
- * #getter
369
- */
370
215
  get allTrackConfigurationTrackIdSet() {
371
216
  return new Map(this.allTrackConfigurations.map(t => [t.trackId, t]));
372
217
  },
373
218
  }))
374
219
  .views(self => ({
375
- /**
376
- * #getter
377
- * filters out tracks that are not in the favorites group
378
- */
379
220
  get favoriteTracks() {
380
221
  return self.favorites
381
222
  .filter(t => self.allTrackConfigurationTrackIdSet.has(t))
382
223
  .map(t => self.allTrackConfigurationTrackIdSet.get(t));
383
224
  },
384
- /**
385
- * #getter
386
- * filters out tracks that are not in the recently used group
387
- */
388
225
  get recentlyUsedTracks() {
389
226
  return self.recentlyUsed
390
227
  .filter(t => self.allTrackConfigurationTrackIdSet.has(t))
@@ -392,9 +229,6 @@ export default function stateTreeFactory(pluginManager) {
392
229
  },
393
230
  }))
394
231
  .views(self => ({
395
- /**
396
- * #getter
397
- */
398
232
  get allTracks() {
399
233
  const { connectionInstances = [] } = getSession(self);
400
234
  return [
@@ -414,9 +248,6 @@ export default function stateTreeFactory(pluginManager) {
414
248
  },
415
249
  }))
416
250
  .views(self => ({
417
- /**
418
- * #getter
419
- */
420
251
  get hierarchy() {
421
252
  return {
422
253
  name: 'Root',
@@ -440,9 +271,6 @@ export default function stateTreeFactory(pluginManager) {
440
271
  },
441
272
  }))
442
273
  .actions(self => ({
443
- /**
444
- * #action
445
- */
446
274
  collapseSubCategories() {
447
275
  const paths = [];
448
276
  findSubCategories(self.hierarchy.children, paths);
@@ -450,9 +278,6 @@ export default function stateTreeFactory(pluginManager) {
450
278
  self.setCategoryCollapsed(path, true);
451
279
  }
452
280
  },
453
- /**
454
- * #action
455
- */
456
281
  collapseTopLevelCategories() {
457
282
  const paths = [];
458
283
  for (const trackGroups of self.hierarchy.children) {
@@ -466,16 +291,12 @@ export default function stateTreeFactory(pluginManager) {
466
291
  },
467
292
  }))
468
293
  .views(self => ({
469
- /**
470
- * #getter
471
- */
472
294
  get hasAnySubcategories() {
473
295
  return self.allTracks.some(group => group.tracks.some(t => { var _a; return ((_a = readConfObject(t, 'category')) === null || _a === void 0 ? void 0 : _a.length) > 1; }));
474
296
  },
475
297
  }))
476
298
  .actions(self => ({
477
299
  afterAttach() {
478
- // this should be the first autorun to properly initialize
479
300
  addDisposer(self, autorun(() => {
480
301
  const { assemblyNames, view } = self;
481
302
  self.setRecentlyUsed(localStorageGetJSON(recentlyUsedK(assemblyNames), []));
@@ -500,7 +321,6 @@ export default function stateTreeFactory(pluginManager) {
500
321
  }
501
322
  }
502
323
  }));
503
- // this should be the second autorun
504
324
  addDisposer(self, autorun(() => {
505
325
  const { sortTrackNames, sortCategories, favorites, recentlyUsed, assemblyNames, collapsed, view, } = self;
506
326
  localStorageSetJSON(recentlyUsedK(assemblyNames), recentlyUsed);
@@ -1,5 +1,5 @@
1
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
- import { AbstractSessionModel } from '@jbrowse/core/util';
1
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ import type { AbstractSessionModel } from '@jbrowse/core/util';
3
3
  export declare function hasAnyOverlap<T>(a1?: T[], a2?: T[]): boolean;
4
4
  export declare function hasAllOverlap<T>(a1?: T[], a2?: T[]): boolean;
5
5
  export declare function matches(query: string, conf: AnyConfigurationModel, session: AbstractSessionModel): boolean;
@@ -1,8 +1,6 @@
1
- import { readConfObject, } from '@jbrowse/core/configuration';
1
+ import { readConfObject } from '@jbrowse/core/configuration';
2
2
  import { getTrackName } from '@jbrowse/core/util/tracks';
3
3
  export function hasAnyOverlap(a1 = [], a2 = []) {
4
- // shortcut case is that arrays are single entries, and are equal
5
- // long case is that we use a set
6
4
  if (a1[0] === a2[0]) {
7
5
  return true;
8
6
  }
@@ -26,7 +24,6 @@ export function findSubCategories(obj, paths, depth = 0) {
26
24
  for (const elt of obj) {
27
25
  if (elt.children.length) {
28
26
  const hasSubCategories = findSubCategories(elt.children, paths, depth + 1);
29
- // avoid pushing the root "Tracks" node by checking depth>0
30
27
  if (hasSubCategories && depth > 0) {
31
28
  paths.push(elt.id);
32
29
  }
@@ -1,7 +1,6 @@
1
- import React from 'react';
2
- import { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model';
3
2
  declare const AddCustomPluginDialog: ({ onClose, model, }: {
4
3
  onClose: () => void;
5
4
  model: PluginStoreModel;
6
- }) => React.JSX.Element;
5
+ }) => import("react/jsx-runtime").JSX.Element;
7
6
  export default AddCustomPluginDialog;
@@ -1,12 +1,12 @@
1
- import React, { useState } from 'react';
2
- import { observer } from 'mobx-react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
3
  import { Dialog } from '@jbrowse/core/ui';
4
- import { Button, Collapse, DialogActions, DialogContent, DialogContentText, TextField, } from '@mui/material';
5
- import { makeStyles } from 'tss-react/mui';
6
4
  import { getSession } from '@jbrowse/core/util';
7
- // icons
8
- import IconButton from '@mui/material/IconButton';
9
5
  import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
6
+ import { Button, Collapse, DialogActions, DialogContent, DialogContentText, TextField, } from '@mui/material';
7
+ import IconButton from '@mui/material/IconButton';
8
+ import { observer } from 'mobx-react';
9
+ import { makeStyles } from 'tss-react/mui';
10
10
  const useStyles = makeStyles()(theme => ({
11
11
  dialogContent: {
12
12
  display: 'flex',
@@ -43,35 +43,18 @@ const AddCustomPluginDialog = observer(function ({ onClose, model, }) {
43
43
  jbrowse.addPlugin({ cjsUrl: cjsPluginUrl });
44
44
  }
45
45
  }
46
- return (React.createElement(Dialog, { open: true, onClose: onClose, title: "Add custom plugin" },
47
- React.createElement("form", { onSubmit: handleSubmit },
48
- React.createElement(DialogContent, { className: classes.dialogContent },
49
- React.createElement(DialogContentText, null, "Enter the name of the plugin and its URL. The name should match what is defined in the plugin's build."),
50
- React.createElement(TextField, { label: "Plugin name", variant: "outlined", value: umdPluginName, onChange: event => {
51
- setUMDPluginName(event.target.value);
52
- } }),
53
- React.createElement(TextField, { label: "Plugin URL", variant: "outlined", value: umdPluginUrl, onChange: event => {
54
- setUMDPluginUrl(event.target.value);
55
- } }),
56
- React.createElement(DialogContentText, { onClick: () => {
57
- setAdvancedOptionsOpen(!advancedOptionsOpen);
58
- } },
59
- React.createElement(IconButton, { className: cx(classes.expand, {
60
- [classes.expandOpen]: advancedOptionsOpen,
61
- }), "aria-expanded": advancedOptionsOpen, "aria-label": "show more" },
62
- React.createElement(ExpandMoreIcon, null)),
63
- "Advanced options"),
64
- React.createElement(Collapse, { in: advancedOptionsOpen },
65
- React.createElement("div", { className: classes.dialogContent },
66
- React.createElement(DialogContentText, null, "The above fields assume that the plugin is built in UMD format. If your plugin is in another format, or you have additional builds you want to add (such as a CJS build for using NodeJS APIs in desktop), you can enter the URLs for those builds below."),
67
- React.createElement(TextField, { label: "ESM build URL", variant: "outlined", value: esmPluginUrl, onChange: event => {
68
- setESMPluginUrl(event.target.value);
69
- } }),
70
- React.createElement(TextField, { label: "CJS build URL", variant: "outlined", value: cjsPluginUrl, onChange: event => {
71
- setCJSPluginUrl(event.target.value);
72
- } })))),
73
- React.createElement(DialogActions, null,
74
- React.createElement(Button, { variant: "contained", onClick: onClose }, "Cancel"),
75
- React.createElement(Button, { variant: "contained", color: "primary", onClick: handleSubmit, disabled: !ready }, "Submit")))));
46
+ return (_jsx(Dialog, { open: true, onClose: onClose, title: "Add custom plugin", children: _jsxs("form", { onSubmit: handleSubmit, children: [_jsxs(DialogContent, { className: classes.dialogContent, children: [_jsx(DialogContentText, { children: "Enter the name of the plugin and its URL. The name should match what is defined in the plugin's build." }), _jsx(TextField, { label: "Plugin name", variant: "outlined", value: umdPluginName, onChange: event => {
47
+ setUMDPluginName(event.target.value);
48
+ } }), _jsx(TextField, { label: "Plugin URL", variant: "outlined", value: umdPluginUrl, onChange: event => {
49
+ setUMDPluginUrl(event.target.value);
50
+ } }), _jsxs(DialogContentText, { onClick: () => {
51
+ setAdvancedOptionsOpen(!advancedOptionsOpen);
52
+ }, children: [_jsx(IconButton, { className: cx(classes.expand, {
53
+ [classes.expandOpen]: advancedOptionsOpen,
54
+ }), "aria-expanded": advancedOptionsOpen, "aria-label": "show more", children: _jsx(ExpandMoreIcon, {}) }), "Advanced options"] }), _jsx(Collapse, { in: advancedOptionsOpen, children: _jsxs("div", { className: classes.dialogContent, children: [_jsx(DialogContentText, { children: "The above fields assume that the plugin is built in UMD format. If your plugin is in another format, or you have additional builds you want to add (such as a CJS build for using NodeJS APIs in desktop), you can enter the URLs for those builds below." }), _jsx(TextField, { label: "ESM build URL", variant: "outlined", value: esmPluginUrl, onChange: event => {
55
+ setESMPluginUrl(event.target.value);
56
+ } }), _jsx(TextField, { label: "CJS build URL", variant: "outlined", value: cjsPluginUrl, onChange: event => {
57
+ setCJSPluginUrl(event.target.value);
58
+ } })] }) })] }), _jsxs(DialogActions, { children: [_jsx(Button, { variant: "contained", onClick: onClose, children: "Cancel" }), _jsx(Button, { variant: "contained", color: "primary", onClick: handleSubmit, disabled: !ready, children: "Submit" })] })] }) }));
76
59
  });
77
60
  export default AddCustomPluginDialog;
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
1
  export default function DeletePluginDialog({ onClose, plugin, }: {
3
2
  plugin: string;
4
3
  onClose: (s?: string) => void;
5
- }): React.JSX.Element;
4
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,24 +1,14 @@
1
- import React from 'react';
2
- import { Button, DialogActions, DialogContent, Typography } from '@mui/material';
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
3
2
  import { Dialog } from '@jbrowse/core/ui';
3
+ import { Button, DialogActions, DialogContent, Typography } from '@mui/material';
4
4
  export default function DeletePluginDialog({ onClose, plugin, }) {
5
- return (React.createElement(Dialog, { open: true, onClose: () => {
5
+ return (_jsxs(Dialog, { open: true, title: `Remove ${plugin}`, onClose: () => {
6
6
  onClose();
7
- }, title: `Remove ${plugin}` },
8
- React.createElement(DialogContent, null,
9
- React.createElement(Typography, null,
10
- "Please confirm that you want to remove ",
11
- plugin,
12
- "."),
13
- React.createElement(Typography, { color: "error" }, "Note: if any resources in this session still use this plugin, it may cause your session to crash")),
14
- React.createElement(DialogActions, null,
15
- React.createElement(Button, { variant: "contained", color: "primary", onClick: () => {
16
- // avoid showing runtime plugin warning
17
- window.setTimeout(() => {
18
- onClose(plugin);
19
- }, 500);
20
- } }, "Confirm"),
21
- React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => {
22
- onClose();
23
- } }, "Cancel"))));
7
+ }, children: [_jsxs(DialogContent, { children: [_jsxs(Typography, { children: ["Please confirm that you want to remove ", plugin, "."] }), _jsx(Typography, { color: "error", children: "Note: if any resources in this session still use this plugin, it may cause your session to crash" })] }), _jsxs(DialogActions, { children: [_jsx(Button, { variant: "contained", color: "primary", onClick: () => {
8
+ window.setTimeout(() => {
9
+ onClose(plugin);
10
+ }, 500);
11
+ }, children: "Confirm" }), _jsx(Button, { variant: "contained", color: "secondary", onClick: () => {
12
+ onClose();
13
+ }, children: "Cancel" })] })] }));
24
14
  }
@@ -1,8 +1,7 @@
1
- import React from 'react';
2
- import { BasePlugin } from '@jbrowse/core/util/types';
3
- import { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model';
2
+ import type { BasePlugin } from '@jbrowse/core/util/types';
4
3
  declare const InstalledPlugin: ({ plugin, model, }: {
5
4
  plugin: BasePlugin;
6
5
  model: PluginStoreModel;
7
- }) => React.JSX.Element;
6
+ }) => import("react/jsx-runtime").JSX.Element;
8
7
  export default InstalledPlugin;
@@ -1,12 +1,12 @@
1
- import React, { Suspense, lazy, useState } from 'react';
2
- import { observer } from 'mobx-react';
3
- import { IconButton, ListItem, Tooltip, Typography } from '@mui/material';
4
- import { makeStyles } from 'tss-react/mui';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { lazy } from 'react';
3
+ import { getEnv, getSession } from '@jbrowse/core/util';
4
+ import { isSessionWithSessionPlugins } from '@jbrowse/core/util/types';
5
5
  import CloseIcon from '@mui/icons-material/Close';
6
6
  import LockIcon from '@mui/icons-material/Lock';
7
- import { getEnv, getSession } from '@jbrowse/core/util';
8
- import { isSessionWithSessionPlugins, } from '@jbrowse/core/util/types';
9
- // lazies
7
+ import { IconButton, ListItem, Tooltip, Typography } from '@mui/material';
8
+ import { observer } from 'mobx-react';
9
+ import { makeStyles } from 'tss-react/mui';
10
10
  const DeletePluginDialog = lazy(() => import('./DeletePluginDialog'));
11
11
  const useStyles = makeStyles()(() => ({
12
12
  lockedPluginTooltip: {
@@ -15,36 +15,34 @@ const useStyles = makeStyles()(() => ({
15
15
  }));
16
16
  function LockedPlugin() {
17
17
  const { classes } = useStyles();
18
- return (React.createElement(Tooltip, { className: classes.lockedPluginTooltip, title: "This plugin was installed by an administrator, you cannot remove it." },
19
- React.createElement(LockIcon, null)));
18
+ return (_jsx(Tooltip, { className: classes.lockedPluginTooltip, title: "This plugin was installed by an administrator, you cannot remove it.", children: _jsx(LockIcon, {}) }));
20
19
  }
21
20
  const InstalledPlugin = observer(function ({ plugin, model, }) {
22
- const [dialogPlugin, setDialogPlugin] = useState();
23
21
  const { pluginManager } = getEnv(model);
24
22
  const session = getSession(model);
25
23
  const { jbrowse, adminMode } = session;
26
24
  const isSessionPlugin = isSessionWithSessionPlugins(session)
27
25
  ? session.sessionPlugins.some(p => { var _a; return ((_a = pluginManager.pluginMetadata[plugin.name]) === null || _a === void 0 ? void 0 : _a.url) === p.url; })
28
26
  : false;
29
- return (React.createElement(React.Fragment, null,
30
- dialogPlugin ? (React.createElement(Suspense, { fallback: null },
31
- React.createElement(DeletePluginDialog, { plugin: dialogPlugin, onClose: name => {
32
- if (name) {
33
- const pluginMetadata = pluginManager.pluginMetadata[plugin.name];
34
- if (adminMode) {
35
- jbrowse.removePlugin(pluginMetadata);
36
- }
37
- else if (isSessionWithSessionPlugins(session)) {
38
- session.removeSessionPlugin(pluginMetadata);
39
- }
40
- }
41
- setDialogPlugin(undefined);
42
- } }))) : null,
43
- React.createElement(ListItem, { key: plugin.name },
44
- adminMode || isSessionPlugin ? (React.createElement(IconButton, { "data-testid": `removePlugin-${plugin.name}`, onClick: () => {
45
- setDialogPlugin(plugin.name);
46
- } },
47
- React.createElement(CloseIcon, null))) : (React.createElement(LockedPlugin, null)),
48
- React.createElement(Typography, null, plugin.name))));
27
+ return (_jsxs(ListItem, { children: [adminMode || isSessionPlugin ? (_jsx(IconButton, { "data-testid": `removePlugin-${plugin.name}`, onClick: () => {
28
+ session.queueDialog(onClose => [
29
+ DeletePluginDialog,
30
+ {
31
+ plugin: plugin.name,
32
+ onClose: (name) => {
33
+ if (name) {
34
+ const pluginMetadata = pluginManager.pluginMetadata[plugin.name];
35
+ if (adminMode) {
36
+ jbrowse.removePlugin(pluginMetadata);
37
+ }
38
+ else if (isSessionWithSessionPlugins(session)) {
39
+ session.removeSessionPlugin(pluginMetadata);
40
+ }
41
+ }
42
+ onClose();
43
+ },
44
+ },
45
+ ]);
46
+ }, children: _jsx(CloseIcon, {}) })) : (_jsx(LockedPlugin, {})), _jsx(Typography, { children: plugin.name })] }, plugin.name));
49
47
  });
50
48
  export default InstalledPlugin;