@jbrowse/plugin-circular-view 2.17.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/BaseChordDisplay/components/BaseChordDisplay.d.ts +1 -2
  2. package/dist/BaseChordDisplay/components/BaseChordDisplay.js +8 -7
  3. package/dist/BaseChordDisplay/components/DisplayError.d.ts +1 -2
  4. package/dist/BaseChordDisplay/components/DisplayError.js +2 -11
  5. package/dist/BaseChordDisplay/components/Loading.d.ts +1 -2
  6. package/dist/BaseChordDisplay/components/Loading.js +4 -34
  7. package/dist/BaseChordDisplay/{models/configSchema.d.ts → configSchema.d.ts} +0 -3
  8. package/dist/BaseChordDisplay/{models/configSchema.js → configSchema.js} +1 -10
  9. package/dist/BaseChordDisplay/index.d.ts +2 -2
  10. package/dist/BaseChordDisplay/index.js +2 -2
  11. package/{esm/BaseChordDisplay/models → dist/BaseChordDisplay}/model.d.ts +12 -54
  12. package/dist/BaseChordDisplay/{models/model.js → model.js} +31 -94
  13. package/dist/BaseChordDisplay/renderReaction.d.ts +27 -0
  14. package/dist/BaseChordDisplay/{models/renderReaction.js → renderReaction.js} +5 -13
  15. package/dist/CircularView/components/CircularView.d.ts +2 -3
  16. package/dist/CircularView/components/CircularView.js +22 -31
  17. package/dist/CircularView/components/Controls.d.ts +2 -3
  18. package/dist/CircularView/components/Controls.js +33 -70
  19. package/dist/CircularView/components/ExportSvgDialog.d.ts +2 -3
  20. package/dist/CircularView/components/ExportSvgDialog.js +32 -67
  21. package/dist/CircularView/components/ImportForm.d.ts +2 -3
  22. package/dist/CircularView/components/ImportForm.js +12 -42
  23. package/dist/CircularView/components/Ruler.d.ts +3 -4
  24. package/dist/CircularView/components/Ruler.js +18 -37
  25. package/dist/CircularView/index.d.ts +1 -1
  26. package/dist/CircularView/index.js +18 -8
  27. package/dist/CircularView/{models/model.d.ts → model.d.ts} +9 -158
  28. package/dist/CircularView/{models/model.js → model.js} +25 -224
  29. package/dist/CircularView/{models/slices.d.ts → slices.d.ts} +1 -1
  30. package/dist/CircularView/svgcomponents/SVGBackground.d.ts +1 -2
  31. package/dist/CircularView/svgcomponents/SVGBackground.js +3 -6
  32. package/dist/CircularView/svgcomponents/SVGCircularView.d.ts +1 -1
  33. package/dist/CircularView/svgcomponents/SVGCircularView.js +5 -17
  34. package/dist/CircularView/{models/viewportVisibleRegion.js → viewportVisibleRegion.js} +0 -70
  35. package/dist/LaunchCircularView/index.d.ts +1 -1
  36. package/dist/LaunchCircularView/index.js +1 -3
  37. package/dist/index.d.ts +3 -3
  38. package/dist/index.js +5 -7
  39. package/esm/BaseChordDisplay/components/BaseChordDisplay.d.ts +1 -2
  40. package/esm/BaseChordDisplay/components/BaseChordDisplay.js +8 -7
  41. package/esm/BaseChordDisplay/components/DisplayError.d.ts +1 -2
  42. package/esm/BaseChordDisplay/components/DisplayError.js +2 -8
  43. package/esm/BaseChordDisplay/components/Loading.d.ts +1 -2
  44. package/esm/BaseChordDisplay/components/Loading.js +4 -11
  45. package/esm/BaseChordDisplay/{models/configSchema.d.ts → configSchema.d.ts} +0 -3
  46. package/esm/BaseChordDisplay/{models/configSchema.js → configSchema.js} +1 -10
  47. package/esm/BaseChordDisplay/index.d.ts +2 -2
  48. package/esm/BaseChordDisplay/index.js +2 -2
  49. package/{dist/BaseChordDisplay/models → esm/BaseChordDisplay}/model.d.ts +12 -54
  50. package/esm/BaseChordDisplay/{models/model.js → model.js} +32 -92
  51. package/esm/BaseChordDisplay/renderReaction.d.ts +27 -0
  52. package/esm/BaseChordDisplay/{models/renderReaction.js → renderReaction.js} +5 -10
  53. package/esm/CircularView/components/CircularView.d.ts +2 -3
  54. package/esm/CircularView/components/CircularView.js +22 -31
  55. package/esm/CircularView/components/Controls.d.ts +2 -3
  56. package/esm/CircularView/components/Controls.js +33 -47
  57. package/esm/CircularView/components/ExportSvgDialog.d.ts +2 -3
  58. package/esm/CircularView/components/ExportSvgDialog.js +32 -44
  59. package/esm/CircularView/components/ImportForm.d.ts +2 -3
  60. package/esm/CircularView/components/ImportForm.js +12 -19
  61. package/esm/CircularView/components/Ruler.d.ts +3 -4
  62. package/esm/CircularView/components/Ruler.js +19 -35
  63. package/esm/CircularView/index.d.ts +1 -1
  64. package/esm/CircularView/index.js +1 -1
  65. package/esm/CircularView/{models/model.d.ts → model.d.ts} +9 -158
  66. package/esm/CircularView/{models/model.js → model.js} +9 -218
  67. package/esm/CircularView/{models/slices.d.ts → slices.d.ts} +1 -1
  68. package/esm/CircularView/{models/slices.js → slices.js} +1 -1
  69. package/esm/CircularView/svgcomponents/SVGBackground.d.ts +1 -2
  70. package/esm/CircularView/svgcomponents/SVGBackground.js +3 -3
  71. package/esm/CircularView/svgcomponents/SVGCircularView.d.ts +1 -1
  72. package/esm/CircularView/svgcomponents/SVGCircularView.js +5 -17
  73. package/esm/CircularView/{models/viewportVisibleRegion.js → viewportVisibleRegion.js} +0 -70
  74. package/esm/LaunchCircularView/index.d.ts +1 -1
  75. package/esm/LaunchCircularView/index.js +1 -3
  76. package/esm/index.d.ts +3 -3
  77. package/esm/index.js +3 -5
  78. package/package.json +2 -3
  79. package/dist/BaseChordDisplay/models/renderReaction.d.ts +0 -45
  80. package/esm/BaseChordDisplay/models/renderReaction.d.ts +0 -45
  81. /package/dist/CircularView/{models/slices.js → slices.js} +0 -0
  82. /package/dist/CircularView/{models/viewportVisibleRegion.d.ts → viewportVisibleRegion.d.ts} +0 -0
  83. /package/esm/CircularView/{models/viewportVisibleRegion.d.ts → viewportVisibleRegion.d.ts} +0 -0
