@jbrowse/plugin-circular-view 1.6.9 → 1.7.2
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/BaseChordDisplay/components/BaseChordDisplay.d.ts +9 -9
- package/dist/BaseChordDisplay/components/BaseChordDisplay.js +53 -0
- package/dist/BaseChordDisplay/components/DisplayError.d.ts +4 -4
- package/dist/BaseChordDisplay/components/DisplayError.js +70 -0
- package/dist/BaseChordDisplay/components/Loading.d.ts +10 -10
- package/dist/BaseChordDisplay/components/Loading.js +122 -0
- package/dist/BaseChordDisplay/components/RpcRenderedSvgGroup.d.ts +4 -4
- package/dist/BaseChordDisplay/components/RpcRenderedSvgGroup.js +96 -0
- package/dist/BaseChordDisplay/index.d.ts +3 -3
- package/dist/BaseChordDisplay/index.js +31 -0
- package/dist/BaseChordDisplay/models/BaseChordDisplayModel.d.ts +99 -99
- package/dist/BaseChordDisplay/models/BaseChordDisplayModel.js +261 -0
- package/dist/BaseChordDisplay/models/baseChordDisplayConfig.d.ts +2 -2
- package/dist/BaseChordDisplay/models/baseChordDisplayConfig.js +20 -0
- package/dist/BaseChordDisplay/models/renderReaction.d.ts +30 -30
- package/dist/BaseChordDisplay/models/renderReaction.js +142 -0
- package/dist/CircularView/components/CircularView.d.ts +4 -4
- package/dist/CircularView/components/CircularView.js +203 -0
- package/dist/CircularView/components/ImportForm.d.ts +5 -5
- package/dist/CircularView/components/ImportForm.js +97 -0
- package/dist/CircularView/components/Ruler.d.ts +5 -5
- package/dist/CircularView/components/Ruler.js +205 -0
- package/dist/CircularView/models/CircularView.d.ts +97 -97
- package/dist/CircularView/models/CircularView.js +422 -0
- package/dist/CircularView/models/slices.d.ts +27 -27
- package/dist/CircularView/models/slices.js +111 -0
- package/dist/CircularView/models/slices.test.js +83 -0
- package/dist/CircularView/models/viewportVisibleRegion.d.ts +6 -6
- package/dist/CircularView/models/viewportVisibleRegion.js +280 -0
- package/dist/CircularView/models/viewportVisibleRegion.test.js +130 -0
- package/dist/index.d.ts +8 -8
- package/dist/index.js +180 -6
- package/package.json +5 -7
- package/dist/CircularView/models/slices.test.d.ts +0 -1
- package/dist/CircularView/models/viewportVisibleRegion.test.d.ts +0 -1
- package/dist/plugin-circular-view.cjs.development.js +0 -3013
- package/dist/plugin-circular-view.cjs.development.js.map +0 -1
- package/dist/plugin-circular-view.cjs.production.min.js +0 -2
- package/dist/plugin-circular-view.cjs.production.min.js.map +0 -1
- package/dist/plugin-circular-view.esm.js +0 -3004
- package/dist/plugin-circular-view.esm.js.map +0 -1
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.BaseChordDisplayModel = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
14
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
+
|
|
16
|
+
var _configuration = require("@jbrowse/core/configuration");
|
|
17
|
+
|
|
18
|
+
var _models = require("@jbrowse/core/pluggableElementTypes/models");
|
|
19
|
+
|
|
20
|
+
var _CircularChordRendererType = _interopRequireDefault(require("@jbrowse/core/pluggableElementTypes/renderers/CircularChordRendererType"));
|
|
21
|
+
|
|
22
|
+
var _util = require("@jbrowse/core/util");
|
|
23
|
+
|
|
24
|
+
var _simpleFeature = require("@jbrowse/core/util/simpleFeature");
|
|
25
|
+
|
|
26
|
+
var _tracks = require("@jbrowse/core/util/tracks");
|
|
27
|
+
|
|
28
|
+
var _mobxStateTree = require("mobx-state-tree");
|
|
29
|
+
|
|
30
|
+
var _renderReaction = _interopRequireDefault(require("./renderReaction"));
|
|
31
|
+
|
|
32
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
33
|
+
|
|
34
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
35
|
+
|
|
36
|
+
var BaseChordDisplayModel = _mobxStateTree.types.compose('BaseChordDisplay', _models.BaseDisplay, _mobxStateTree.types.model({
|
|
37
|
+
bezierRadiusRatio: 0.1,
|
|
38
|
+
assemblyName: _mobxStateTree.types.maybe(_mobxStateTree.types.string)
|
|
39
|
+
}))["volatile"](function () {
|
|
40
|
+
return {
|
|
41
|
+
// NOTE: all this volatile stuff has to be filled in at once
|
|
42
|
+
// so that it stays consistent
|
|
43
|
+
filled: false,
|
|
44
|
+
reactElement: undefined,
|
|
45
|
+
data: undefined,
|
|
46
|
+
message: '',
|
|
47
|
+
renderingComponent: undefined,
|
|
48
|
+
refNameMap: undefined
|
|
49
|
+
};
|
|
50
|
+
}).actions(function (self) {
|
|
51
|
+
var _getEnv = (0, _mobxStateTree.getEnv)(self),
|
|
52
|
+
pluginManager = _getEnv.pluginManager;
|
|
53
|
+
|
|
54
|
+
var track = self;
|
|
55
|
+
return {
|
|
56
|
+
onChordClick: function onChordClick(feature) {
|
|
57
|
+
(0, _configuration.getConf)(self, 'onChordClick', {
|
|
58
|
+
feature: feature,
|
|
59
|
+
track: track,
|
|
60
|
+
pluginManager: pluginManager
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
}).views(function (self) {
|
|
65
|
+
return {
|
|
66
|
+
get blockDefinitions() {
|
|
67
|
+
var origSlices = (0, _util.getContainingView)(self).staticSlices;
|
|
68
|
+
|
|
69
|
+
if (!self.refNameMap) {
|
|
70
|
+
return origSlices;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
var slices = JSON.parse(JSON.stringify(origSlices)); // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
74
|
+
|
|
75
|
+
slices.forEach(function (slice) {
|
|
76
|
+
var regions = slice.region.elided ? slice.region.regions : [slice.region];
|
|
77
|
+
regions.forEach(function (region) {
|
|
78
|
+
var _self$refNameMap;
|
|
79
|
+
|
|
80
|
+
var renamed = (_self$refNameMap = self.refNameMap) === null || _self$refNameMap === void 0 ? void 0 : _self$refNameMap[region.refName];
|
|
81
|
+
|
|
82
|
+
if (renamed && region.refName !== renamed) {
|
|
83
|
+
region.refName = renamed;
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
return slices;
|
|
88
|
+
},
|
|
89
|
+
|
|
90
|
+
renderProps: function renderProps() {
|
|
91
|
+
var view = (0, _util.getContainingView)(self);
|
|
92
|
+
return _objectSpread(_objectSpread({}, (0, _tracks.getParentRenderProps)(self)), {}, {
|
|
93
|
+
rpcDriverName: self.rpcDriverName,
|
|
94
|
+
displayModel: self,
|
|
95
|
+
bezierRadius: view.radiusPx * self.bezierRadiusRatio,
|
|
96
|
+
radius: view.radiusPx,
|
|
97
|
+
blockDefinitions: this.blockDefinitions,
|
|
98
|
+
onChordClick: self.onChordClick
|
|
99
|
+
});
|
|
100
|
+
},
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* the pluggable element type object for this diplay's
|
|
104
|
+
* renderer
|
|
105
|
+
*/
|
|
106
|
+
get rendererType() {
|
|
107
|
+
var display = self;
|
|
108
|
+
|
|
109
|
+
var _getEnv2 = (0, _mobxStateTree.getEnv)(self),
|
|
110
|
+
pluginManager = _getEnv2.pluginManager;
|
|
111
|
+
|
|
112
|
+
var ThisRendererType = pluginManager.getRendererType(self.rendererTypeName);
|
|
113
|
+
|
|
114
|
+
if (!ThisRendererType) {
|
|
115
|
+
throw new Error("renderer \"".concat(display.rendererTypeName, "\" not found"));
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (!ThisRendererType.ReactComponent) {
|
|
119
|
+
throw new Error("renderer ".concat(display.rendererTypeName, " has no ReactComponent, it may not be completely implemented yet"));
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return ThisRendererType;
|
|
123
|
+
},
|
|
124
|
+
|
|
125
|
+
isCompatibleWithRenderer: function isCompatibleWithRenderer(renderer) {
|
|
126
|
+
return !!(renderer instanceof _CircularChordRendererType["default"]);
|
|
127
|
+
},
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* returns a string feature ID if the globally-selected object
|
|
131
|
+
* is probably a feature
|
|
132
|
+
*/
|
|
133
|
+
get selectedFeatureId() {
|
|
134
|
+
if (!(0, _mobxStateTree.isAlive)(self)) {
|
|
135
|
+
return undefined;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
var session = (0, _util.getSession)(self);
|
|
139
|
+
|
|
140
|
+
if (!session) {
|
|
141
|
+
return undefined;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
var selection = session.selection; // does it quack like a feature?
|
|
145
|
+
|
|
146
|
+
if ((0, _simpleFeature.isFeature)(selection)) {
|
|
147
|
+
return selection.id();
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return undefined;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
};
|
|
154
|
+
}).actions(function (self) {
|
|
155
|
+
return {
|
|
156
|
+
renderStarted: function renderStarted() {
|
|
157
|
+
self.filled = false;
|
|
158
|
+
self.message = '';
|
|
159
|
+
self.reactElement = undefined;
|
|
160
|
+
self.data = undefined;
|
|
161
|
+
self.error = undefined;
|
|
162
|
+
self.renderingComponent = undefined;
|
|
163
|
+
},
|
|
164
|
+
renderSuccess: function renderSuccess(_ref) {
|
|
165
|
+
var message = _ref.message,
|
|
166
|
+
data = _ref.data,
|
|
167
|
+
reactElement = _ref.reactElement,
|
|
168
|
+
renderingComponent = _ref.renderingComponent;
|
|
169
|
+
|
|
170
|
+
if (message) {
|
|
171
|
+
self.filled = false;
|
|
172
|
+
self.message = message;
|
|
173
|
+
self.reactElement = undefined;
|
|
174
|
+
self.data = undefined;
|
|
175
|
+
self.error = undefined;
|
|
176
|
+
self.renderingComponent = undefined;
|
|
177
|
+
} else {
|
|
178
|
+
self.filled = true;
|
|
179
|
+
self.message = '';
|
|
180
|
+
self.reactElement = reactElement;
|
|
181
|
+
self.data = data;
|
|
182
|
+
self.error = undefined;
|
|
183
|
+
self.renderingComponent = renderingComponent;
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
renderError: function renderError(error) {
|
|
187
|
+
console.error(error); // the rendering failed for some reason
|
|
188
|
+
|
|
189
|
+
self.filled = false;
|
|
190
|
+
self.message = '';
|
|
191
|
+
self.reactElement = undefined;
|
|
192
|
+
self.data = undefined;
|
|
193
|
+
self.error = error;
|
|
194
|
+
self.renderingComponent = undefined;
|
|
195
|
+
},
|
|
196
|
+
setRefNameMap: function setRefNameMap(refNameMap) {
|
|
197
|
+
self.refNameMap = refNameMap;
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
}).actions(function (self) {
|
|
201
|
+
var _getEnv3 = (0, _mobxStateTree.getEnv)(self),
|
|
202
|
+
pluginManager = _getEnv3.pluginManager;
|
|
203
|
+
|
|
204
|
+
var _pluginManager$jbrequ = pluginManager.jbrequire(_renderReaction["default"]),
|
|
205
|
+
renderReactionData = _pluginManager$jbrequ.renderReactionData,
|
|
206
|
+
renderReactionEffect = _pluginManager$jbrequ.renderReactionEffect;
|
|
207
|
+
|
|
208
|
+
return {
|
|
209
|
+
afterAttach: function afterAttach() {
|
|
210
|
+
(0, _util.makeAbortableReaction)(self, renderReactionData, renderReactionEffect, {
|
|
211
|
+
name: "".concat(self.type, " ").concat(self.id, " rendering"),
|
|
212
|
+
// delay: self.renderDelay || 300,
|
|
213
|
+
fireImmediately: true
|
|
214
|
+
}, self.renderStarted, self.renderSuccess, self.renderError);
|
|
215
|
+
(0, _util.makeAbortableReaction)(self, function () {
|
|
216
|
+
return {
|
|
217
|
+
assemblyNames: (0, _tracks.getTrackAssemblyNames)(self.parentTrack),
|
|
218
|
+
adapter: (0, _configuration.getConf)((0, _mobxStateTree.getParent)(self, 2), 'adapter'),
|
|
219
|
+
assemblyManager: (0, _util.getSession)(self).assemblyManager
|
|
220
|
+
};
|
|
221
|
+
},
|
|
222
|
+
/*#__PURE__*/
|
|
223
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
224
|
+
function () {
|
|
225
|
+
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref2, signal) {
|
|
226
|
+
var assemblyNames, adapter, assemblyManager;
|
|
227
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
228
|
+
while (1) {
|
|
229
|
+
switch (_context.prev = _context.next) {
|
|
230
|
+
case 0:
|
|
231
|
+
assemblyNames = _ref2.assemblyNames, adapter = _ref2.adapter, assemblyManager = _ref2.assemblyManager;
|
|
232
|
+
return _context.abrupt("return", assemblyManager.getRefNameMapForAdapter(adapter, assemblyNames[0], {
|
|
233
|
+
signal: signal,
|
|
234
|
+
sessionId: (0, _tracks.getRpcSessionId)(self)
|
|
235
|
+
}));
|
|
236
|
+
|
|
237
|
+
case 2:
|
|
238
|
+
case "end":
|
|
239
|
+
return _context.stop();
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}, _callee);
|
|
243
|
+
}));
|
|
244
|
+
|
|
245
|
+
return function (_x, _x2) {
|
|
246
|
+
return _ref3.apply(this, arguments);
|
|
247
|
+
};
|
|
248
|
+
}(), {
|
|
249
|
+
name: "".concat(self.type, " ").concat(self.id, " getting refNames"),
|
|
250
|
+
fireImmediately: true
|
|
251
|
+
}, function () {}, function (refNameMap) {
|
|
252
|
+
self.setRefNameMap(refNameMap);
|
|
253
|
+
}, function (error) {
|
|
254
|
+
console.error(error);
|
|
255
|
+
self.setError(error);
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
};
|
|
259
|
+
});
|
|
260
|
+
|
|
261
|
+
exports.BaseChordDisplayModel = BaseChordDisplayModel;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const baseChordDisplayConfig: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
2
|
-
export { baseChordDisplayConfig };
|
|
1
|
+
declare const baseChordDisplayConfig: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
2
|
+
export { baseChordDisplayConfig };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.baseChordDisplayConfig = void 0;
|
|
7
|
+
|
|
8
|
+
var _configuration = require("@jbrowse/core/configuration");
|
|
9
|
+
|
|
10
|
+
var baseChordDisplayConfig = (0, _configuration.ConfigurationSchema)('BaseChordDisplay', {
|
|
11
|
+
onChordClick: {
|
|
12
|
+
type: 'boolean',
|
|
13
|
+
description: 'callback that should be run when a chord in the track is clicked',
|
|
14
|
+
defaultValue: false,
|
|
15
|
+
contextVariable: ['feature', 'track', 'pluginManager']
|
|
16
|
+
}
|
|
17
|
+
}, {
|
|
18
|
+
explicitIdentifier: 'displayId'
|
|
19
|
+
});
|
|
20
|
+
exports.baseChordDisplayConfig = baseChordDisplayConfig;
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
declare function _default({ jbrequire }: {
|
|
2
|
-
jbrequire: any;
|
|
3
|
-
}): {
|
|
4
|
-
renderReactionData: (self: any) => {
|
|
5
|
-
rendererType: any;
|
|
6
|
-
rpcManager: any;
|
|
7
|
-
renderProps: any;
|
|
8
|
-
renderArgs: {
|
|
9
|
-
assemblyName: any;
|
|
10
|
-
adapterConfig: any;
|
|
11
|
-
rendererType: any;
|
|
12
|
-
regions: any;
|
|
13
|
-
blockDefinitions: any;
|
|
14
|
-
sessionId: any;
|
|
15
|
-
timeout: number;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
renderReactionEffect: (props: any, signal: any, self: any) => Promise<{
|
|
19
|
-
message: any;
|
|
20
|
-
html?: undefined;
|
|
21
|
-
data?: undefined;
|
|
22
|
-
renderingComponent?: undefined;
|
|
23
|
-
} | {
|
|
24
|
-
html: any;
|
|
25
|
-
data: any;
|
|
26
|
-
renderingComponent: any;
|
|
27
|
-
message?: undefined;
|
|
28
|
-
}>;
|
|
29
|
-
};
|
|
30
|
-
export default _default;
|
|
1
|
+
declare function _default({ jbrequire }: {
|
|
2
|
+
jbrequire: any;
|
|
3
|
+
}): {
|
|
4
|
+
renderReactionData: (self: any) => {
|
|
5
|
+
rendererType: any;
|
|
6
|
+
rpcManager: any;
|
|
7
|
+
renderProps: any;
|
|
8
|
+
renderArgs: {
|
|
9
|
+
assemblyName: any;
|
|
10
|
+
adapterConfig: any;
|
|
11
|
+
rendererType: any;
|
|
12
|
+
regions: any;
|
|
13
|
+
blockDefinitions: any;
|
|
14
|
+
sessionId: any;
|
|
15
|
+
timeout: number;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
renderReactionEffect: (props: any, signal: any, self: any) => Promise<{
|
|
19
|
+
message: any;
|
|
20
|
+
html?: undefined;
|
|
21
|
+
data?: undefined;
|
|
22
|
+
renderingComponent?: undefined;
|
|
23
|
+
} | {
|
|
24
|
+
html: any;
|
|
25
|
+
data: any;
|
|
26
|
+
renderingComponent: any;
|
|
27
|
+
message?: undefined;
|
|
28
|
+
}>;
|
|
29
|
+
};
|
|
30
|
+
export default _default;
|
|
@@ -0,0 +1,142 @@
|
|
|
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"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
|
|
14
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
+
|
|
16
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
+
|
|
18
|
+
var _excluded = ["html"];
|
|
19
|
+
|
|
20
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
21
|
+
|
|
22
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
|
+
|
|
24
|
+
var _default = function _default(_ref) {
|
|
25
|
+
var jbrequire = _ref.jbrequire;
|
|
26
|
+
|
|
27
|
+
var _jbrequire = jbrequire('@jbrowse/core/util/tracks'),
|
|
28
|
+
getRpcSessionId = _jbrequire.getRpcSessionId;
|
|
29
|
+
|
|
30
|
+
var _jbrequire2 = jbrequire('@jbrowse/core/util'),
|
|
31
|
+
getContainingView = _jbrequire2.getContainingView;
|
|
32
|
+
|
|
33
|
+
var _jbrequire3 = jbrequire('@jbrowse/core/util'),
|
|
34
|
+
getSession = _jbrequire3.getSession;
|
|
35
|
+
|
|
36
|
+
function renderReactionData(self) {
|
|
37
|
+
var _view$displayedRegion;
|
|
38
|
+
|
|
39
|
+
var view = getContainingView(self);
|
|
40
|
+
var rendererType = self.rendererType;
|
|
41
|
+
|
|
42
|
+
var _getSession = getSession(view),
|
|
43
|
+
rpcManager = _getSession.rpcManager;
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
rendererType: rendererType,
|
|
47
|
+
rpcManager: rpcManager,
|
|
48
|
+
renderProps: self.renderProps(),
|
|
49
|
+
renderArgs: {
|
|
50
|
+
assemblyName: (_view$displayedRegion = view.displayedRegions[0]) === null || _view$displayedRegion === void 0 ? void 0 : _view$displayedRegion.assemblyName,
|
|
51
|
+
adapterConfig: JSON.parse(JSON.stringify(self.adapterConfig)),
|
|
52
|
+
rendererType: rendererType.name,
|
|
53
|
+
regions: JSON.parse(JSON.stringify(view.displayedRegions)),
|
|
54
|
+
blockDefinitions: self.blockDefinitions,
|
|
55
|
+
sessionId: getRpcSessionId(self),
|
|
56
|
+
timeout: 1000000
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function renderReactionEffect(_x, _x2, _x3) {
|
|
62
|
+
return _renderReactionEffect.apply(this, arguments);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function _renderReactionEffect() {
|
|
66
|
+
_renderReactionEffect = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(props, signal, self) {
|
|
67
|
+
var rendererType, rpcManager, cannotBeRenderedReason, renderArgs, renderProps, _yield$rendererType$r, html, data;
|
|
68
|
+
|
|
69
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
70
|
+
while (1) {
|
|
71
|
+
switch (_context.prev = _context.next) {
|
|
72
|
+
case 0:
|
|
73
|
+
if (props) {
|
|
74
|
+
_context.next = 2;
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
throw new Error('cannot render with no props');
|
|
79
|
+
|
|
80
|
+
case 2:
|
|
81
|
+
rendererType = props.rendererType, rpcManager = props.rpcManager, cannotBeRenderedReason = props.cannotBeRenderedReason, renderArgs = props.renderArgs, renderProps = props.renderProps;
|
|
82
|
+
|
|
83
|
+
if (!cannotBeRenderedReason) {
|
|
84
|
+
_context.next = 5;
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return _context.abrupt("return", {
|
|
89
|
+
message: cannotBeRenderedReason
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
case 5:
|
|
93
|
+
if (!(!props.renderProps.radius || !props.renderArgs.regions || !props.renderArgs.regions.length)) {
|
|
94
|
+
_context.next = 7;
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
return _context.abrupt("return", {
|
|
99
|
+
message: 'Skipping render'
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
case 7:
|
|
103
|
+
if (self.isCompatibleWithRenderer(rendererType)) {
|
|
104
|
+
_context.next = 9;
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
throw new Error("renderer ".concat(rendererType.name, " is not compatible with this display type"));
|
|
109
|
+
|
|
110
|
+
case 9:
|
|
111
|
+
_context.next = 11;
|
|
112
|
+
return rendererType.renderInClient(rpcManager, _objectSpread(_objectSpread(_objectSpread({}, renderArgs), renderProps), {}, {
|
|
113
|
+
signal: signal
|
|
114
|
+
}));
|
|
115
|
+
|
|
116
|
+
case 11:
|
|
117
|
+
_yield$rendererType$r = _context.sent;
|
|
118
|
+
html = _yield$rendererType$r.html;
|
|
119
|
+
data = (0, _objectWithoutProperties2["default"])(_yield$rendererType$r, _excluded);
|
|
120
|
+
return _context.abrupt("return", {
|
|
121
|
+
html: html,
|
|
122
|
+
data: data,
|
|
123
|
+
renderingComponent: rendererType.ReactComponent
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
case 15:
|
|
127
|
+
case "end":
|
|
128
|
+
return _context.stop();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}, _callee);
|
|
132
|
+
}));
|
|
133
|
+
return _renderReactionEffect.apply(this, arguments);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
return {
|
|
137
|
+
renderReactionData: renderReactionData,
|
|
138
|
+
renderReactionEffect: renderReactionEffect
|
|
139
|
+
};
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
exports["default"] = _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default CircularView;
|
|
2
|
-
declare function CircularView({ model }: {
|
|
3
|
-
model: any;
|
|
4
|
-
}): JSX.Element;
|
|
1
|
+
export default CircularView;
|
|
2
|
+
declare function CircularView({ model }: {
|
|
3
|
+
model: any;
|
|
4
|
+
}): JSX.Element;
|