@jbrowse/plugin-data-management 3.7.0 → 4.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 (300) hide show
  1. package/esm/AddConnectionWidget/components/AddConnectionWidget.d.ts +1 -1
  2. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +5 -5
  3. package/esm/AddConnectionWidget/components/ConfigureConnection.js +1 -1
  4. package/esm/AddConnectionWidget/index.js +2 -2
  5. package/esm/AddConnectionWidget/model.d.ts +4 -4
  6. package/esm/AddConnectionWidget/model.js +1 -1
  7. package/esm/AddTrackWidget/components/AddTrackStatusMessage.js +2 -2
  8. package/esm/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.d.ts +1 -1
  9. package/esm/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.js +2 -2
  10. package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +1 -1
  11. package/esm/AddTrackWidget/components/AddTrackWidget.js +3 -3
  12. package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +1 -1
  13. package/esm/AddTrackWidget/components/ConfirmTrack.js +10 -10
  14. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +1 -1
  15. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +6 -9
  16. package/esm/AddTrackWidget/components/PasteConfigWorkflow.d.ts +2 -2
  17. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +2 -2
  18. package/esm/AddTrackWidget/components/TextIndexingConfig.d.ts +1 -1
  19. package/esm/AddTrackWidget/components/TextIndexingConfig.js +2 -2
  20. package/esm/AddTrackWidget/components/TrackAdapterSelector.d.ts +2 -2
  21. package/esm/AddTrackWidget/components/TrackAdapterSelector.js +4 -4
  22. package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +1 -1
  23. package/esm/AddTrackWidget/components/TrackSourceSelect.js +3 -3
  24. package/esm/AddTrackWidget/components/TrackTypeSelector.d.ts +1 -1
  25. package/esm/AddTrackWidget/components/TrackTypeSelector.js +1 -1
  26. package/esm/AddTrackWidget/components/Unsupported.js +1 -1
  27. package/esm/AddTrackWidget/components/doSubmit.d.ts +1 -1
  28. package/esm/AddTrackWidget/components/doSubmit.js +2 -3
  29. package/esm/AddTrackWidget/components/util.js +1 -2
  30. package/esm/AddTrackWidget/index.js +2 -2
  31. package/esm/AddTrackWidget/model.d.ts +8 -11
  32. package/esm/AddTrackWidget/model.js +10 -25
  33. package/esm/AssemblyManager/AssemblyAddForm.js +6 -6
  34. package/esm/AssemblyManager/AssemblyEditor.js +2 -2
  35. package/esm/AssemblyManager/AssemblyManager.js +4 -4
  36. package/esm/AssemblyManager/AssemblyTable.js +1 -1
  37. package/esm/AssemblyManager/index.d.ts +1 -1
  38. package/esm/AssemblyManager/index.js +1 -1
  39. package/esm/HierarchicalTrackSelectorWidget/components/AutoSizer.d.ts +8 -0
  40. package/esm/HierarchicalTrackSelectorWidget/components/AutoSizer.js +24 -0
  41. package/esm/HierarchicalTrackSelectorWidget/components/ClearableSearchField.d.ts +6 -0
  42. package/esm/HierarchicalTrackSelectorWidget/components/ClearableSearchField.js +27 -0
  43. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +1 -1
  44. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +2 -2
  45. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +1 -1
  46. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +9 -9
  47. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +4 -5
  48. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +1 -1
  49. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +1 -2
  50. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +3 -3
  51. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +4 -5
  52. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +1 -1
  53. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +2 -2
  54. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +2 -2
  55. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +5 -6
  56. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.d.ts +1 -1
  57. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.js +39 -58
  58. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +1 -1
  59. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +2 -2
  60. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +1 -1
  61. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +6 -12
  62. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +1 -1
  63. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +7 -7
  64. package/esm/HierarchicalTrackSelectorWidget/components/faceted/computeInitialWidths.d.ts +6 -0
  65. package/esm/HierarchicalTrackSelectorWidget/components/faceted/computeInitialWidths.js +18 -0
  66. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.js +1 -2
  67. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +1 -1
  68. package/esm/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +3 -3
  69. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +1 -1
  70. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +13 -32
  71. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +1 -1
  72. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +7 -8
  73. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +1 -1
  74. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +11 -22
  75. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +2 -4
  76. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +42 -59
  77. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +1 -1
  78. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +13 -29
  79. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +7 -6
  80. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +86 -92
  81. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +8 -4
  82. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +28 -15
  83. package/{dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts → esm/HierarchicalTrackSelectorWidget/components/tree/TrackSelectorTrackMenu.d.ts} +3 -4
  84. package/esm/HierarchicalTrackSelectorWidget/components/tree/{TrackLabelMenu.js → TrackSelectorTrackMenu.js} +13 -7
  85. package/esm/HierarchicalTrackSelectorWidget/components/tree/TreeItem.d.ts +9 -0
  86. package/esm/HierarchicalTrackSelectorWidget/components/tree/TreeItem.js +49 -0
  87. package/esm/HierarchicalTrackSelectorWidget/components/tree/trackListStyles.d.ts +21 -0
  88. package/esm/HierarchicalTrackSelectorWidget/components/tree/trackListStyles.js +29 -0
  89. package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +1 -20
  90. package/esm/HierarchicalTrackSelectorWidget/components/util.js +1 -10
  91. package/esm/HierarchicalTrackSelectorWidget/configSchema.d.ts +1 -1
  92. package/esm/HierarchicalTrackSelectorWidget/facetedModel.d.ts +24 -30
  93. package/esm/HierarchicalTrackSelectorWidget/facetedModel.js +34 -23
  94. package/esm/HierarchicalTrackSelectorWidget/facetedUtil.js +2 -2
  95. package/esm/HierarchicalTrackSelectorWidget/filterTracks.d.ts +3 -7
  96. package/esm/HierarchicalTrackSelectorWidget/filterTracks.js +13 -11
  97. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +2 -28
  98. package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.js +34 -59
  99. package/esm/HierarchicalTrackSelectorWidget/index.d.ts +2 -2
  100. package/esm/HierarchicalTrackSelectorWidget/index.js +5 -5
  101. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +67 -87
  102. package/esm/HierarchicalTrackSelectorWidget/model.js +90 -23
  103. package/esm/HierarchicalTrackSelectorWidget/sortUtils.d.ts +2 -0
  104. package/esm/HierarchicalTrackSelectorWidget/sortUtils.js +28 -0
  105. package/esm/HierarchicalTrackSelectorWidget/types.d.ts +23 -0
  106. package/esm/HierarchicalTrackSelectorWidget/types.js +1 -0
  107. package/esm/HierarchicalTrackSelectorWidget/util.js +1 -1
  108. package/esm/JB2TrackHubConnection/configSchema.d.ts +3 -3
  109. package/esm/JB2TrackHubConnection/doConnect.js +3 -4
  110. package/esm/JB2TrackHubConnection/index.js +2 -2
  111. package/esm/JB2TrackHubConnection/model.d.ts +18 -26
  112. package/esm/JB2TrackHubConnection/model.js +3 -3
  113. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +1 -1
  114. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.js +3 -3
  115. package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +1 -1
  116. package/esm/PluginStoreWidget/components/InstalledPlugin.js +5 -5
  117. package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +1 -1
  118. package/esm/PluginStoreWidget/components/InstalledPluginsList.js +2 -2
  119. package/esm/PluginStoreWidget/components/PluginCard.d.ts +1 -1
  120. package/esm/PluginStoreWidget/components/PluginCard.js +1 -5
  121. package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +1 -1
  122. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +22 -10
  123. package/esm/PluginStoreWidget/components/util.js +1 -1
  124. package/esm/PluginStoreWidget/index.js +2 -2
  125. package/esm/PluginStoreWidget/model.d.ts +7 -7
  126. package/esm/PluginStoreWidget/model.js +1 -1
  127. package/esm/UCSCTrackHubConnection/configSchema.d.ts +3 -3
  128. package/esm/UCSCTrackHubConnection/doConnect.js +3 -9
  129. package/esm/UCSCTrackHubConnection/index.js +2 -2
  130. package/esm/UCSCTrackHubConnection/model.d.ts +18 -26
  131. package/esm/UCSCTrackHubConnection/model.js +3 -3
  132. package/esm/UCSCTrackHubConnection/ucscTrackHub.d.ts +1 -8
  133. package/esm/UCSCTrackHubConnection/ucscTrackHub.js +6 -10
  134. package/esm/index.d.ts +2 -2
  135. package/esm/index.js +11 -14
  136. package/package.json +28 -37
  137. package/dist/AddConnectionWidget/components/AddConnectionWidget.d.ts +0 -4
  138. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +0 -66
  139. package/dist/AddConnectionWidget/components/ConfigureConnection.d.ts +0 -9
  140. package/dist/AddConnectionWidget/components/ConfigureConnection.js +0 -12
  141. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +0 -7
  142. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +0 -19
  143. package/dist/AddConnectionWidget/index.d.ts +0 -2
  144. package/dist/AddConnectionWidget/index.js +0 -55
  145. package/dist/AddConnectionWidget/model.d.ts +0 -5
  146. package/dist/AddConnectionWidget/model.js +0 -8
  147. package/dist/AddTrackWidget/components/AddTrackStatusMessage.d.ts +0 -9
  148. package/dist/AddTrackWidget/components/AddTrackStatusMessage.js +0 -16
  149. package/dist/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.d.ts +0 -4
  150. package/dist/AddTrackWidget/components/AddTrackUnknownAdapterPrompt.js +0 -20
  151. package/dist/AddTrackWidget/components/AddTrackWidget.d.ts +0 -5
  152. package/dist/AddTrackWidget/components/AddTrackWidget.js +0 -28
  153. package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +0 -5
  154. package/dist/AddTrackWidget/components/ConfirmTrack.js +0 -73
  155. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +0 -5
  156. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +0 -74
  157. package/dist/AddTrackWidget/components/PasteConfigWorkflow.d.ts +0 -5
  158. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +0 -53
  159. package/dist/AddTrackWidget/components/TextIndexingConfig.d.ts +0 -5
  160. package/dist/AddTrackWidget/components/TextIndexingConfig.js +0 -76
  161. package/dist/AddTrackWidget/components/TrackAdapterSelector.d.ts +0 -5
  162. package/dist/AddTrackWidget/components/TrackAdapterSelector.js +0 -26
  163. package/dist/AddTrackWidget/components/TrackSourceSelect.d.ts +0 -5
  164. package/dist/AddTrackWidget/components/TrackSourceSelect.js +0 -22
  165. package/dist/AddTrackWidget/components/TrackTypeSelector.d.ts +0 -5
  166. package/dist/AddTrackWidget/components/TrackTypeSelector.js +0 -21
  167. package/dist/AddTrackWidget/components/Unsupported.d.ts +0 -1
  168. package/dist/AddTrackWidget/components/Unsupported.js +0 -16
  169. package/dist/AddTrackWidget/components/doSubmit.d.ts +0 -4
  170. package/dist/AddTrackWidget/components/doSubmit.js +0 -55
  171. package/dist/AddTrackWidget/components/util.d.ts +0 -2
  172. package/dist/AddTrackWidget/components/util.js +0 -15
  173. package/dist/AddTrackWidget/index.d.ts +0 -2
  174. package/dist/AddTrackWidget/index.js +0 -55
  175. package/dist/AddTrackWidget/model.d.ts +0 -64
  176. package/dist/AddTrackWidget/model.js +0 -190
  177. package/dist/AssemblyManager/AssemblyAddForm.d.ts +0 -6
  178. package/dist/AssemblyManager/AssemblyAddForm.js +0 -94
  179. package/dist/AssemblyManager/AssemblyEditor.d.ts +0 -6
  180. package/dist/AssemblyManager/AssemblyEditor.js +0 -20
  181. package/dist/AssemblyManager/AssemblyManager.d.ts +0 -6
  182. package/dist/AssemblyManager/AssemblyManager.js +0 -30
  183. package/dist/AssemblyManager/AssemblyTable.d.ts +0 -9
  184. package/dist/AssemblyManager/AssemblyTable.js +0 -53
  185. package/dist/AssemblyManager/index.d.ts +0 -1
  186. package/dist/AssemblyManager/index.js +0 -8
  187. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +0 -5
  188. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +0 -47
  189. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +0 -10
  190. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +0 -26
  191. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +0 -8
  192. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +0 -52
  193. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +0 -9
  194. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +0 -16
  195. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +0 -11
  196. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +0 -17
  197. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +0 -8
  198. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +0 -34
  199. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +0 -8
  200. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +0 -47
  201. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +0 -9
  202. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +0 -52
  203. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +0 -10
  204. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +0 -51
  205. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.d.ts +0 -9
  206. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDataGrid.js +0 -75
  207. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +0 -6
  208. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +0 -15
  209. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +0 -4
  210. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +0 -67
  211. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +0 -11
  212. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +0 -75
  213. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.d.ts +0 -6
  214. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.js +0 -9
  215. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.d.ts +0 -11
  216. package/dist/HierarchicalTrackSelectorWidget/components/tree/DropdownTrackSelector.js +0 -34
  217. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.d.ts +0 -5
  218. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +0 -45
  219. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +0 -5
  220. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +0 -196
  221. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +0 -6
  222. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +0 -38
  223. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +0 -8
  224. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +0 -68
  225. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.d.ts +0 -5
  226. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +0 -42
  227. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +0 -6
  228. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +0 -117
  229. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +0 -10
  230. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +0 -49
  231. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +0 -56
  232. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +0 -9
  233. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +0 -42
  234. package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +0 -23
  235. package/dist/HierarchicalTrackSelectorWidget/components/util.js +0 -22
  236. package/dist/HierarchicalTrackSelectorWidget/configSchema.d.ts +0 -2
  237. package/dist/HierarchicalTrackSelectorWidget/configSchema.js +0 -5
  238. package/dist/HierarchicalTrackSelectorWidget/facetedModel.d.ts +0 -82
  239. package/dist/HierarchicalTrackSelectorWidget/facetedModel.js +0 -114
  240. package/dist/HierarchicalTrackSelectorWidget/facetedUtil.d.ts +0 -2
  241. package/dist/HierarchicalTrackSelectorWidget/facetedUtil.js +0 -12
  242. package/dist/HierarchicalTrackSelectorWidget/filterTracks.d.ts +0 -18
  243. package/dist/HierarchicalTrackSelectorWidget/filterTracks.js +0 -31
  244. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +0 -36
  245. package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.js +0 -90
  246. package/dist/HierarchicalTrackSelectorWidget/index.d.ts +0 -4
  247. package/dist/HierarchicalTrackSelectorWidget/index.js +0 -59
  248. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +0 -244
  249. package/dist/HierarchicalTrackSelectorWidget/model.js +0 -339
  250. package/dist/HierarchicalTrackSelectorWidget/util.d.ts +0 -12
  251. package/dist/HierarchicalTrackSelectorWidget/util.js +0 -50
  252. package/dist/JB2TrackHubConnection/addRelativeUris.d.ts +0 -1
  253. package/dist/JB2TrackHubConnection/addRelativeUris.js +0 -15
  254. package/dist/JB2TrackHubConnection/configSchema.d.ts +0 -27
  255. package/dist/JB2TrackHubConnection/configSchema.js +0 -34
  256. package/dist/JB2TrackHubConnection/doConnect.d.ts +0 -5
  257. package/dist/JB2TrackHubConnection/doConnect.js +0 -34
  258. package/dist/JB2TrackHubConnection/index.d.ts +0 -2
  259. package/dist/JB2TrackHubConnection/index.js +0 -21
  260. package/dist/JB2TrackHubConnection/model.d.ts +0 -75
  261. package/dist/JB2TrackHubConnection/model.js +0 -56
  262. package/dist/JB2TrackHubConnection/util.d.ts +0 -22
  263. package/dist/JB2TrackHubConnection/util.js +0 -41
  264. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +0 -6
  265. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.js +0 -65
  266. package/dist/PluginStoreWidget/components/DeletePluginDialog.d.ts +0 -4
  267. package/dist/PluginStoreWidget/components/DeletePluginDialog.js +0 -17
  268. package/dist/PluginStoreWidget/components/InstalledPlugin.d.ts +0 -7
  269. package/dist/PluginStoreWidget/components/InstalledPlugin.js +0 -92
  270. package/dist/PluginStoreWidget/components/InstalledPluginsList.d.ts +0 -7
  271. package/dist/PluginStoreWidget/components/InstalledPluginsList.js +0 -18
  272. package/dist/PluginStoreWidget/components/PluginCard.d.ts +0 -7
  273. package/dist/PluginStoreWidget/components/PluginCard.js +0 -58
  274. package/dist/PluginStoreWidget/components/PluginStoreWidget.d.ts +0 -5
  275. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +0 -104
  276. package/dist/PluginStoreWidget/components/util.d.ts +0 -6
  277. package/dist/PluginStoreWidget/components/util.js +0 -35
  278. package/dist/PluginStoreWidget/index.d.ts +0 -2
  279. package/dist/PluginStoreWidget/index.js +0 -55
  280. package/dist/PluginStoreWidget/model.d.ts +0 -13
  281. package/dist/PluginStoreWidget/model.js +0 -22
  282. package/dist/UCSCTrackHubConnection/configSchema.d.ts +0 -27
  283. package/dist/UCSCTrackHubConnection/configSchema.js +0 -34
  284. package/dist/UCSCTrackHubConnection/doConnect.d.ts +0 -5
  285. package/dist/UCSCTrackHubConnection/doConnect.js +0 -152
  286. package/dist/UCSCTrackHubConnection/index.d.ts +0 -2
  287. package/dist/UCSCTrackHubConnection/index.js +0 -21
  288. package/dist/UCSCTrackHubConnection/model.d.ts +0 -75
  289. package/dist/UCSCTrackHubConnection/model.js +0 -56
  290. package/dist/UCSCTrackHubConnection/ucscAssemblies.d.ts +0 -2
  291. package/dist/UCSCTrackHubConnection/ucscAssemblies.js +0 -199
  292. package/dist/UCSCTrackHubConnection/ucscTrackHub.d.ts +0 -182
  293. package/dist/UCSCTrackHubConnection/ucscTrackHub.js +0 -162
  294. package/dist/UCSCTrackHubConnection/util.d.ts +0 -22
  295. package/dist/UCSCTrackHubConnection/util.js +0 -41
  296. package/dist/index.d.ts +0 -20
  297. package/dist/index.js +0 -68
  298. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.d.ts +0 -11
  299. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +0 -9
  300. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +0 -36
