@jbrowse/plugin-data-management 1.7.11 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +115 -162
  2. package/dist/AddConnectionWidget/components/AddConnectionWidget.js.map +1 -0
  3. package/dist/AddConnectionWidget/components/ConfigureConnection.js +33 -32
  4. package/dist/AddConnectionWidget/components/ConfigureConnection.js.map +1 -0
  5. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +48 -64
  6. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js.map +1 -0
  7. package/dist/AddConnectionWidget/index.js +10 -20
  8. package/dist/AddConnectionWidget/index.js.map +1 -0
  9. package/dist/AddConnectionWidget/model.js +7 -15
  10. package/dist/AddConnectionWidget/model.js.map +1 -0
  11. package/dist/AddTrackWidget/components/AddTrackWidget.js +206 -230
  12. package/dist/AddTrackWidget/components/AddTrackWidget.js.map +1 -0
  13. package/dist/AddTrackWidget/components/ConfirmTrack.js +268 -385
  14. package/dist/AddTrackWidget/components/ConfirmTrack.js.map +1 -0
  15. package/dist/AddTrackWidget/components/TrackSourceSelect.js +28 -55
  16. package/dist/AddTrackWidget/components/TrackSourceSelect.js.map +1 -0
  17. package/dist/AddTrackWidget/index.js +10 -20
  18. package/dist/AddTrackWidget/index.js.map +1 -0
  19. package/dist/AddTrackWidget/model.js +150 -174
  20. package/dist/AddTrackWidget/model.js.map +1 -0
  21. package/dist/AssemblyManager/AssemblyAddForm.js +162 -282
  22. package/dist/AssemblyManager/AssemblyAddForm.js.map +1 -0
  23. package/dist/AssemblyManager/AssemblyEditor.js +12 -23
  24. package/dist/AssemblyManager/AssemblyEditor.js.map +1 -0
  25. package/dist/AssemblyManager/AssemblyManager.js +102 -132
  26. package/dist/AssemblyManager/AssemblyManager.js.map +1 -0
  27. package/dist/AssemblyManager/AssemblyTable.d.ts +1 -1
  28. package/dist/AssemblyManager/AssemblyTable.js +60 -84
  29. package/dist/AssemblyManager/AssemblyTable.js.map +1 -0
  30. package/dist/AssemblyManager/index.js +8 -14
  31. package/dist/AssemblyManager/index.js.map +1 -0
  32. package/dist/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js +49 -50
  33. package/dist/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js.map +1 -0
  34. package/dist/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js +28 -44
  35. package/dist/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js.map +1 -0
  36. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +1 -0
  37. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +416 -639
  38. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -0
  39. package/dist/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js +45 -74
  40. package/dist/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +1 -0
  41. package/dist/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js +57 -91
  42. package/dist/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +1 -0
  43. package/dist/HierarchicalTrackSelectorWidget/index.js +10 -20
  44. package/dist/HierarchicalTrackSelectorWidget/index.js.map +1 -0
  45. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +3 -1
  46. package/dist/HierarchicalTrackSelectorWidget/model.js +247 -285
  47. package/dist/HierarchicalTrackSelectorWidget/model.js.map +1 -0
  48. package/dist/PluginStoreWidget/components/CustomPluginForm.js +140 -202
  49. package/dist/PluginStoreWidget/components/CustomPluginForm.js.map +1 -0
  50. package/dist/PluginStoreWidget/components/InstalledPlugin.js +112 -127
  51. package/dist/PluginStoreWidget/components/InstalledPlugin.js.map +1 -0
  52. package/dist/PluginStoreWidget/components/InstalledPluginsList.js +22 -45
  53. package/dist/PluginStoreWidget/components/InstalledPluginsList.js.map +1 -0
  54. package/dist/PluginStoreWidget/components/PluginCard.js +95 -110
  55. package/dist/PluginStoreWidget/components/PluginCard.js.map +1 -0
  56. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +188 -227
  57. package/dist/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -0
  58. package/dist/PluginStoreWidget/index.d.ts +0 -1
  59. package/dist/PluginStoreWidget/index.js +10 -28
  60. package/dist/PluginStoreWidget/index.js.map +1 -0
  61. package/dist/PluginStoreWidget/model.js +21 -26
  62. package/dist/PluginStoreWidget/model.js.map +1 -0
  63. package/dist/SetDefaultSession/SetDefaultSession.js +34 -58
  64. package/dist/SetDefaultSession/SetDefaultSession.js.map +1 -0
  65. package/dist/SetDefaultSession/index.js +8 -14
  66. package/dist/SetDefaultSession/index.js.map +1 -0
  67. package/dist/index.js +109 -147
  68. package/dist/index.js.map +1 -0
  69. package/dist/ucsc-trackhub/configSchema.js +18 -28
  70. package/dist/ucsc-trackhub/configSchema.js.map +1 -0
  71. package/dist/ucsc-trackhub/index.js +10 -22
  72. package/dist/ucsc-trackhub/index.js.map +1 -0
  73. package/dist/ucsc-trackhub/model.js +150 -128
  74. package/dist/ucsc-trackhub/model.js.map +1 -0
  75. package/dist/ucsc-trackhub/ucscAssemblies.js +3 -9
  76. package/dist/ucsc-trackhub/ucscAssemblies.js.map +1 -0
  77. package/dist/ucsc-trackhub/ucscTrackHub.js +458 -491
  78. package/dist/ucsc-trackhub/ucscTrackHub.js.map +1 -0
  79. package/esm/AddConnectionWidget/components/AddConnectionWidget.d.ts +9 -0
  80. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +86 -0
  81. package/esm/AddConnectionWidget/components/AddConnectionWidget.js.map +1 -0
  82. package/esm/AddConnectionWidget/components/ConfigureConnection.d.ts +2 -0
  83. package/esm/AddConnectionWidget/components/ConfigureConnection.js +11 -0
  84. package/esm/AddConnectionWidget/components/ConfigureConnection.js.map +1 -0
  85. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +8 -0
  86. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +24 -0
  87. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js.map +1 -0
  88. package/esm/AddConnectionWidget/index.d.ts +2 -0
  89. package/esm/AddConnectionWidget/index.js +4 -0
  90. package/esm/AddConnectionWidget/index.js.map +1 -0
  91. package/esm/AddConnectionWidget/model.d.ts +5 -0
  92. package/esm/AddConnectionWidget/model.js +7 -0
  93. package/esm/AddConnectionWidget/model.js.map +1 -0
  94. package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +7 -0
  95. package/esm/AddTrackWidget/components/AddTrackWidget.js +139 -0
  96. package/esm/AddTrackWidget/components/AddTrackWidget.js.map +1 -0
  97. package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +7 -0
  98. package/esm/AddTrackWidget/components/ConfirmTrack.js +247 -0
  99. package/esm/AddTrackWidget/components/ConfirmTrack.js.map +1 -0
  100. package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +7 -0
  101. package/esm/AddTrackWidget/components/TrackSourceSelect.js +27 -0
  102. package/esm/AddTrackWidget/components/TrackSourceSelect.js.map +1 -0
  103. package/esm/AddTrackWidget/index.d.ts +2 -0
  104. package/esm/AddTrackWidget/index.js +4 -0
  105. package/esm/AddTrackWidget/index.js.map +1 -0
  106. package/esm/AddTrackWidget/model.d.ts +51 -0
  107. package/esm/AddTrackWidget/model.js +154 -0
  108. package/esm/AddTrackWidget/model.js.map +1 -0
  109. package/esm/AssemblyManager/AssemblyAddForm.d.ts +6 -0
  110. package/esm/AssemblyManager/AssemblyAddForm.js +132 -0
  111. package/esm/AssemblyManager/AssemblyAddForm.js.map +1 -0
  112. package/esm/AssemblyManager/AssemblyEditor.d.ts +5 -0
  113. package/esm/AssemblyManager/AssemblyEditor.js +8 -0
  114. package/esm/AssemblyManager/AssemblyEditor.js.map +1 -0
  115. package/esm/AssemblyManager/AssemblyManager.d.ts +6 -0
  116. package/esm/AssemblyManager/AssemblyManager.js +69 -0
  117. package/esm/AssemblyManager/AssemblyManager.js.map +1 -0
  118. package/esm/AssemblyManager/AssemblyTable.d.ts +13 -0
  119. package/esm/AssemblyManager/AssemblyTable.js +62 -0
  120. package/esm/AssemblyManager/AssemblyTable.js.map +1 -0
  121. package/esm/AssemblyManager/index.d.ts +1 -0
  122. package/esm/AssemblyManager/index.js +2 -0
  123. package/esm/AssemblyManager/index.js.map +1 -0
  124. package/esm/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.d.ts +13 -0
  125. package/esm/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js +26 -0
  126. package/esm/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.js.map +1 -0
  127. package/esm/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.d.ts +13 -0
  128. package/esm/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js +24 -0
  129. package/esm/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.js.map +1 -0
  130. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.d.ts +11 -0
  131. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js +326 -0
  132. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.js.map +1 -0
  133. package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.d.ts +10 -0
  134. package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js +45 -0
  135. package/esm/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.js.map +1 -0
  136. package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.d.ts +11 -0
  137. package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js +57 -0
  138. package/esm/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.js.map +1 -0
  139. package/esm/HierarchicalTrackSelectorWidget/index.d.ts +2 -0
  140. package/esm/HierarchicalTrackSelectorWidget/index.js +4 -0
  141. package/esm/HierarchicalTrackSelectorWidget/index.js.map +1 -0
  142. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +61 -0
  143. package/esm/HierarchicalTrackSelectorWidget/model.js +200 -0
  144. package/esm/HierarchicalTrackSelectorWidget/model.js.map +1 -0
  145. package/esm/PluginStoreWidget/components/CustomPluginForm.d.ts +9 -0
  146. package/esm/PluginStoreWidget/components/CustomPluginForm.js +109 -0
  147. package/esm/PluginStoreWidget/components/CustomPluginForm.js.map +1 -0
  148. package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +11 -0
  149. package/esm/PluginStoreWidget/components/InstalledPlugin.js +77 -0
  150. package/esm/PluginStoreWidget/components/InstalledPlugin.js.map +1 -0
  151. package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +9 -0
  152. package/esm/PluginStoreWidget/components/InstalledPluginsList.js +16 -0
  153. package/esm/PluginStoreWidget/components/InstalledPluginsList.js.map +1 -0
  154. package/esm/PluginStoreWidget/components/PluginCard.d.ts +10 -0
  155. package/esm/PluginStoreWidget/components/PluginCard.js +61 -0
  156. package/esm/PluginStoreWidget/components/PluginCard.js.map +1 -0
  157. package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +7 -0
  158. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +106 -0
  159. package/esm/PluginStoreWidget/components/PluginStoreWidget.js.map +1 -0
  160. package/esm/PluginStoreWidget/index.d.ts +2 -0
  161. package/esm/PluginStoreWidget/index.js +4 -0
  162. package/esm/PluginStoreWidget/index.js.map +1 -0
  163. package/esm/PluginStoreWidget/model.d.ts +13 -0
  164. package/esm/PluginStoreWidget/model.js +20 -0
  165. package/esm/PluginStoreWidget/model.js.map +1 -0
  166. package/esm/SetDefaultSession/SetDefaultSession.d.ts +6 -0
  167. package/esm/SetDefaultSession/SetDefaultSession.js +34 -0
  168. package/esm/SetDefaultSession/SetDefaultSession.js.map +1 -0
  169. package/esm/SetDefaultSession/index.d.ts +1 -0
  170. package/esm/SetDefaultSession/index.js +2 -0
  171. package/esm/SetDefaultSession/index.js.map +1 -0
  172. package/esm/index.d.ts +27 -0
  173. package/esm/index.js +70 -0
  174. package/esm/index.js.map +1 -0
  175. package/esm/ucsc-trackhub/configSchema.d.ts +2 -0
  176. package/esm/ucsc-trackhub/configSchema.js +18 -0
  177. package/esm/ucsc-trackhub/configSchema.js.map +1 -0
  178. package/esm/ucsc-trackhub/index.d.ts +2 -0
  179. package/esm/ucsc-trackhub/index.js +3 -0
  180. package/esm/ucsc-trackhub/index.js.map +1 -0
  181. package/esm/ucsc-trackhub/model.d.ts +15 -0
  182. package/esm/ucsc-trackhub/model.js +82 -0
  183. package/esm/ucsc-trackhub/model.js.map +1 -0
  184. package/esm/ucsc-trackhub/ucscAssemblies.d.ts +2 -0
  185. package/esm/ucsc-trackhub/ucscAssemblies.js +201 -0
  186. package/esm/ucsc-trackhub/ucscAssemblies.js.map +1 -0
  187. package/esm/ucsc-trackhub/ucscTrackHub.d.ts +6 -0
  188. package/esm/ucsc-trackhub/ucscTrackHub.js +348 -0
  189. package/esm/ucsc-trackhub/ucscTrackHub.js.map +1 -0
  190. package/package.json +19 -11
  191. package/src/AddConnectionWidget/components/AddConnectionWidget.js +14 -10
  192. package/src/AddConnectionWidget/components/ConnectionTypeSelect.tsx +2 -4
  193. package/src/AddConnectionWidget/components/__snapshots__/AddConnectionWidget.test.js.snap +63 -67
  194. package/src/AddTrackWidget/components/AddTrackWidget.test.js +4 -4
  195. package/src/AddTrackWidget/components/AddTrackWidget.tsx +5 -5
  196. package/src/AddTrackWidget/components/ConfirmTrack.tsx +22 -22
  197. package/src/AddTrackWidget/components/TrackSourceSelect.tsx +9 -5
  198. package/src/AddTrackWidget/components/__snapshots__/AddTrackWidget.test.js.snap +76 -95
  199. package/src/AssemblyManager/AssemblyAddForm.tsx +5 -11
  200. package/src/AssemblyManager/AssemblyManager.tsx +8 -8
  201. package/src/AssemblyManager/AssemblyTable.tsx +10 -10
  202. package/src/HierarchicalTrackSelectorWidget/components/CloseConnectionDialog.tsx +1 -1
  203. package/src/HierarchicalTrackSelectorWidget/components/DeleteConnectionDialog.tsx +1 -1
  204. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.test.js +1 -1
  205. package/src/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.tsx +15 -13
  206. package/src/HierarchicalTrackSelectorWidget/components/ManageConnectionsDialog.tsx +6 -6
  207. package/src/HierarchicalTrackSelectorWidget/components/ToggleConnectionsDialog.tsx +7 -7
  208. package/src/HierarchicalTrackSelectorWidget/components/__snapshots__/HierarchicalTrackSelector.test.js.snap +122 -115
  209. package/src/PluginStoreWidget/components/CustomPluginForm.tsx +11 -14
  210. package/src/PluginStoreWidget/components/InstalledPlugin.tsx +9 -8
  211. package/src/PluginStoreWidget/components/InstalledPluginsList.tsx +1 -1
  212. package/src/PluginStoreWidget/components/PluginCard.tsx +10 -11
  213. package/src/PluginStoreWidget/components/PluginStoreWidget.tsx +9 -9
  214. package/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.js.snap +267 -217
  215. package/src/PluginStoreWidget/index.js +0 -1
  216. package/src/SetDefaultSession/SetDefaultSession.tsx +1 -1
  217. package/dist/AddConnectionWidget/components/AddConnectionWidget.test.js +0 -279
  218. package/dist/AddTrackWidget/components/AddTrackWidget.test.js +0 -218
  219. package/dist/AddTrackWidget/index.test.js +0 -292
  220. package/dist/AssemblyManager/AssemblyManager.test.js +0 -113
  221. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalTrackSelector.test.js +0 -191
  222. package/dist/HierarchicalTrackSelectorWidget/model.test.js +0 -28
  223. package/dist/PluginStoreWidget/components/PluginStoreWidget.test.js +0 -201
  224. package/dist/PluginStoreWidget/model.test.js +0 -17
  225. package/dist/SetDefaultSession/SetDefaultSession.test.js +0 -75
  226. package/dist/index.test.js +0 -56
