@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.
- package/dist/BigWigAdapter/BigWigAdapter.js +74 -200
- package/dist/BigWigAdapter/BigWigAdapter.js.map +1 -1
- package/dist/BigWigAdapter/configSchema.js +1 -1
- package/dist/BigWigAdapter/configSchema.js.map +1 -1
- package/dist/BigWigAdapter/index.js +14 -16
- package/dist/BigWigAdapter/index.js.map +1 -1
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +12 -29
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.js.map +1 -1
- package/dist/CreateMultiWiggleExtension/index.js +23 -57
- package/dist/CreateMultiWiggleExtension/index.js.map +1 -1
- package/dist/DensityRenderer/DensityRenderer.js +6 -66
- package/dist/DensityRenderer/DensityRenderer.js.map +1 -1
- package/dist/DensityRenderer/configSchema.js +3 -3
- package/dist/DensityRenderer/configSchema.js.map +1 -1
- package/dist/DensityRenderer/index.js +11 -13
- package/dist/DensityRenderer/index.js.map +1 -1
- package/dist/LinePlotRenderer/LinePlotRenderer.js +11 -78
- package/dist/LinePlotRenderer/LinePlotRenderer.js.map +1 -1
- package/dist/LinePlotRenderer/configSchema.js +3 -3
- package/dist/LinePlotRenderer/configSchema.js.map +1 -1
- package/dist/LinePlotRenderer/index.js +11 -13
- package/dist/LinePlotRenderer/index.js.map +1 -1
- package/dist/LinearWiggleDisplay/components/SetColorDialog.js +18 -35
- package/dist/LinearWiggleDisplay/components/SetColorDialog.js.map +1 -1
- package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js +16 -32
- package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -1
- package/dist/LinearWiggleDisplay/components/Tooltip.js +15 -26
- package/dist/LinearWiggleDisplay/components/Tooltip.js.map +1 -1
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +15 -26
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -1
- package/dist/LinearWiggleDisplay/components/YScaleBar.js +6 -18
- package/dist/LinearWiggleDisplay/components/YScaleBar.js.map +1 -1
- package/dist/LinearWiggleDisplay/index.js +12 -12
- package/dist/LinearWiggleDisplay/index.js.map +1 -1
- package/dist/LinearWiggleDisplay/models/configSchema.js +6 -6
- package/dist/LinearWiggleDisplay/models/configSchema.js.map +1 -1
- package/dist/LinearWiggleDisplay/models/model.js +378 -451
- package/dist/LinearWiggleDisplay/models/model.js.map +1 -1
- package/dist/MultiDensityRenderer/MultiDensityRenderer.js +32 -125
- package/dist/MultiDensityRenderer/MultiDensityRenderer.js.map +1 -1
- package/dist/MultiDensityRenderer/configSchema.js +3 -3
- package/dist/MultiDensityRenderer/configSchema.js.map +1 -1
- package/dist/MultiDensityRenderer/index.js +11 -13
- package/dist/MultiDensityRenderer/index.js.map +1 -1
- package/dist/MultiLineRenderer/MultiLineRenderer.js +21 -114
- package/dist/MultiLineRenderer/MultiLineRenderer.js.map +1 -1
- package/dist/MultiLineRenderer/configSchema.js +4 -4
- package/dist/MultiLineRenderer/configSchema.js.map +1 -1
- package/dist/MultiLineRenderer/index.js +11 -13
- package/dist/MultiLineRenderer/index.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +72 -120
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js +16 -32
- package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +21 -50
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -2
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +53 -92
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js +6 -18
- package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/components/util.js +16 -18
- package/dist/MultiLinearWiggleDisplay/components/util.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/index.js +9 -9
- package/dist/MultiLinearWiggleDisplay/index.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/models/configSchema.js +8 -8
- package/dist/MultiLinearWiggleDisplay/models/configSchema.js.map +1 -1
- package/dist/MultiLinearWiggleDisplay/models/model.js +489 -566
- package/dist/MultiLinearWiggleDisplay/models/model.js.map +1 -1
- package/dist/MultiQuantitativeTrack/index.js +8 -8
- package/dist/MultiQuantitativeTrack/index.js.map +1 -1
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +29 -121
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js.map +1 -1
- package/dist/MultiRowLineRenderer/configSchema.js +4 -4
- package/dist/MultiRowLineRenderer/configSchema.js.map +1 -1
- package/dist/MultiRowLineRenderer/index.js +11 -13
- package/dist/MultiRowLineRenderer/index.js.map +1 -1
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +35 -131
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +1 -1
- package/dist/MultiRowXYPlotRenderer/configSchema.js +4 -4
- package/dist/MultiRowXYPlotRenderer/configSchema.js.map +1 -1
- package/dist/MultiRowXYPlotRenderer/index.js +11 -13
- package/dist/MultiRowXYPlotRenderer/index.js.map +1 -1
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +1 -0
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +80 -232
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -1
- package/dist/MultiWiggleAdapter/configSchema.js +1 -1
- package/dist/MultiWiggleAdapter/configSchema.js.map +1 -1
- package/dist/MultiWiggleAdapter/index.js +14 -18
- package/dist/MultiWiggleAdapter/index.js.map +1 -1
- package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +30 -56
- package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +1 -1
- package/dist/MultiWiggleAddTrackWidget/index.js +10 -12
- package/dist/MultiWiggleAddTrackWidget/index.js.map +1 -1
- package/dist/MultiWiggleRendering.js +45 -109
- package/dist/MultiWiggleRendering.js.map +1 -1
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +24 -120
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +1 -1
- package/dist/MultiXYPlotRenderer/configSchema.js +4 -4
- package/dist/MultiXYPlotRenderer/configSchema.js.map +1 -1
- package/dist/MultiXYPlotRenderer/index.js +11 -13
- package/dist/MultiXYPlotRenderer/index.js.map +1 -1
- package/dist/QuantitativeTrack/index.js +8 -8
- package/dist/QuantitativeTrack/index.js.map +1 -1
- package/dist/Tooltip.js +26 -54
- package/dist/Tooltip.js.map +1 -1
- package/dist/WiggleBaseRenderer.d.ts +6 -6
- package/dist/WiggleBaseRenderer.js +34 -125
- package/dist/WiggleBaseRenderer.js.map +1 -1
- package/dist/WiggleRPC/rpcMethods.d.ts +2 -2
- package/dist/WiggleRPC/rpcMethods.js +101 -244
- package/dist/WiggleRPC/rpcMethods.js.map +1 -1
- package/dist/WiggleRendering.js +20 -69
- package/dist/WiggleRendering.js.map +1 -1
- package/dist/XYPlotRenderer/XYPlotRenderer.js +24 -121
- package/dist/XYPlotRenderer/XYPlotRenderer.js.map +1 -1
- package/dist/XYPlotRenderer/configSchema.js +4 -4
- package/dist/XYPlotRenderer/configSchema.js.map +1 -1
- package/dist/XYPlotRenderer/index.js +11 -13
- package/dist/XYPlotRenderer/index.js.map +1 -1
- package/dist/configSchema.js +2 -2
- package/dist/configSchema.js.map +1 -1
- package/dist/drawxy.js +192 -311
- package/dist/drawxy.js.map +1 -1
- package/dist/index.js +44 -62
- package/dist/index.js.map +1 -1
- package/dist/util.js +105 -168
- package/dist/util.js.map +1 -1
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +1 -0
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +5 -3
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -1
- package/esm/WiggleBaseRenderer.d.ts +6 -6
- package/esm/WiggleBaseRenderer.js +4 -3
- package/esm/WiggleBaseRenderer.js.map +1 -1
- package/esm/WiggleRPC/rpcMethods.d.ts +2 -2
- package/esm/WiggleRPC/rpcMethods.js.map +1 -1
- package/package.json +2 -3
- package/src/MultiWiggleAdapter/MultiWiggleAdapter.ts +7 -3
- package/src/WiggleBaseRenderer.tsx +4 -3
- package/src/WiggleRPC/rpcMethods.ts +8 -2
- package/src/declare.d.ts +0 -2
|
@@ -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,132 +22,79 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
33
22
|
__setModuleDefault(result, mod);
|
|
34
23
|
return result;
|
|
35
24
|
};
|
|
36
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
-
var t = {};
|
|
38
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
-
t[p] = s[p];
|
|
40
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
-
t[p[i]] = s[p[i]];
|
|
44
|
-
}
|
|
45
|
-
return t;
|
|
46
|
-
};
|
|
47
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
48
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
49
|
-
if (!m) return o;
|
|
50
|
-
var i = m.call(o), r, ar = [], e;
|
|
51
|
-
try {
|
|
52
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
53
|
-
}
|
|
54
|
-
catch (error) { e = { error: error }; }
|
|
55
|
-
finally {
|
|
56
|
-
try {
|
|
57
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
58
|
-
}
|
|
59
|
-
finally { if (e) throw e.error; }
|
|
60
|
-
}
|
|
61
|
-
return ar;
|
|
62
|
-
};
|
|
63
|
-
var __values = (this && this.__values) || function(o) {
|
|
64
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
65
|
-
if (m) return m.call(o);
|
|
66
|
-
if (o && typeof o.length === "number") return {
|
|
67
|
-
next: function () {
|
|
68
|
-
if (o && i >= o.length) o = void 0;
|
|
69
|
-
return { value: o && o[i++], done: !o };
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
73
|
-
};
|
|
74
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
26
|
+
const mobx_react_1 = require("mobx-react");
|
|
27
|
+
const react_1 = __importStar(require("react"));
|
|
28
|
+
const util_1 = require("@jbrowse/core/util");
|
|
29
|
+
const ui_1 = require("@jbrowse/core/ui");
|
|
79
30
|
function WiggleRendering(props) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
31
|
+
const { regions, features, bpPerPx, width, height, sources, onMouseLeave = () => { }, onMouseMove = () => { }, onFeatureClick = () => { }, displayModel, } = props;
|
|
32
|
+
const [region] = regions;
|
|
33
|
+
const ref = (0, react_1.useRef)(null);
|
|
83
34
|
function getFeatureUnderMouse(eventClientX, eventClientY) {
|
|
84
|
-
var e_1, _a, e_2, _b;
|
|
85
35
|
if (!ref.current) {
|
|
86
36
|
return;
|
|
87
37
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
38
|
+
const rect = ref.current.getBoundingClientRect();
|
|
39
|
+
const offsetX = eventClientX - rect.left;
|
|
40
|
+
const offsetY = eventClientY - rect.top;
|
|
41
|
+
const source = sources[Math.floor((offsetY / height) * sources.length)];
|
|
92
42
|
if (!source) {
|
|
93
43
|
return;
|
|
94
44
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
45
|
+
const px = region.reversed ? width - offsetX : offsetX;
|
|
46
|
+
const mouseoverBp = region.start + bpPerPx * px;
|
|
47
|
+
let featureUnderMouse;
|
|
98
48
|
if (displayModel.isMultiRow) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
if (feature.get('source') !== source.name) {
|
|
103
|
-
continue;
|
|
104
|
-
}
|
|
105
|
-
if (mouseoverBp <= feature.get('end') + bpPerPx &&
|
|
106
|
-
mouseoverBp >= feature.get('start')) {
|
|
107
|
-
featureUnderMouse = feature;
|
|
108
|
-
break;
|
|
109
|
-
}
|
|
49
|
+
for (const feature of features.values()) {
|
|
50
|
+
if (feature.get('source') !== source.name) {
|
|
51
|
+
continue;
|
|
110
52
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
53
|
+
if (mouseoverBp <= feature.get('end') + bpPerPx &&
|
|
54
|
+
mouseoverBp >= feature.get('start')) {
|
|
55
|
+
featureUnderMouse = feature;
|
|
56
|
+
break;
|
|
116
57
|
}
|
|
117
|
-
finally { if (e_1) throw e_1.error; }
|
|
118
58
|
}
|
|
119
59
|
}
|
|
120
60
|
else {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
mouseoverBp >= feature.get('start')) {
|
|
127
|
-
featuresUnderMouse.push(feature);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
132
|
-
finally {
|
|
133
|
-
try {
|
|
134
|
-
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
|
|
61
|
+
const featuresUnderMouse = [];
|
|
62
|
+
for (const feature of features.values()) {
|
|
63
|
+
if (mouseoverBp <= feature.get('end') + bpPerPx &&
|
|
64
|
+
mouseoverBp >= feature.get('start')) {
|
|
65
|
+
featuresUnderMouse.push(feature);
|
|
135
66
|
}
|
|
136
|
-
finally { if (e_2) throw e_2.error; }
|
|
137
67
|
}
|
|
138
68
|
if (featuresUnderMouse.length) {
|
|
139
|
-
|
|
140
|
-
featureUnderMouse = new util_1.SimpleFeature(
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
69
|
+
const pos = Math.floor(mouseoverBp);
|
|
70
|
+
featureUnderMouse = new util_1.SimpleFeature({
|
|
71
|
+
uniqueId: 'mouseoverfeat',
|
|
72
|
+
sources: Object.fromEntries(featuresUnderMouse
|
|
73
|
+
.map(f => f.toJSON())
|
|
74
|
+
.map(f => {
|
|
75
|
+
const { refName, start, end, source, ...rest } = f;
|
|
144
76
|
return [source, rest];
|
|
145
|
-
}))
|
|
77
|
+
})),
|
|
78
|
+
...region,
|
|
79
|
+
start: pos,
|
|
80
|
+
end: pos + 1,
|
|
81
|
+
});
|
|
146
82
|
}
|
|
147
83
|
}
|
|
148
84
|
return featureUnderMouse;
|
|
149
85
|
}
|
|
150
|
-
return (react_1.default.createElement("div", { ref: ref, onMouseMove:
|
|
151
|
-
|
|
86
|
+
return (react_1.default.createElement("div", { ref: ref, onMouseMove: event => {
|
|
87
|
+
const featureUnderMouse = getFeatureUnderMouse(event.clientX, event.clientY);
|
|
152
88
|
onMouseMove(event, featureUnderMouse);
|
|
153
|
-
}, onClick:
|
|
154
|
-
|
|
89
|
+
}, onClick: event => {
|
|
90
|
+
const featureUnderMouse = getFeatureUnderMouse(event.clientX, event.clientY);
|
|
155
91
|
onFeatureClick(event, featureUnderMouse);
|
|
156
|
-
}, onMouseLeave:
|
|
92
|
+
}, onMouseLeave: event => onMouseLeave(event), style: {
|
|
157
93
|
overflow: 'visible',
|
|
158
94
|
position: 'relative',
|
|
159
|
-
height
|
|
95
|
+
height,
|
|
160
96
|
} },
|
|
161
|
-
react_1.default.createElement(ui_1.PrerenderedCanvas,
|
|
97
|
+
react_1.default.createElement(ui_1.PrerenderedCanvas, { ...props })));
|
|
162
98
|
}
|
|
163
99
|
exports.default = (0, mobx_react_1.observer)(WiggleRendering);
|
|
164
100
|
//# sourceMappingURL=MultiWiggleRendering.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiWiggleRendering.js","sourceRoot":"","sources":["../src/MultiWiggleRendering.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MultiWiggleRendering.js","sourceRoot":"","sources":["../src/MultiWiggleRendering.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,4 @@
|
|
|
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
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
29
3
|
if (k2 === undefined) k2 = k;
|
|
30
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -48,106 +22,36 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
48
22
|
__setModuleDefault(result, mod);
|
|
49
23
|
return result;
|
|
50
24
|
};
|
|
51
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
52
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
53
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
54
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
55
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
56
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
57
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
58
|
-
});
|
|
59
|
-
};
|
|
60
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
61
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
62
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
63
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
64
|
-
function step(op) {
|
|
65
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
66
|
-
while (_) try {
|
|
67
|
-
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;
|
|
68
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
69
|
-
switch (op[0]) {
|
|
70
|
-
case 0: case 1: t = op; break;
|
|
71
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
72
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
73
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
74
|
-
default:
|
|
75
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
76
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
77
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
78
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
79
|
-
if (t[2]) _.ops.pop();
|
|
80
|
-
_.trys.pop(); continue;
|
|
81
|
-
}
|
|
82
|
-
op = body.call(thisArg, _);
|
|
83
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
84
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
88
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
89
|
-
if (!m) return o;
|
|
90
|
-
var i = m.call(o), r, ar = [], e;
|
|
91
|
-
try {
|
|
92
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
93
|
-
}
|
|
94
|
-
catch (error) { e = { error: error }; }
|
|
95
|
-
finally {
|
|
96
|
-
try {
|
|
97
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
98
|
-
}
|
|
99
|
-
finally { if (e) throw e.error; }
|
|
100
|
-
}
|
|
101
|
-
return ar;
|
|
102
|
-
};
|
|
103
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
104
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
105
|
-
if (ar || !(i in from)) {
|
|
106
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
107
|
-
ar[i] = from[i];
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
111
|
-
};
|
|
112
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
113
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
114
27
|
};
|
|
115
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
__extends(MultiXYPlotRenderer, _super);
|
|
121
|
-
function MultiXYPlotRenderer() {
|
|
122
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
123
|
-
}
|
|
29
|
+
const drawxy_1 = require("../drawxy");
|
|
30
|
+
const util_1 = require("../util");
|
|
31
|
+
const WiggleBaseRenderer_1 = __importDefault(require("../WiggleBaseRenderer"));
|
|
32
|
+
class MultiXYPlotRenderer extends WiggleBaseRenderer_1.default {
|
|
124
33
|
// @ts-ignore
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}
|
|
142
|
-
var reducedFeatures = (0, drawxy_1.drawXY)(ctx, __assign(__assign({}, props), { features: features, offset: util_1.YSCALEBAR_LABEL_OFFSET, colorCallback: function () { return source.color || 'blue'; }, Color: Color })).reducedFeatures;
|
|
143
|
-
feats = feats.concat(reducedFeatures);
|
|
144
|
-
});
|
|
145
|
-
return [2 /*return*/, { reducedFeatures: feats }];
|
|
146
|
-
}
|
|
34
|
+
async draw(ctx, props) {
|
|
35
|
+
const { sources, features } = props;
|
|
36
|
+
const groups = (0, util_1.groupBy)([...features.values()], f => f.get('source'));
|
|
37
|
+
const Color = await Promise.resolve().then(() => __importStar(require('color'))).then(f => f.default);
|
|
38
|
+
let feats = [];
|
|
39
|
+
sources.forEach(source => {
|
|
40
|
+
const features = groups[source.name];
|
|
41
|
+
if (!features) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const { reducedFeatures } = (0, drawxy_1.drawXY)(ctx, {
|
|
45
|
+
...props,
|
|
46
|
+
features,
|
|
47
|
+
offset: util_1.YSCALEBAR_LABEL_OFFSET,
|
|
48
|
+
colorCallback: () => source.color || 'blue',
|
|
49
|
+
Color,
|
|
147
50
|
});
|
|
51
|
+
feats = feats.concat(reducedFeatures);
|
|
148
52
|
});
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
}
|
|
53
|
+
return { reducedFeatures: feats };
|
|
54
|
+
}
|
|
55
|
+
}
|
|
152
56
|
exports.default = MultiXYPlotRenderer;
|
|
153
57
|
//# sourceMappingURL=MultiXYPlotRenderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiXYPlotRenderer.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/MultiXYPlotRenderer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MultiXYPlotRenderer.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/MultiXYPlotRenderer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sCAAkC;AAClC,kCAAyD;AAEzD,+EAE8B;AAE9B,MAAqB,mBAAoB,SAAQ,4BAAkB;IACjE,aAAa;IACb,KAAK,CAAC,IAAI,CAAC,GAA6B,EAAE,KAAgB;QACxD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;QACnC,MAAM,MAAM,GAAG,IAAA,cAAO,EAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QACpE,MAAM,KAAK,GAAG,MAAM,kDAAO,OAAO,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACxD,IAAI,KAAK,GAAG,EAAe,CAAA;QAC3B,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAM;aACP;YACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,eAAM,EAAC,GAAG,EAAE;gBACtC,GAAG,KAAK;gBACR,QAAQ;gBACR,MAAM,EAAE,6BAAsB;gBAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM;gBAC3C,KAAK;aACN,CAAC,CAAA;YACF,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QACF,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAA;IACnC,CAAC;CACF;AAvBD,sCAuBC"}
|
|
@@ -3,10 +3,10 @@ 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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const configuration_1 = require("@jbrowse/core/configuration");
|
|
7
|
+
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
8
|
+
const configSchema_1 = __importDefault(require("../configSchema"));
|
|
9
|
+
const configSchema = (0, configuration_1.ConfigurationSchema)('MultiXYPlotRenderer', {
|
|
10
10
|
filled: {
|
|
11
11
|
type: 'boolean',
|
|
12
12
|
defaultValue: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/configSchema.ts"],"names":[],"mappings":";;;;;AAAA
|
|
1
|
+
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/configSchema.ts"],"names":[],"mappings":";;;;;AAAA,+DAAiE;AACjE,qDAAuC;AACvC,mEAA0C;AAE1C,MAAM,YAAY,GAAG,IAAA,mCAAmB,EACtC,qBAAqB,EACrB;IACE,MAAM,EAAE;QACN,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,IAAI;KACnB;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,+CAA+C;QAC5D,YAAY,EAAE,KAAK;KACpB;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,uBAAK,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACzE,WAAW,EACT,oGAAoG;QACtG,YAAY,EAAE,KAAK;KACpB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,CAAC;KAChB;CACF,EACD,EAAE,iBAAiB,EAAE,sBAAY,EAAE,eAAe,EAAE,IAAI,EAAE,CAC3D,CAAA;AACD,kBAAe,YAAY,CAAA"}
|
|
@@ -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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
exports.default = (
|
|
10
|
-
pluginManager.addRendererType(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
});
|
|
18
|
-
});
|
|
6
|
+
const MultiWiggleRendering_1 = __importDefault(require("../MultiWiggleRendering"));
|
|
7
|
+
const MultiXYPlotRenderer_1 = __importDefault(require("./MultiXYPlotRenderer"));
|
|
8
|
+
const configSchema_1 = __importDefault(require("./configSchema"));
|
|
9
|
+
exports.default = (pluginManager) => {
|
|
10
|
+
pluginManager.addRendererType(() => new MultiXYPlotRenderer_1.default({
|
|
11
|
+
name: 'MultiXYPlotRenderer',
|
|
12
|
+
ReactComponent: MultiWiggleRendering_1.default,
|
|
13
|
+
configSchema: configSchema_1.default,
|
|
14
|
+
pluginManager,
|
|
15
|
+
}));
|
|
16
|
+
};
|
|
19
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/index.ts"],"names":[],"mappings":";;;;;AAEA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MultiXYPlotRenderer/index.ts"],"names":[],"mappings":";;;;;AAEA,mFAAoD;AACpD,gFAAuD;AACvD,kEAAyC;AAEzC,kBAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,eAAe,CAC3B,GAAG,EAAE,CACH,IAAI,6BAAmB,CAAC;QACtB,IAAI,EAAE,qBAAqB;QAC3B,cAAc,EAAd,8BAAc;QACd,YAAY,EAAZ,sBAAY;QACZ,aAAa;KACd,CAAC,CACL,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -3,17 +3,17 @@ 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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
exports.default = (
|
|
10
|
-
pluginManager.addTrackType(
|
|
11
|
-
|
|
6
|
+
const configuration_1 = require("@jbrowse/core/configuration");
|
|
7
|
+
const models_1 = require("@jbrowse/core/pluggableElementTypes/models");
|
|
8
|
+
const TrackType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/TrackType"));
|
|
9
|
+
exports.default = (pluginManager) => {
|
|
10
|
+
pluginManager.addTrackType(() => {
|
|
11
|
+
const configSchema = (0, configuration_1.ConfigurationSchema)('QuantitativeTrack', {}, { baseConfiguration: (0, models_1.createBaseTrackConfig)(pluginManager) });
|
|
12
12
|
return new TrackType_1.default({
|
|
13
13
|
name: 'QuantitativeTrack',
|
|
14
|
-
configSchema
|
|
14
|
+
configSchema,
|
|
15
15
|
stateModel: (0, models_1.createBaseTrackModel)(pluginManager, 'QuantitativeTrack', configSchema),
|
|
16
16
|
});
|
|
17
17
|
});
|
|
18
|
-
}
|
|
18
|
+
};
|
|
19
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/QuantitativeTrack/index.ts"],"names":[],"mappings":";;;;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/QuantitativeTrack/index.ts"],"names":[],"mappings":";;;;;AAAA,+DAAiE;AACjE,uEAGmD;AACnD,8FAAqE;AAGrE,kBAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE;QAC9B,MAAM,YAAY,GAAG,IAAA,mCAAmB,EACtC,mBAAmB,EACnB,EAAE,EACF,EAAE,iBAAiB,EAAE,IAAA,8BAAqB,EAAC,aAAa,CAAC,EAAE,CAC5D,CAAA;QACD,OAAO,IAAI,mBAAS,CAAC;YACnB,IAAI,EAAE,mBAAmB;YACzB,YAAY;YACZ,UAAU,EAAE,IAAA,6BAAoB,EAC9B,aAAa,EACb,mBAAmB,EACnB,YAAY,CACb;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
package/dist/Tooltip.js
CHANGED
|
@@ -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,31 +22,15 @@ 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
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
26
|
+
const react_1 = __importStar(require("react"));
|
|
27
|
+
const mobx_react_1 = require("mobx-react");
|
|
28
|
+
const material_1 = require("@mui/material");
|
|
29
|
+
const mui_1 = require("tss-react/mui");
|
|
57
30
|
// locals
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
31
|
+
const util_1 = require("./util");
|
|
32
|
+
const react_popper_1 = require("react-popper");
|
|
33
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
61
34
|
// these styles come from
|
|
62
35
|
// https://github.com/mui-org/material-ui/blob/master/packages/material-ui/src/Tooltip/Tooltip.js
|
|
63
36
|
tooltip: {
|
|
@@ -69,7 +42,7 @@ var useStyles = (0, mui_1.makeStyles)()(function (theme) { return ({
|
|
|
69
42
|
fontFamily: theme.typography.fontFamily,
|
|
70
43
|
padding: '4px 8px',
|
|
71
44
|
fontSize: theme.typography.pxToRem(12),
|
|
72
|
-
lineHeight:
|
|
45
|
+
lineHeight: `${(0, util_1.round)(14 / 10)}em`,
|
|
73
46
|
maxWidth: 300,
|
|
74
47
|
wordWrap: 'break-word',
|
|
75
48
|
},
|
|
@@ -83,18 +56,17 @@ var useStyles = (0, mui_1.makeStyles)()(function (theme) { return ({
|
|
|
83
56
|
position: 'absolute',
|
|
84
57
|
pointerEvents: 'none',
|
|
85
58
|
},
|
|
86
|
-
})
|
|
87
|
-
function Tooltip(
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
var classes = useStyles().classes;
|
|
59
|
+
}));
|
|
60
|
+
function Tooltip({ model, height, clientMouseCoord, offsetMouseCoord, clientRect, TooltipContents, useClientY, }) {
|
|
61
|
+
const { featureUnderMouse } = model;
|
|
62
|
+
const [width, setWidth] = (0, react_1.useState)(0);
|
|
63
|
+
const [anchorEl, setAnchorEl] = (0, react_1.useState)(null);
|
|
64
|
+
const { classes } = useStyles();
|
|
93
65
|
// must be memoized a la https://github.com/popperjs/react-popper/issues/391
|
|
94
|
-
|
|
95
|
-
getBoundingClientRect:
|
|
96
|
-
|
|
97
|
-
|
|
66
|
+
const virtElement = (0, react_1.useMemo)(() => ({
|
|
67
|
+
getBoundingClientRect: () => {
|
|
68
|
+
const x = clientMouseCoord[0] + width / 2 + 20;
|
|
69
|
+
const y = useClientY ? clientMouseCoord[1] : (clientRect === null || clientRect === void 0 ? void 0 : clientRect.top) || 0;
|
|
98
70
|
return {
|
|
99
71
|
top: y,
|
|
100
72
|
left: x,
|
|
@@ -102,19 +74,19 @@ function Tooltip(_a) {
|
|
|
102
74
|
right: x,
|
|
103
75
|
width: 0,
|
|
104
76
|
height: 0,
|
|
105
|
-
x
|
|
106
|
-
y
|
|
107
|
-
toJSON
|
|
77
|
+
x,
|
|
78
|
+
y,
|
|
79
|
+
toJSON() { },
|
|
108
80
|
};
|
|
109
81
|
},
|
|
110
|
-
})
|
|
111
|
-
|
|
82
|
+
}), [clientRect === null || clientRect === void 0 ? void 0 : clientRect.top, clientMouseCoord, width, useClientY]);
|
|
83
|
+
const { styles, attributes } = (0, react_popper_1.usePopper)(virtElement, anchorEl);
|
|
112
84
|
return featureUnderMouse ? (react_1.default.createElement(react_1.default.Fragment, null,
|
|
113
85
|
react_1.default.createElement(material_1.Portal, null,
|
|
114
|
-
react_1.default.createElement("div",
|
|
86
|
+
react_1.default.createElement("div", { ref: setAnchorEl, className: classes.tooltip,
|
|
115
87
|
// zIndex needed to go over widget drawer
|
|
116
|
-
style:
|
|
117
|
-
react_1.default.createElement(TooltipContents, { ref:
|
|
88
|
+
style: { ...styles.popper, zIndex: 100000 }, ...attributes.popper },
|
|
89
|
+
react_1.default.createElement(TooltipContents, { ref: elt => setWidth((elt === null || elt === void 0 ? void 0 : elt.getBoundingClientRect().width) || 0), model: model, feature: featureUnderMouse }))),
|
|
118
90
|
react_1.default.createElement("div", { className: classes.hoverVertical, style: {
|
|
119
91
|
left: offsetMouseCoord[0],
|
|
120
92
|
height: height - util_1.YSCALEBAR_LABEL_OFFSET * 2,
|
package/dist/Tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":"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"}
|