@jbrowse/plugin-data-management 2.3.2 → 2.3.4

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 (222) hide show
  1. package/dist/AddConnectionWidget/index.d.ts +3 -2
  2. package/dist/AddConnectionWidget/index.js +38 -4
  3. package/dist/AddConnectionWidget/index.js.map +1 -1
  4. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +1 -4
  5. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +1 -1
  6. package/dist/AddTrackWidget/components/TrackSourceSelect.js +1 -4
  7. package/dist/AddTrackWidget/components/TrackSourceSelect.js.map +1 -1
  8. package/dist/AddTrackWidget/index.d.ts +3 -2
  9. package/dist/AddTrackWidget/index.js +38 -4
  10. package/dist/AddTrackWidget/index.js.map +1 -1
  11. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +6 -0
  12. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +71 -0
  13. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js.map +1 -0
  14. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +10 -104
  15. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -1
  16. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +6 -0
  17. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +70 -0
  18. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js.map +1 -0
  19. package/dist/HierarchicalTrackSelectorWidget/components/{CloseConnectionDialog.d.ts → dialogs/CloseConnectionDialog.d.ts} +0 -0
  20. package/dist/HierarchicalTrackSelectorWidget/components/{CloseConnectionDialog.js → dialogs/CloseConnectionDialog.js} +0 -0
  21. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js.map +1 -0
  22. package/dist/HierarchicalTrackSelectorWidget/components/{DeleteConnectionDialog.d.ts → dialogs/DeleteConnectionDialog.d.ts} +0 -0
  23. package/dist/HierarchicalTrackSelectorWidget/components/{DeleteConnectionDialog.js → dialogs/DeleteConnectionDialog.js} +0 -0
  24. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js.map +1 -0
  25. package/dist/HierarchicalTrackSelectorWidget/components/{ManageConnectionsDialog.d.ts → dialogs/ManageConnectionsDialog.d.ts} +0 -0
  26. package/dist/HierarchicalTrackSelectorWidget/components/{ManageConnectionsDialog.js → dialogs/ManageConnectionsDialog.js} +0 -0
  27. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js.map +1 -0
  28. package/dist/HierarchicalTrackSelectorWidget/components/{ToggleConnectionsDialog.d.ts → dialogs/ToggleConnectionsDialog.d.ts} +0 -0
  29. package/dist/HierarchicalTrackSelectorWidget/components/{ToggleConnectionsDialog.js → dialogs/ToggleConnectionsDialog.js} +0 -0
  30. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js.map +1 -0
  31. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +13 -0
  32. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +99 -0
  33. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +1 -0
  34. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +8 -0
  35. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +18 -0
  36. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js.map +1 -0
  37. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +11 -0
  38. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +71 -0
  39. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js.map +1 -0
  40. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +12 -0
  41. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +211 -0
  42. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +1 -0
  43. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.d.ts +1 -0
  44. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.js +10 -0
  45. package/dist/HierarchicalTrackSelectorWidget/components/faceted/util.js.map +1 -0
  46. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +7 -0
  47. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +136 -0
  48. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +1 -0
  49. package/dist/HierarchicalTrackSelectorWidget/components/{Header.d.ts → tree/HierarchicalHeader.d.ts} +2 -3
  50. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +65 -0
  51. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +1 -0
  52. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +8 -0
  53. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +91 -0
  54. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +1 -0
  55. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +7 -0
  56. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +89 -0
  57. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +1 -0
  58. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +11 -0
  59. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +86 -0
  60. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +1 -0
  61. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +10 -0
  62. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +54 -0
  63. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js.map +1 -0
  64. package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +17 -1
  65. package/dist/HierarchicalTrackSelectorWidget/components/util.js +16 -1
  66. package/dist/HierarchicalTrackSelectorWidget/components/util.js.map +1 -1
  67. package/dist/HierarchicalTrackSelectorWidget/index.d.ts +3 -0
  68. package/dist/HierarchicalTrackSelectorWidget/index.js +36 -0
  69. package/dist/HierarchicalTrackSelectorWidget/index.js.map +1 -1
  70. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +4 -1
  71. package/dist/HierarchicalTrackSelectorWidget/model.js +12 -8
  72. package/dist/HierarchicalTrackSelectorWidget/model.js.map +1 -1
  73. package/dist/PluginStoreWidget/index.d.ts +3 -2
  74. package/dist/PluginStoreWidget/index.js +38 -4
  75. package/dist/PluginStoreWidget/index.js.map +1 -1
  76. package/dist/index.js +10 -51
  77. package/dist/index.js.map +1 -1
  78. package/dist/ucsc-trackhub/index.d.ts +3 -2
  79. package/dist/ucsc-trackhub/index.js +13 -5
  80. package/dist/ucsc-trackhub/index.js.map +1 -1
  81. package/esm/AddConnectionWidget/index.d.ts +3 -2
  82. package/esm/AddConnectionWidget/index.js +15 -2
  83. package/esm/AddConnectionWidget/index.js.map +1 -1
  84. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +1 -4
  85. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js.map +1 -1
  86. package/esm/AddTrackWidget/components/TrackSourceSelect.js +1 -4
  87. package/esm/AddTrackWidget/components/TrackSourceSelect.js.map +1 -1
  88. package/esm/AddTrackWidget/index.d.ts +3 -2
  89. package/esm/AddTrackWidget/index.js +15 -2
  90. package/esm/AddTrackWidget/index.js.map +1 -1
  91. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +6 -0
  92. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +43 -0
  93. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js.map +1 -0
  94. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +9 -103
  95. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -1
  96. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +6 -0
  97. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +42 -0
  98. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js.map +1 -0
  99. package/esm/HierarchicalTrackSelectorWidget/components/{CloseConnectionDialog.d.ts → dialogs/CloseConnectionDialog.d.ts} +0 -0
  100. package/esm/HierarchicalTrackSelectorWidget/components/{CloseConnectionDialog.js → dialogs/CloseConnectionDialog.js} +0 -0
  101. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js.map +1 -0
  102. package/esm/HierarchicalTrackSelectorWidget/components/{DeleteConnectionDialog.d.ts → dialogs/DeleteConnectionDialog.d.ts} +0 -0
  103. package/esm/HierarchicalTrackSelectorWidget/components/{DeleteConnectionDialog.js → dialogs/DeleteConnectionDialog.js} +0 -0
  104. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js.map +1 -0
  105. package/esm/HierarchicalTrackSelectorWidget/components/{ManageConnectionsDialog.d.ts → dialogs/ManageConnectionsDialog.d.ts} +0 -0
  106. package/esm/HierarchicalTrackSelectorWidget/components/{ManageConnectionsDialog.js → dialogs/ManageConnectionsDialog.js} +0 -0
  107. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js.map +1 -0
  108. package/esm/HierarchicalTrackSelectorWidget/components/{ToggleConnectionsDialog.d.ts → dialogs/ToggleConnectionsDialog.d.ts} +0 -0
  109. package/esm/HierarchicalTrackSelectorWidget/components/{ToggleConnectionsDialog.js → dialogs/ToggleConnectionsDialog.js} +0 -0
  110. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js.map +1 -0
  111. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.d.ts +13 -0
  112. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +70 -0
  113. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js.map +1 -0
  114. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +8 -0
  115. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +13 -0
  116. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js.map +1 -0
  117. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +11 -0
  118. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +42 -0
  119. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js.map +1 -0
  120. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +12 -0
  121. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +183 -0
  122. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js.map +1 -0
  123. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.d.ts +1 -0
  124. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.js +6 -0
  125. package/esm/HierarchicalTrackSelectorWidget/components/faceted/util.js.map +1 -0
  126. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +7 -0
  127. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +108 -0
  128. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js.map +1 -0
  129. package/esm/HierarchicalTrackSelectorWidget/components/{Header.d.ts → tree/HierarchicalHeader.d.ts} +2 -3
  130. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +37 -0
  131. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js.map +1 -0
  132. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +8 -0
  133. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +63 -0
  134. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js.map +1 -0
  135. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.d.ts +7 -0
  136. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +60 -0
  137. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js.map +1 -0
  138. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.d.ts +11 -0
  139. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +57 -0
  140. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js.map +1 -0
  141. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.d.ts +10 -0
  142. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +48 -0
  143. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js.map +1 -0
  144. package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +17 -1
  145. package/esm/HierarchicalTrackSelectorWidget/components/util.js +13 -0
  146. package/esm/HierarchicalTrackSelectorWidget/components/util.js.map +1 -1
  147. package/esm/HierarchicalTrackSelectorWidget/index.d.ts +3 -0
  148. package/esm/HierarchicalTrackSelectorWidget/index.js +13 -0
  149. package/esm/HierarchicalTrackSelectorWidget/index.js.map +1 -1
  150. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +4 -1
  151. package/esm/HierarchicalTrackSelectorWidget/model.js +10 -7
  152. package/esm/HierarchicalTrackSelectorWidget/model.js.map +1 -1
  153. package/esm/PluginStoreWidget/index.d.ts +3 -2
  154. package/esm/PluginStoreWidget/index.js +15 -2
  155. package/esm/PluginStoreWidget/index.js.map +1 -1
  156. package/esm/index.js +10 -51
  157. package/esm/index.js.map +1 -1
  158. package/esm/ucsc-trackhub/index.d.ts +3 -2
  159. package/esm/ucsc-trackhub/index.js +13 -2
  160. package/esm/ucsc-trackhub/index.js.map +1 -1
  161. package/package.json +3 -2
  162. package/src/AddConnectionWidget/components/{AddConnectionWidget.test.js → AddConnectionWidget.test.tsx} +17 -8
  163. package/src/AddConnectionWidget/components/__snapshots__/{AddConnectionWidget.test.js.snap → AddConnectionWidget.test.tsx.snap} +0 -0
  164. package/src/AddConnectionWidget/index.ts +17 -2
  165. package/src/AddTrackWidget/components/DefaultAddTrackWorkflow.tsx +1 -4
  166. package/src/AddTrackWidget/components/TrackSourceSelect.tsx +3 -5
  167. package/src/AddTrackWidget/{index.test.jsx → index.test.tsx} +34 -37
  168. package/src/AddTrackWidget/index.ts +17 -2
  169. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalFab.tsx +94 -0
  170. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.test.tsx +124 -128
  171. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.tsx +47 -228
  172. package/src/HierarchicalTrackSelectorWidget/components/ShoppingCart.tsx +73 -0
  173. package/src/HierarchicalTrackSelectorWidget/components/__snapshots__/HierarchicalTrackSelector.test.tsx.snap +25 -43
  174. package/src/HierarchicalTrackSelectorWidget/components/{CloseConnectionDialog.tsx → dialogs/CloseConnectionDialog.tsx} +0 -0
  175. package/src/HierarchicalTrackSelectorWidget/components/{DeleteConnectionDialog.tsx → dialogs/DeleteConnectionDialog.tsx} +0 -0
  176. package/src/HierarchicalTrackSelectorWidget/components/{ManageConnectionsDialog.tsx → dialogs/ManageConnectionsDialog.tsx} +0 -0
  177. package/src/HierarchicalTrackSelectorWidget/components/{ToggleConnectionsDialog.tsx → dialogs/ToggleConnectionsDialog.tsx} +0 -0
  178. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.tsx +138 -0
  179. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.tsx +29 -0
  180. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.tsx +86 -0
  181. package/src/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.tsx +339 -0
  182. package/src/HierarchicalTrackSelectorWidget/components/faceted/util.ts +5 -0
  183. package/src/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.tsx +197 -0
  184. package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.tsx +88 -0
  185. package/src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.tsx +101 -0
  186. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.tsx +92 -0
  187. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.tsx +107 -0
  188. package/src/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.tsx +84 -0
  189. package/src/HierarchicalTrackSelectorWidget/components/util.ts +31 -1
  190. package/src/HierarchicalTrackSelectorWidget/index.ts +17 -0
  191. package/src/HierarchicalTrackSelectorWidget/model.ts +12 -9
  192. package/src/PluginStoreWidget/components/PluginStoreWidget.test.tsx +132 -0
  193. package/src/PluginStoreWidget/components/__snapshots__/{PluginStoreWidget.test.js.snap → PluginStoreWidget.test.tsx.snap} +2 -2
  194. package/src/PluginStoreWidget/index.ts +17 -2
  195. package/src/PluginStoreWidget/{model.test.js → model.test.tsx} +0 -0
  196. package/src/__snapshots__/index.test.ts.snap +9 -0
  197. package/src/index.test.ts +54 -0
  198. package/src/index.ts +10 -83
  199. package/src/ucsc-trackhub/index.ts +19 -2
  200. package/dist/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js.map +0 -1
  201. package/dist/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js.map +0 -1
  202. package/dist/HierarchicalTrackSelectorWidget/components/Header.js +0 -174
  203. package/dist/HierarchicalTrackSelectorWidget/components/Header.js.map +0 -1
  204. package/dist/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +0 -1
  205. package/dist/HierarchicalTrackSelectorWidget/components/Node.d.ts +0 -29
  206. package/dist/HierarchicalTrackSelectorWidget/components/Node.js +0 -173
  207. package/dist/HierarchicalTrackSelectorWidget/components/Node.js.map +0 -1
  208. package/dist/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +0 -1
  209. package/esm/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js.map +0 -1
  210. package/esm/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js.map +0 -1
  211. package/esm/HierarchicalTrackSelectorWidget/components/Header.js +0 -146
  212. package/esm/HierarchicalTrackSelectorWidget/components/Header.js.map +0 -1
  213. package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +0 -1
  214. package/esm/HierarchicalTrackSelectorWidget/components/Node.d.ts +0 -29
  215. package/esm/HierarchicalTrackSelectorWidget/components/Node.js +0 -144
  216. package/esm/HierarchicalTrackSelectorWidget/components/Node.js.map +0 -1
  217. package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +0 -1
  218. package/src/HierarchicalTrackSelectorWidget/components/Header.tsx +0 -286
  219. package/src/HierarchicalTrackSelectorWidget/components/Node.tsx +0 -282
  220. package/src/PluginStoreWidget/components/PluginStoreWidget.test.js +0 -123
  221. package/src/__snapshots__/index.test.js.snap +0 -9
  222. package/src/index.test.js +0 -61
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HamburgerMenu.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  /// <reference types="react" />
2
- import { HierarchicalTrackSelectorModel } from '../model';
3
- declare function HierarchicalTrackSelectorHeader({ model, setHeaderHeight, setAssemblyIdx, assemblyIdx, }: {
2
+ import { HierarchicalTrackSelectorModel } from '../../model';
3
+ declare function HierarchicalTrackSelectorHeader({ model, setHeaderHeight, setAssemblyIdx, }: {
4
4
  model: HierarchicalTrackSelectorModel;
5
5
  setHeaderHeight: (n: number) => void;
6
6
  setAssemblyIdx: (n: number) => void;
7
- assemblyIdx: number;
8
7
  }): JSX.Element;
9
8
  declare const _default: typeof HierarchicalTrackSelectorHeader;
10
9
  export default _default;
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const react_1 = __importStar(require("react"));
30
+ const material_1 = require("@mui/material");
31
+ const mui_1 = require("tss-react/mui");
32
+ const mobx_react_1 = require("mobx-react");
33
+ // icons
34
+ const Clear_1 = __importDefault(require("@mui/icons-material/Clear"));
35
+ const HamburgerMenu_1 = __importDefault(require("./HamburgerMenu"));
36
+ const ShoppingCart_1 = __importDefault(require("../ShoppingCart"));
37
+ // lazies
38
+ const FacetedDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('../faceted/FacetedDialog'))));
39
+ const useStyles = (0, mui_1.makeStyles)()(theme => ({
40
+ searchBox: {
41
+ margin: theme.spacing(2),
42
+ },
43
+ menuIcon: {
44
+ marginRight: theme.spacing(1),
45
+ marginBottom: 0,
46
+ },
47
+ }));
48
+ function HierarchicalTrackSelectorHeader({ model, setHeaderHeight, setAssemblyIdx, }) {
49
+ const { classes } = useStyles();
50
+ const [facetedOpen, setFacetedOpen] = (0, react_1.useState)(false);
51
+ const { filterText } = model;
52
+ return (react_1.default.createElement("div", { ref: ref => setHeaderHeight((ref === null || ref === void 0 ? void 0 : ref.getBoundingClientRect().height) || 0), "data-testid": "hierarchical_track_selector" },
53
+ react_1.default.createElement("div", { style: { display: 'flex' } },
54
+ react_1.default.createElement(HamburgerMenu_1.default, { model: model, setAssemblyIdx: setAssemblyIdx }),
55
+ react_1.default.createElement(ShoppingCart_1.default, { model: model }),
56
+ react_1.default.createElement(material_1.TextField, { className: classes.searchBox, label: "Filter tracks", value: filterText, onChange: event => model.setFilterText(event.target.value), fullWidth: true, InputProps: {
57
+ endAdornment: (react_1.default.createElement(material_1.InputAdornment, { position: "end" },
58
+ react_1.default.createElement(material_1.IconButton, { color: "secondary", onClick: () => model.clearFilterText() },
59
+ react_1.default.createElement(Clear_1.default, null)))),
60
+ } }),
61
+ react_1.default.createElement(material_1.Button, { className: classes.menuIcon, onClick: () => setFacetedOpen(true) }, "Open faceted selector")),
62
+ react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) }, facetedOpen ? (react_1.default.createElement(FacetedDialog, { handleClose: () => setFacetedOpen(false), model: model })) : null)));
63
+ }
64
+ exports.default = (0, mobx_react_1.observer)(HierarchicalTrackSelectorHeader);
65
+ //# sourceMappingURL=HierarchicalHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HierarchicalHeader.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAuD;AACvD,4CAA6E;AAC7E,uCAA0C;AAC1C,2CAAqC;AAErC,QAAQ;AACR,sEAAiD;AAIjD,oEAA2C;AAC3C,mEAA0C;AAE1C,SAAS;AACT,MAAM,aAAa,GAAG,IAAA,YAAI,EAAC,GAAG,EAAE,mDAAQ,0BAA0B,GAAC,CAAC,CAAA;AAEpE,MAAM,SAAS,GAAG,IAAA,gBAAU,GAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,SAAS,EAAE;QACT,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KACzB;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,YAAY,EAAE,CAAC;KAChB;CACF,CAAC,CAAC,CAAA;AAEH,SAAS,+BAA+B,CAAC,EACvC,KAAK,EACL,eAAe,EACf,cAAc,GAKf;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IACrD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;IAE5B,OAAO,CACL,uCACE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,qBAAqB,GAAG,MAAM,KAAI,CAAC,CAAC,iBACzD,6BAA6B;QAEzC,uCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YAC7B,8BAAC,uBAAa,IAAC,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,GAAI;YAC/D,8BAAC,sBAAY,IAAC,KAAK,EAAE,KAAK,GAAI;YAE9B,8BAAC,oBAAS,IACR,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,KAAK,EAAC,eAAe,EACrB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1D,SAAS,QACT,UAAU,EAAE;oBACV,YAAY,EAAE,CACZ,8BAAC,yBAAc,IAAC,QAAQ,EAAC,KAAK;wBAC5B,8BAAC,qBAAU,IACT,KAAK,EAAC,WAAW,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE;4BAEtC,8BAAC,eAAS,OAAG,CACF,CACE,CAClB;iBACF,GACD;YACF,8BAAC,iBAAM,IACL,SAAS,EAAE,OAAO,CAAC,QAAQ,EAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,4BAG5B,CACL;QAEN,8BAAC,gBAAQ,IAAC,QAAQ,EAAE,0CAAO,IACxB,WAAW,CAAC,CAAC,CAAC,CACb,8BAAC,aAAa,IACZ,WAAW,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EACxC,KAAK,EAAE,KAAK,GACZ,CACH,CAAC,CAAC,CAAC,IAAI,CACC,CACP,CACP,CAAA;AACH,CAAC;AAED,kBAAe,IAAA,qBAAQ,EAAC,+BAA+B,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { TreeNode, HierarchicalTrackSelectorModel } from '../../model';
3
+ declare const _default: ({ height, tree, model, }: {
4
+ height: number;
5
+ tree: TreeNode;
6
+ model: HierarchicalTrackSelectorModel;
7
+ }) => JSX.Element;
8
+ export default _default;
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const react_1 = __importStar(require("react"));
30
+ const mobx_react_1 = require("mobx-react");
31
+ const react_vtree_1 = require("react-vtree");
32
+ const util_1 = require("@jbrowse/core/util");
33
+ const TrackListNode_1 = __importDefault(require("./TrackListNode"));
34
+ function getNodeData(node, nestingLevel, extra, selection) {
35
+ const isLeaf = !!node.conf;
36
+ const selected = !!selection[node.id];
37
+ return {
38
+ data: {
39
+ defaultHeight: isLeaf ? 22 : 40,
40
+ isLeaf,
41
+ isOpenByDefault: true,
42
+ nestingLevel,
43
+ selected,
44
+ ...node,
45
+ ...extra,
46
+ },
47
+ nestingLevel,
48
+ node,
49
+ };
50
+ }
51
+ // this is the main tree component for the hierarchical track selector in note:
52
+ // in jbrowse-web the toolbar is position="sticky" which means the autosizer
53
+ // includes the height of the toolbar, so we subtract the given offsets
54
+ exports.default = (0, mobx_react_1.observer)(function HierarchicalTree({ height, tree, model, }) {
55
+ const { filterText, selection, view } = model;
56
+ const treeRef = (0, react_1.useRef)(null);
57
+ const session = (0, util_1.getSession)(model);
58
+ const { drawerPosition } = session;
59
+ const obj = (0, react_1.useMemo)(() => Object.fromEntries(selection.map(s => [s.trackId, s])), [selection]);
60
+ const extra = (0, react_1.useMemo)(() => ({
61
+ onChange: (trackId) => view.toggleTrack(trackId),
62
+ toggleCollapse: (pathName) => model.toggleCategory(pathName),
63
+ tree,
64
+ model,
65
+ drawerPosition,
66
+ }), [view, model, drawerPosition, tree]);
67
+ const treeWalker = (0, react_1.useCallback)(function* treeWalker() {
68
+ for (let i = 0; i < tree.children.length; i++) {
69
+ const r = tree.children[i];
70
+ yield getNodeData(r, 0, extra, obj);
71
+ }
72
+ while (true) {
73
+ // @ts-ignore
74
+ const parentMeta = yield;
75
+ for (let i = 0; i < parentMeta.node.children.length; i++) {
76
+ const curr = parentMeta.node.children[i];
77
+ yield getNodeData(curr, parentMeta.nestingLevel + 1, extra, obj);
78
+ }
79
+ }
80
+ }, [tree, extra, obj]);
81
+ (0, react_1.useEffect)(() => {
82
+ // @ts-ignore
83
+ treeRef.current.recomputeTree({
84
+ refreshNodes: true,
85
+ useDefaultHeight: true,
86
+ });
87
+ }, [tree, filterText]);
88
+ return (react_1.default.createElement(react_1.default.Fragment, null,
89
+ react_1.default.createElement(react_vtree_1.VariableSizeTree, { ref: treeRef, treeWalker: treeWalker, height: height }, TrackListNode_1.default)));
90
+ });
91
+ //# sourceMappingURL=HierarchicalTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HierarchicalTree.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { NodeData } from '../util';
3
+ export default function Category({ isOpen, setOpen, data, }: {
4
+ isOpen: boolean;
5
+ setOpen: (arg: boolean) => void;
6
+ data: NodeData;
7
+ }): JSX.Element;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const react_1 = __importStar(require("react"));
30
+ const material_1 = require("@mui/material");
31
+ const mui_1 = require("tss-react/mui");
32
+ const Menu_1 = __importDefault(require("@jbrowse/core/ui/Menu"));
33
+ // icons
34
+ const ArrowDropDown_1 = __importDefault(require("@mui/icons-material/ArrowDropDown"));
35
+ const ArrowRight_1 = __importDefault(require("@mui/icons-material/ArrowRight"));
36
+ const MoreHoriz_1 = __importDefault(require("@mui/icons-material/MoreHoriz"));
37
+ // locals
38
+ const util_1 = require("../util");
39
+ const useStyles = (0, mui_1.makeStyles)()(theme => ({
40
+ contrastColor: {
41
+ color: theme.palette.secondary.contrastText,
42
+ },
43
+ // margin:auto 0 to center text vertically
44
+ accordionText: {
45
+ margin: 'auto 0',
46
+ // width 100 so you can click anywhere on the category bar
47
+ width: '100%',
48
+ },
49
+ }));
50
+ function Category({ isOpen, setOpen, data, }) {
51
+ const { classes } = useStyles();
52
+ const [menuEl, setMenuEl] = (0, react_1.useState)(null);
53
+ const { name, model, id, tree, toggleCollapse } = data;
54
+ return (react_1.default.createElement("div", { className: classes.accordionText, onClick: () => {
55
+ if (!menuEl) {
56
+ toggleCollapse(id);
57
+ setOpen(!isOpen);
58
+ }
59
+ } },
60
+ react_1.default.createElement(material_1.Typography, null,
61
+ isOpen ? react_1.default.createElement(ArrowDropDown_1.default, null) : react_1.default.createElement(ArrowRight_1.default, null),
62
+ name,
63
+ react_1.default.createElement(material_1.IconButton, { onClick: event => {
64
+ setMenuEl(event.currentTarget);
65
+ event.stopPropagation();
66
+ }, className: classes.contrastColor },
67
+ react_1.default.createElement(MoreHoriz_1.default, null))),
68
+ menuEl ? (react_1.default.createElement(Menu_1.default, { anchorEl: menuEl, menuItems: [
69
+ {
70
+ label: 'Add to selection',
71
+ onClick: () => {
72
+ const r = (0, util_1.treeToMap)(tree).get(id);
73
+ model.addToSelection((0, util_1.getAllChildren)(r));
74
+ },
75
+ },
76
+ {
77
+ label: 'Remove from selection',
78
+ onClick: () => {
79
+ const r = (0, util_1.treeToMap)(tree).get(id);
80
+ model.removeFromSelection((0, util_1.getAllChildren)(r));
81
+ },
82
+ },
83
+ ], onMenuItemClick: (_event, callback) => {
84
+ callback();
85
+ setMenuEl(null);
86
+ }, open: Boolean(menuEl), onClose: () => setMenuEl(null) })) : null));
87
+ }
88
+ exports.default = Category;
89
+ //# sourceMappingURL=TrackCategory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrackCategory.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAuC;AACvC,4CAAsD;AACtD,uCAA0C;AAC1C,iEAA+C;AAE/C,QAAQ;AACR,sFAAiE;AACjE,gFAA2D;AAC3D,8EAAyD;AAEzD,SAAS;AACT,kCAA6D;AAE7D,MAAM,SAAS,GAAG,IAAA,gBAAU,GAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,aAAa,EAAE;QACb,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY;KAC5C;IAED,0CAA0C;IAC1C,aAAa,EAAE;QACb,MAAM,EAAE,QAAQ;QAChB,0DAA0D;QAC1D,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC,CAAA;AAEH,SAAwB,QAAQ,CAAC,EAC/B,MAAM,EACN,OAAO,EACP,IAAI,GAKL;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAqB,IAAI,CAAC,CAAA;IAC9D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IAEtD,OAAO,CACL,uCACE,SAAS,EAAE,OAAO,CAAC,aAAa,EAChC,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,CAAC,MAAM,EAAE;gBACX,cAAc,CAAC,EAAE,CAAC,CAAA;gBAClB,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;aACjB;QACH,CAAC;QAED,8BAAC,qBAAU;YACR,MAAM,CAAC,CAAC,CAAC,8BAAC,uBAAiB,OAAG,CAAC,CAAC,CAAC,8BAAC,oBAAc,OAAG;YACnD,IAAI;YACL,8BAAC,qBAAU,IACT,OAAO,EAAE,KAAK,CAAC,EAAE;oBACf,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;oBAC9B,KAAK,CAAC,eAAe,EAAE,CAAA;gBACzB,CAAC,EACD,SAAS,EAAE,OAAO,CAAC,aAAa;gBAEhC,8BAAC,mBAAa,OAAG,CACN,CACF;QACZ,MAAM,CAAC,CAAC,CAAC,CACR,8BAAC,cAAW,IACV,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE;gBACT;oBACE,KAAK,EAAE,kBAAkB;oBACzB,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,CAAC,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wBACjC,KAAK,CAAC,cAAc,CAAC,IAAA,qBAAc,EAAC,CAAC,CAAC,CAAC,CAAA;oBACzC,CAAC;iBACF;gBACD;oBACE,KAAK,EAAE,uBAAuB;oBAC9B,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,CAAC,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wBACjC,KAAK,CAAC,mBAAmB,CAAC,IAAA,qBAAc,EAAC,CAAC,CAAC,CAAC,CAAA;oBAC9C,CAAC;iBACF;aACF,EACD,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;gBACpC,QAAQ,EAAE,CAAA;gBACV,SAAS,CAAC,IAAI,CAAC,CAAA;YACjB,CAAC,EACD,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAC9B,CACH,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAA;AACH,CAAC;AAjED,2BAiEC"}
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import { NodeData } from '../util';
4
+ export interface InfoArgs {
5
+ target: HTMLElement;
6
+ id: string;
7
+ conf: AnyConfigurationModel;
8
+ }
9
+ export default function TrackLabel({ data }: {
10
+ data: NodeData;
11
+ }): JSX.Element;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const react_1 = __importStar(require("react"));
30
+ const material_1 = require("@mui/material");
31
+ const mui_1 = require("tss-react/mui");
32
+ const Menu_1 = __importDefault(require("@jbrowse/core/ui/Menu"));
33
+ const util_1 = require("@jbrowse/core/util");
34
+ const configuration_1 = require("@jbrowse/core/configuration");
35
+ // icons
36
+ const MoreHoriz_1 = __importDefault(require("@mui/icons-material/MoreHoriz"));
37
+ // locals
38
+ const util_2 = require("../util");
39
+ const ui_1 = require("@jbrowse/core/ui");
40
+ const useStyles = (0, mui_1.makeStyles)()({
41
+ compactCheckbox: {
42
+ padding: 0,
43
+ },
44
+ checkboxLabel: {
45
+ marginRight: 0,
46
+ '&:hover': {
47
+ backgroundColor: '#eee',
48
+ },
49
+ },
50
+ });
51
+ function TrackLabel({ data }) {
52
+ var _a, _b;
53
+ const { classes } = useStyles();
54
+ const { checked, conf, model, drawerPosition, id, name, onChange, selected } = data;
55
+ const [info, setInfo] = (0, react_1.useState)();
56
+ const description = (conf && (0, configuration_1.readConfObject)(conf, ['description'])) || '';
57
+ return (react_1.default.createElement(react_1.default.Fragment, null,
58
+ react_1.default.createElement(material_1.Tooltip, { title: description + (selected ? ' (in selection)' : ''), placement: drawerPosition === 'left' ? 'right' : 'left' },
59
+ react_1.default.createElement(material_1.FormControlLabel, { className: classes.checkboxLabel, control: react_1.default.createElement(material_1.Checkbox, { className: classes.compactCheckbox, checked: checked, onChange: () => onChange(id), disabled: (0, util_2.isUnsupported)(name), inputProps: {
60
+ // @ts-ignore
61
+ 'data-testid': `htsTrackEntry-${id}`,
62
+ } }), label: react_1.default.createElement("div", { style: { background: selected ? '#cccc' : undefined } },
63
+ react_1.default.createElement(ui_1.SanitizedHTML, { html: name })) })),
64
+ react_1.default.createElement(material_1.IconButton, { onClick: e => setInfo({ target: e.currentTarget, id, conf }), style: { padding: 0 }, color: "secondary", "data-testid": `htsTrackEntryMenu-${id}` },
65
+ react_1.default.createElement(MoreHoriz_1.default, null)),
66
+ info ? (react_1.default.createElement(Menu_1.default, { anchorEl: info === null || info === void 0 ? void 0 : info.target, menuItems: [
67
+ ...(((_b = (_a = (0, util_1.getSession)(model)).getTrackActionMenuItems) === null || _b === void 0 ? void 0 : _b.call(_a, info.conf)) || []),
68
+ {
69
+ label: 'Add to selection',
70
+ onClick: () => model.addToSelection([info.conf]),
71
+ },
72
+ ...(selected
73
+ ? [
74
+ {
75
+ label: 'Remove from selection',
76
+ onClick: () => model.removeFromSelection([info.conf]),
77
+ },
78
+ ]
79
+ : []),
80
+ ], onMenuItemClick: (_event, callback) => {
81
+ callback();
82
+ setInfo(undefined);
83
+ }, open: Boolean(info), onClose: () => setInfo(undefined) })) : null));
84
+ }
85
+ exports.default = TrackLabel;
86
+ //# sourceMappingURL=TrackLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrackLabel.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { NodeData } from '../util';
3
+ export default function Node({ data, isOpen, style, setOpen, }: {
4
+ data: NodeData;
5
+ isOpen: boolean;
6
+ style?: {
7
+ height: number;
8
+ };
9
+ setOpen: (arg: boolean) => void;
10
+ }): JSX.Element;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const mui_1 = require("tss-react/mui");
8
+ // locals
9
+ const TrackCategory_1 = __importDefault(require("./TrackCategory"));
10
+ const TrackLabel_1 = __importDefault(require("./TrackLabel"));
11
+ const useStyles = (0, mui_1.makeStyles)()(theme => ({
12
+ // this accordionBase element's small padding is used to give a margin to
13
+ // accordionColor it a "margin" because the virtualized elements can't really
14
+ // use margin in a conventional way (it doesn't affect layout)
15
+ accordionBase: {
16
+ display: 'flex',
17
+ },
18
+ accordionCard: {
19
+ padding: 3,
20
+ cursor: 'pointer',
21
+ display: 'flex',
22
+ },
23
+ nestingLevelMarker: {
24
+ position: 'absolute',
25
+ borderLeft: '1.5px solid #555',
26
+ },
27
+ // accordionColor set's display:flex so that the child accordionText use
28
+ // vertically centered text
29
+ accordionColor: {
30
+ background: theme.palette.tertiary.main,
31
+ color: theme.palette.tertiary.contrastText,
32
+ width: '100%',
33
+ display: 'flex',
34
+ paddingLeft: 5,
35
+ },
36
+ }));
37
+ // An individual node in the track selector. Note: manually sets cursor:
38
+ // pointer improves usability for what can be clicked
39
+ function Node({ data, isOpen, style, setOpen, }) {
40
+ const { isLeaf, nestingLevel } = data;
41
+ const { classes } = useStyles();
42
+ const width = 10;
43
+ const marginLeft = nestingLevel * width + (isLeaf ? width : 0);
44
+ return (react_1.default.createElement("div", { style: style, className: !isLeaf ? classes.accordionBase : undefined },
45
+ new Array(nestingLevel).fill(0).map((_, idx) => (react_1.default.createElement("div", { key: `mark-${idx}`, style: { left: idx * width + 4, height: style === null || style === void 0 ? void 0 : style.height }, className: classes.nestingLevelMarker }))),
46
+ react_1.default.createElement("div", { className: !isLeaf ? classes.accordionCard : undefined, style: {
47
+ marginLeft,
48
+ whiteSpace: 'nowrap',
49
+ width: '100%',
50
+ } },
51
+ react_1.default.createElement("div", { className: !isLeaf ? classes.accordionColor : undefined }, !isLeaf ? (react_1.default.createElement(TrackCategory_1.default, { isOpen: isOpen, data: data, setOpen: setOpen })) : (react_1.default.createElement(TrackLabel_1.default, { data: data }))))));
52
+ }
53
+ exports.default = Node;
54
+ //# sourceMappingURL=TrackListNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrackListNode.js","sourceRoot":"","sources":["../../../../src/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.tsx"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,uCAA0C;AAE1C,SAAS;AACT,oEAAsC;AACtC,8DAAqC;AAGrC,MAAM,SAAS,GAAG,IAAA,gBAAU,GAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,yEAAyE;IACzE,6EAA6E;IAC7E,8DAA8D;IAC9D,aAAa,EAAE;QACb,OAAO,EAAE,MAAM;KAChB;IAED,aAAa,EAAE;QACb,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,MAAM;KAChB;IAED,kBAAkB,EAAE;QAClB,QAAQ,EAAE,UAAU;QACpB,UAAU,EAAE,kBAAkB;KAC/B;IACD,wEAAwE;IACxE,2BAA2B;IAC3B,cAAc,EAAE;QACd,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI;QACvC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY;QAC1C,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,CAAC;KACf;CACF,CAAC,CAAC,CAAA;AAEH,wEAAwE;AACxE,qDAAqD;AACrD,SAAwB,IAAI,CAAC,EAC3B,IAAI,EACJ,MAAM,EACN,KAAK,EACL,OAAO,GAMR;IACC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAA;IAErC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,EAAE,CAAA;IAChB,MAAM,UAAU,GAAG,YAAY,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAE9D,OAAO,CACL,uCAAK,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QACtE,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAC/C,uCACE,GAAG,EAAE,QAAQ,GAAG,EAAE,EAClB,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,GAAG,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAE,EACvD,SAAS,EAAE,OAAO,CAAC,kBAAkB,GACrC,CACH,CAAC;QACF,uCACE,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EACtD,KAAK,EAAE;gBACL,UAAU;gBACV,UAAU,EAAE,QAAQ;gBACpB,KAAK,EAAE,MAAM;aACd;YAED,uCAAK,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,IACzD,CAAC,MAAM,CAAC,CAAC,CAAC,CACT,8BAAC,uBAAQ,IAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,GAAI,CAC3D,CAAC,CAAC,CAAC,CACF,8BAAC,oBAAU,IAAC,IAAI,EAAE,IAAI,GAAI,CAC3B,CACG,CACF,CACF,CACP,CAAA;AACH,CAAC;AA5CD,uBA4CC"}
@@ -1,3 +1,19 @@
1
1
  import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