@@ -1,25 +1,31 @@
1
1
  import { getConf, readConfObject } from '@jbrowse/core/configuration';
2
2
  import { dedupe, getSession, localStorageGetItem, localStorageSetItem, notEmpty, } from '@jbrowse/core/util';
3
3
  import { ElementId } from '@jbrowse/core/util/types/mst';
4
+ import { addDisposer, types } from '@jbrowse/mobx-state-tree';
4
5
  import { autorun, observable } from 'mobx';
5
- import { addDisposer, types } from 'mobx-state-tree';
6
- import { facetedStateTreeF } from './facetedModel';
7
- import { filterTracks } from './filterTracks';
8
- import { generateHierarchy } from './generateHierarchy';
9
- import { findSubCategories, findTopLevelCategories } from './util';
6
+ import { facetedStateTreeF } from "./facetedModel.js";
7
+ import { filterTracks } from "./filterTracks.js";
8
+ import { generateHierarchy } from "./generateHierarchy.js";
9
+ import { findSubCategories, findTopLevelCategories } from "./util.js";
10
+ const defaultItemHeight = 22;
11
+ const categoryItemHeight = 40;
12
+ const overscan = 20;
10
13
  function keyConfigPostFix() {
11
14
  return typeof window !== 'undefined'
12
15
  ? [
13
16
  window.location.pathname,
14
17
  new URLSearchParams(window.location.search).get('config'),
15
18
  ]
16
- .filter(f => !!f)
19
+ .filter(Boolean)
17
20
  .join('-')
18
21
  : 'empty';
19
22
  }
