@jbrowse/plugin-wiggle 2.1.0 → 2.1.3

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 (141) hide show
  1. package/dist/BigWigAdapter/BigWigAdapter.js +74 -200
  2. package/dist/BigWigAdapter/BigWigAdapter.js.map +1 -1
  3. package/dist/BigWigAdapter/configSchema.js +1 -1
  4. package/dist/BigWigAdapter/configSchema.js.map +1 -1
  5. package/dist/BigWigAdapter/index.js +14 -16
  6. package/dist/BigWigAdapter/index.js.map +1 -1
  7. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +12 -29
  8. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js.map +1 -1
  9. package/dist/CreateMultiWiggleExtension/index.js +23 -57
  10. package/dist/CreateMultiWiggleExtension/index.js.map +1 -1
  11. package/dist/DensityRenderer/DensityRenderer.js +6 -66
  12. package/dist/DensityRenderer/DensityRenderer.js.map +1 -1
  13. package/dist/DensityRenderer/configSchema.js +3 -3
  14. package/dist/DensityRenderer/configSchema.js.map +1 -1
  15. package/dist/DensityRenderer/index.js +11 -13
  16. package/dist/DensityRenderer/index.js.map +1 -1
  17. package/dist/LinePlotRenderer/LinePlotRenderer.js +11 -78
  18. package/dist/LinePlotRenderer/LinePlotRenderer.js.map +1 -1
  19. package/dist/LinePlotRenderer/configSchema.js +3 -3
  20. package/dist/LinePlotRenderer/configSchema.js.map +1 -1
  21. package/dist/LinePlotRenderer/index.js +11 -13
  22. package/dist/LinePlotRenderer/index.js.map +1 -1
  23. package/dist/LinearWiggleDisplay/components/SetColorDialog.js +18 -35
  24. package/dist/LinearWiggleDisplay/components/SetColorDialog.js.map +1 -1
  25. package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js +16 -32
  26. package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -1
  27. package/dist/LinearWiggleDisplay/components/Tooltip.js +15 -26
  28. package/dist/LinearWiggleDisplay/components/Tooltip.js.map +1 -1
  29. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +15 -26
  30. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -1
  31. package/dist/LinearWiggleDisplay/components/YScaleBar.js +6 -18
  32. package/dist/LinearWiggleDisplay/components/YScaleBar.js.map +1 -1
  33. package/dist/LinearWiggleDisplay/index.js +12 -12
  34. package/dist/LinearWiggleDisplay/index.js.map +1 -1
  35. package/dist/LinearWiggleDisplay/models/configSchema.js +6 -6
  36. package/dist/LinearWiggleDisplay/models/configSchema.js.map +1 -1
  37. package/dist/LinearWiggleDisplay/models/model.js +378 -451
  38. package/dist/LinearWiggleDisplay/models/model.js.map +1 -1
  39. package/dist/MultiDensityRenderer/MultiDensityRenderer.js +32 -125
  40. package/dist/MultiDensityRenderer/MultiDensityRenderer.js.map +1 -1
  41. package/dist/MultiDensityRenderer/configSchema.js +3 -3
  42. package/dist/MultiDensityRenderer/configSchema.js.map +1 -1
  43. package/dist/MultiDensityRenderer/index.js +11 -13
  44. package/dist/MultiDensityRenderer/index.js.map +1 -1
  45. package/dist/MultiLineRenderer/MultiLineRenderer.js +21 -114
  46. package/dist/MultiLineRenderer/MultiLineRenderer.js.map +1 -1
  47. package/dist/MultiLineRenderer/configSchema.js +4 -4
  48. package/dist/MultiLineRenderer/configSchema.js.map +1 -1
  49. package/dist/MultiLineRenderer/index.js +11 -13
  50. package/dist/MultiLineRenderer/index.js.map +1 -1
  51. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +72 -120
  52. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +1 -1
  53. package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js +16 -32
  54. package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -1
  55. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +21 -50
  56. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js.map +1 -1
  57. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -2
  58. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +53 -92
  59. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -1
  60. package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js +6 -18
  61. package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js.map +1 -1
  62. package/dist/MultiLinearWiggleDisplay/components/util.js +16 -18
  63. package/dist/MultiLinearWiggleDisplay/components/util.js.map +1 -1
  64. package/dist/MultiLinearWiggleDisplay/index.js +9 -9
  65. package/dist/MultiLinearWiggleDisplay/index.js.map +1 -1
  66. package/dist/MultiLinearWiggleDisplay/models/configSchema.js +8 -8
  67. package/dist/MultiLinearWiggleDisplay/models/configSchema.js.map +1 -1
  68. package/dist/MultiLinearWiggleDisplay/models/model.js +489 -566
  69. package/dist/MultiLinearWiggleDisplay/models/model.js.map +1 -1
  70. package/dist/MultiQuantitativeTrack/index.js +8 -8
  71. package/dist/MultiQuantitativeTrack/index.js.map +1 -1
  72. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +29 -121
  73. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js.map +1 -1
  74. package/dist/MultiRowLineRenderer/configSchema.js +4 -4
  75. package/dist/MultiRowLineRenderer/configSchema.js.map +1 -1
  76. package/dist/MultiRowLineRenderer/index.js +11 -13
  77. package/dist/MultiRowLineRenderer/index.js.map +1 -1
  78. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +35 -131
  79. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +1 -1
  80. package/dist/MultiRowXYPlotRenderer/configSchema.js +4 -4
  81. package/dist/MultiRowXYPlotRenderer/configSchema.js.map +1 -1
  82. package/dist/MultiRowXYPlotRenderer/index.js +11 -13
  83. package/dist/MultiRowXYPlotRenderer/index.js.map +1 -1
  84. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +1 -0
  85. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +80 -232
  86. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -1
  87. package/dist/MultiWiggleAdapter/configSchema.js +1 -1
  88. package/dist/MultiWiggleAdapter/configSchema.js.map +1 -1
  89. package/dist/MultiWiggleAdapter/index.js +14 -18
  90. package/dist/MultiWiggleAdapter/index.js.map +1 -1
  91. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +30 -56
  92. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +1 -1
  93. package/dist/MultiWiggleAddTrackWidget/index.js +10 -12
  94. package/dist/MultiWiggleAddTrackWidget/index.js.map +1 -1
  95. package/dist/MultiWiggleRendering.js +45 -109
  96. package/dist/MultiWiggleRendering.js.map +1 -1
  97. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +24 -120
  98. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +1 -1
  99. package/dist/MultiXYPlotRenderer/configSchema.js +4 -4
  100. package/dist/MultiXYPlotRenderer/configSchema.js.map +1 -1
  101. package/dist/MultiXYPlotRenderer/index.js +11 -13
  102. package/dist/MultiXYPlotRenderer/index.js.map +1 -1
  103. package/dist/QuantitativeTrack/index.js +8 -8
  104. package/dist/QuantitativeTrack/index.js.map +1 -1
  105. package/dist/Tooltip.js +26 -54
  106. package/dist/Tooltip.js.map +1 -1
  107. package/dist/WiggleBaseRenderer.d.ts +6 -6
  108. package/dist/WiggleBaseRenderer.js +34 -125
  109. package/dist/WiggleBaseRenderer.js.map +1 -1
  110. package/dist/WiggleRPC/rpcMethods.d.ts +2 -2
  111. package/dist/WiggleRPC/rpcMethods.js +101 -244
  112. package/dist/WiggleRPC/rpcMethods.js.map +1 -1
  113. package/dist/WiggleRendering.js +20 -69
  114. package/dist/WiggleRendering.js.map +1 -1
  115. package/dist/XYPlotRenderer/XYPlotRenderer.js +24 -121
  116. package/dist/XYPlotRenderer/XYPlotRenderer.js.map +1 -1
  117. package/dist/XYPlotRenderer/configSchema.js +4 -4
  118. package/dist/XYPlotRenderer/configSchema.js.map +1 -1
  119. package/dist/XYPlotRenderer/index.js +11 -13
  120. package/dist/XYPlotRenderer/index.js.map +1 -1
  121. package/dist/configSchema.js +2 -2
  122. package/dist/configSchema.js.map +1 -1
  123. package/dist/drawxy.js +192 -311
  124. package/dist/drawxy.js.map +1 -1
  125. package/dist/index.js +44 -62
  126. package/dist/index.js.map +1 -1
  127. package/dist/util.js +105 -168
  128. package/dist/util.js.map +1 -1
  129. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +1 -0
  130. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +5 -3
  131. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -1
  132. package/esm/WiggleBaseRenderer.d.ts +6 -6
  133. package/esm/WiggleBaseRenderer.js +4 -3
  134. package/esm/WiggleBaseRenderer.js.map +1 -1
  135. package/esm/WiggleRPC/rpcMethods.d.ts +2 -2
  136. package/esm/WiggleRPC/rpcMethods.js.map +1 -1
  137. package/package.json +2 -3
  138. package/src/MultiWiggleAdapter/MultiWiggleAdapter.ts +7 -3
  139. package/src/WiggleBaseRenderer.tsx +4 -3
  140. package/src/WiggleRPC/rpcMethods.ts +8 -2
  141. package/src/declare.d.ts +0 -2