- import { TreeNode } from '../model';
2
+ import { HierarchicalTrackSelectorModel, TreeNode } from '../model';
3
+ export interface NodeData {
4
+ nestingLevel: number;
5
+ checked: boolean;
6
+ conf: AnyConfigurationModel;
7
+ drawerPosition: unknown;
8
+ id: string;
9
+ isLeaf: boolean;
10
+ name: string;
11
+ onChange: Function;
12
+ toggleCollapse: (arg: string) => void;
13
+ tree: TreeNode;
14
+ selected: boolean;
15
+ model: HierarchicalTrackSelectorModel;
16
+ }
3
17
  export declare function getAllChildren(subtree?: TreeNode): AnyConfigurationModel[];
18
+ export declare function treeToMap(tree: TreeNode, map?: Map<string, TreeNode>): Map<string, TreeNode>;
19
+ export declare function isUnsupported(name?: string): boolean;
@@ -1,9 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAllChildren = void 0;
3
+ exports.isUnsupported = exports.treeToMap = exports.getAllChildren = void 0;
4
4
  function getAllChildren(subtree) {
5
5
  // @ts-ignore
6
6
  return ((subtree === null || subtree === void 0 ? void 0 : subtree.children.map(t => t.children.length ? getAllChildren(t) : t.conf)) || []).flat(Infinity);
7
7
  }