@@ -1,298 +1,260 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = stateTreeFactory;
9
- exports.generateHierarchy = generateHierarchy;
10
-
11
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
12
-
13
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
14
-
15
- var _mobxStateTree = require("mobx-state-tree");
16
-
17
- var _configuration = require("@jbrowse/core/configuration");
18
-
19
- var _util = require("@jbrowse/core/util");
20
-
21
- var _mst = require("@jbrowse/core/util/types/mst");
22
-
23
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
24
-
25
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
26
-
27
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
28
-
29
- function hasAnyOverlap() {
30
- var a1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
31
- var a2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
32
- return !!a1.find(function (value) {
33
- return a2.includes(value);
34
- });
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ var __values = (this && this.__values) || function(o) {
28
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
29
+ if (m) return m.call(o);
30
+ if (o && typeof o.length === "number") return {
31
+ next: function () {
32
+ if (o && i >= o.length) o = void 0;
33
+ return { value: o && o[i++], done: !o };
34
+ }
35
+ };
36
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generateHierarchy = void 0;
40
+ var mobx_state_tree_1 = require("mobx-state-tree");
41
+ var configuration_1 = require("@jbrowse/core/configuration");
42
+ var util_1 = require("@jbrowse/core/util");
43
+ var mst_1 = require("@jbrowse/core/util/types/mst");
44
+ function hasAnyOverlap(a1, a2) {
45
+ if (a1 === void 0) { a1 = []; }
46
+ if (a2 === void 0) { a2 = []; }
47
+ return !!a1.find(function (value) { return a2.includes(value); });
35
48
  }
36
-
37
49
  function passesFilter(filter, config) {
38
- var categories = (0, _configuration.readConfObject)(config, 'category');
39
- var filterLower = filter.toLowerCase();
40
- return getTrackName(config).toLowerCase().includes(filterLower) || (categories === null || categories === void 0 ? void 0 : categories.filter(function (c) {
41
- return c.toLowerCase().includes(filterLower);
42
- }).length);
50
+ var categories = (0, configuration_1.readConfObject)(config, 'category');
51
+ var filterLower = filter.toLowerCase();
52
+ return (getTrackName(config).toLowerCase().includes(filterLower) ||
53
+ (categories === null || categories === void 0 ? void 0 : categories.filter(function (c) { return c.toLowerCase().includes(filterLower); }).length));
43
54
  }
44
-
45
55
  function getTrackName(config) {
46
- if (!config.trackId) {
47
- throw new Error('not a track');
48
- }
49
-
50
- return (0, _configuration.readConfObject)(config, 'name') || "Reference sequence (".concat((0, _configuration.readConfObject)((0, _mobxStateTree.getParent)(config), 'name'), ")");
56
+ if (!config.trackId) {
57
+ throw new Error('not a track');
58
+ }
59
+ return ((0, configuration_1.readConfObject)(config, 'name') ||
60
+ "Reference sequence (".concat((0, configuration_1.readConfObject)((0, mobx_state_tree_1.getParent)(config), 'name'), ")"));
51
61
  }
52
-
53
62
  function generateHierarchy(model, trackConfigurations, collapsed) {
54
- var hierarchy = {
55
- children: []
56
- };
57
- var filterText = model.filterText,
58
- view = model.view;
59
- trackConfigurations.filter(function (conf) {
60
- return passesFilter(filterText, conf);
61
- }).forEach(function (conf) {
62
- // copy the categories since this array can be mutated downstream
63
- var categories = (0, _toConsumableArray2.default)((0, _configuration.readConfObject)(conf, 'category') || []); // silly thing where if trackId ends with sessionTrack, then push it to
64
- // a category that starts with a space to force sort to the top...
65
- // double whammy hackyness
66
-
67
- if (conf.trackId.endsWith('sessionTrack')) {
68
- categories.unshift(' Session tracks');
69
- }
70
-
71
- var currLevel = hierarchy; // find existing category to put track into or create it
72
-
73
- var _loop = function _loop(i) {
74
- var category = categories[i];
75
- var ret = currLevel.children.find(function (c) {
76
- return c.name === category;
77
- });
78
- var id = categories.slice(0, i + 1).join(',');
79
-
80
- if (!ret) {
81
- var n = {
82
- children: [],
83
- name: category,
84
- id: id,
85
- isOpenByDefault: !collapsed.get(id)
63
+ var hierarchy = { children: [] };
64
+ var filterText = model.filterText, view = model.view;
65
+ trackConfigurations
66
+ .filter(function (conf) { return passesFilter(filterText, conf); })
67
+ .forEach(function (conf) {
68
+ // copy the categories since this array can be mutated downstream
69
+ var categories = __spreadArray([], __read(((0, configuration_1.readConfObject)(conf, 'category') || [])), false);
70
+ // silly thing where if trackId ends with sessionTrack, then push it to
71
+ // a category that starts with a space to force sort to the top...
72
+ // double whammy hackyness
73
+ if (conf.trackId.endsWith('sessionTrack')) {
74
+ categories.unshift(' Session tracks');
75
+ }
76
+ var currLevel = hierarchy;
77
+ var _loop_1 = function (i) {
78
+ var category = categories[i];
79
+ var ret = currLevel.children.find(function (c) { return c.name === category; });
80
+ var id = categories.slice(0, i + 1).join(',');
81
+ if (!ret) {
82
+ var n = {
83
+ children: [],
84
+ name: category,
85
+ id: id,
86
+ isOpenByDefault: !collapsed.get(id),
87
+ };
88
+ currLevel.children.push(n);
89
+ currLevel = n;
90
+ }
91
+ else {
92
+ currLevel = ret;
93
+ }
86
94
  };
87
- currLevel.children.push(n);
88
- currLevel = n;
89
- } else {
90
- currLevel = ret;
91
- }
92
- };
93
-
94
- for (var i = 0; i < categories.length; i++) {
95
- _loop(i);
96
- }
97
-
98
- var tracks = view.tracks; // using splice here tries to group leaf nodes above hierarchical nodes
99
-
100
- currLevel.children.splice(currLevel.children.findIndex(function (elt) {
101
- return elt.children.length;
102
- }), 0, {
103
- id: conf.trackId,
104
- name: getTrackName(conf),
105
- conf: conf,
106
- checked: !!tracks.find(function (f) {
107
- return f.configuration === conf;
108
- }),
109
- children: []
95
+ // find existing category to put track into or create it
96
+ for (var i = 0; i < categories.length; i++) {
97
+ _loop_1(i);
98
+ }
99
+ var tracks = view.tracks;
100
+ // using splice here tries to group leaf nodes above hierarchical nodes
101
+ currLevel.children.splice(currLevel.children.findIndex(function (elt) { return elt.children.length; }), 0, {
102
+ id: conf.trackId,
103
+ name: getTrackName(conf),
104
+ conf: conf,
105
+ checked: !!tracks.find(function (f) { return f.configuration === conf; }),
106
+ children: [],
107
+ });
110
108
  });
111
- });
112
- return hierarchy.children;
109
+ return hierarchy.children;
113
110
  }
114
-
111
+ exports.generateHierarchy = generateHierarchy;
115
112
  function stateTreeFactory(pluginManager) {
116
- return _mobxStateTree.types.model('HierarchicalTrackSelectorWidget', {
117
- id: _mst.ElementId,
118
- type: _mobxStateTree.types.literal('HierarchicalTrackSelectorWidget'),
119
- collapsed: _mobxStateTree.types.map(_mobxStateTree.types.boolean),
120
- filterText: '',
121
- view: _mobxStateTree.types.safeReference(pluginManager.pluggableMstType('view', 'stateModel'))
122
- }).actions(function (self) {
123
- return {
124
- setView: function setView(view) {
125
- self.view = view;
126
- },
127
- toggleCategory: function toggleCategory(pathName) {
128
- self.collapsed.set(pathName, !self.collapsed.get(pathName));
129
- },
130
- clearFilterText: function clearFilterText() {
131
- self.filterText = '';
132
- },
133
- setFilterText: function setFilterText(newText) {
134
- self.filterText = newText;
135
- }
136
- };
137
- }).views(function (self) {
138
- return {
139
- getRefSeqTrackConf: function getRefSeqTrackConf(assemblyName) {
140
- var _getSession = (0, _util.getSession)(self),
141
- assemblyManager = _getSession.assemblyManager;
142
-
143
- var assembly = assemblyManager.get(assemblyName);
144
- var trackConf = assembly === null || assembly === void 0 ? void 0 : assembly.configuration.sequence;
145
- var viewType = pluginManager.getViewType(self.view.type);
146
-
147
- if (!trackConf) {
148
- return undefined;
149
- }
150
-
151
- var _iterator = _createForOfIteratorHelper(trackConf.displays),
152
- _step;
153
-
154
- try {
155
- var _loop2 = function _loop2() {
156
- var display = _step.value;
157
-
158
- if (viewType.displayTypes.find(function (d) {
159
- return d.name === display.type;
160
- })) {
161
- return {
162
- v: trackConf
163
- };
113
+ return mobx_state_tree_1.types
114
+ .model('HierarchicalTrackSelectorWidget', {
115
+ id: mst_1.ElementId,
116
+ type: mobx_state_tree_1.types.literal('HierarchicalTrackSelectorWidget'),
117
+ collapsed: mobx_state_tree_1.types.map(mobx_state_tree_1.types.boolean),
118
+ filterText: '',
119
+ view: mobx_state_tree_1.types.safeReference(pluginManager.pluggableMstType('view', 'stateModel')),
120
+ })
121
+ .actions(function (self) { return ({
122
+ setView: function (view) {
123
+ self.view = view;
124
+ },
125
+ toggleCategory: function (pathName) {
126
+ self.collapsed.set(pathName, !self.collapsed.get(pathName));
127
+ },
128
+ clearFilterText: function () {
129
+ self.filterText = '';
130
+ },
131
+ setFilterText: function (newText) {
132
+ self.filterText = newText;
133
+ },
134
+ }); })
135
+ .views(function (self) { return ({
136
+ getRefSeqTrackConf: function (assemblyName) {
137
+ var e_1, _a;
138
+ var assemblyManager = (0, util_1.getSession)(self).assemblyManager;
139
+ var assembly = assemblyManager.get(assemblyName);
140
+ var trackConf = assembly === null || assembly === void 0 ? void 0 : assembly.configuration.sequence;
141
+ var viewType = pluginManager.getViewType(self.view.type);
142
+ if (!trackConf) {
143
+ return undefined;
164
144
  }
165
- };
166
-
167
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
168
- var _ret = _loop2();
169
-
170
- if ((0, _typeof2.default)(_ret) === "object") return _ret.v;
171
- }
172
- } catch (err) {
173
- _iterator.e(err);
174
- } finally {
175
- _iterator.f();
176
- }
177
- }
178
- };
179
- }).views(function (self) {
180
- return {
181
- trackConfigurations: function trackConfigurations(assemblyName) {
182
- if (!self.view) {
183
- return [];
184
- }
185
-
186
- var _getSession2 = (0, _util.getSession)(self),
187
- tracks = _getSession2.tracks,
188
- assemblyManager = _getSession2.assemblyManager;
189
-
190
- var assembly = assemblyManager.get(assemblyName);
191
-
192
- if (!assembly) {
193
- return [];
194
- }
195
-
196
- var refseq = self.getRefSeqTrackConf(assemblyName); // filter out tracks that don't match the current assembly (check all
197
- // assembly aliases) and display types
198
-
199
- return (refseq ? [refseq] : []).concat((0, _toConsumableArray2.default)(tracks.filter(function (c) {
200
- var trackConfAssemblies = (0, _configuration.readConfObject)(c, 'assemblyNames');
201
- var allAliases = assembly.allAliases;
202
- return hasAnyOverlap(allAliases, trackConfAssemblies);
203
- }).filter(function (c) {
204
- var _pluginManager$getVie = pluginManager.getViewType(self.view.type),
205
- displayTypes = _pluginManager$getVie.displayTypes;
206
-
207
- var compatibleDisplays = displayTypes.map(function (d) {
208
- return d.name;
209
- });
210
- var trackDisplays = c.displays.map(function (d) {
211
- return d.type;
212
- });
213
- return hasAnyOverlap(compatibleDisplays, trackDisplays);
214
- })));
215
- },
216
-
217
- get assemblyNames() {
218
- var _self$view;
219
-
220
- return ((_self$view = self.view) === null || _self$view === void 0 ? void 0 : _self$view.assemblyNames) || [];
221
- },
222
-
223
- connectionTrackConfigurations: function connectionTrackConfigurations(assemblyName, connection) {
224
- if (!self.view) {
225
- return [];
226
- }
227
-
228
- var trackConfigurations = connection.tracks;
229
-
230
- var _getSession3 = (0, _util.getSession)(self),
231
- assemblyManager = _getSession3.assemblyManager;
232
-
233
- var assembly = assemblyManager.get(assemblyName);
234
-
235
- if (!(assembly && assembly.initialized)) {
236
- return [];
237
- } // filter out tracks that don't match the current display types
238
-
239
-
240
- return trackConfigurations.filter(function (c) {
241
- var trackConfAssemblies = (0, _configuration.readConfObject)(c, 'assemblyNames');
242
- var allAliases = assembly.allAliases;
243
- return hasAnyOverlap(allAliases, trackConfAssemblies);
244
- }).filter(function (c) {
245
- var _pluginManager$getVie2 = pluginManager.getViewType(self.view.type),
246
- displayTypes = _pluginManager$getVie2.displayTypes;
247
-
248
- var compatibleDisplays = displayTypes.map(function (d) {
249
- return d.name;
250
- });
251
- var trackDisplays = c.displays.map(function (d) {
252
- return d.type;
253
- });
254
- return hasAnyOverlap(compatibleDisplays, trackDisplays);
255
- });
256
- }
257
- };
258
- }).views(function (self) {
259
- return {
260
- hierarchy: function hierarchy(assemblyName) {
261
- var _this = this;
262
-
263
- var hier = generateHierarchy( // eslint-disable-next-line @typescript-eslint/no-explicit-any
264
- self, self.trackConfigurations(assemblyName), self.collapsed);
265
- var session = (0, _util.getSession)(self);
266
- var connections = session.connections,
267
- connectionInstances = session.connectionInstances;
268
- var conns = (connectionInstances === null || connectionInstances === void 0 ? void 0 : connectionInstances.filter(function (c) {
269
- var names = (0, _configuration.getConf)(c, 'assemblyNames');
270
- return names.length === 0 ? true : names.includes(assemblyName);
271
- }).map(function (conn, index) {
272
- var c = connections[index];
273
- return {
274
- id: c.connectionId,
275
- name: (0, _configuration.readConfObject)(c, 'name'),
276
- children: _this.connectionHierarchy(assemblyName, conn),
277
- state: {
278
- expanded: true
145
+ var _loop_2 = function (display) {
146
+ if (viewType.displayTypes.find(function (d) { return d.name === display.type; })) {
147
+ return { value: trackConf };
148
+ }
149
+ };
150
+ try {
151
+ for (var _b = __values(trackConf.displays), _c = _b.next(); !_c.done; _c = _b.next()) {
152
+ var display = _c.value;
153
+ var state_1 = _loop_2(display);
154
+ if (typeof state_1 === "object")
155
+ return state_1.value;
156
+ }
279
157
  }
280
- };
281
- })) || [];
282
- return {
283
- name: 'Root',
284
- id: 'Root',
285
- children: [{
286
- name: 'Tracks',
287
- id: 'Tracks',
288
- children: hier
289
- }].concat((0, _toConsumableArray2.default)(conns))
290
- };
291
- },
292
- connectionHierarchy: function connectionHierarchy(assemblyName, connection) {
293
- return generateHierarchy( // eslint-disable-next-line @typescript-eslint/no-explicit-any
294
- self, self.connectionTrackConfigurations(assemblyName, connection), self.collapsed);
295
- }
296
- };
297
- });
298
- }
158
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
159
+ finally {
160
+ try {
161
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
162
+ }
163
+ finally { if (e_1) throw e_1.error; }
164
+ }
165
+ },
166
+ }); })
167
+ .views(function (self) { return ({
168
+ trackConfigurations: function (assemblyName) {
169
+ if (!self.view) {
170
+ return [];
171
+ }
172
+ var _a = (0, util_1.getSession)(self), tracks = _a.tracks, assemblyManager = _a.assemblyManager;
173
+ var assembly = assemblyManager.get(assemblyName);
174
+ if (!assembly) {
175
+ return [];
176
+ }
177
+ var refseq = self.getRefSeqTrackConf(assemblyName);
178
+ // filter out tracks that don't match the current assembly (check all
179
+ // assembly aliases) and display types
180
+ return (refseq ? [refseq] : []).concat(__spreadArray([], __read(tracks
181
+ .filter(function (c) {
182
+ var trackConfAssemblies = (0, configuration_1.readConfObject)(c, 'assemblyNames');
183
+ var allAliases = assembly.allAliases;
184
+ return hasAnyOverlap(allAliases, trackConfAssemblies);
185
+ })
186
+ .filter(function (c) {
187
+ var displayTypes = pluginManager.getViewType(self.view.type).displayTypes;
188
+ var compatibleDisplays = displayTypes.map(function (d) { return d.name; });
189
+ var trackDisplays = c.displays.map(function (d) { return d.type; });
190
+ return hasAnyOverlap(compatibleDisplays, trackDisplays);
191
+ })), false));
192
+ },
193
+ get assemblyNames() {
194
+ var _a;
195
+ return ((_a = self.view) === null || _a === void 0 ? void 0 : _a.assemblyNames) || [];
196
+ },
197
+ connectionTrackConfigurations: function (assemblyName, connection) {
198
+ if (!self.view) {
199
+ return [];
200
+ }
201
+ var trackConfigurations = connection.tracks;
202
+ var assemblyManager = (0, util_1.getSession)(self).assemblyManager;
203
+ var assembly = assemblyManager.get(assemblyName);
204
+ if (!(assembly && assembly.initialized)) {
205
+ return [];
206
+ }
207
+ // filter out tracks that don't match the current display types
208
+ return trackConfigurations
209
+ .filter(function (c) {
210
+ var trackConfAssemblies = (0, configuration_1.readConfObject)(c, 'assemblyNames');
211
+ var allAliases = assembly.allAliases;
212
+ return hasAnyOverlap(allAliases, trackConfAssemblies);
213
+ })
214
+ .filter(function (c) {
215
+ var displayTypes = pluginManager.getViewType(self.view.type).displayTypes;
216
+ var compatibleDisplays = displayTypes.map(function (d) { return d.name; });
217
+ var trackDisplays = c.displays.map(function (d) { return d.type; });
218
+ return hasAnyOverlap(compatibleDisplays, trackDisplays);
219
+ });
220
+ },
221
+ }); })
222
+ .views(function (self) { return ({
223
+ hierarchy: function (assemblyName) {
224
+ var _this = this;
225
+ var hier = generateHierarchy(
226
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
227
+ self, self.trackConfigurations(assemblyName), self.collapsed);
228
+ var session = (0, util_1.getSession)(self);
229
+ var connections = session.connections, connectionInstances = session.connectionInstances;
230
+ var conns = (connectionInstances === null || connectionInstances === void 0 ? void 0 : connectionInstances.filter(function (c) {
231
+ var names = (0, configuration_1.getConf)(c, 'assemblyNames');
232
+ return names.length === 0 ? true : names.includes(assemblyName);
233
+ }).map(function (conn, index) {
234
+ var c = connections[index];
235
+ return {
236
+ id: c.connectionId,
237
+ name: (0, configuration_1.readConfObject)(c, 'name'),
238
+ children: _this.connectionHierarchy(assemblyName, conn),
239
+ state: {
240
+ expanded: true,
241
+ },
242
+ };
243
+ })) || [];
244
+ return {
245
+ name: 'Root',
246
+ id: 'Root',
247
+ children: __spreadArray([
248
+ { name: 'Tracks', id: 'Tracks', children: hier }
249
+ ], __read(conns), false),
250
+ };
251
+ },
252
+ connectionHierarchy: function (assemblyName, connection) {
253
+ return generateHierarchy(
254
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
255
+ self, self.connectionTrackConfigurations(assemblyName, connection), self.collapsed);
256
+ },
257
+ }); });
258
+ }
259
+ exports.default = stateTreeFactory;
260
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/HierarchicalTrackSelectorWidget/model.ts"],"names":[],"mappings":"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"}