@@ -1,244 +1,92 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __assign = (this && this.__assign) || function () {
18
- __assign = Object.assign || function(t) {
19
- for (var s, i = 1, n = arguments.length; i < n; i++) {
20
- s = arguments[i];
21
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
- t[p] = s[p];
23
- }
24
- return t;
25
- };
26
- return __assign.apply(this, arguments);
27
- };
28
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
- return new (P || (P = Promise))(function (resolve, reject) {
31
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
- step((generator = generator.apply(thisArg, _arguments || [])).next());
35
- });
36
- };
37
- var __generator = (this && this.__generator) || function (thisArg, body) {
38
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
- function verb(n) { return function (v) { return step([n, v]); }; }
41
- function step(op) {
42
- if (f) throw new TypeError("Generator is already executing.");
43
- while (_) try {
44
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
- if (y = 0, t) op = [op[0] & 2, t.value];
46
- switch (op[0]) {
47
- case 0: case 1: t = op; break;
48
- case 4: _.label++; return { value: op[1], done: false };
49
- case 5: _.label++; y = op[1]; op = [0]; continue;
50
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
- default:
52
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
- if (t[2]) _.ops.pop();
57
- _.trys.pop(); continue;
58
- }
59
- op = body.call(thisArg, _);
60
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
- }
63
- };
64
- var __rest = (this && this.__rest) || function (s, e) {
65
- var t = {};
66
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
67
- t[p] = s[p];
68
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
69
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
70
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
71
- t[p[i]] = s[p[i]];
72
- }
73
- return t;
74
- };
75
- var __read = (this && this.__read) || function (o, n) {
76
- var m = typeof Symbol === "function" && o[Symbol.iterator];
77
- if (!m) return o;
78
- var i = m.call(o), r, ar = [], e;
79
- try {
80
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
81
- }
82
- catch (error) { e = { error: error }; }
83
- finally {
84
- try {
85
- if (r && !r.done && (m = i["return"])) m.call(i);
86
- }
87
- finally { if (e) throw e.error; }
88
- }
89
- return ar;
90
- };
91
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
92
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
93
- if (ar || !(i in from)) {
94
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
95
- ar[i] = from[i];
96
- }
97
- }
98
- return to.concat(ar || Array.prototype.slice.call(from));
99
- };
100
2
  Object.defineProperty(exports, "__esModule", { value: true });
