@jbrowse/plugin-data-management 2.5.0 → 2.6.2

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 (382) hide show
  1. package/dist/AddConnectionWidget/components/AddConnectionWidget.d.ts +2 -1
  2. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +0 -1
  3. package/dist/AddConnectionWidget/components/ConfigureConnection.d.ts +2 -1
  4. package/dist/AddConnectionWidget/components/ConfigureConnection.js +0 -1
  5. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -1
  6. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +0 -1
  7. package/dist/AddConnectionWidget/index.js +0 -1
  8. package/dist/AddConnectionWidget/model.js +0 -1
  9. package/dist/AddTrackWidget/components/AddTrackWidget.d.ts +2 -1
  10. package/dist/AddTrackWidget/components/AddTrackWidget.js +0 -1
  11. package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +2 -1
  12. package/dist/AddTrackWidget/components/ConfirmTrack.js +0 -1
  13. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +2 -1
  14. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +1 -2
  15. package/dist/AddTrackWidget/components/PasteConfigWorkflow.d.ts +2 -1
  16. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +1 -1
  17. package/dist/AddTrackWidget/components/TextIndexingConfig.d.ts +2 -1
  18. package/dist/AddTrackWidget/components/TextIndexingConfig.js +0 -1
  19. package/dist/AddTrackWidget/components/TrackAdapterSelector.d.ts +2 -1
  20. package/dist/AddTrackWidget/components/TrackAdapterSelector.js +0 -1
  21. package/dist/AddTrackWidget/components/TrackSourceSelect.d.ts +2 -1
  22. package/dist/AddTrackWidget/components/TrackSourceSelect.js +0 -1
  23. package/dist/AddTrackWidget/components/TrackTypeSelector.d.ts +2 -1
  24. package/dist/AddTrackWidget/components/TrackTypeSelector.js +0 -1
  25. package/dist/AddTrackWidget/index.js +0 -1
  26. package/dist/AddTrackWidget/model.js +0 -1
  27. package/dist/AssemblyManager/AssemblyAddForm.d.ts +2 -1
  28. package/dist/AssemblyManager/AssemblyAddForm.js +0 -1
  29. package/dist/AssemblyManager/AssemblyEditor.d.ts +2 -1
  30. package/dist/AssemblyManager/AssemblyEditor.js +0 -1
  31. package/dist/AssemblyManager/AssemblyManager.d.ts +2 -1
  32. package/dist/AssemblyManager/AssemblyManager.js +0 -1
  33. package/dist/AssemblyManager/AssemblyTable.d.ts +2 -1
  34. package/dist/AssemblyManager/AssemblyTable.js +0 -1
  35. package/dist/AssemblyManager/index.js +0 -1
  36. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -1
  37. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +0 -1
  38. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +2 -1
  39. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +4 -10
  40. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -1
  41. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +0 -1
  42. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +8 -8
  43. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +6 -11
  44. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +2 -1
  45. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +0 -1
  46. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +2 -1
  47. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +0 -1
  48. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +3 -3
  49. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +27 -23
  50. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +2 -1
  51. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +0 -1
  52. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +2 -1
  53. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +0 -1
  54. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +2 -1
  55. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +0 -1
  56. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -1
  57. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +32 -32
  58. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.js +0 -1
  59. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +3 -3
  60. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +36 -42
  61. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +3 -3
  62. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +2 -3
  63. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +2 -1
  64. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +0 -1
  65. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +2 -1
  66. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +0 -1
  67. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +2 -1
  68. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +0 -1
  69. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +2 -1
  70. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +0 -1
  71. package/dist/HierarchicalTrackSelectorWidget/components/util.js +0 -1
  72. package/dist/HierarchicalTrackSelectorWidget/configSchema.js +0 -1
  73. package/dist/HierarchicalTrackSelectorWidget/index.js +0 -1
  74. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +69 -5
  75. package/dist/HierarchicalTrackSelectorWidget/model.js +100 -54
  76. package/dist/PluginStoreWidget/components/CustomPluginForm.d.ts +2 -1
  77. package/dist/PluginStoreWidget/components/CustomPluginForm.js +0 -1
  78. package/dist/PluginStoreWidget/components/InstalledPlugin.d.ts +2 -1
  79. package/dist/PluginStoreWidget/components/InstalledPlugin.js +0 -1
  80. package/dist/PluginStoreWidget/components/InstalledPluginsList.d.ts +2 -1
  81. package/dist/PluginStoreWidget/components/InstalledPluginsList.js +0 -1
  82. package/dist/PluginStoreWidget/components/PluginCard.d.ts +2 -1
  83. package/dist/PluginStoreWidget/components/PluginCard.js +0 -1
  84. package/dist/PluginStoreWidget/components/PluginStoreWidget.d.ts +2 -1
  85. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +0 -1
  86. package/dist/PluginStoreWidget/index.js +0 -1
  87. package/dist/PluginStoreWidget/model.js +0 -1
  88. package/dist/SetDefaultSession/SetDefaultSession.d.ts +2 -1
  89. package/dist/SetDefaultSession/SetDefaultSession.js +0 -1
  90. package/dist/SetDefaultSession/index.js +0 -1
  91. package/dist/index.d.ts +4 -4
  92. package/dist/index.js +0 -1
  93. package/dist/ucsc-trackhub/configSchema.js +0 -1
  94. package/dist/ucsc-trackhub/index.js +0 -1
  95. package/dist/ucsc-trackhub/model.d.ts +12 -0
  96. package/dist/ucsc-trackhub/model.js +45 -13
  97. package/dist/ucsc-trackhub/ucscAssemblies.js +0 -1
  98. package/dist/ucsc-trackhub/ucscTrackHub.js +0 -1
  99. package/esm/AddConnectionWidget/components/AddConnectionWidget.d.ts +2 -1
  100. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +0 -1
  101. package/esm/AddConnectionWidget/components/ConfigureConnection.d.ts +2 -1
  102. package/esm/AddConnectionWidget/components/ConfigureConnection.js +0 -1
  103. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -1
  104. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +0 -1
  105. package/esm/AddConnectionWidget/index.js +0 -1
  106. package/esm/AddConnectionWidget/model.js +0 -1
  107. package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +2 -1
  108. package/esm/AddTrackWidget/components/AddTrackWidget.js +0 -1
  109. package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +2 -1
  110. package/esm/AddTrackWidget/components/ConfirmTrack.js +0 -1
  111. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +2 -1
  112. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +1 -2
  113. package/esm/AddTrackWidget/components/PasteConfigWorkflow.d.ts +2 -1
  114. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +1 -1
  115. package/esm/AddTrackWidget/components/TextIndexingConfig.d.ts +2 -1
  116. package/esm/AddTrackWidget/components/TextIndexingConfig.js +0 -1
  117. package/esm/AddTrackWidget/components/TrackAdapterSelector.d.ts +2 -1
  118. package/esm/AddTrackWidget/components/TrackAdapterSelector.js +0 -1
  119. package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +2 -1
  120. package/esm/AddTrackWidget/components/TrackSourceSelect.js +0 -1
  121. package/esm/AddTrackWidget/components/TrackTypeSelector.d.ts +2 -1
  122. package/esm/AddTrackWidget/components/TrackTypeSelector.js +0 -1
  123. package/esm/AddTrackWidget/index.js +0 -1
  124. package/esm/AddTrackWidget/model.js +0 -1
  125. package/esm/AssemblyManager/AssemblyAddForm.d.ts +2 -1
  126. package/esm/AssemblyManager/AssemblyAddForm.js +0 -1
  127. package/esm/AssemblyManager/AssemblyEditor.d.ts +2 -1
  128. package/esm/AssemblyManager/AssemblyEditor.js +0 -1
  129. package/esm/AssemblyManager/AssemblyManager.d.ts +2 -1
  130. package/esm/AssemblyManager/AssemblyManager.js +0 -1
  131. package/esm/AssemblyManager/AssemblyTable.d.ts +2 -1
  132. package/esm/AssemblyManager/AssemblyTable.js +0 -1
  133. package/esm/AssemblyManager/index.js +0 -1
  134. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -1
  135. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +0 -1
  136. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +2 -1
  137. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +4 -10
  138. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -1
  139. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +0 -1
  140. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +8 -8
  141. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +7 -12
  142. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +2 -1
  143. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +0 -1
  144. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +2 -1
  145. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +0 -1
  146. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +3 -3
  147. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +27 -23
  148. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +2 -1
  149. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +0 -1
  150. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +2 -1
  151. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +0 -1
  152. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +2 -1
  153. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +0 -1
  154. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -1
  155. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +32 -32
  156. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.js +0 -1
  157. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +3 -3
  158. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +37 -43
  159. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +3 -3
  160. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +2 -3
  161. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +2 -1
  162. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +0 -1
  163. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +2 -1
  164. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +0 -1
  165. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +2 -1
  166. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +0 -1
  167. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +2 -1
  168. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +0 -1
  169. package/esm/HierarchicalTrackSelectorWidget/components/util.js +0 -1
  170. package/esm/HierarchicalTrackSelectorWidget/configSchema.js +0 -1
  171. package/esm/HierarchicalTrackSelectorWidget/index.js +0 -1
  172. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +69 -5
  173. package/esm/HierarchicalTrackSelectorWidget/model.js +101 -55
  174. package/esm/PluginStoreWidget/components/CustomPluginForm.d.ts +2 -1
  175. package/esm/PluginStoreWidget/components/CustomPluginForm.js +0 -1
  176. package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +2 -1
  177. package/esm/PluginStoreWidget/components/InstalledPlugin.js +0 -1
  178. package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +2 -1
  179. package/esm/PluginStoreWidget/components/InstalledPluginsList.js +0 -1
  180. package/esm/PluginStoreWidget/components/PluginCard.d.ts +2 -1
  181. package/esm/PluginStoreWidget/components/PluginCard.js +0 -1
  182. package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +2 -1
  183. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +0 -1
  184. package/esm/PluginStoreWidget/index.js +0 -1
  185. package/esm/PluginStoreWidget/model.js +0 -1
  186. package/esm/SetDefaultSession/SetDefaultSession.d.ts +2 -1
  187. package/esm/SetDefaultSession/SetDefaultSession.js +0 -1
  188. package/esm/SetDefaultSession/index.js +0 -1
  189. package/esm/index.d.ts +4 -4
  190. package/esm/index.js +0 -1
  191. package/esm/ucsc-trackhub/configSchema.js +0 -1
  192. package/esm/ucsc-trackhub/index.js +0 -1
  193. package/esm/ucsc-trackhub/model.d.ts +12 -0
  194. package/esm/ucsc-trackhub/model.js +20 -11
  195. package/esm/ucsc-trackhub/ucscAssemblies.js +0 -1
  196. package/esm/ucsc-trackhub/ucscTrackHub.js +0 -1
  197. package/package.json +3 -4
  198. package/dist/AddConnectionWidget/components/AddConnectionWidget.js.map +0 -1
  199. package/dist/AddConnectionWidget/components/ConfigureConnection.js.map +0 -1
  200. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js.map +0 -1
  201. package/dist/AddConnectionWidget/index.js.map +0 -1
  202. package/dist/AddConnectionWidget/model.js.map +0 -1
  203. package/dist/AddTrackWidget/components/AddTrackWidget.js.map +0 -1
  204. package/dist/AddTrackWidget/components/ConfirmTrack.js.map +0 -1
  205. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +0 -1
  206. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js.map +0 -1
  207. package/dist/AddTrackWidget/components/TextIndexingConfig.js.map +0 -1
  208. package/dist/AddTrackWidget/components/TrackAdapterSelector.js.map +0 -1
  209. package/dist/AddTrackWidget/components/TrackSourceSelect.js.map +0 -1
  210. package/dist/AddTrackWidget/components/TrackTypeSelector.js.map +0 -1
  211. package/dist/AddTrackWidget/index.js.map +0 -1
  212. package/dist/AddTrackWidget/model.js.map +0 -1
  213. package/dist/AssemblyManager/AssemblyAddForm.js.map +0 -1
  214. package/dist/AssemblyManager/AssemblyEditor.js.map +0 -1
  215. package/dist/AssemblyManager/AssemblyManager.js.map +0 -1
  216. package/dist/AssemblyManager/AssemblyTable.js.map +0 -1
  217. package/dist/AssemblyManager/index.js.map +0 -1
  218. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js.map +0 -1
  219. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +0 -1
  220. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js.map +0 -1
  221. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js.map +0 -1
  222. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js.map +0 -1
  223. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js.map +0 -1
  224. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js.map +0 -1
  225. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +0 -1
  226. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js.map +0 -1
  227. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js.map +0 -1
  228. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +0 -1
  229. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.js.map +0 -1
  230. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +0 -1
  231. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +0 -1
  232. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +0 -1
  233. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +0 -1
  234. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +0 -1
  235. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js.map +0 -1
  236. package/dist/HierarchicalTrackSelectorWidget/components/util.js.map +0 -1
  237. package/dist/HierarchicalTrackSelectorWidget/configSchema.js.map +0 -1
  238. package/dist/HierarchicalTrackSelectorWidget/index.js.map +0 -1
  239. package/dist/HierarchicalTrackSelectorWidget/model.js.map +0 -1
  240. package/dist/PluginStoreWidget/components/CustomPluginForm.js.map +0 -1
  241. package/dist/PluginStoreWidget/components/InstalledPlugin.js.map +0 -1
  242. package/dist/PluginStoreWidget/components/InstalledPluginsList.js.map +0 -1
  243. package/dist/PluginStoreWidget/components/PluginCard.js.map +0 -1
  244. package/dist/PluginStoreWidget/components/PluginStoreWidget.js.map +0 -1
  245. package/dist/PluginStoreWidget/index.js.map +0 -1
  246. package/dist/PluginStoreWidget/model.js.map +0 -1
  247. package/dist/SetDefaultSession/SetDefaultSession.js.map +0 -1
  248. package/dist/SetDefaultSession/index.js.map +0 -1
  249. package/dist/index.js.map +0 -1
  250. package/dist/ucsc-trackhub/configSchema.js.map +0 -1
  251. package/dist/ucsc-trackhub/index.js.map +0 -1
  252. package/dist/ucsc-trackhub/model.js.map +0 -1
  253. package/dist/ucsc-trackhub/ucscAssemblies.js.map +0 -1
  254. package/dist/ucsc-trackhub/ucscTrackHub.js.map +0 -1
  255. package/esm/AddConnectionWidget/components/AddConnectionWidget.js.map +0 -1
  256. package/esm/AddConnectionWidget/components/ConfigureConnection.js.map +0 -1
  257. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js.map +0 -1
  258. package/esm/AddConnectionWidget/index.js.map +0 -1
  259. package/esm/AddConnectionWidget/model.js.map +0 -1
  260. package/esm/AddTrackWidget/components/AddTrackWidget.js.map +0 -1
  261. package/esm/AddTrackWidget/components/ConfirmTrack.js.map +0 -1
  262. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +0 -1
  263. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js.map +0 -1
  264. package/esm/AddTrackWidget/components/TextIndexingConfig.js.map +0 -1
  265. package/esm/AddTrackWidget/components/TrackAdapterSelector.js.map +0 -1
  266. package/esm/AddTrackWidget/components/TrackSourceSelect.js.map +0 -1
  267. package/esm/AddTrackWidget/components/TrackTypeSelector.js.map +0 -1
  268. package/esm/AddTrackWidget/index.js.map +0 -1
  269. package/esm/AddTrackWidget/model.js.map +0 -1
  270. package/esm/AssemblyManager/AssemblyAddForm.js.map +0 -1
  271. package/esm/AssemblyManager/AssemblyEditor.js.map +0 -1
  272. package/esm/AssemblyManager/AssemblyManager.js.map +0 -1
  273. package/esm/AssemblyManager/AssemblyTable.js.map +0 -1
  274. package/esm/AssemblyManager/index.js.map +0 -1
  275. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js.map +0 -1
  276. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +0 -1
  277. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js.map +0 -1
  278. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js.map +0 -1
  279. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js.map +0 -1
  280. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js.map +0 -1
  281. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js.map +0 -1
  282. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +0 -1
  283. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js.map +0 -1
  284. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js.map +0 -1
  285. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +0 -1
  286. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.js.map +0 -1
  287. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +0 -1
  288. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +0 -1
  289. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +0 -1
  290. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +0 -1
  291. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +0 -1
  292. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js.map +0 -1
  293. package/esm/HierarchicalTrackSelectorWidget/components/util.js.map +0 -1
  294. package/esm/HierarchicalTrackSelectorWidget/configSchema.js.map +0 -1
  295. package/esm/HierarchicalTrackSelectorWidget/index.js.map +0 -1
  296. package/esm/HierarchicalTrackSelectorWidget/model.js.map +0 -1
  297. package/esm/PluginStoreWidget/components/CustomPluginForm.js.map +0 -1
  298. package/esm/PluginStoreWidget/components/InstalledPlugin.js.map +0 -1
  299. package/esm/PluginStoreWidget/components/InstalledPluginsList.js.map +0 -1
  300. package/esm/PluginStoreWidget/components/PluginCard.js.map +0 -1
  301. package/esm/PluginStoreWidget/components/PluginStoreWidget.js.map +0 -1
  302. package/esm/PluginStoreWidget/index.js.map +0 -1
  303. package/esm/PluginStoreWidget/model.js.map +0 -1
  304. package/esm/SetDefaultSession/SetDefaultSession.js.map +0 -1
  305. package/esm/SetDefaultSession/index.js.map +0 -1
  306. package/esm/index.js.map +0 -1
  307. package/esm/ucsc-trackhub/configSchema.js.map +0 -1
  308. package/esm/ucsc-trackhub/index.js.map +0 -1
  309. package/esm/ucsc-trackhub/model.js.map +0 -1
  310. package/esm/ucsc-trackhub/ucscAssemblies.js.map +0 -1
  311. package/esm/ucsc-trackhub/ucscTrackHub.js.map +0 -1
  312. package/src/AddConnectionWidget/components/AddConnectionWidget.test.tsx +0 -139
  313. package/src/AddConnectionWidget/components/AddConnectionWidget.tsx +0 -114
  314. package/src/AddConnectionWidget/components/ConfigureConnection.tsx +0 -26
  315. package/src/AddConnectionWidget/components/ConnectionTypeSelect.tsx +0 -64
  316. package/src/AddConnectionWidget/components/__snapshots__/AddConnectionWidget.test.tsx.snap +0 -236
  317. package/src/AddConnectionWidget/index.ts +0 -19
  318. package/src/AddConnectionWidget/model.ts +0 -7
  319. package/src/AddTrackWidget/components/AddTrackWidget.test.tsx +0 -118
  320. package/src/AddTrackWidget/components/AddTrackWidget.tsx +0 -43
  321. package/src/AddTrackWidget/components/ConfirmTrack.tsx +0 -189
  322. package/src/AddTrackWidget/components/DefaultAddTrackWorkflow.tsx +0 -201
  323. package/src/AddTrackWidget/components/PasteConfigWorkflow.tsx +0 -64
  324. package/src/AddTrackWidget/components/TextIndexingConfig.tsx +0 -132
  325. package/src/AddTrackWidget/components/TrackAdapterSelector.tsx +0 -73
  326. package/src/AddTrackWidget/components/TrackSourceSelect.tsx +0 -48
  327. package/src/AddTrackWidget/components/TrackTypeSelector.tsx +0 -46
  328. package/src/AddTrackWidget/index.test.tsx +0 -247
  329. package/src/AddTrackWidget/index.ts +0 -19
  330. package/src/AddTrackWidget/model.ts +0 -179
  331. package/src/AssemblyManager/AssemblyAddForm.tsx +0 -250
  332. package/src/AssemblyManager/AssemblyEditor.tsx +0 -20
  333. package/src/AssemblyManager/AssemblyManager.test.tsx +0 -93
  334. package/src/AssemblyManager/AssemblyManager.tsx +0 -84
  335. package/src/AssemblyManager/AssemblyTable.tsx +0 -88
  336. package/src/AssemblyManager/index.ts +0 -1
  337. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalFab.tsx +0 -94
  338. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.test.tsx +0 -148
  339. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.tsx +0 -97
  340. package/src/HierarchicalTrackSelectorWidget/components/ShoppingCart.tsx +0 -73
  341. package/src/HierarchicalTrackSelectorWidget/components/__snapshots__/HierarchicalTrackSelector.test.tsx.snap +0 -200
  342. package/src/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.tsx +0 -69
  343. package/src/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.tsx +0 -53
  344. package/src/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.tsx +0 -84
  345. package/src/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.tsx +0 -97
  346. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.tsx +0 -138
  347. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.tsx +0 -29
  348. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.tsx +0 -96
  349. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.tsx +0 -346
  350. package/src/HierarchicalTrackSelectorWidget/components/faceted/util.ts +0 -5
  351. package/src/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.tsx +0 -195
  352. package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.tsx +0 -85
  353. package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.tsx +0 -101
  354. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.tsx +0 -92
  355. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.tsx +0 -106
  356. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.tsx +0 -84
  357. package/src/HierarchicalTrackSelectorWidget/components/util.ts +0 -41
  358. package/src/HierarchicalTrackSelectorWidget/configSchema.ts +0 -3
  359. package/src/HierarchicalTrackSelectorWidget/index.ts +0 -25
  360. package/src/HierarchicalTrackSelectorWidget/model.test.js +0 -24
  361. package/src/HierarchicalTrackSelectorWidget/model.ts +0 -284
  362. package/src/PluginStoreWidget/components/CustomPluginForm.tsx +0 -165
  363. package/src/PluginStoreWidget/components/InstalledPlugin.tsx +0 -167
  364. package/src/PluginStoreWidget/components/InstalledPluginsList.tsx +0 -49
  365. package/src/PluginStoreWidget/components/PluginCard.tsx +0 -106
  366. package/src/PluginStoreWidget/components/PluginStoreWidget.test.tsx +0 -132
  367. package/src/PluginStoreWidget/components/PluginStoreWidget.tsx +0 -181
  368. package/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap +0 -869
  369. package/src/PluginStoreWidget/index.ts +0 -19
  370. package/src/PluginStoreWidget/model.test.tsx +0 -15
  371. package/src/PluginStoreWidget/model.ts +0 -26
  372. package/src/SetDefaultSession/SetDefaultSession.test.tsx +0 -59
  373. package/src/SetDefaultSession/SetDefaultSession.tsx +0 -76
  374. package/src/SetDefaultSession/index.ts +0 -1
  375. package/src/__snapshots__/index.test.ts.snap +0 -9
  376. package/src/index.test.ts +0 -54
  377. package/src/index.ts +0 -37
  378. package/src/ucsc-trackhub/configSchema.ts +0 -41
  379. package/src/ucsc-trackhub/index.ts +0 -19
  380. package/src/ucsc-trackhub/model.ts +0 -107
  381. package/src/ucsc-trackhub/ucscAssemblies.ts +0 -201
  382. package/src/ucsc-trackhub/ucscTrackHub.ts +0 -325