@@ -53,26 +53,21 @@ function thetaRangesOverlap(r1start, r1length, r2start, r2length) {
53
53
  if (r1length + 0.0001 >= twoPi || r2length + 0.0001 >= twoPi) {
54
54
  return true;
55
55
  }
56
- // put both range starts between 2π and 4π
57
56
  r1start = (((r1start % twoPi) + twoPi) % twoPi) + twoPi;
58
57
  r2start = (((r2start % twoPi) + twoPi) % twoPi) + twoPi;
59
58
  if (r1start < r2start + r2length && r1start + r1length > r2start) {
60
59
  return true;
61
60
  }
62
- // move r2 2π to the left and check
63
61
  r2start -= twoPi;
64
62
  if (r1start < r2start + r2length && r1start + r1length > r2start) {
65
63
  return true;
66
64
  }
67
- // move it 2π to the right and check
68
65
  r2start += twoPi + twoPi;
69
66
  return r1start < r2start + r2length && r1start + r1length > r2start;
70
67
  }
71
- // return which arc range has any part of the circle visible in the viewport
72
68
  function viewportVisibleSection(viewSides, circleCenter, circleRadius) {
73
69
  let [viewL, viewR, viewT, viewB] = viewSides;
74
70
  const [cx, cy] = circleCenter;
75
- // transform coordinate system to center of circle
76
71
  viewL -= cx;
77
72
  viewR -= cx;
78
73
  viewT -= cy;
@@ -97,61 +92,6 @@ function viewportVisibleSection(viewSides, circleCenter, circleRadius) {
97
92
  theta: [0, 2 * Math.PI],
98
93
  };
99
94
  }