101
- var BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
102
- var rxjs_1 = require("@jbrowse/core/util/rxjs");
103
- var util_1 = require("@jbrowse/core/util");
104
- var rxjs_2 = require("rxjs");
105
- var operators_1 = require("rxjs/operators");
3
+ const BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
4
+ const rxjs_1 = require("@jbrowse/core/util/rxjs");
5
+ const util_1 = require("@jbrowse/core/util");
6
+ const rxjs_2 = require("rxjs");
7
+ const operators_1 = require("rxjs/operators");
106
8
  function getFilename(uri) {
107
- var filename = uri.slice(uri.lastIndexOf('/') + 1);
9
+ const filename = uri.slice(uri.lastIndexOf('/') + 1);
108
10
  return filename.slice(0, filename.lastIndexOf('.'));
109
11
  }
110
- var MultiWiggleAdapter = /** @class */ (function (_super) {
111
- __extends(MultiWiggleAdapter, _super);
112
- function MultiWiggleAdapter() {
113
- return _super !== null && _super.apply(this, arguments) || this;
12
+ class MultiWiggleAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
13
+ async getAdapters() {
14
+ const getSubAdapter = this.getSubAdapter;
15
+ if (!getSubAdapter) {
16
+ throw new Error('no getSubAdapter available');
17
+ }
18
+ let subConfs = this.getConf('subadapters');
19
+ if (!(subConfs === null || subConfs === void 0 ? void 0 : subConfs.length)) {
20
+ const entries = this.getConf('bigWigs');
21
+ subConfs = entries.map(entry => ({
22
+ type: 'BigWigAdapter',
23
+ source: getFilename(entry),
24
+ bigWigLocation: {
25
+ uri: entry,
26
+ },
27
+ }));
28
+ }
29
+ return Promise.all(
30
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
+ subConfs.map(async (conf) => {
32
+ const dataAdapter = (await getSubAdapter(conf))
33
+ .dataAdapter;
34
+ return {
35
+ source: conf.name || dataAdapter.id,
36
+ ...conf,
37
+ dataAdapter,
38
+ };
39
+ }));
114
40
  }
115
- MultiWiggleAdapter.prototype.getAdapters = function () {
116
- return __awaiter(this, void 0, void 0, function () {
117
- var getSubAdapter, subConfs, entries;
118
- var _this = this;
119
- return __generator(this, function (_a) {
120
- getSubAdapter = this.getSubAdapter;
121
- if (!getSubAdapter) {
122
- throw new Error('no getSubAdapter available');
123
- }
124
- subConfs = this.getConf('subadapters');
125
- if (!(subConfs === null || subConfs === void 0 ? void 0 : subConfs.length)) {
126
- entries = this.getConf('bigWigs');
127
- subConfs = entries.map(function (entry) { return ({
128
- type: 'BigWigAdapter',
129
- source: getFilename(entry),
130
- bigWigLocation: {
131
- uri: entry,
132
- },
133
- }); });
134
- }
135
- return [2 /*return*/, Promise.all(
136
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
137
- subConfs.map(function (conf) { return __awaiter(_this, void 0, void 0, function () {
138
- var dataAdapter;
139
- return __generator(this, function (_a) {
140
- switch (_a.label) {
141
- case 0: return [4 /*yield*/, getSubAdapter(conf)];
142
- case 1:
143
- dataAdapter = (_a.sent())
144
- .dataAdapter;
145
- return [2 /*return*/, __assign(__assign({ source: dataAdapter.id }, conf), { dataAdapter: dataAdapter })];
146
- }
147
- });
148
- }); }))];
149
- });
150
- });
151
- };
152
41
  // note: can't really have dis-agreeing refNames
153
- MultiWiggleAdapter.prototype.getRefNames = function (opts) {
154
- return __awaiter(this, void 0, void 0, function () {
155
- var adapters;
156
- return __generator(this, function (_a) {
157
- switch (_a.label) {
158
- case 0: return [4 /*yield*/, this.getAdapters()];
159
- case 1:
160
- adapters = _a.sent();
161
- return [2 /*return*/, adapters[0].dataAdapter.getRefNames(opts)];
162
- }
163
- });
164
- });
165
- };
166
- MultiWiggleAdapter.prototype.getGlobalStats = function (opts) {
167
- return __awaiter(this, void 0, void 0, function () {
168
- var adapters, stats, scoreMin, scoreMax;
169
- return __generator(this, function (_a) {
170
- switch (_a.label) {
171
- case 0: return [4 /*yield*/, this.getAdapters()];
172
- case 1:
173
- adapters = _a.sent();
174
- return [4 /*yield*/, Promise.all(
175
- // @ts-ignore
176
- adapters.map(function (adp) { var _a, _b; return (_b = (_a = adp.dataAdapter).getGlobalStats) === null || _b === void 0 ? void 0 : _b.call(_a, opts); }))];
177
- case 2:
178
- stats = (_a.sent()).filter(function (f) { return !!f; });
179
- scoreMin = Math.min.apply(Math, __spreadArray([], __read(stats.map(function (s) { return s.scoreMin; })), false));
180
- scoreMax = Math.max.apply(Math, __spreadArray([], __read(stats.map(function (s) { return s.scoreMax; })), false));
181
- return [2 /*return*/, { scoreMin: scoreMin, scoreMax: scoreMax }];
182
- }
183
- });
184
- });
185
- };
186
- MultiWiggleAdapter.prototype.getFeatures = function (region, opts) {
187
- var _this = this;
188
- if (opts === void 0) { opts = {}; }
189
- return (0, rxjs_1.ObservableCreate)(function (observer) { return __awaiter(_this, void 0, void 0, function () {
190
- var adapters;
191
- return __generator(this, function (_a) {
192
- switch (_a.label) {
193
- case 0: return [4 /*yield*/, this.getAdapters()];
194
- case 1:
195
- adapters = _a.sent();
196
- rxjs_2.merge.apply(void 0, __spreadArray([], __read(adapters.map(function (adp) {
197
- return adp.dataAdapter.getFeatures(region, opts).pipe((0, operators_1.map)(function (p) {
198
- // add source field if it does not exist
199
- return p.get('source')
200
- ? p
201
- : new util_1.SimpleFeature(__assign(__assign({}, p.toJSON()), { uniqueId: adp.source + '-' + p.id(), source: adp.source }));
202
- }));
203
- })), false)).subscribe(observer);
204
- return [2 /*return*/];
205
- }
206
- });
207
- }); }, opts.signal);
208
- };
42
+ async getRefNames(opts) {
43
+ const adapters = await this.getAdapters();
44
+ const allNames = await Promise.all(adapters.map(a => a.dataAdapter.getRefNames(opts)));
45
+ return [...new Set(allNames.flat())];
46
+ }
47
+ async getGlobalStats(opts) {
48
+ const adapters = await this.getAdapters();
49
+ const stats = (await Promise.all(
50
+ // @ts-ignore
51
+ adapters.map(adp => { var _a, _b; return (_b = (_a = adp.dataAdapter).getGlobalStats) === null || _b === void 0 ? void 0 : _b.call(_a, opts); }))).filter(f => !!f);
52
+ const scoreMin = Math.min(...stats.map(s => s.scoreMin));
53
+ const scoreMax = Math.max(...stats.map(s => s.scoreMax));
54
+ return { scoreMin, scoreMax };
55
+ }
56
+ getFeatures(region, opts = {}) {
57
+ return (0, rxjs_1.ObservableCreate)(async (observer) => {
58
+ const adapters = await this.getAdapters();
59
+ (0, rxjs_2.merge)(...adapters.map(adp => adp.dataAdapter.getFeatures(region, opts).pipe((0, operators_1.map)(p =>
60
+ // add source field if it does not exist
61
+ p.get('source')
62
+ ? p
63
+ : new util_1.SimpleFeature({
64
+ ...p.toJSON(),
65
+ uniqueId: adp.source + '-' + p.id(),
66
+ source: adp.source,
67
+ }))))).subscribe(observer);
68
+ }, opts.signal);
69
+ }
209
70
  // always render bigwig instead of calculating a feature density for it
210
- MultiWiggleAdapter.prototype.estimateRegionsStats = function (_regions) {
211
- return __awaiter(this, void 0, void 0, function () {
212
- return __generator(this, function (_a) {
213
- return [2 /*return*/, { featureDensity: 0 }];
214
- });
215
- });
216
- };
71
+ async estimateRegionsStats(_regions) {
72
+ return { featureDensity: 0 };
73
+ }
217
74
  // in another adapter type, this could be dynamic depending on region or
218
75
  // something, but it is static for this particular multi-wiggle adapter type
219
- MultiWiggleAdapter.prototype.getSources = function () {
220
- return __awaiter(this, void 0, void 0, function () {
221
- var adapters;
222
- return __generator(this, function (_a) {
223
- switch (_a.label) {
224
- case 0: return [4 /*yield*/, this.getAdapters()];
225
- case 1:
226
- adapters = _a.sent();
227
- return [2 /*return*/, adapters.map(function (_a) {
228
- var dataAdapter = _a.dataAdapter, source = _a.source, rest = __rest(_a, ["dataAdapter", "source"]);
229
- return (__assign({ name: source }, rest));
230
- })];
231
- }
232
- });
233
- });
234
- };
235
- MultiWiggleAdapter.prototype.freeResources = function () { };
236
- MultiWiggleAdapter.capabilities = [
237
- 'hasResolution',
238
- 'hasLocalStats',
239
- 'hasGlobalStats',
240
- ];
241
- return MultiWiggleAdapter;
242
- }(BaseAdapter_1.BaseFeatureDataAdapter));
76
+ async getSources() {
77
+ const adapters = await this.getAdapters();
78
+ return adapters.map(({ dataAdapter, source, name, ...rest }) => ({
79
+ name: source,
80
+ __name: name,
81
+ ...rest,
82
+ }));
83
+ }
84
+ freeResources() { }
85
+ }
243
86
  exports.default = MultiWiggleAdapter;