@@ -1,96 +0,0 @@
1
- import React, { useState } from 'react'
2
- import { Grid, IconButton, InputAdornment, TextField } from '@mui/material'
3
- import { Menu } from '@jbrowse/core/ui'
4
-
5
- // icons
6
- import ClearIcon from '@mui/icons-material/Clear'
7
- import MoreVert from '@mui/icons-material/MoreVert'
8
-
9
- // locals
10
- import ShoppingCart from '../ShoppingCart'
11
- import { HierarchicalTrackSelectorModel } from '../../model'
12
-
13
- export default function FacetedHeader({
14
- setFilterText,
15
- setUseShoppingCart,
16
- setHideSparse,
17
- setShowOptions,
18
- showOptions,
19
- hideSparse,
20
- useShoppingCart,
21
- filterText,
22
- model,
23
- }: {
24
- setFilterText: (arg: string) => void
25
- setUseShoppingCart: (arg: boolean) => void
26
- setHideSparse: (arg: boolean) => void
27
- setShowOptions: (arg: boolean) => void
28
- filterText: string
29
- showOptions: boolean
30
- useShoppingCart: boolean
31
- hideSparse: boolean
32
- model: HierarchicalTrackSelectorModel
33
- }) {
34
- const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)
35
-
36
- return (
37
- <>
38
- <Grid container spacing={4} alignItems="center">
39
- <Grid item>
40
- <TextField
41
- label="Search..."
42
- value={filterText}
43
- onChange={event => setFilterText(event.target.value)}
44
- InputProps={{
45
- endAdornment: (
46
- <InputAdornment position="end">
47
- <IconButton onClick={() => setFilterText('')}>
48
- <ClearIcon />
49
- </IconButton>
50
- </InputAdornment>
51
- ),
52
- }}
53
- />
54
- </Grid>
55
-
56
- <Grid item>
57
- <IconButton onClick={event => setAnchorEl(event.currentTarget)}>
58
- <MoreVert />
59
- </IconButton>
60
- </Grid>
61
- <Grid item>
62
- <ShoppingCart model={model} />
63
- </Grid>
64
- </Grid>
65
- <Menu
66
- anchorEl={anchorEl}
67
- open={!!anchorEl}
68
- onClose={() => setAnchorEl(null)}
69
- onMenuItemClick={(_event, callback) => {
70
- callback()
71
- setAnchorEl(null)
72
- }}
73
- menuItems={[
74
- {
75
- label: 'Add tracks to selection instead of turning them on/off',
76
- onClick: () => setUseShoppingCart(!useShoppingCart),
77
- type: 'checkbox',
78
- checked: useShoppingCart,
79
- },
80
- {
81
- label: 'Hide sparse metadata columns',
82
- onClick: () => setHideSparse(!hideSparse),
83
- checked: hideSparse,
84
- type: 'checkbox',
85
- },
86
- {
87
- label: 'Show extra table options',
88
- onClick: () => setShowOptions(!showOptions),
89
- checked: showOptions,
90
- type: 'checkbox',
91
- },
92
- ]}
93
- />
94
- </>
95
- )
96
- }
@@ -1,346 +0,0 @@
1
- import React, { useMemo, useState, useEffect, useReducer } from 'react'
2
- import { IconButton } from '@mui/material'
3
- import { transaction } from 'mobx'
4
- import { observer } from 'mobx-react'
5
- import { getRoot, resolveIdentifier } from 'mobx-state-tree'
6
- import { DataGrid, GridCellParams, GridToolbar } from '@mui/x-data-grid'
7
-
8
- // jbrowse
9
- import { getTrackName } from '@jbrowse/core/util/tracks'
10
- import { ResizeHandle } from '@jbrowse/core/ui'
11
- import SanitizedHTML from '@jbrowse/core/ui/SanitizedHTML'
12
- import JBrowseMenu from '@jbrowse/core/ui/Menu'
13
- import ResizeBar, { useResizeBar } from '@jbrowse/core/ui/ResizeBar'
14
- import {
15
- getEnv,
16
- getSession,
17
- measureGridWidth,
18
- useDebounce,
19
- } from '@jbrowse/core/util'
20
- import {
21
- AnyConfigurationModel,
22
- readConfObject,
23
- } from '@jbrowse/core/configuration'
24
-
25
- // icons
26
- import MoreHoriz from '@mui/icons-material/MoreHoriz'
27
-
28
- // locals
29
- import { matches, HierarchicalTrackSelectorModel } from '../../model'
30
- import FacetedHeader from './FacetedHeader'
31
- import FacetFilters from './FacetFilters'
32
- import { getRootKeys } from './util'
33
-
34
- const nonMetadataKeys = ['category', 'adapter', 'description'] as const
35
-
36
- export interface InfoArgs {
37
- target: HTMLElement
38
- id: string
39
- conf: AnyConfigurationModel
40
- }
41
-
42
- const frac = 0.75
43
-
44
- export default observer(function FacetedSelector({
45
- model,
46
- }: {
47
- model: HierarchicalTrackSelectorModel
48
- }) {
49
- const { assemblyNames, view, selection } = model
50
- const { pluginManager } = getEnv(model)
51
- const { ref, scrollLeft } = useResizeBar()
52
-
53
- const [filterText, setFilterText] = useState('')
54
- const [showOptions, setShowOptions] = useState(false)
55
- const [info, setInfo] = useState<InfoArgs>()
56
- const [useShoppingCart, setUseShoppingCart] = useState(false)
57
- const [hideSparse, setHideSparse] = useState(true)
58
- const [panelWidth, setPanelWidth] = useState(400)
59
-
60
- const assemblyName = assemblyNames[0]
61
- const session = getSession(model)
62
- const filterDebounced = useDebounce(filterText, 400)
63
- const [filters, dispatch] = useReducer(
64
- (
65
- state: Record<string, string[]>,
66
- update: { key: string; val: string[] },
67
- ) => {
68
- return { ...state, [update.key]: update.val }
69
- },
70
- {},
71
- )
72
-
73
- const rows = useMemo(() => {
74
- // metadata is spread onto the object for easier access and sorting
75
- // by the mui data grid (it's unable to sort by nested objects)
76
- return model
77
- .trackConfigurations(assemblyName)
78
- .filter(conf => matches(filterDebounced, conf, session))
79
- .map(track => {
80
- const metadata = readConfObject(track, 'metadata')
81
- return {
82
- id: track.trackId,
83
- conf: track,
84
- name: getTrackName(track, session),
85
- category: readConfObject(track, 'category')?.join(', '),
86
- adapter: readConfObject(track, 'adapter')?.type,
87
- description: readConfObject(track, 'description'),
88
- metadata,
89
- ...metadata,
90
- }
91
- })
92
- }, [assemblyName, model, filterDebounced, session])
93
-
94
- const filteredNonMetadataKeys = useMemo(
95
- () =>
96
- nonMetadataKeys.filter(f =>
97
- !hideSparse ? true : rows.map(r => r[f]).filter(f => !!f).length > 5,
98
- ),
99
- [hideSparse, rows],
100
- )
101
-
102
- const filteredMetadataKeys = useMemo(
103
- () =>
104
- [...new Set(rows.flatMap(row => getRootKeys(row.metadata)))].filter(f =>
105
- !hideSparse
106
- ? true
107
- : rows.map(r => r.metadata[f]).filter(f => !!f).length > 5,
108
- ),
109
- [hideSparse, rows],
110
- )
111
-
112
- const fields = useMemo(() => {
113
- return ['name', ...filteredNonMetadataKeys, ...filteredMetadataKeys]
114
- }, [filteredNonMetadataKeys, filteredMetadataKeys])
115
-
116
- const [widths, setWidths] = useState({
117
- name:
118
- measureGridWidth(
119
- rows.map(r => r.name),
120
- { maxWidth: 500, stripHTML: true },
121
- ) + 15,
122
- ...Object.fromEntries(
123
- filteredNonMetadataKeys.map(e => [
124
- e,
125
- measureGridWidth(
126
- rows.map(r => r[e]),
127
- { maxWidth: 400, stripHTML: true },
128
- ),
129
- ]),
130
- ),
131
- ...Object.fromEntries(
132
- filteredMetadataKeys.map(e => [
133
- e,
134
- measureGridWidth(
135
- rows.map(r => r.metadata[e]),
136
- { maxWidth: 400, stripHTML: true },
137
- ),
138
- ]),
139
- ),
140
- } as { [key: string]: number })
141
-
142
- const [visible, setVisible] = useState(
143
- Object.fromEntries(fields.map(c => [c, true])),
144
- )
145
- useEffect(() => {
146
- setVisible(visible => ({
147
- ...Object.fromEntries(fields.map(c => [c, true])),
148
- ...visible,
149
- }))
150
- }, [fields])
151
-
152
- useEffect(() => {
153
- setWidths(widths => ({
154
- name: widths.name,
155
- ...Object.fromEntries(
156
- filteredNonMetadataKeys
157
- .filter(f => visible[f])
158
- .map(e => [
159
- e,
160
- measureGridWidth(
161
- rows.map(r => r[e]),
162
- { stripHTML: true, maxWidth: 400 },
163
- ),
164
- ]),
165
- ),
166
- ...Object.fromEntries(
167
- filteredMetadataKeys
168
- .filter(f => visible[f])
169
- .map(e => [
170
- e,
171
- measureGridWidth(
172
- rows.map(r => r.metadata[e]),
173
- { stripHTML: true, maxWidth: 400 },
174
- ),
175
- ]),
176
- ),
177
- }))
178
- }, [filteredMetadataKeys, visible, filteredNonMetadataKeys, hideSparse, rows])
179
-
180
- const widthsDebounced = useDebounce(widths, 400)
181
-
182
- const columns = [
183
- {
184
- field: 'name',
185
- hideable: false,
186
- renderCell: (params: GridCellParams) => {
187
- const { value, id, row } = params
188
- return (
189
- <>
190
- <SanitizedHTML html={value as string} />
191
- <IconButton
192
- onClick={e =>
193
- setInfo({
194
- target: e.currentTarget,
195
- id: id as string,
196
- conf: row.conf,
197
- })
198
- }
199
- >
200
- <MoreHoriz />
201
- </IconButton>
202
- </>
203
- )
204
- },
205
- width: widthsDebounced.name || 100, // can be undefined before useEffect update
206
- },
207
- ...filteredNonMetadataKeys.map(e => ({
208
- field: e,
209
- width: widthsDebounced[e] || 100, // can be undefined before useEffect update
210
- renderCell: (params: GridCellParams) => {
211
- const { value } = params
212
- return value ? <SanitizedHTML html={value as string} /> : ''
213
- },
214
- })),
215
- ...filteredMetadataKeys.map(e => ({
216
- field: e,
217
- width: widthsDebounced[e] || 100, // can be undefined before useEffect update
218
- renderCell: (params: GridCellParams) => {
219
- const { value } = params
220
- return value ? <SanitizedHTML html={value as string} /> : ''
221
- },
222
- })),
223
- ]
224
-
225
- const shownTrackIds = view.tracks.map(
226
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
227
- (t: any) => t.configuration.trackId,
228
- ) as string[]
229
-
230
- const arrFilters = Object.entries(filters).filter(f => f[1].length > 0)
231
- return (
232
- <>
233
- {info ? (
234
- <JBrowseMenu
235
- anchorEl={info?.target}
236
- menuItems={session.getTrackActionMenuItems?.(info.conf) || []}
237
- onMenuItemClick={(_event, callback) => {
238
- callback()
239
- setInfo(undefined)
240
- }}
241
- open={!!info}
242
- onClose={() => setInfo(undefined)}
243
- />
244
- ) : null}
245
- <FacetedHeader
246
- setHideSparse={setHideSparse}
247
- setShowOptions={setShowOptions}
248
- setFilterText={setFilterText}
249
- setUseShoppingCart={setUseShoppingCart}
250
- hideSparse={hideSparse}
251
- showOptions={showOptions}
252
- filterText={filterText}
253
- useShoppingCart={useShoppingCart}
254
- model={model}
255
- />
256
-
257
- <div
258
- ref={ref}
259
- style={{
260
- display: 'flex',
261
- overflow: 'hidden',
262
- height: window.innerHeight * frac,
263
- width: window.innerWidth * frac,
264
- }}
265
- >
266
- <div
267
- style={{
268
- height: window.innerHeight * frac,
269
- width: window.innerWidth * frac - panelWidth,
270
- }}
271
- >
272
- <ResizeBar
273
- checkbox
274
- widths={Object.values(widths)}
275
- setWidths={newWidths =>
276
- setWidths(
277
- Object.fromEntries(
278
- Object.entries(widths).map((entry, idx) => [
279
- entry[0],
280
- newWidths[idx],
281
- ]),
282
- ),
283
- )
284
- }
285
- scrollLeft={scrollLeft}
286
- />
287
- <DataGrid
288
- rows={rows.filter(row =>
289
- arrFilters.every(([key, val]) => val.includes(row[key])),
290
- )}
291
- columnVisibilityModel={visible}
292
- onColumnVisibilityModelChange={newModel => setVisible(newModel)}
293
- columnHeaderHeight={35}
294
- checkboxSelection
295
- disableRowSelectionOnClick
296
- keepNonExistentRowsSelected
297
- onRowSelectionModelChange={userSelectedIds => {
298
- if (!useShoppingCart) {
299
- const a1 = shownTrackIds
300
- const a2 = userSelectedIds as string[]
301
- // synchronize the user selection with the view
302
- // see share https://stackoverflow.com/a/33034768/2129219
303
- transaction(() => {
304
- a1.filter(x => !a2.includes(x)).map(t => view.hideTrack(t))
305
- a2.filter(x => !a1.includes(x)).map(t => view.showTrack(t))
306
- })
307
- } else {
308
- const root = getRoot(model)
309
- const schema = pluginManager.pluggableConfigSchemaType('track')
310
- const tracks = userSelectedIds.map(id =>
311
- resolveIdentifier(schema, root, id),
312
- )
313
- model.setSelection(tracks)
314
- }
315
- }}
316
- rowSelectionModel={
317
- useShoppingCart ? selection.map(s => s.trackId) : shownTrackIds
318
- }
319
- slots={{ toolbar: showOptions ? GridToolbar : null }}
320
- slotProps={{
321
- toolbar: { printOptions: { disableToolbarButton: true } },
322
- }}
323
- columns={columns}
324
- rowHeight={25}
325
- />
326
- </div>
327
- <ResizeHandle
328
- vertical
329
- onDrag={dist => setPanelWidth(panelWidth - dist)}
330
- style={{ background: 'grey', width: 5 }}
331
- />
332
- <div
333
- style={{ width: panelWidth, overflowY: 'auto', overflowX: 'hidden' }}
334
- >
335
- <FacetFilters
336
- width={panelWidth - 10}
337
- rows={rows}
338
- columns={columns}
339
- dispatch={dispatch}
340
- filters={filters}
341
- />
342
- </div>
343
- </div>
344
- </>
345
- )
346
- })
@@ -1,5 +0,0 @@
1
- export function getRootKeys(obj: Record<string, unknown>) {
2
- return Object.entries(obj)
3
- .map(([key, val]) => (typeof val === 'string' ? key : ''))
4
- .filter(f => !!f)
5
- }
@@ -1,195 +0,0 @@
1
- import React, { Suspense, lazy, useState } from 'react'
2
- import { IconButton } from '@mui/material'
3
- import { makeStyles } from 'tss-react/mui'
4
- import { observer } from 'mobx-react'
5
- import JBrowseMenu from '@jbrowse/core/ui/Menu'
6
- import {
7
- getSession,
8
- isSessionModelWithWidgets,
9
- isSessionModelWithConnections,
10
- } from '@jbrowse/core/util'
11
- import {
12
- AnyConfigurationModel,
13
- readConfObject,
14
- } from '@jbrowse/core/configuration'
15
-
16
- // icons
17
- import MenuIcon from '@mui/icons-material/Menu'
18
-
19
- // locals
20
- import { HierarchicalTrackSelectorModel } from '../../model'
21
-
22
- // lazy components
23
- const CloseConnectionDlg = lazy(
24
- () => import('../dialogs/CloseConnectionDialog'),
25
- )
26
- const DeleteConnectionDlg = lazy(
27
- () => import('../dialogs/DeleteConnectionDialog'),
28
- )
29
- const ManageConnectionsDlg = lazy(
30
- () => import('../dialogs/ManageConnectionsDialog'),
31
- )
32
- const ToggleConnectionsDlg = lazy(
33
- () => import('../dialogs/ToggleConnectionsDialog'),
34
- )
35
-
36
- const useStyles = makeStyles()(theme => ({
37
- menuIcon: {
38
- marginRight: theme.spacing(1),
39
- marginBottom: 0,
40
- },
41
- }))
42
-
43
- interface ModalArgs {
44
- connectionConf: AnyConfigurationModel
45
- safelyBreakConnection: Function
46
- dereferenceTypeCount: { [key: string]: number }
47
- name: string
48
- }
49
-
50
- interface DialogDetails {
51
- name: string
52
- connectionConf: AnyConfigurationModel
53
- }
54
-
55
- export default observer(function HamburgerMenu({
56
- model,
57
- setAssemblyIdx,
58
- }: {
59
- model: HierarchicalTrackSelectorModel
60
- setAssemblyIdx: Function
61
- }) {
62
- const session = getSession(model)
63
- const [menuEl, setMenuEl] = useState<HTMLButtonElement>()
64
- const [modalInfo, setModalInfo] = useState<ModalArgs>()
65
- const [deleteDlgDetails, setDeleteDlgDetails] = useState<DialogDetails>()
66
- const [connectionToggleOpen, setConnectionToggleOpen] = useState(false)
67
- const [connectionManagerOpen, setConnectionManagerOpen] = useState(false)
68
- const { classes } = useStyles()
69
- const { assemblyNames } = model
70
-
71
- function breakConnection(
72
- connectionConf: AnyConfigurationModel,
73
- deletingConnection?: boolean,
74
- ) {
75
- const name = readConfObject(connectionConf, 'name')
76
- const result = session.prepareToBreakConnection(connectionConf)
77
- if (result) {
78
- const [safelyBreakConnection, dereferenceTypeCount] = result
79
- if (Object.keys(dereferenceTypeCount).length > 0) {
80
- setModalInfo({
81
- connectionConf,
82
- safelyBreakConnection,
83
- dereferenceTypeCount,
84
- name,
85
- })
86
- } else {
87
- safelyBreakConnection()
88
- }
89
- }
90
- if (deletingConnection) {
91
- setDeleteDlgDetails({ name, connectionConf })
92
- }
93
- }
94
-
95
- const connectionMenuItems = [
96
- {
97
- label: 'Turn on/off connections...',
98
- onClick: () => setConnectionToggleOpen(true),
99
- },
100
- ]
101
-
102
- if (isSessionModelWithConnections(session)) {
103
- connectionMenuItems.unshift({
104
- label: 'Add connection...',
105
- onClick: () => {
106
- if (isSessionModelWithWidgets(session)) {
107
- session.showWidget(
108
- session.addWidget('AddConnectionWidget', 'addConnectionWidget'),
109
- )
110
- }
111
- },
112
- })
113
-
114
- connectionMenuItems.push({
115
- label: 'Delete connections...',
116
- onClick: () => setConnectionManagerOpen(true),
117
- })
118
- }
119
- return (
120
- <>
121
- <IconButton
122
- className={classes.menuIcon}
123
- onClick={event => setMenuEl(event.currentTarget)}
124
- >
125
- <MenuIcon />
126
- </IconButton>
127
-
128
- <JBrowseMenu
129
- anchorEl={menuEl}
130
- open={Boolean(menuEl)}
131
- onMenuItemClick={(_, callback) => {
132
- callback()
133
- setMenuEl(undefined)
134
- }}
135
- onClose={() => setMenuEl(undefined)}
136
- menuItems={[
137
- {
138
- label: 'Add track...',
139
- onClick: () => {
140
- if (isSessionModelWithWidgets(session)) {
141
- session.showWidget(
142
- session.addWidget('AddTrackWidget', 'addTrackWidget', {
143
- view: model.view.id,
144
- }),
145
- )
146
- }
147
- },
148
- },
149
- ...(session.makeConnection ? connectionMenuItems : []),
150
-
151
- ...(assemblyNames.length > 1
152
- ? [
153
- {
154
- label: 'Select assembly...',
155
- subMenu: assemblyNames.map((name, idx) => ({
156
- label: name,
157
- onClick: () => setAssemblyIdx(idx),
158
- })),
159
- },
160
- ]
161
- : []),
162
- ]}
163
- />
164
- <Suspense fallback={<div />}>
165
- {modalInfo ? (
166
- <CloseConnectionDlg
167
- modalInfo={modalInfo}
168
- setModalInfo={setModalInfo}
169
- />
170
- ) : null}
171
- {deleteDlgDetails ? (
172
- <DeleteConnectionDlg
173
- handleClose={() => setDeleteDlgDetails(undefined)}
174
- deleteDialogDetails={deleteDlgDetails}
175
- session={session}
176
- />
177
- ) : null}
178
- {connectionManagerOpen ? (
179
- <ManageConnectionsDlg
180
- handleClose={() => setConnectionManagerOpen(false)}
181
- breakConnection={breakConnection}
182
- session={session}
183
- />
184
- ) : null}
185
- {connectionToggleOpen ? (
186
- <ToggleConnectionsDlg
187
- handleClose={() => setConnectionToggleOpen(false)}
188
- session={session}
189
- breakConnection={breakConnection}
190
- />
191
- ) : null}
192
- </Suspense>
193
- </>
194
- )
195
- })