100
- // const viewportCompletelyContainsCircle =
101
- // circleCenter[0] - viewL >= circleRadius &&
102
- // viewR - circleCenter[0] >= circleRadius &&
103
- // circleCenter[1] - viewT >= circleRadius &&
104
- // viewB - circleCenter[1] >= circleRadius
105
- // if (viewportCompletelyContainsCircle) {
106
- // return [0, 2 * Math.PI]
107
- // }
108
- // const distToCenterSquared = ([x, y]) => {
109
- // const [cx, cy] = circleCenter
110
- // const sq = n => n * n
111
- // return sq(x - cx) + sq(y - cy)
112
- // }
113
- // const circleRadiusSquared = circleRadius * circleRadius
114
- // const tlInside = distToCenterSquared([viewL, viewT]) <= circleRadiusSquared
115
- // const trInside = distToCenterSquared([viewR, viewT]) <= circleRadiusSquared
116
- // const blInside = distToCenterSquared([viewL, viewB]) <= circleRadiusSquared
117
- // const brInside = distToCenterSquared([viewR, viewB]) <= circleRadiusSquared
118
- // const noIntersection = !tlInside && !trInside && !blInside && !brInside
119
- // if (noIntersection) return undefined
120
- // const circleCompletelyContainsViewport =
121
- // tlInside && trInside && blInside && brInside
122
- // if (circleCompletelyContainsViewport) {
123
- // // viewport is in the circle, but the center is not in it, so take max
124
- // // and min of thetas to the center
125
- // const thetas = [
126
- // Math.atan(viewT / viewL),
127
- // Math.atan(viewT / viewR),
128
- // Math.atan(viewB / viewL),
129
- // Math.atan(viewB / viewR),
130
- // ]
131
- // return [Math.min(...thetas), Math.max(...thetas)]
132
- // }
133
- // if we get here, the viewport is partly in, partly out of the circle
134
- // const viewLIntersects = Math.abs(viewL - circleCenter[0]) <= circleRadius
135
- // const viewRIntersects = Math.abs(viewR - circleCenter[0]) <= circleRadius
136
- // const viewTIntersects = Math.abs(viewT - circleCenter[1]) <= circleRadius
137
- // const viewBIntersects = Math.abs(viewB - circleCenter[1]) <= circleRadius
138
- // const numIntersectingSides =
139
- // Number(viewLIntersects) +
140
- // Number(viewRIntersects) +
141
- // Number(viewTIntersects) +
142
- // Number(viewBIntersects)
143
- // if (numIntersectingSides === 4) return [0, 2 * Math.PI]
144
- // if (numIntersectingSides === 3) {
145
- // // TODO calculate the thetas of the
146
- // } else if (numIntersectingSides === 2) {
147
- // // TODO calculate the thetas of the 2 intersection points
148
- // } else if (numIntersectingSides === 1) {
149
- // // TODO calculate the thetas of the 1-2 intersection points of the line, and the angle between
150
- // }
151
- // make a list of vertices-of-interest that lie inside both shapes to examine
152
- // to determine the range covered by their intersection
153
- // transform coordinates to have the circle as the origin and find the intersections
154
- // of the circle and the view rectangle
155
95
  const vertices = [
156
96
  [viewL, viewT],
157
97
  [viewR, viewT],
@@ -162,7 +102,6 @@ function viewportVisibleSection(viewSides, circleCenter, circleRadius) {
162
102
  findCircleIntersectionY(viewR, 0, 0, circleRadius, vertices);
163
103
  findCircleIntersectionX(viewT, 0, 0, circleRadius, vertices);
164
104
  findCircleIntersectionX(viewB, 0, 0, circleRadius, vertices);
165
- // for each edge, also look at the closest point to center if it is inside the circle
166
105
  if (-viewL < circleRadius) {
167
106
  vertices.push([viewL, 0]);
168
107
  }
@@ -175,24 +114,15 @@ function viewportVisibleSection(viewSides, circleCenter, circleRadius) {
175
114
  if (viewB < circleRadius) {
176
115
  vertices.push([0, viewB]);
177
116
  }
178
- // const verticesOriginal = vertices.map(([x, y]) => [x + cx, y + cy])
179
- // now convert them all to polar and take the max and min of rho and theta
180
- // const viewportCenterTheta = cartesianToTheta(viewR + viewL, viewT + viewB)
181
117
  const reflect = viewL >= 0 ? -1 : 1;
182
- // viewportCenterTheta < Math.PI / 2 || viewportCenterTheta > 1.5 * Math.PI
183
- // ? -1
184
- // : 1
185
118
  let rhoMin = Number.POSITIVE_INFINITY;
186
119
  let rhoMax = Number.NEGATIVE_INFINITY;
187
120
  let thetaMin = Number.POSITIVE_INFINITY;
188
121
  let thetaMax = Number.NEGATIVE_INFINITY;
189
122
  for (const [vx, vy] of vertices) {
190
- // ignore vertex if outside the viewport
191
123
  if (vx >= viewL && vx <= viewR && vy >= viewT && vy <= viewB) {
192
124
  const [rho, theta] = cartesianToPolar(vx * reflect, vy * reflect);
193
- // ignore vertex if outside the circle
194
125
  if (rho <= circleRadius + 0.001) {
195
- // ignore theta if rho is 0
196
126
  if (theta < thetaMin && rho > 0.0001) {
197
127
  thetaMin = theta;
198
128
  }
@@ -1,2 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function LaunchCircularViewF(pluginManager: PluginManager): void;
@@ -3,9 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = LaunchCircularViewF;
4
4
  const mobx_1 = require("mobx");
5
5
  function LaunchCircularViewF(pluginManager) {
6
- pluginManager.addToExtensionPoint('LaunchView-CircularView',
7
- // @ts-expect-error
8
- async ({ session, assembly, tracks = [], }) => {
6
+ pluginManager.addToExtensionPoint('LaunchView-CircularView', async ({ session, assembly, tracks = [], }) => {
9
7
  const { assemblyManager } = session;
10
8
  const view = session.addView('CircularView', {});
11
9
  await (0, mobx_1.when)(() => view.initialized);
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
1
  import Plugin from '@jbrowse/core/Plugin';
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
3
  export default class CircularViewPlugin extends Plugin {
4
4
  name: string;
5
5
  install(pluginManager: PluginManager): void;
6
6
  configure(pluginManager: PluginManager): void;
7
7
  }
8
- export { baseChordDisplayConfig, BaseChordDisplayModel, BaseChordDisplayComponent, } from './BaseChordDisplay';
9
- export { type CircularViewModel, type CircularViewStateModel, } from './CircularView/models/model';
8
+ export { BaseChordDisplayComponent, BaseChordDisplayModel, baseChordDisplayConfig, } from './BaseChordDisplay';
9
+ export { type CircularViewModel, type CircularViewStateModel, } from './CircularView/model';
package/dist/index.js CHANGED
@@ -3,14 +3,12 @@ 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
- exports.BaseChordDisplayComponent = exports.BaseChordDisplayModel = exports.baseChordDisplayConfig = void 0;
7
- const util_1 = require("@jbrowse/core/util");
6
+ exports.baseChordDisplayConfig = exports.BaseChordDisplayModel = exports.BaseChordDisplayComponent = void 0;
8
7
  const Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
9
- // locals
8
+ const util_1 = require("@jbrowse/core/util");
9
+ const DataUsage_1 = __importDefault(require("@mui/icons-material/DataUsage"));
10
10
  const CircularView_1 = __importDefault(require("./CircularView"));
11
11
  const LaunchCircularView_1 = __importDefault(require("./LaunchCircularView"));
12
- // icons
13
- const DataUsage_1 = __importDefault(require("@mui/icons-material/DataUsage"));
14
12
  class CircularViewPlugin extends Plugin_1.default {
15
13
  constructor() {
16
14
  super(...arguments);
@@ -34,6 +32,6 @@ class CircularViewPlugin extends Plugin_1.default {
34
32
  }
35
33
  exports.default = CircularViewPlugin;
36
34
  var BaseChordDisplay_1 = require("./BaseChordDisplay");
37
- Object.defineProperty(exports, "baseChordDisplayConfig", { enumerable: true, get: function () { return BaseChordDisplay_1.baseChordDisplayConfig; } });
38
- Object.defineProperty(exports, "BaseChordDisplayModel", { enumerable: true, get: function () { return BaseChordDisplay_1.BaseChordDisplayModel; } });
39
35
  Object.defineProperty(exports, "BaseChordDisplayComponent", { enumerable: true, get: function () { return BaseChordDisplay_1.BaseChordDisplayComponent; } });
36
+ Object.defineProperty(exports, "BaseChordDisplayModel", { enumerable: true, get: function () { return BaseChordDisplay_1.BaseChordDisplayModel; } });
37
+ Object.defineProperty(exports, "baseChordDisplayConfig", { enumerable: true, get: function () { return BaseChordDisplay_1.baseChordDisplayConfig; } });
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  declare const BaseChordDisplay: ({ display, }: {
3
2
  display: {
4
3
  filled: boolean;
@@ -8,5 +7,5 @@ declare const BaseChordDisplay: ({ display, }: {
8
7
  radius: number;
9
8
  };
10
9
  };
11
- }) => React.JSX.Element;
10
+ }) => import("react/jsx-runtime").JSX.Element;
12
11
  export default BaseChordDisplay;
@@ -1,15 +1,16 @@
1
- import React from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { observer } from 'mobx-react';
3
- // locals
4
- import Loading from './Loading';
5
3
  import DisplayError from './DisplayError';
4
+ import Loading from './Loading';
6
5
  const BaseChordDisplay = observer(function ({ display, }) {
7
6
  if (display.error) {
8
- return React.createElement(DisplayError, { model: display });
7
+ return _jsx(DisplayError, { model: display });
8
+ }
9
+ else if (!display.filled) {
10
+ return _jsx(Loading, { model: display });
9
11
  }
10
- if (!display.filled) {
11
- return React.createElement(Loading, { model: display });
12
+ else {
13
+ return display.reactElement;
12
14
  }
13
- return display.reactElement;
14
15
  });
15
16
  export default BaseChordDisplay;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  declare const DisplayError: ({ model, }: {
3
2
  model: {
4
3
  renderProps: {
@@ -6,5 +5,5 @@ declare const DisplayError: ({ model, }: {
6
5
  };
7
6
  error: unknown;
8
7
  };
9
- }) => React.JSX.Element;
8
+ }) => import("react/jsx-runtime").JSX.Element;
10
9
  export default DisplayError;
@@ -1,13 +1,7 @@
1
- import React from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { observer } from 'mobx-react';
3
3
  const DisplayError = observer(function ({ model, }) {
4
4
  const { renderProps: { radius }, error, } = model;
5
- return (React.createElement("g", null,
6
- React.createElement("defs", null,
7
- React.createElement("pattern", { id: "diagonalHatch", width: "10", height: "10", patternTransform: "rotate(45 0 0)", patternUnits: "userSpaceOnUse" },
8
- React.createElement("line", { x1: "0", y1: "0", x2: "0", y2: "10", style: { stroke: 'rgba(255,0,0,0.5)', strokeWidth: 10 } }))),
9
- React.createElement("circle", { cx: "0", cy: "0", r: radius, fill: "#ffb4b4" }),
10
- React.createElement("circle", { cx: "0", cy: "0", r: radius, fill: "url(#diagonalHatch)" }),
11
- React.createElement("text", { x: "0", y: "0", transform: "rotate(90 0 0)", dominantBaseline: "middle", textAnchor: "middle" }, String(error))));
5
+ return (_jsxs("g", { children: [_jsx("defs", { children: _jsx("pattern", { id: "diagonalHatch", width: "10", height: "10", patternTransform: "rotate(45 0 0)", patternUnits: "userSpaceOnUse", children: _jsx("line", { x1: "0", y1: "0", x2: "0", y2: "10", style: { stroke: 'rgba(255,0,0,0.5)', strokeWidth: 10 } }) }) }), _jsx("circle", { cx: "0", cy: "0", r: radius, fill: "#ffb4b4" }), _jsx("circle", { cx: "0", cy: "0", r: radius, fill: "url(#diagonalHatch)" }), _jsx("text", { x: "0", y: "0", transform: "rotate(90 0 0)", dominantBaseline: "middle", textAnchor: "middle", children: String(error) })] }));
12
6
  });
13
7
  export default DisplayError;
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  declare const Loading: ({ model: { renderProps: { radius }, }, }: {
3
2
  model: {
4
3
  renderProps: {
5
4
  radius: number;
6
5
  };
7
6
  };
8
- }) => React.JSX.Element | null;
7
+ }) => import("react/jsx-runtime").JSX.Element | null;
9
8
  export default Loading;
@@ -1,6 +1,7 @@
1
- import React, { useState, useEffect } from 'react';
2
- import { makeStyles } from 'tss-react/mui';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
3
  import { observer } from 'mobx-react';
4
+ import { makeStyles } from 'tss-react/mui';
4
5
  const useStyles = makeStyles()(theme => {
5
6
  const offset = 2;
6
7
  const duration = 1.4;
@@ -45,7 +46,6 @@ const useStyles = makeStyles()(theme => {
45
46
  });
46
47
  const Loading = observer(function ({ model: { renderProps: { radius }, }, }) {
47
48
  const { classes } = useStyles();
48
- // only show the loading message after 400ms to prevent excessive flickering
49
49
  const [shown, setShown] = useState(false);
50
50
  useEffect(() => {
51
51
  const timeout = setTimeout(() => {
@@ -55,13 +55,6 @@ const Loading = observer(function ({ model: { renderProps: { radius }, }, }) {
55
55
  clearTimeout(timeout);
56
56
  };
57
57
  });
58
- return !shown ? null : (React.createElement("g", null,
59
- React.createElement("defs", null,
60
- React.createElement("pattern", { id: "diagonalHatch", width: "10", height: "10", patternTransform: "rotate(45 0 0)", patternUnits: "userSpaceOnUse" },
61
- React.createElement("line", { x1: "0", y1: "0", x2: "0", y2: "10", style: { stroke: 'rgba(255,255,255,0.5)', strokeWidth: 10 } }))),
62
- React.createElement("circle", { cx: "0", cy: "0", r: radius, fill: "#f1f1f1" }),
63
- React.createElement("circle", { cx: "0", cy: "0", r: radius, fill: "url(#diagonalHatch)" }),
64
- React.createElement("text", { x: "0", y: "0", transform: "rotate(90 0 0)", dominantBaseline: "middle", textAnchor: "middle" }, "Loading\u2026"),
65
- React.createElement("circle", { className: classes.path, fill: "none", strokeWidth: "4", strokeLinecap: "round", cx: "0", cy: "0", r: "60" })));
58
+ return !shown ? null : (_jsxs("g", { children: [_jsx("defs", { children: _jsx("pattern", { id: "diagonalHatch", width: "10", height: "10", patternTransform: "rotate(45 0 0)", patternUnits: "userSpaceOnUse", children: _jsx("line", { x1: "0", y1: "0", x2: "0", y2: "10", style: { stroke: 'rgba(255,255,255,0.5)', strokeWidth: 10 } }) }) }), _jsx("circle", { cx: "0", cy: "0", r: radius, fill: "#f1f1f1" }), _jsx("circle", { cx: "0", cy: "0", r: radius, fill: "url(#diagonalHatch)" }), _jsx("text", { x: "0", y: "0", transform: "rotate(90 0 0)", dominantBaseline: "middle", textAnchor: "middle", children: "Loading\u2026" }), _jsx("circle", { className: classes.path, fill: "none", strokeWidth: "4", strokeLinecap: "round", cx: "0", cy: "0", r: "60" })] }));
66
59
  });
67
60
  export default Loading;
@@ -1,7 +1,4 @@
1
1
  declare const baseChordDisplayConfig: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
- /**
3
- * #slot
4
- */
5
2
  onChordClick: {
6
3
  type: string;
7
4
  description: string;
@@ -1,12 +1,6 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- /**
3
- * #config BaseChordDisplay
4
- */
5
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
2
+ function x() { }
6
3
  const baseChordDisplayConfig = ConfigurationSchema('BaseChordDisplay', {
7
- /**
8
- * #slot
9
- */
10
4
  onChordClick: {
11
5
  type: 'boolean',
12
6
  description: 'callback that should be run when a chord in the track is clicked',
@@ -14,9 +8,6 @@ const baseChordDisplayConfig = ConfigurationSchema('BaseChordDisplay', {
14
8
  contextVariable: ['feature', 'track', 'pluginManager'],
15
9
  },
16
10
  }, {
17
- /**
18
- * #identifier
19
- */
20
11
  explicitIdentifier: 'displayId',
21
12
  });
22
13
  export { baseChordDisplayConfig };
@@ -1,3 +1,3 @@
1
1
  export { default as BaseChordDisplayComponent } from './components/BaseChordDisplay';
2
- export { BaseChordDisplayModel } from './models/model';
3
- export { baseChordDisplayConfig } from './models/configSchema';
2
+ export { BaseChordDisplayModel } from './model';
3
+ export { baseChordDisplayConfig } from './configSchema';
@@ -1,3 +1,3 @@
1
1
  export { default as BaseChordDisplayComponent } from './components/BaseChordDisplay';
2
- export { BaseChordDisplayModel } from './models/model';
3
- export { baseChordDisplayConfig } from './models/configSchema';
2
+ export { BaseChordDisplayModel } from './model';
3
+ export { baseChordDisplayConfig } from './configSchema';
@@ -1,9 +1,6 @@
1
- import React from 'react';
2
- import CircularChordRendererType from '@jbrowse/core/pluggableElementTypes/renderers/CircularChordRendererType';
3
- import RendererType from '@jbrowse/core/pluggableElementTypes/renderers/RendererType';
4
- import { AnyReactComponentType, Feature } from '@jbrowse/core/util';
5
- import { ExportSvgOptions } from '../../CircularView/models/model';
6
- import { ThemeOptions } from '@mui/material';
1
+ import type { ExportSvgOptions } from '../CircularView/model';
2
+ import type { AnyReactComponentType, Feature } from '@jbrowse/core/util';
3
+ import type { ThemeOptions } from '@mui/material';
7
4
  export declare const BaseChordDisplayModel: import("mobx-state-tree").IModelType<{
8
5
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
9
6
  type: import("mobx-state-tree").ISimpleType<string>;
@@ -54,9 +51,7 @@ export declare const BaseChordDisplayModel: import("mobx-state-tree").IModelType
54
51
  rendererTypeName: string;
55
52
  error: unknown;
56
53
  message: string | undefined;
57
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree" /**
58
- * #getter
59
- */).IModelType<{
54
+ } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
60
55
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
61
56
  type: import("mobx-state-tree").ISimpleType<string>;
62
57
  rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
@@ -88,64 +83,27 @@ export declare const BaseChordDisplayModel: import("mobx-state-tree").IModelType
88
83
  renderingComponent: undefined | AnyReactComponentType;
89
84
  refNameMap: Record<string, string> | undefined;
90
85
  } & {
91
- /**
92
- * #action
93
- */
94
86
  onChordClick(feature: Feature): void;
95
87
  } & {
96
- /**
97
- * #getter
98
- */
99
- readonly blockDefinitions: import("../../CircularView/models/slices").Slice[];
100
- /**
101
- * #method
102
- */
88
+ readonly blockDefinitions: import("../CircularView/slices").Slice[];
103
89
  renderProps(): any;
104
- /**
105
- * #getter
106
- * the pluggable element type object for this display's renderer
107
- */
108
- readonly rendererType: RendererType | undefined;
109
- /**
110
- * #method
111
- */
112
- isCompatibleWithRenderer(renderer: RendererType): renderer is CircularChordRendererType;
113
- /**
114
- * #getter
115
- * returns a string feature ID if the globally-selected object
116
- * is probably a feature
117
- */
90
+ readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType | undefined;
118
91
  readonly selectedFeatureId: string | undefined;
119
92
  } & {
120
- /**
121
- * #action
122
- */
123
93
  renderStarted(): void;
124
- /**
125
- * #action
126
- */
127
94
  renderSuccess({ message, data, reactElement, html, renderingComponent, }: {
128
- message: string;
129
- data: any;
130
- html: string;
131
- reactElement: React.ReactElement;
132
- renderingComponent: AnyReactComponentType;
95
+ message?: string;
96
+ data?: any;
97
+ html?: string;
98
+ reactElement?: React.ReactElement;
99
+ renderingComponent?: AnyReactComponentType;
133
100
  }): void;
134
- /**
135
- * #action
136
- */
137
101
  renderError(error: unknown): void;
138
- /**
139
- * #action
140
- */
141
102
  setRefNameMap(refNameMap: Record<string, string>): void;
142
103
  } & {
143
104
  afterAttach(): void;
144
105
  } & {
145
- /**
146
- * #method
147
- */
148
106
  renderSvg(opts: ExportSvgOptions & {
149
107
  theme?: ThemeOptions;
150
- }): Promise<React.JSX.Element>;
108
+ }): Promise<import("react/jsx-runtime").JSX.Element>;
151
109
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;