23
+ export function getItemHeight(item) {
24
+ return item.type === 'category' ? categoryItemHeight : defaultItemHeight;
25
+ }
20
26
  function recentlyUsedK(assemblyNames) {
21
27
  return ['recentlyUsedTracks', keyConfigPostFix(), assemblyNames.join(',')]
22
- .filter(f => !!f)
28
+ .filter(Boolean)
23
29
  .join('-');
24
30
  }
25
31
  function favoritesK() {
@@ -72,8 +78,7 @@ export default function stateTreeFactory(pluginManager) {
72
78
  }))
73
79
  .views(self => ({
74
80
  get shownTrackIds() {
75
- var _a, _b;
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));
81
+ return new Set(self.view?.tracks?.map((t) => t.configuration.trackId));
77
82
  },
78
83
  get selectionSet() {
79
84
  return new Set(self.selection);
@@ -85,8 +90,7 @@ export default function stateTreeFactory(pluginManager) {
85
90
  return new Set(self.recentlyUsed);
86
91
  },
87
92
  get assemblyNames() {
88
- var _a;
89
- return ((_a = self.view) === null || _a === void 0 ? void 0 : _a.assemblyNames) || [];
93
+ return self.view?.assemblyNames || [];
90
94
  },
91
95
  }))
92
96
  .actions(self => ({
@@ -178,7 +182,7 @@ export default function stateTreeFactory(pluginManager) {
178
182
  getRefSeqTrackConf(assemblyName) {
179
183
  const { assemblyManager } = getSession(self);
180
184
  const assembly = assemblyManager.get(assemblyName);
181
- const trackConf = assembly === null || assembly === void 0 ? void 0 : assembly.configuration.sequence;
185
+ const trackConf = assembly?.configuration.sequence;
182
186
  const viewType = pluginManager.getViewType(self.view.type);
183
187
  if (trackConf) {
184
188
  for (const display of trackConf.displays) {
@@ -192,12 +196,12 @@ export default function stateTreeFactory(pluginManager) {
192
196
  }))
193
197
  .views(self => ({
194
198
  get activeSortTrackNames() {
195
- var _a;
196
- return ((_a = self.sortTrackNames) !== null && _a !== void 0 ? _a : getConf(getSession(self), ['hierarchical', 'sort', 'trackNames']));
199
+ return (self.sortTrackNames ??
200
+ getConf(getSession(self), ['hierarchical', 'sort', 'trackNames']));
197
201
  },
198
202
  get activeSortCategories() {
199
- var _a;
200
- return ((_a = self.sortCategories) !== null && _a !== void 0 ? _a : getConf(getSession(self), ['hierarchical', 'sort', 'categories']));
203
+ return (self.sortCategories ??
204
+ getConf(getSession(self), ['hierarchical', 'sort', 'categories']));
201
205
  },
202
206
  get configAndSessionTrackConfigurations() {
203
207
  return [
@@ -252,14 +256,13 @@ export default function stateTreeFactory(pluginManager) {
252
256
  return {
253
257
  name: 'Root',
254
258
  id: 'Root',
255
- isOpenByDefault: true,
256
259
  type: 'category',
257
260
  children: self.allTracks.map(s => ({
258
261
  name: s.group,
259
262
  id: s.group,
260
263
  type: 'category',
261
- isOpenByDefault: !self.collapsed.get(s.group),
262
264
  menuItems: s.menuItems,
265
+ nestingLevel: 0,
263
266
  children: generateHierarchy({
264
267
  model: self,
265
268
  trackConfs: s.tracks,
@@ -269,6 +272,70 @@ export default function stateTreeFactory(pluginManager) {
269
272
  })),
270
273
  };
271
274
  },
275
+ }))
276
+ .views(self => ({
277
+ get flattenedItems() {
278
+ const flatten = (items, result = []) => {
279
+ for (const item of items) {
280
+ result.push(item);
281
+ if (item.children.length > 0 && !self.collapsed.get(item.id)) {
282
+ flatten(item.children, result);
283
+ }
284
+ }
285
+ return result;
286
+ };
287
+ return flatten(self.hierarchy.children);
288
+ },
289
+ get flattenedItemOffsets() {
290
+ const offsets = [];
291
+ let cumulativeHeight = 0;
292
+ for (let i = 0, l = this.flattenedItems.length; i < l; i++) {
293
+ offsets.push(cumulativeHeight);
294
+ cumulativeHeight += getItemHeight(this.flattenedItems[i]);
295
+ }
296
+ return { cumulativeHeight, offsets };
297
+ },
298
+ }))
299
+ .views(self => ({
300
+ itemOffsets(height, scrollTop) {
301
+ const { flattenedItemOffsets } = self;
302
+ const { cumulativeHeight, offsets } = flattenedItemOffsets;
303
+ if (offsets.length === 0) {
304
+ return {
305
+ startIndex: 0,
306
+ endIndex: 0,
307
+ totalHeight: 0,
308
+ itemOffsets: offsets,
309
+ };
310
+ }
311
+ const findIndexAtOffset = (offset) => {
312
+ let low = 0;
313
+ let high = offsets.length - 1;
314
+ while (low <= high) {
315
+ const mid = Math.floor((low + high) / 2);
316
+ if (offsets[mid] <= offset &&
317
+ (mid === offsets.length - 1 || offsets[mid + 1] > offset)) {
318
+ return mid;
319
+ }
320
+ else if (offsets[mid] < offset) {
321
+ low = mid + 1;
322
+ }
323
+ else {
324
+ high = mid - 1;
325
+ }
326
+ }
327
+ return 0;
328
+ };
329
+ const start = Math.max(0, findIndexAtOffset(scrollTop) - overscan);
330
+ const targetHeight = scrollTop + height + overscan * defaultItemHeight;
331
+ const end = Math.min(offsets.length - 1, findIndexAtOffset(targetHeight) + overscan);
332
+ return {
333
+ startIndex: start,
334
+ endIndex: end,
335
+ totalHeight: cumulativeHeight,
336
+ itemOffsets: offsets,
337
+ };
338
+ },
272
339
  }))
273
340
  .actions(self => ({
274
341
  collapseSubCategories() {
@@ -292,12 +359,12 @@ export default function stateTreeFactory(pluginManager) {
292
359
  }))
293
360
  .views(self => ({
294
361
  get hasAnySubcategories() {
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; }));
362
+ return self.allTracks.some(group => group.tracks.some(t => readConfObject(t, 'category')?.length > 1));
296
363
  },
297
364
  }))
298
365
  .actions(self => ({
299
366
  afterAttach() {
300
- addDisposer(self, autorun(() => {
367
+ addDisposer(self, autorun(function trackSelectorInitAutorun() {
301
368
  const { assemblyNames, view } = self;
302
369
  self.setRecentlyUsed(localStorageGetJSON(recentlyUsedK(assemblyNames), []));
303
370
  if (view) {
@@ -320,8 +387,8 @@ export default function stateTreeFactory(pluginManager) {
320
387
  self.setCollapsedCategories(lc);
321
388
  }
322
389
  }
323
- }));
324
- addDisposer(self, autorun(() => {
390
+ }, { name: 'TrackSelectorInit' }));
391
+ addDisposer(self, autorun(function trackSelectorLocalStorageAutorun() {
325
392
  const { sortTrackNames, sortCategories, favorites, recentlyUsed, assemblyNames, collapsed, view, } = self;
326
393
  localStorageSetJSON(recentlyUsedK(assemblyNames), recentlyUsed);
327
394
  localStorageSetJSON(favoritesK(), favorites);
@@ -330,7 +397,7 @@ export default function stateTreeFactory(pluginManager) {
330
397
  if (view) {
331
398
  localStorageSetJSON(collapsedK(assemblyNames, view.type), collapsed);
332
399
  }
333
- }));
400
+ }, { name: 'TrackSelectorLocalStorage' }));
334
401
  },
335
402
  }));
336
403
  }
@@ -0,0 +1,2 @@
1
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ export declare function sortConfs(confs: AnyConfigurationModel[], sortNames: boolean, sortCategories: boolean): any[];
@@ -0,0 +1,28 @@
1
+ import { readConfObject } from '@jbrowse/core/configuration';
2
+ export function sortConfs(confs, sortNames, sortCategories) {
3
+ const ret = confs.map(c => [
4
+ c,
5
+ readConfObject(c, 'name'),
6
+ readConfObject(c, 'category')?.[0] || '',
7
+ readConfObject(c, 'category')?.[1] || '',
8
+ readConfObject(c, 'category')?.[2] || '',
9
+ ]);
10
+ if (sortNames) {
11
+ ret.sort((a, b) => a[1].localeCompare(b[1]));
12
+ }
13
+ if (sortCategories) {
14
+ ret.sort((a, b) => {
15
+ if (a[2] !== b[2]) {
16
+ return a[2].localeCompare(b[2]);
17
+ }
18
+ else if (a[3] !== b[3]) {
19
+ return a[3].localeCompare(b[3]);
20
+ }
21
+ else if (a[4] !== b[4]) {
22
+ return a[4].localeCompare(b[4]);
23
+ }
24
+ return 0;
25
+ });
26
+ }
27
+ return ret.map(a => a[0]);
28
+ }
@@ -0,0 +1,23 @@
1
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ export interface TreeTrackNode {
3
+ name: string;
4
+ id: string;
5
+ trackId: string;
6
+ conf: AnyConfigurationModel;
7
+ children: TreeNode[];
8
+ nestingLevel: number;
9
+ type: 'track';
10
+ }
11
+ export interface TreeCategoryNode {
12
+ name: string;
13
+ id: string;
14
+ children: TreeNode[];
15
+ nestingLevel: number;
16
+ type: 'category';
17
+ }
18
+ export type TreeNode = TreeTrackNode | TreeCategoryNode;
19
+ export interface MinimalModel {
20
+ filterText: string;
21
+ activeSortTrackNames: boolean;
22
+ activeSortCategories: boolean;
23
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -17,7 +17,7 @@ export function matches(query, conf, session) {
17
17
  const categories = (readConfObject(conf, 'category') || []);
18
18
  const queryLower = query.toLowerCase();
19
19
  return (getTrackName(conf, session).toLowerCase().includes(queryLower) ||
20
- !!categories.filter(c => c.toLowerCase().includes(queryLower)).length);
20
+ categories.some(c => c.toLowerCase().includes(queryLower)));
21
21
  }
22
22
  export function findSubCategories(obj, paths, depth = 0) {
23
23
  let hasSubs = false;
@@ -1,4 +1,4 @@
1
- declare const JB2TrackHubConnection: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
1
+ declare const JB2TrackHubConnection: import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
2
2
  configJsonLocation: {
3
3
  type: string;
4
4
  defaultValue: {
@@ -12,7 +12,7 @@ declare const JB2TrackHubConnection: import("@jbrowse/core/configuration/configu
12
12
  defaultValue: never[];
13
13
  description: string;
14
14
  };
15
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
15
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
16
16
  name: {
17
17
  type: string;
18
18
  defaultValue: string;
@@ -23,5 +23,5 @@ declare const JB2TrackHubConnection: import("@jbrowse/core/configuration/configu
23
23
  defaultValue: never[];
24
24
  description: string;
25
25
  };
26
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "connectionId">>, undefined>>;
26
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "connectionId">>, undefined>>;
27
27
  export default JB2TrackHubConnection;
@@ -1,10 +1,9 @@
1
1
  import { getConf } from '@jbrowse/core/configuration';
2
2
  import { getSession } from '@jbrowse/core/util';
3
3
  import { openLocation } from '@jbrowse/core/util/io';
4
- import { addRelativeUris } from './addRelativeUris';
5
- import { resolve } from './util';
4
+ import { addRelativeUris } from "./addRelativeUris.js";
5
+ import { resolve } from "./util.js";
6
6
  export async function doConnect(self) {
7
- var _a;
8
7
  const session = getSession(self);
9
8
  try {
10
9
  const configJsonLocation = getConf(self, 'configJsonLocation');
@@ -26,6 +25,6 @@ export async function doConnect(self) {
26
25
  catch (e) {
27
26
  console.error(e);
28
27
  session.notifyError(`${getConf(self, 'name')}: "${e}"`, e);
29
- (_a = session.breakConnection) === null || _a === void 0 ? void 0 : _a.call(session, self.configuration);
28
+ session.breakConnection?.(self.configuration);
30
29
  }
31
30
  }
@@ -1,6 +1,6 @@
1
1
  import { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
2
- import configSchema from './configSchema';
3
- import stateModelFactory from './model';
2
+ import configSchema from "./configSchema.js";
3
+ import stateModelFactory from "./model.js";
4
4
  export default function JB2TrackHubConnectionF(pluginManager) {
5
5
  pluginManager.addConnectionType(() => {
6
6
  return new ConnectionType({
@@ -1,8 +1,8 @@
1
1
  import type PluginManager from '@jbrowse/core/PluginManager';
2
- export default function JB2TrackHubConnection(pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
3
- name: import("mobx-state-tree").ISimpleType<string>;
4
- tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>;
5
- configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
+ export default function JB2TrackHubConnection(pluginManager: PluginManager): import("@jbrowse/mobx-state-tree").IModelType<{
3
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
4
+ tracks: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyModelType>;
5
+ configuration: import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
6
6
  name: {
7
7
  type: string;
8
8
  defaultValue: string;
@@ -13,9 +13,9 @@ export default function JB2TrackHubConnection(pluginManager: PluginManager): imp
13
13
  defaultValue: never[];
14
14
  description: string;
15
15
  };
16
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "connectionId">>;
16
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, "connectionId">>;
17
17
  } & {
18
- configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
18
+ configuration: import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
19
19
  configJsonLocation: {
20
20
  type: string;
21
21
  defaultValue: {
@@ -29,7 +29,7 @@ export default function JB2TrackHubConnection(pluginManager: PluginManager): imp
29
29
  defaultValue: never[];
30
30
  description: string;
31
31
  };
32
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
32
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
33
33
  name: {
34
34
  type: string;
35
35
  defaultValue: string;
@@ -40,36 +40,28 @@ export default function JB2TrackHubConnection(pluginManager: PluginManager): imp
40
40
  defaultValue: never[];
41
41
  description: string;
42
42
  };
43
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "connectionId">>, undefined>>;
44
- type: import("mobx-state-tree").ISimpleType<"JB2TrackHubConnection">;
43
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, "connectionId">>, undefined>>;
44
+ type: import("@jbrowse/mobx-state-tree").ISimpleType<"JB2TrackHubConnection">;
45
45
  }, {
46
46
  connect(_arg: import("@jbrowse/core/configuration").AnyConfigurationModel): void;
47
47
  } & {
48
48
  afterAttach(): void;
49
- addTrackConf(trackConf: ({
49
+ addTrackConf(trackConf: Record<string, unknown> | ({
50
50
  [x: string]: any;
51
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
51
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
52
52
  setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
53
53
  [x: string]: any;
54
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
55
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
56
- [x: string]: any;
57
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
58
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
59
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>) | Record<string, unknown>): any;
60
- addTrackConfs(trackConfs: (({
54
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & any & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
55
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>)): any;
56
+ addTrackConfs(trackConfs: (Record<string, unknown> | ({
61
57
  [x: string]: any;
62
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
58
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
63
59
  setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
64
60
  [x: string]: any;
65
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
66
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
67
- [x: string]: any;
68
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
69
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
70
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>) | Record<string, unknown>)[]): void;
61
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & any & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
62
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>))[]): void;
71
63
  setTrackConfs(trackConfs: import("@jbrowse/core/configuration").AnyConfigurationModel[]): void;
72
64
  clear(): void;
73
65
  } & {
74
66
  connect(): Promise<void>;
75
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
67
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
@@ -1,7 +1,7 @@
1
1
  import { ConfigurationReference } from '@jbrowse/core/configuration';
2
2
  import { BaseConnectionModelFactory } from '@jbrowse/core/pluggableElementTypes/models';
3
- import { types } from 'mobx-state-tree';
4
- import configSchema from './configSchema';
3
+ import { types } from '@jbrowse/mobx-state-tree';
4
+ import configSchema from "./configSchema.js";
5
5
  export default function JB2TrackHubConnection(pluginManager) {
6
6
  return types
7
7
  .compose('JB2TrackHubConnection', BaseConnectionModelFactory(pluginManager), types.model({
@@ -10,7 +10,7 @@ export default function JB2TrackHubConnection(pluginManager) {
10
10
  }))
11
11
  .actions(self => ({
12
12
  async connect() {
13
- const { doConnect } = await import('./doConnect');
13
+ const { doConnect } = await import("./doConnect.js");
14
14
  doConnect(self);
15
15
  },
16
16
  }));
@@ -1,4 +1,4 @@
1
- import type { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model.ts';
2
2
  declare const AddCustomPluginDialog: ({ onClose, model, }: {
3
3
  onClose: () => void;
4
4
  model: PluginStoreModel;
@@ -2,11 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
3
  import { Dialog } from '@jbrowse/core/ui';
4
4
  import { getSession } from '@jbrowse/core/util';
5
+ import { cx, makeStyles } from '@jbrowse/core/util/tss-react';
5
6
  import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
6
7
  import { Button, Collapse, DialogActions, DialogContent, DialogContentText, TextField, } from '@mui/material';
7
8
  import IconButton from '@mui/material/IconButton';
8
9
  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',
@@ -23,8 +23,8 @@ const useStyles = makeStyles()(theme => ({
23
23
  transform: 'rotate(180deg)',
24
24
  },
25
25
  }));
26
- const AddCustomPluginDialog = observer(function ({ onClose, model, }) {
27
- const { classes, cx } = useStyles();
26
+ const AddCustomPluginDialog = observer(function AddCustomPluginDialog({ onClose, model, }) {
27
+ const { classes } = useStyles();
28
28
  const [umdPluginName, setUMDPluginName] = useState('');
29
29
  const [umdPluginUrl, setUMDPluginUrl] = useState('');
30
30
  const [esmPluginUrl, setESMPluginUrl] = useState('');
@@ -1,4 +1,4 @@
1
- import type { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model.ts';
2
2
  import type { BasePlugin } from '@jbrowse/core/util/types';
3
3
  declare const InstalledPlugin: ({ plugin, model, }: {
4
4
  plugin: BasePlugin;
@@ -1,14 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { lazy } from 'react';
3
3
  import { getEnv, getSession } from '@jbrowse/core/util';
4
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
4
5
  import { isSessionWithSessionPlugins } from '@jbrowse/core/util/types';
5
6
  import DeleteIcon from '@mui/icons-material/Delete';
6
7
  import LockIcon from '@mui/icons-material/Lock';
7
8
  import { IconButton, ListItem, Tooltip, Typography } from '@mui/material';
8
9
  import { observer } from 'mobx-react';
9
- import { makeStyles } from 'tss-react/mui';
10
- import { isSessionPlugin } from './util';
11
- const DeletePluginDialog = lazy(() => import('./DeletePluginDialog'));
10
+ import { isSessionPlugin } from "./util.js";
11
+ const DeletePluginDialog = lazy(() => import("./DeletePluginDialog.js"));
12
12
  const useStyles = makeStyles()(() => ({
13
13
  iconMargin: {
14
14
  marginRight: '0.5rem',
@@ -18,7 +18,7 @@ function LockedPluginIconButton() {
18
18
  const { classes } = useStyles();
19
19
  return (_jsx(Tooltip, { className: classes.iconMargin, title: "This plugin was installed by an administrator, you cannot remove it.", children: _jsx("span", { children: _jsx(IconButton, { disabled: true, children: _jsx(LockIcon, {}) }) }) }));
20
20
  }
21
- const UninstallPluginIconButton = observer(function ({ plugin, model, }) {
21
+ const UninstallPluginIconButton = observer(function UninstallPluginIconButton({ plugin, model, }) {
22
22
  const { classes } = useStyles();
23
23
  const { pluginManager } = getEnv(model);
24
24
  const session = getSession(model);
@@ -44,7 +44,7 @@ const UninstallPluginIconButton = observer(function ({ plugin, model, }) {
44
44
  ]);
45
45
  }, children: _jsx(DeleteIcon, {}) }) }));
46
46
  });
47
- const InstalledPlugin = observer(function ({ plugin, model, }) {
47
+ const InstalledPlugin = observer(function InstalledPlugin({ plugin, model, }) {
48
48
  const session = getSession(model);
49
49
  const { adminMode } = session;
50
50
  return (_jsxs(ListItem, { children: [adminMode || isSessionPlugin(plugin, session) ? (_jsx(UninstallPluginIconButton, { plugin: plugin, model: model })) : (_jsx(LockedPluginIconButton, {})), _jsx(Typography, { children: [plugin.name, plugin.version ? `(v${plugin.version})` : '']
@@ -1,4 +1,4 @@
1
- import type { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model.ts';
2
2
  import type PluginManager from '@jbrowse/core/PluginManager';
3
3
  declare const InstalledPluginsList: ({ pluginManager, model, }: {
4
4
  pluginManager: PluginManager;
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { List, Typography } from '@mui/material';
3
3
  import { observer } from 'mobx-react';
4
- import InstalledPlugin from './InstalledPlugin';
4
+ import InstalledPlugin from "./InstalledPlugin.js";
5
5
  const InstalledPluginsList = observer(function InstalledPluginsList({ pluginManager, model, }) {
6
6
  const { plugins } = pluginManager;
7
7
  const { filterText } = model;
8
- const externalPlugins = plugins.filter(p => { var _a; return !((_a = pluginManager.pluginMetadata[p.name]) === null || _a === void 0 ? void 0 : _a.isCore); });
8
+ const externalPlugins = plugins.filter(p => !pluginManager.pluginMetadata[p.name]?.isCore);
9
9
  return (_jsx(List, { children: externalPlugins.length > 0 ? (externalPlugins
10
10
  .filter(p => p.name.toLowerCase().includes(filterText.toLowerCase()))
11
11
  .map(p => _jsx(InstalledPlugin, { plugin: p, model: model }, p.name))) : (_jsx(Typography, { children: "No plugins currently installed" })) }));
@@ -1,4 +1,4 @@
1
- import type { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model.ts';
2
2
  import type { JBrowsePlugin } from '@jbrowse/core/util/types';
3
3
  declare const PluginCard: ({ plugin, model, }: {
4
4
  plugin: JBrowsePlugin;
@@ -2,21 +2,17 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
3
  import { ExternalLink } from '@jbrowse/core/ui';
4
4
  import { getEnv, getSession } from '@jbrowse/core/util';
5
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
5
6
  import { isSessionWithSessionPlugins } from '@jbrowse/core/util/types';
6
7
  import AddIcon from '@mui/icons-material/Add';
7
8
  import CheckIcon from '@mui/icons-material/Check';
8
9
  import PersonIcon from '@mui/icons-material/Person';
9
10
  import { Button, Card, CardActions, CardContent, Typography, } from '@mui/material';
10
11
  import { observer } from 'mobx-react';
11
- import { makeStyles } from 'tss-react/mui';
12
12
  const useStyles = makeStyles()({
13
13
  card: {
14
14
  margin: '0.5em',
15
15
  },
16
- icon: {
17
- marginLeft: '0.5em',
18
- marginRight: '0.5em',
19
- },
20
16
  bold: {
21
17
  fontWeight: 600,
22
18
  },
@@ -1,4 +1,4 @@
1
- import type { PluginStoreModel } from '../model';
1
+ import type { PluginStoreModel } from '../model.ts';
2
2
  declare const PluginStoreWidget: ({ model, }: {
3
3
  model: PluginStoreModel;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,18 +1,18 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { lazy } from 'react';
2
+ import { lazy, useEffect, useState, useTransition } from 'react';
3
3
  import { LoadingEllipses } from '@jbrowse/core/ui';
4
4
  import { getSession, isElectron } from '@jbrowse/core/util';
5
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
6
+ import { getEnv } from '@jbrowse/mobx-state-tree';
5
7
  import ClearIcon from '@mui/icons-material/Clear';
6
8
  import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
7
9
  import InfoOutlinedIcon from '@mui/icons-material/InfoOutlined';
8
10
  import { Accordion, AccordionSummary, Button, IconButton, InputAdornment, TextField, Typography, } from '@mui/material';
9
11
  import { observer } from 'mobx-react';
10
- import { getEnv } from 'mobx-state-tree';
11
- import { makeStyles } from 'tss-react/mui';
12
- import InstalledPluginsList from './InstalledPluginsList';
13
- import PluginCard from './PluginCard';
14
- import { useFetchPlugins } from './util';
15
- const AddCustomPluginDialog = lazy(() => import('./AddCustomPluginDialog'));
12
+ import InstalledPluginsList from "./InstalledPluginsList.js";
13
+ import PluginCard from "./PluginCard.js";
14
+ import { useFetchPlugins } from "./util.js";
15
+ const AddCustomPluginDialog = lazy(() => import("./AddCustomPluginDialog.js"));
16
16
  const useStyles = makeStyles()(theme => ({
17
17
  expandIcon: {
18
18
  color: theme.palette.tertiary.contrastText,
@@ -35,13 +35,20 @@ const useStyles = makeStyles()(theme => ({
35
35
  margin: '1em',
36
36
  },
37
37
  }));
38
- const PluginStoreWidget = observer(function ({ model, }) {
38
+ const PluginStoreWidget = observer(function PluginStoreWidget({ model, }) {
39
39
  const { classes } = useStyles();
40
40
  const { plugins, error } = useFetchPlugins();
41
41
  const { filterText } = model;
42
+ const [localFilterText, setLocalFilterText] = useState(filterText);
43
+ const [, startTransition] = useTransition();
42
44
  const session = getSession(model);
43
45
  const { adminMode } = session;
44
46
  const { pluginManager } = getEnv(model);
47
+ useEffect(() => {
48
+ if (filterText === '') {
49
+ setLocalFilterText('');
50
+ }
51
+ }, [filterText]);
45
52
  return (_jsxs("div", { children: [adminMode && (_jsxs(_Fragment, { children: [!isElectron && (_jsxs("div", { className: classes.adminBadge, children: [_jsx(InfoOutlinedIcon, { className: classes.mr }), _jsxs(Typography, { children: ["You are using the ", _jsx("code", { children: "admin-server" }), ". Any changes you make will be saved to your configuration file. You also have the ability to add custom plugins that are not in the store."] })] })), _jsx(Button, { className: classes.customPluginButton, variant: "contained", onClick: () => {
46
53
  session.queueDialog(onClose => [
47
54
  AddCustomPluginDialog,
@@ -50,11 +57,16 @@ const PluginStoreWidget = observer(function ({ model, }) {
50
57
  onClose,
51
58
  },
52
59
  ]);
53
- }, children: "Add custom plugin" })] })), _jsx(TextField, { label: "Filter plugins", value: filterText, onChange: event => {
54
- model.setFilterText(event.target.value);
60
+ }, children: "Add custom plugin" })] })), _jsx(TextField, { label: "Filter plugins", value: localFilterText, onChange: event => {
61
+ const value = event.target.value;
62
+ setLocalFilterText(value);
63
+ startTransition(() => {
64
+ model.setFilterText(value);
65
+ });
55
66
  }, fullWidth: true, slotProps: {
56
67
  input: {
57
68
  endAdornment: (_jsx(InputAdornment, { position: "end", children: _jsx(IconButton, { onClick: () => {
69
+ setLocalFilterText('');
58
70
  model.clearFilterText();
59
71
  }, children: _jsx(ClearIcon, {}) }) })),
60
72
  },