8
8
  exports.getAllChildren = getAllChildren;
9
+ function treeToMap(tree, map = new Map()) {
10
+ if (tree.id && tree.children.length) {
11
+ map.set(tree.id, tree);
12
+ }
13
+ for (let i = 0; i < tree.children.length; i++) {
14
+ const node = tree.children[i];
15
+ treeToMap(node, map);
16
+ }
17
+ return map;
18
+ }
19
+ exports.treeToMap = treeToMap;
20
+ function isUnsupported(name = '') {
21
+ return name.endsWith('(Unsupported)') || name.endsWith('(Unknown)');
22
+ }
23
+ exports.isUnsupported = isUnsupported;
9
24
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/HierarchicalTrackSelectorWidget/components/util.ts"],"names":[],"mappings":";;;AAGA,SAAgB,cAAc,CAAC,OAAkB;IAC/C,aAAa;IACb,OAAO,CACL,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,IAA8B,CAC1E,KAAI,EAAE,CACR,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClB,CAAC;AAPD,wCAOC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/HierarchicalTrackSelectorWidget/components/util.ts"],"names":[],"mappings":";;;AAkBA,SAAgB,cAAc,CAAC,OAAkB;IAC/C,aAAa;IACb,OAAO,CACL,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,IAA8B,CAC1E,KAAI,EAAE,CACR,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClB,CAAC;AAPD,wCAOC;AAED,SAAgB,SAAS,CAAC,IAAc,EAAE,MAAM,IAAI,GAAG,EAAoB;IACzE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;QACnC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;KACvB;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC7B,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;KACrB;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AATD,8BASC;AAED,SAAgB,aAAa,CAAC,IAAI,GAAG,EAAE;IACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AACrE,CAAC;AAFD,sCAEC"}
@@ -1,4 +1,7 @@
1
1
  import stateModelFactory, { HierarchicalTrackSelectorModel } from './model';
