@jbrowse/plugin-data-management 3.7.0 → 4.0.1

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,12 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { ResizeHandle } from '@jbrowse/core/ui';
3
3
  import SanitizedHTML from '@jbrowse/core/ui/SanitizedHTML';
4
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
4
5
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import FacetFilters from './FacetFilters';
7
- import FacetedDataGrid from './FacetedDataGrid';
8
- import FacetedHeader from './FacetedHeader';
9
- import TrackLabelMenu from '../tree/TrackLabelMenu';
6
+ import FacetFilters from "./FacetFilters.js";
7
+ import FacetedDataGrid from "./FacetedDataGrid.js";
8
+ import FacetedHeader from "./FacetedHeader.js";
9
+ import TrackSelectorTrackMenu from "../tree/TrackSelectorTrackMenu.js";
10
10
  const useStyles = makeStyles()({
11
11
  cell: {
12
12
  whiteSpace: 'nowrap',
@@ -31,7 +31,7 @@ const FacetedSelector = observer(function FacetedSelector({ model, }) {
31
31
  renderCell: params => {
32
32
  const { value, row } = params;
33
33
  const { id, conf } = row;
34
- return (_jsxs("div", { className: classes.cell, children: [_jsx(SanitizedHTML, { html: value }), _jsx(TrackLabelMenu, { id: id, conf: conf, trackId: id, model: model })] }));
34
+ return (_jsxs("div", { className: classes.cell, children: [_jsx(SanitizedHTML, { html: value }), _jsx(TrackSelectorTrackMenu, { id: id, conf: conf, model: model })] }));
35
35
  },
36
36
  },
37
37
  ...filteredNonMetadataKeys.map(e => {
@@ -49,7 +49,7 @@ const FacetedSelector = observer(function FacetedSelector({ model, }) {
49
49
  headerName: ['name', ...filteredNonMetadataKeys].includes(e)
50
50
  ? `${e} (from metadata)`
51
51
  : e,
52
- valueGetter: (_, row) => { var _a; return `${(_a = row.metadata[e]) !== null && _a !== void 0 ? _a : ''}`; },
52
+ valueGetter: (_, row) => `${row.metadata[e] ?? ''}`,
53
53
  renderCell: params => {
54
54
  const val = params.value;
55
55
  return val ? (_jsx(SanitizedHTML, { className: classes.cell, html: val })) : ('');
@@ -0,0 +1,6 @@
1
+ export declare function computeInitialWidths(rows: {
2
+ name: string;
3
+ metadata: Record<string, unknown>;
4
+ }[], filteredNonMetadataKeys: readonly string[], filteredMetadataKeys: string[], visible: Record<string, boolean>): {
5
+ name: number;
6
+ };
@@ -0,0 +1,18 @@
1
+ import { measureGridWidth } from '@jbrowse/core/util';
2
+ export function computeInitialWidths(rows, filteredNonMetadataKeys, filteredMetadataKeys, visible) {
3
+ return {
4
+ name: measureGridWidth(rows.map(r => r.name), { maxWidth: 500, stripHTML: true }) + 15,
5
+ ...Object.fromEntries(filteredNonMetadataKeys
6
+ .filter(f => visible[f])
7
+ .map(e => [
8
+ e,
9
+ measureGridWidth(rows.map(r => r[e]), { maxWidth: 400, stripHTML: true }),
10
+ ])),
11
+ ...Object.fromEntries(filteredMetadataKeys
12
+ .filter(f => visible[`metadata.${f}`])
13
+ .map(e => [
14
+ `metadata.${e}`,
15
+ measureGridWidth(rows.map(r => r.metadata[e]), { maxWidth: 400, stripHTML: true }),
16
+ ])),
17
+ };
18
+ }
@@ -1,6 +1,5 @@
1
1
  export function getRowStr(facet, row) {
2
- var _a;
3
2
  return `${(facet.startsWith('metadata.')
4
- ? (_a = row.metadata) === null || _a === void 0 ? void 0 : _a[facet.replace('metadata.', '')]
3
+ ? row.metadata?.[facet.replace('metadata.', '')]
5
4
  : row[facet]) || ''}`;
6
5
  }
@@ -1,4 +1,4 @@
1
- import type { HierarchicalTrackSelectorModel } from '../../model';
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
2
  import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
3
  import type { MenuItem } from '@jbrowse/core/ui/Menu';
4
4
  declare const DropdownTrackSelector: ({ model, tracks, extraMenuItems, children, onClick, }: {
@@ -5,15 +5,15 @@ import SanitizedHTML from '@jbrowse/core/ui/SanitizedHTML';
5
5
  import { getSession } from '@jbrowse/core/util';
6
6
  import { getTrackName } from '@jbrowse/core/util/tracks';
7
7
  import { observer } from 'mobx-react';
8
- import TrackLabelMenu from './TrackLabelMenu';
9
- const DropdownTrackSelector = observer(function ({ model, tracks, extraMenuItems, children, onClick, }) {
8
+ import TrackSelectorTrackMenu from "./TrackSelectorTrackMenu.js";
9
+ const DropdownTrackSelector = observer(function DropdownTrackSelector({ model, tracks, extraMenuItems, children, onClick, }) {
10
10
  const { view } = model;
11
11
  const [open, setOpen] = useState(false);
12
12
  const session = getSession(model);
13
13
  return view ? (_jsx(CascadingMenuButton, { closeAfterItemClick: false, onClick: onClick, menuItems: [
14
14
  ...tracks.map(t => ({
15
15
  type: 'checkbox',
16
- label: (_jsxs(_Fragment, { children: [_jsx(SanitizedHTML, { html: getTrackName(t, session) }), ' ', _jsx(TrackLabelMenu, { id: t.trackId, trackId: t.trackId, model: model, conf: t, setOpen: setOpen, stopPropagation: true })] })),
16
+ label: (_jsxs(_Fragment, { children: [_jsx(SanitizedHTML, { html: getTrackName(t, session) }), ' ', _jsx(TrackSelectorTrackMenu, { id: t.trackId, model: model, conf: t, setOpen: setOpen, stopPropagation: true })] })),
17
17
  checked: view.tracks.some((f) => f.configuration === t),
18
18
  onClick: () => {
19
19
  if (!open) {
@@ -1,4 +1,4 @@
1
- import type { HierarchicalTrackSelectorModel } from '../../model';
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
2
  declare const FavoriteTracks: ({ model, }: {
3
3
  model: HierarchicalTrackSelectorModel;
4
4
  }) => import("react/jsx-runtime").JSX.Element | null;
@@ -2,39 +2,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import GradeIcon from '@mui/icons-material/Grade';
3
3
  import { Badge, Tooltip } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import DropdownTrackSelector from './DropdownTrackSelector';
7
- const useStyles = makeStyles()({
8
- smallBadge: {
9
- height: 14,
10
- },
11
- margin: {
12
- marginRight: 10,
13
- },
14
- });
15
- const FavoriteTracks = observer(function ({ model, }) {
16
- const { classes } = useStyles();
17
- const { view, favoriteTracks } = model;
5
+ import DropdownTrackSelector from "./DropdownTrackSelector.js";
6
+ import { badgeAnchorOrigin, getDropdownMenuItems, useSmallBadgeStyles, } from "./trackListStyles.js";
7
+ const FavoriteTracks = observer(function FavoriteTracks({ model, }) {
8
+ const { classes } = useSmallBadgeStyles();
9
+ const { view, favoriteTracks, favoritesCounter } = model;
18
10
  return view ? (_jsx(DropdownTrackSelector, { onClick: () => {
19
11
  model.setFavoritesCounter(0);
20
- }, tracks: favoriteTracks, model: model, extraMenuItems: favoriteTracks.length
21
- ? [
22
- { type: 'divider' },
23
- {
24
- label: 'Clear favorites',
25
- onClick: () => {
26
- model.clearFavorites();
27
- },
28
- },
29
- ]
30
- : [
31
- {
32
- label: 'No favorite tracks yet',
33
- onClick: () => { },
34
- },
35
- ], children: _jsx(Tooltip, { title: "Favorite tracks", children: _jsx(Badge, { classes: { badge: classes.smallBadge }, color: "secondary", anchorOrigin: {
36
- vertical: 'bottom',
37
- horizontal: 'right',
38
- }, className: classes.margin, badgeContent: model.favoritesCounter, children: _jsx(GradeIcon, {}) }) }) })) : null;
12
+ }, tracks: favoriteTracks, model: model, extraMenuItems: getDropdownMenuItems({
13
+ hasTracks: favoriteTracks.length > 0,
14
+ clearLabel: 'Clear favorites',
15
+ emptyLabel: 'No favorite tracks yet',
16
+ onClear: () => {
17
+ model.clearFavorites();
18
+ },
19
+ }), children: _jsx(Tooltip, { title: "Favorite tracks", children: _jsx(Badge, { classes: { badge: classes.smallBadge }, color: "secondary", anchorOrigin: badgeAnchorOrigin, className: classes.margin, badgeContent: favoritesCounter, children: _jsx(GradeIcon, {}) }) }) })) : null;
39
20
  });
40
21
  export default FavoriteTracks;
@@ -1,4 +1,4 @@
1
- import type { HierarchicalTrackSelectorModel } from '../../model';
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
2
  declare const HamburgerMenu: ({ model, }: {
3
3
  model: HierarchicalTrackSelectorModel;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -5,12 +5,12 @@ import CascadingMenuButton from '@jbrowse/core/ui/CascadingMenuButton';
5
5
  import { getSession, isSessionModelWithConnectionEditing, isSessionModelWithConnections, isSessionModelWithWidgets, isSessionWithAddTracks, } from '@jbrowse/core/util';
6
6
  import MenuIcon from '@mui/icons-material/Menu';
7
7
  import { observer } from 'mobx-react';
8
- const FacetedDialog = lazy(() => import('../faceted/FacetedDialog'));
9
- const CloseConnectionDialog = lazy(() => import('../dialogs/CloseConnectionDialog'));
10
- const DeleteConnectionDialog = lazy(() => import('../dialogs/DeleteConnectionDialog'));
11
- const ManageConnectionsDialog = lazy(() => import('../dialogs/ManageConnectionsDialog'));
12
- const ToggleConnectionsDialog = lazy(() => import('../dialogs/ToggleConnectionsDialog'));
13
- const HamburgerMenu = observer(function ({ model, }) {
8
+ const FacetedDialog = lazy(() => import("../faceted/FacetedDialog.js"));
9
+ const CloseConnectionDialog = lazy(() => import("../dialogs/CloseConnectionDialog.js"));
10
+ const DeleteConnectionDialog = lazy(() => import("../dialogs/DeleteConnectionDialog.js"));
11
+ const ManageConnectionsDialog = lazy(() => import("../dialogs/ManageConnectionsDialog.js"));
12
+ const ToggleConnectionsDialog = lazy(() => import("../dialogs/ToggleConnectionsDialog.js"));
13
+ const HamburgerMenu = observer(function HamburgerMenu({ model, }) {
14
14
  const session = getSession(model);
15
15
  const [modalInfo, setModalInfo] = useState();
16
16
  const [deleteDialogDetails, setDeleteDialogDetails] = useState();
@@ -18,9 +18,8 @@ const HamburgerMenu = observer(function ({ model, }) {
18
18
  const [connectionManagerOpen, setConnectionManagerOpen] = useState(false);
19
19
  const [facetedOpen, setFacetedOpen] = useState(false);
20
20
  function breakConnection(connectionConf, deletingConnection) {
21
- var _a;
22
21
  const name = readConfObject(connectionConf, 'name');
23
- const result = (_a = session.prepareToBreakConnection) === null || _a === void 0 ? void 0 : _a.call(session, connectionConf);
22
+ const result = session.prepareToBreakConnection?.(connectionConf);
24
23
  if (result) {
25
24
  const [safelyBreakConnection, dereferenceTypeCount] = result;
26
25
  if (Object.keys(dereferenceTypeCount).length > 0) {
@@ -1,4 +1,4 @@
1
- import type { HierarchicalTrackSelectorModel } from '../../model';
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
2
  declare const HierarchicalTrackSelectorHeader: ({ model, setHeaderHeight, }: {
3
3
  model: HierarchicalTrackSelectorModel;
4
4
  setHeaderHeight: (n: number) => void;
@@ -1,33 +1,22 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import ClearIcon from '@mui/icons-material/Clear';
3
- import { IconButton, InputAdornment, TextField } from '@mui/material';
2
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
4
3
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import HamburgerMenu from './HamburgerMenu';
7
- import ShoppingCart from '../ShoppingCart';
8
- import FavoriteTracks from './FavoriteTracks';
9
- import RecentlyUsedTracks from './RecentlyUsedTracks';
4
+ import ClearableSearchField from "../ClearableSearchField.js";
5
+ import ShoppingCart from "../ShoppingCart.js";
6
+ import FavoriteTracks from "./FavoriteTracks.js";
7
+ import HamburgerMenu from "./HamburgerMenu.js";
8
+ import RecentlyUsedTracks from "./RecentlyUsedTracks.js";
10
9
  const useStyles = makeStyles()(theme => ({
11
10
  searchBox: {
12
11
  margin: theme.spacing(2),
13
12
  },
14
13
  }));
15
- const SearchTracksTextField = observer(function ({ model, }) {
16
- const { filterText } = model;
14
+ const HierarchicalTrackSelectorHeader = observer(function HierarchicalTrackSelectorHeader({ model, setHeaderHeight, }) {
17
15
  const { classes } = useStyles();
18
- return (_jsx(TextField, { className: classes.searchBox, label: "Filter tracks", value: filterText, onChange: event => {
19
- model.setFilterText(event.target.value);
20
- }, fullWidth: true, slotProps: {
21
- input: {
22
- endAdornment: (_jsx(InputAdornment, { position: "end", children: _jsx(IconButton, { onClick: () => {
23
- model.clearFilterText();
24
- }, children: _jsx(ClearIcon, {}) }) })),
25
- },
26
- } }));
27
- });
28
- const HierarchicalTrackSelectorHeader = observer(function ({ model, setHeaderHeight, }) {
29
16
  return (_jsx("div", { ref: ref => {
30
- setHeaderHeight((ref === null || ref === void 0 ? void 0 : ref.getBoundingClientRect().height) || 0);
31
- }, "data-testid": "hierarchical_track_selector", children: _jsxs("div", { style: { display: 'flex' }, children: [_jsx(HamburgerMenu, { model: model }), _jsx(ShoppingCart, { model: model }), _jsx(SearchTracksTextField, { model: model }), _jsx(RecentlyUsedTracks, { model: model }), _jsx(FavoriteTracks, { model: model })] }) }));
17
+ setHeaderHeight(ref?.getBoundingClientRect().height || 0);
18
+ }, "data-testid": "hierarchical_track_selector", children: _jsxs("div", { style: { display: 'flex' }, children: [_jsx(HamburgerMenu, { model: model }), _jsx(ShoppingCart, { model: model }), _jsx(ClearableSearchField, { className: classes.searchBox, label: "Filter tracks", value: model.filterText, onChange: value => {
19
+ model.setFilterText(value);
20
+ } }), _jsx(RecentlyUsedTracks, { model: model }), _jsx(FavoriteTracks, { model: model })] }) }));
32
21
  });
33
22
  export default HierarchicalTrackSelectorHeader;
@@ -1,8 +1,6 @@
1
- import type { TreeNode } from '../../generateHierarchy';
2
- import type { HierarchicalTrackSelectorModel } from '../../model';
3
- declare const HierarchicalTree: ({ height, tree, model, }: {
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
+ declare const HierarchicalTree: ({ height, model, }: {
4
3
  height: number;
5
- tree: TreeNode;
6
4
  model: HierarchicalTrackSelectorModel;
7
5
  }) => import("react/jsx-runtime").JSX.Element;
8
6
  export default HierarchicalTree;
@@ -1,63 +1,46 @@
1
- import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useMemo, useRef } from 'react';
3
- import { getSession } from '@jbrowse/core/util';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useState } from 'react';
4
3
  import { observer } from 'mobx-react';
5
- import { VariableSizeTree } from 'react-vtree';
6
- import Node from './TrackListNode';
7
- function getNodeData(node, nestingLevel, extra, selection) {
8
- const isLeaf = node.type === 'track';
9
- const selected = isLeaf ? selection[node.trackId] : false;
10
- return {
11
- data: {
12
- defaultHeight: isLeaf ? 22 : 40,
13
- isLeaf,
14
- isOpenByDefault: true,
15
- nestingLevel,
16
- selected,
17
- ...node,
18
- ...extra,
19
- },
20
- nestingLevel,
21
- node,
22
- };
23
- }
24
- const HierarchicalTree = observer(function HierarchicalTree({ height, tree, model, }) {
25
- const { filterText, selection, view } = model;
26
- const treeRef = useRef(null);
27
- const session = getSession(model);
28
- const { drawerPosition } = session;
29
- const obj = useMemo(() => Object.fromEntries(selection.map(s => [s.trackId, s])), [selection]);
30
- const extra = useMemo(() => ({
31
- onChange: (trackId) => {
32
- const trackTurnedOn = view.toggleTrack(trackId);
33
- if (trackTurnedOn) {
34
- model.addToRecentlyUsed(trackId);
35
- }
36
- },
37
- toggleCollapse: (pathName) => {
38
- model.toggleCategory(pathName);
39
- },
40
- tree,
41
- model,
42
- drawerPosition,
43
- }), [view, model, drawerPosition, tree]);
44
- const treeWalker = useCallback(function* treeWalker() {
45
- for (const child of tree.children) {
46
- yield getNodeData(child, 0, extra, obj);
47
- }
48
- while (true) {
49
- const parentMeta = yield;
50
- for (const curr of parentMeta.node.children) {
51
- yield getNodeData(curr, parentMeta.nestingLevel + 1, extra, obj);
52
- }
53
- }
54
- }, [tree, extra, obj]);
4
+ import TreeItem from "./TreeItem.js";
5
+ const HierarchicalTree = observer(function HierarchicalTree({ height, model, }) {
6
+ const { flattenedItems, shownTrackIds } = model;
7
+ const containerRef = useRef(null);
8
+ const [scrollTop, setScrollTop] = useState(0);
9
+ const { startIndex, endIndex, totalHeight, itemOffsets } = model.itemOffsets(height, scrollTop);
55
10
  useEffect(() => {
56
- treeRef.current.recomputeTree({
57
- refreshNodes: true,
58
- useDefaultHeight: true,
59
- });
60
- }, [tree, filterText]);
61
- return (_jsx(_Fragment, { children: _jsx(VariableSizeTree, { ref: treeRef, treeWalker: treeWalker, height: height, children: Node }) }));
11
+ const container = containerRef.current;
12
+ if (!container) {
13
+ return;
14
+ }
15
+ const onScroll = () => {
16
+ const newScrollTop = container.scrollTop;
17
+ setScrollTop(prev => {
18
+ const { startIndex: prevStart, endIndex: prevEnd } = model.itemOffsets(height, prev);
19
+ const { startIndex: nextStart, endIndex: nextEnd } = model.itemOffsets(height, newScrollTop);
20
+ if (prevStart === nextStart && prevEnd === nextEnd) {
21
+ return prev;
22
+ }
23
+ return newScrollTop;
24
+ });
25
+ };
26
+ container.addEventListener('scroll', onScroll, { passive: true });
27
+ return () => {
28
+ container.removeEventListener('scroll', onScroll);
29
+ };
30
+ }, [height, model]);
31
+ return (_jsx("div", { ref: containerRef, style: {
32
+ height,
33
+ overflowY: 'auto',
34
+ }, children: _jsx("div", { style: {
35
+ height: totalHeight,
36
+ width: '100%',
37
+ position: 'relative',
38
+ }, children: Array.from({ length: endIndex - startIndex + 1 }, (_, i) => {
39
+ const index = startIndex + i;
40
+ const item = flattenedItems[index];
41
+ return item ? (_jsx(TreeItem, { model: model, item: item, top: itemOffsets[index], checked: item.type === 'track'
42
+ ? shownTrackIds.has(item.trackId)
43
+ : undefined }, item.id)) : null;
44
+ }) }) }));
62
45
  });
63
46
  export default HierarchicalTree;
@@ -1,4 +1,4 @@
1
- import type { HierarchicalTrackSelectorModel } from '../../model';
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
2
  declare const RecentlyUsedTracks: ({ model, }: {
3
3
  model: HierarchicalTrackSelectorModel;
4
4
  }) => import("react/jsx-runtime").JSX.Element | null;
@@ -2,36 +2,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import HistoryIcon from '@mui/icons-material/History';
3
3
  import { Badge, Tooltip } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import DropdownTrackSelector from './DropdownTrackSelector';
7
- const useStyles = makeStyles()({
8
- smallBadge: {
9
- height: 14,
10
- },
11
- });
12
- const RecentlyUsedTracks = observer(function ({ model, }) {
13
- const { classes } = useStyles();
14
- const { view, recentlyUsedCounter, recentlyUsedTracks } = model;
5
+ import DropdownTrackSelector from "./DropdownTrackSelector.js";
6
+ import { badgeAnchorOrigin, getDropdownMenuItems, useSmallBadgeStyles, } from "./trackListStyles.js";
7
+ const RecentlyUsedTracks = observer(function RecentlyUsedTracks({ model, }) {
8
+ const { classes } = useSmallBadgeStyles();
9
+ const { view, recentlyUsedTracks, recentlyUsedCounter } = model;
15
10
  return view ? (_jsx(DropdownTrackSelector, { onClick: () => {
16
11
  model.setRecentlyUsedCounter(0);
17
- }, model: model, tracks: recentlyUsedTracks, extraMenuItems: recentlyUsedTracks.length
18
- ? [
19
- { type: 'divider' },
20
- {
21
- label: 'Clear recently used',
22
- onClick: () => {
23
- model.clearRecentlyUsed();
24
- },
25
- },
26
- ]
27
- : [
28
- {
29
- label: 'No recently used',
30
- onClick: () => { },
31
- },
32
- ], children: _jsx(Tooltip, { title: "Recently used tracks", children: _jsx(Badge, { classes: { badge: classes.smallBadge }, anchorOrigin: {
33
- vertical: 'bottom',
34
- horizontal: 'right',
35
- }, color: "secondary", badgeContent: recentlyUsedCounter, children: _jsx(HistoryIcon, {}) }) }) })) : null;
12
+ }, tracks: recentlyUsedTracks, model: model, extraMenuItems: getDropdownMenuItems({
13
+ hasTracks: recentlyUsedTracks.length > 0,
14
+ clearLabel: 'Clear recently used',
15
+ emptyLabel: 'No recently used',
16
+ onClear: () => {
17
+ model.clearRecentlyUsed();
18
+ },
19
+ }), children: _jsx(Tooltip, { title: "Recently used tracks", children: _jsx(Badge, { classes: { badge: classes.smallBadge }, color: "secondary", anchorOrigin: badgeAnchorOrigin, badgeContent: recentlyUsedCounter, children: _jsx(HistoryIcon, {}) }) }) })) : null;
36
20
  });
37
21
  export default RecentlyUsedTracks;
@@ -1,6 +1,7 @@
1
- import type { NodeData } from '../util';
2
- export default function Category({ isOpen, setOpen, data, }: {
3
- isOpen: boolean;
4
- setOpen: (arg: boolean) => void;
5
- data: NodeData;
6
- }): import("react/jsx-runtime").JSX.Element;
1
+ import type { HierarchicalTrackSelectorModel } from '../../model.ts';
2
+ import type { TreeCategoryNode } from '../../types.ts';
3
+ declare const TrackCategory: ({ item, model, }: {
4
+ item: TreeCategoryNode;
5
+ model: HierarchicalTrackSelectorModel;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
+ export default TrackCategory;