87
+ MultiWiggleAdapter.capabilities = [
88
+ 'hasResolution',
89
+ 'hasLocalStats',
90
+ 'hasGlobalStats',
91
+ ];
244
92
  //# sourceMappingURL=MultiWiggleAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiWiggleAdapter.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/MultiWiggleAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiWiggleAdapter.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/MultiWiggleAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var configuration_1 = require("@jbrowse/core/configuration");
3
+ const configuration_1 = require("@jbrowse/core/configuration");
4
4
  exports.default = (0, configuration_1.ConfigurationSchema)('MultiWiggleAdapter', {
5
5
  subadapters: {
6
6
  type: 'frozen',
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/configSchema.ts"],"names":[],"mappings":";;AAAA,6DAAiE;AAEjE,kBAAe,IAAA,mCAAmB,EAChC,oBAAoB,EACpB;IACE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/configSchema.ts"],"names":[],"mappings":";;AAAA,+DAAiE;AAEjE,kBAAe,IAAA,mCAAmB,EAChC,oBAAoB,EACpB;IACE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE;KACjB;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
@@ -26,22 +26,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- var configSchema_1 = __importDefault(require("./configSchema"));
30
- var AdapterType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/AdapterType"));
31
- exports.default = (function (pluginManager) {
32
- pluginManager.addAdapterType(function () {
33
- return new AdapterType_1.default({
34
- name: 'MultiWiggleAdapter',
35
- configSchema: configSchema_1.default,
36
- adapterCapabilities: [
37
- 'hasResolution',
38
- 'hasLocalStats',
39
- 'hasGlobalStats',
40
- ],
41
- getAdapterClass: function () {
42
- return Promise.resolve().then(function () { return __importStar(require('./MultiWiggleAdapter')); }).then(function (r) { return r.default; });
43
- },
44
- });
45
- });
46
- });
29
+ const configSchema_1 = __importDefault(require("./configSchema"));
30
+ const AdapterType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/AdapterType"));
31
+ exports.default = (pluginManager) => {
32
+ pluginManager.addAdapterType(() => new AdapterType_1.default({
33
+ name: 'MultiWiggleAdapter',
34
+ configSchema: configSchema_1.default,
35
+ adapterCapabilities: [
36
+ 'hasResolution',
37
+ 'hasLocalStats',
38
+ 'hasGlobalStats',
39
+ ],
40
+ getAdapterClass: () => Promise.resolve().then(() => __importStar(require('./MultiWiggleAdapter'))).then(r => r.default),
41
+ }));
42
+ };
47
43
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAyC;AACzC,gGAAyE;AAGzE,mBAAe,UAAC,aAA4B;IAC1C,aAAa,CAAC,cAAc,CAC1B;QACE,OAAA,IAAI,qBAAW,CAAC;YACd,IAAI,EAAE,oBAAoB;YAC1B,YAAY,wBAAA;YACZ,mBAAmB,EAAE;gBACnB,eAAe;gBACf,eAAe;gBACf,gBAAgB;aACjB;YACD,eAAe,EAAE;gBACf,OAAA,iEAAO,sBAAsB,OAAE,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;YAAnD,CAAmD;SACtD,CAAC;IAVF,CAUE,CACL,CAAA;AACH,CAAC,EAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiWiggleAdapter/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAAyC;AACzC,kGAAyE;AAGzE,kBAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAC1B,GAAG,EAAE,CACH,IAAI,qBAAW,CAAC;QACd,IAAI,EAAE,oBAAoB;QAC1B,YAAY,EAAZ,sBAAY;QACZ,mBAAmB,EAAE;YACnB,eAAe;YACf,eAAe;YACf,gBAAgB;SACjB;QACD,eAAe,EAAE,GAAG,EAAE,CACpB,kDAAO,sBAAsB,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KACtD,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
3
  if (k2 === undefined) k2 = k;
15
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -33,29 +22,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
33
22
  __setModuleDefault(result, mod);
34
23
  return result;
35
24
  };
36
- var __read = (this && this.__read) || function (o, n) {
37
- var m = typeof Symbol === "function" && o[Symbol.iterator];
38
- if (!m) return o;
39
- var i = m.call(o), r, ar = [], e;
40
- try {
41
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
42
- }
43
- catch (error) { e = { error: error }; }
44
- finally {
45
- try {
46
- if (r && !r.done && (m = i["return"])) m.call(i);
47
- }
48
- finally { if (e) throw e.error; }
49
- }
50
- return ar;
51
- };
52
25
  Object.defineProperty(exports, "__esModule", { value: true });
53
- var react_1 = __importStar(require("react"));
54
- var material_1 = require("@mui/material");
55
- var mui_1 = require("tss-react/mui");
56
- var util_1 = require("@jbrowse/core/util");
57
- var tracks_1 = require("@jbrowse/core/util/tracks");
58
- var useStyles = (0, mui_1.makeStyles)()(function (theme) { return ({
26
+ const react_1 = __importStar(require("react"));
27
+ const material_1 = require("@mui/material");
28
+ const mui_1 = require("tss-react/mui");
29
+ const util_1 = require("@jbrowse/core/util");
30
+ const tracks_1 = require("@jbrowse/core/util/tracks");
31
+ const useStyles = (0, mui_1.makeStyles)()(theme => ({
59
32
  textbox: {
60
33
  width: '100%',
61
34
  },
@@ -68,22 +41,20 @@ var useStyles = (0, mui_1.makeStyles)()(function (theme) { return ({
68
41
  marginBottom: 100,
69
42
  display: 'block',
70
43
  },
71
- }); });
72
- function MultiWiggleWidget(_a) {
73
- var model = _a.model;
74
- var classes = useStyles().classes;
75
- var _b = __read((0, react_1.useState)(''), 2), val = _b[0], setVal = _b[1];
76
- var _c = __read((0, react_1.useState)('MultiWiggle ' + Date.now()), 2), trackName = _c[0], setTrackName = _c[1];
44
+ }));
45
+ function MultiWiggleWidget({ model }) {
46
+ const { classes } = useStyles();
47
+ const [val, setVal] = (0, react_1.useState)('');
48
+ const [trackName, setTrackName] = (0, react_1.useState)('MultiWiggle ' + Date.now());
77
49
  return (react_1.default.createElement(material_1.Paper, { className: classes.paper },
78
50
  react_1.default.createElement("ul", null,
79
51
  react_1.default.createElement("li", null, "Enter list of URLs for bigwig files in the textbox"),
80
52
  react_1.default.createElement("li", null, "Or, use the button below the text box to select files from your computer")),
81
- react_1.default.createElement(material_1.TextField, { multiline: true, rows: 10, value: val, onChange: function (event) { return setVal(event.target.value); }, placeholder: 'Paste list of URLs here, or use file selector below', variant: "outlined", className: classes.textbox }),
53
+ react_1.default.createElement(material_1.TextField, { multiline: true, rows: 10, value: val, onChange: event => setVal(event.target.value), placeholder: 'Paste list of URLs here, or use file selector below', variant: "outlined", className: classes.textbox }),
82
54
  react_1.default.createElement(material_1.Button, { variant: "outlined", component: "label" },
83
55
  "Choose Files from your computer",
84
- react_1.default.createElement("input", { type: "file", hidden: true, multiple: true, onChange: function (_a) {
85
- var target = _a.target;
86
- var res = Array.from((target === null || target === void 0 ? void 0 : target.files) || []).map(function (file) { return ({
56
+ react_1.default.createElement("input", { type: "file", hidden: true, multiple: true, onChange: ({ target }) => {
57
+ const res = Array.from((target === null || target === void 0 ? void 0 : target.files) || []).map(file => ({
87
58
  type: 'BigWigAdapter',
88
59
  bigWigLocation: util_1.isElectron
89
60
  ? {
@@ -92,34 +63,37 @@ function MultiWiggleWidget(_a) {
92
63
  }
93
64
  : (0, tracks_1.storeBlobLocation)({ blob: file }),
94
65
  source: file.name,
95
- }); });
66
+ }));
96
67
  setVal(JSON.stringify(res, null, 2));
97
68
  } })),
98
- react_1.default.createElement(material_1.TextField, { value: trackName, onChange: function (event) { return setTrackName(event.target.value); }, helperText: "Track name" }),
99
- react_1.default.createElement(material_1.Button, { variant: "contained", className: classes.submit, onClick: function () {
69
+ react_1.default.createElement(material_1.TextField, { value: trackName, onChange: event => setTrackName(event.target.value), helperText: "Track name" }),
70
+ react_1.default.createElement(material_1.Button, { variant: "contained", className: classes.submit, onClick: () => {
100
71
  var _a;
101
- var session = (0, util_1.getSession)(model);
102
- var trackId = [
103
- "".concat(trackName.toLowerCase().replace(/ /g, '_'), "-").concat(Date.now()),
104
- "".concat(session.adminMode ? '' : '-sessionTrack'),
72
+ const session = (0, util_1.getSession)(model);
73
+ const trackId = [
74
+ `${trackName.toLowerCase().replace(/ /g, '_')}-${Date.now()}`,
75
+ `${session.adminMode ? '' : '-sessionTrack'}`,
105
76
  ].join('');
106
77
  // allow list of bigwigs in JSON format or line-by-line
107
- var bigWigs;
78
+ let bigWigs;
108
79
  try {
109
80
  bigWigs = JSON.parse(val);
110
81
  }
111
82
  catch (e) {
112
83
  bigWigs = val.split('\n');
113
84
  }
114
- var obj = typeof bigWigs[0] === 'string'
115
- ? { bigWigs: bigWigs }
85
+ const obj = typeof bigWigs[0] === 'string'
86
+ ? { bigWigs }
116
87
  : { subadapters: bigWigs };
117
88
  session.addTrackConf({
118
- trackId: trackId,
89
+ trackId,
119
90
  type: 'MultiQuantitativeTrack',
120
91
  name: trackName,
121
92
  assemblyNames: [model.assembly],
122
- adapter: __assign({ type: 'MultiWiggleAdapter' }, obj),
93
+ adapter: {
94
+ type: 'MultiWiggleAdapter',
95
+ ...obj,
96
+ },
123
97
  });
124
98
  (_a = model.view) === null || _a === void 0 ? void 0 : _a.showTrack(trackId);
125
99
  model.clearData();
@@ -130,7 +104,7 @@ function MultiWiggleWidget(_a) {
130
104
  react_1.default.createElement("li", null,
131
105
  "The list of bigwig files in the text box can be a list of URLs, or a list of elements like",
132
106
  ' ',
133
- react_1.default.createElement("code", null, "[{\"type\":\"BigWigAdapter\",\"bigWigLocation\":{\"uri\":\"http://host/file.bw\"}, \"color\":\"green\",\"source\":\"name for subtrack\"}]"),
107
+ react_1.default.createElement("code", null, `[{"type":"BigWigAdapter","bigWigLocation":{"uri":"http://host/file.bw"}, "color":"green","source":"name for subtrack"}]`),
134
108
  ' ',
135
109
  "to apply e.g. the color attribute to the view"),
136
110
  react_1.default.createElement("li", null, "Adding local files will update the textbox with JSON contents that are ready to submit with the \"Submit\" button"))));
@@ -1 +1 @@
1
- {"version":3,"file":"AddTrackWorkflow.js","sourceRoot":"","sources":["../../src/MultiWiggleAddTrackWidget/AddTrackWorkflow.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddTrackWorkflow.js","sourceRoot":"","sources":["../../src/MultiWiggleAddTrackWidget/AddTrackWorkflow.tsx"],"names":[],"mappings":"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"}
@@ -3,17 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var pluggableElementTypes_1 = require("@jbrowse/core/pluggableElementTypes");
7
- var mobx_state_tree_1 = require("mobx-state-tree");
6
+ const pluggableElementTypes_1 = require("@jbrowse/core/pluggableElementTypes");
7
+ const mobx_state_tree_1 = require("mobx-state-tree");
8
8
  // locals
9
- var AddTrackWorkflow_1 = __importDefault(require("./AddTrackWorkflow"));
10
- exports.default = (function (pm) {
11
- pm.addAddTrackWorkflowType(function () {
12
- return new pluggableElementTypes_1.AddTrackWorkflowType({
13
- name: 'Multi-wiggle track',
14
- ReactComponent: AddTrackWorkflow_1.default,
15
- stateModel: mobx_state_tree_1.types.model({}),
16
- });
17
- });
18
- });
9
+ const AddTrackWorkflow_1 = __importDefault(require("./AddTrackWorkflow"));
10
+ exports.default = (pm) => {
11
+ pm.addAddTrackWorkflowType(() => new pluggableElementTypes_1.AddTrackWorkflowType({
12
+ name: 'Multi-wiggle track',
13
+ ReactComponent: AddTrackWorkflow_1.default,
14
+ stateModel: mobx_state_tree_1.types.model({}),
15
+ }));
16
+ };
19
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiWiggleAddTrackWidget/index.ts"],"names":[],"mappings":";;;;;AACA,6EAA0E;AAC1E,mDAAuC;AAEvC,SAAS;AACT,wEAAkD;AAElD,mBAAe,UAAC,EAAiB;IAC/B,EAAE,CAAC,uBAAuB,CACxB;QACE,OAAA,IAAI,4CAAoB,CAAC;YACvB,IAAI,EAAE,oBAAoB;YAC1B,cAAc,EAAE,0BAAiB;YACjC,UAAU,EAAE,uBAAK,CAAC,KAAK,CAAC,EAAE,CAAC;SAC5B,CAAC;IAJF,CAIE,CACL,CAAA;AACH,CAAC,EAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiWiggleAddTrackWidget/index.ts"],"names":[],"mappings":";;;;;AACA,+EAA0E;AAC1E,qDAAuC;AAEvC,SAAS;AACT,0EAAkD;AAElD,kBAAe,CAAC,EAAiB,EAAE,EAAE;IACnC,EAAE,CAAC,uBAAuB,CACxB,GAAG,EAAE,CACH,IAAI,4CAAoB,CAAC;QACvB,IAAI,EAAE,oBAAoB;QAC1B,cAAc,EAAE,0BAAiB;QACjC,UAAU,EAAE,uBAAK,CAAC,KAAK,CAAC,EAAE,CAAC;KAC5B,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}