2
2
  import configSchema from './configSchema';
3
+ import PluginManager from '@jbrowse/core/PluginManager';
3
4
  export { stateModelFactory, configSchema };
4
5
  export type { HierarchicalTrackSelectorModel };
6
+ declare const _default: (pluginManager: PluginManager) => void;
7
+ export default _default;
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
@@ -8,4 +31,17 @@ const model_1 = __importDefault(require("./model"));
8
31
  exports.stateModelFactory = model_1.default;
9
32
  const configSchema_1 = __importDefault(require("./configSchema"));
10
33
  exports.configSchema = configSchema_1.default;
34
+ const pluggableElementTypes_1 = require("@jbrowse/core/pluggableElementTypes");
35
+ const react_1 = require("react");
36
+ exports.default = (pluginManager) => {
37
+ pluginManager.addWidgetType(() => {
38
+ return new pluggableElementTypes_1.WidgetType({
39
+ name: 'HierarchicalTrackSelectorWidget',
40
+ heading: 'Available tracks',
41
+ configSchema: configSchema_1.default,
42
+ stateModel: (0, model_1.default)(pluginManager),
43
+ ReactComponent: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./components/HierarchicalTrackSelector')))),
44
+ });
45
+ });
46
+ };
11
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/HierarchicalTrackSelectorWidget/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2E;AAGlE,4BAHF,eAAiB,CAGE;AAF1B,kEAAyC;AAEb,uBAFrB,sBAAY,CAEqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/HierarchicalTrackSelectorWidget/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA2E;AAMlE,4BANF,eAAiB,CAME;AAL1B,kEAAyC;AAKb,uBALrB,sBAAY,CAKqB;AAHxC,+EAAgE;AAChE,iCAA4B;AAK5B,kBAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE;QAC/B,OAAO,IAAI,kCAAU,CAAC;YACpB,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,kBAAkB;YAC3B,YAAY,EAAZ,sBAAY;YACZ,UAAU,EAAE,IAAA,eAAiB,EAAC,aAAa,CAAC;YAC5C,cAAc,EAAE,IAAA,YAAI,EAClB,GAAG,EAAE,mDAAQ,wCAAwC,GAAC,CACvD;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import { Instance } from 'mobx-state-tree';
2
2
  import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import { AbstractSessionModel } from '@jbrowse/core/util';
3
4
  import PluginManager from '@jbrowse/core/PluginManager';
5
+ export declare function matches(query: string, conf: AnyConfigurationModel, session: AbstractSessionModel): any;
4
6
  export type TreeNode = {
5
7
  name: string;
6
8
  id: string;
@@ -16,7 +18,6 @@ export default function stateTreeFactory(pluginManager: PluginManager): import("
16
18
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
17
19
  type: import("mobx-state-tree").ISimpleType<"HierarchicalTrackSelectorWidget">;
18
20
  collapsed: import("mobx-state-tree").IMapType<import("mobx-state-tree").ISimpleType<boolean>>;
19
- filterText: import("mobx-state-tree").IType<string | undefined, string, string>;
20
21
  view: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IReferenceType<import("mobx-state-tree").IAnyType>>;
21
22
  }, {
22
23
  selection: ({
@@ -24,7 +25,9 @@ export default function stateTreeFactory(pluginManager: PluginManager): import("
24
25
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
25
26
  setSubschema(slotName: string, data: unknown): any;
26
27
  } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>)[];
28
+ filterText: string;
27
29
  } & {
30
+ setSelection(elt: AnyConfigurationModel[]): void;
28
31
  addToSelection(elt: AnyConfigurationModel[]): void;
29
32
  removeFromSelection(elt: AnyConfigurationModel[]): void;
30
33
  clearSelection(): void;