@jbrowse/core 2.0.1 → 2.1.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 (179) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +6 -0
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +313 -592
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -479
  4. package/BaseFeatureWidget/index.js +88 -126
  5. package/BaseFeatureWidget/types.js +1 -4
  6. package/BaseFeatureWidget/util.js +40 -75
  7. package/CorePlugin.js +55 -94
  8. package/Plugin.js +9 -34
  9. package/PluginLoader.js +153 -422
  10. package/PluginManager.d.ts +17 -14
  11. package/PluginManager.js +377 -666
  12. package/ReExports/Attributes.js +3 -10
  13. package/ReExports/BaseCard.js +3 -10
  14. package/ReExports/DataGrid.js +5 -12
  15. package/ReExports/FeatureDetails.js +3 -10
  16. package/ReExports/index.js +6 -12
  17. package/ReExports/list.d.ts +5 -0
  18. package/ReExports/list.js +271 -7
  19. package/ReExports/material-ui-colors.js +15 -16
  20. package/ReExports/modules.d.ts +0 -1
  21. package/ReExports/modules.js +453 -798
  22. package/TextSearch/BaseResults.js +51 -123
  23. package/TextSearch/TextSearchManager.js +66 -144
  24. package/assemblyManager/assembly.js +280 -555
  25. package/assemblyManager/assemblyConfigSchema.js +47 -64
  26. package/assemblyManager/assemblyManager.js +126 -272
  27. package/assemblyManager/index.js +9 -22
  28. package/configuration/configurationSchema.js +167 -203
  29. package/configuration/configurationSlot.js +248 -326
  30. package/configuration/index.js +19 -35
  31. package/configuration/util.js +131 -173
  32. package/data_adapters/BaseAdapter.d.ts +2 -2
  33. package/data_adapters/BaseAdapter.js +132 -521
  34. package/data_adapters/CytobandAdapter.js +40 -126
  35. package/data_adapters/dataAdapterCache.js +77 -158
  36. package/package.json +4 -5
  37. package/pluggableElementTypes/AdapterType.js +24 -79
  38. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
  39. package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
  40. package/pluggableElementTypes/ConnectionType.js +22 -65
  41. package/pluggableElementTypes/DisplayType.js +35 -82
  42. package/pluggableElementTypes/InternetAccountType.js +23 -64
  43. package/pluggableElementTypes/PluggableElementBase.js +8 -20
  44. package/pluggableElementTypes/RpcMethodType.js +85 -427
  45. package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
  46. package/pluggableElementTypes/TrackType.js +26 -70
  47. package/pluggableElementTypes/ViewType.js +21 -63
  48. package/pluggableElementTypes/WidgetType.js +21 -64
  49. package/pluggableElementTypes/index.d.ts +4 -3
  50. package/pluggableElementTypes/index.js +42 -125
  51. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
  52. package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
  53. package/pluggableElementTypes/models/BaseTrackModel.js +139 -199
  54. package/pluggableElementTypes/models/BaseViewModel.js +24 -40
  55. package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
  56. package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
  57. package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
  58. package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
  59. package/pluggableElementTypes/models/index.js +21 -70
  60. package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
  61. package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
  62. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
  63. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
  64. package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -264
  65. package/pluggableElementTypes/renderers/RendererType.js +31 -105
  66. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
  67. package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
  68. package/pluggableElementTypes/renderers/index.js +19 -62
  69. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
  70. package/rpc/BaseRpcDriver.js +169 -405
  71. package/rpc/MainThreadRpcDriver.js +27 -150
  72. package/rpc/RpcManager.js +58 -159
  73. package/rpc/WebWorkerRpcDriver.js +54 -171
  74. package/rpc/configSchema.js +25 -49
  75. package/rpc/coreRpcMethods.js +221 -959
  76. package/rpc/remoteAbortSignals.js +46 -70
  77. package/tsconfig.build.tsbuildinfo +1 -1
  78. package/ui/AboutDialog.js +106 -162
  79. package/ui/App.js +157 -242
  80. package/ui/AssemblySelector.js +59 -120
  81. package/ui/CascadingMenu.js +101 -196
  82. package/ui/ColorPicker.d.ts +16 -0
  83. package/ui/ColorPicker.js +97 -0
  84. package/ui/Drawer.js +28 -61
  85. package/ui/DrawerWidget.js +108 -202
  86. package/ui/DropDownMenu.js +60 -91
  87. package/ui/EditableTypography.js +87 -149
  88. package/ui/ErrorMessage.js +41 -56
  89. package/ui/FactoryResetDialog.js +24 -57
  90. package/ui/FatalErrorDialog.js +59 -91
  91. package/ui/FileSelector/FileSelector.js +123 -189
  92. package/ui/FileSelector/LocalFileChooser.js +44 -75
  93. package/ui/FileSelector/UrlChooser.js +17 -38
  94. package/ui/FileSelector/index.js +6 -12
  95. package/ui/Icons.js +45 -69
  96. package/ui/Logo.js +57 -110
  97. package/ui/Menu.js +232 -354
  98. package/ui/PrerenderedCanvas.js +63 -87
  99. package/ui/ResizeHandle.js +87 -116
  100. package/ui/ReturnToImportFormDialog.js +32 -63
  101. package/ui/SanitizedHTML.js +64 -47
  102. package/ui/Snackbar.js +74 -101
  103. package/ui/SnackbarModel.js +37 -51
  104. package/ui/Tooltip.js +49 -76
  105. package/ui/ViewContainer.js +113 -196
  106. package/ui/colors.d.ts +10 -0
  107. package/ui/colors.js +78 -0
  108. package/ui/index.js +51 -181
  109. package/ui/react-colorful.d.ts +17 -0
  110. package/ui/react-colorful.js +455 -0
  111. package/ui/theme.js +199 -247
  112. package/util/Base1DUtils.js +163 -202
  113. package/util/Base1DViewModel.js +121 -168
  114. package/util/QuickLRU.js +84 -332
  115. package/util/TimeTraveller.d.ts +19 -0
  116. package/util/TimeTraveller.js +86 -0
  117. package/util/aborting.js +49 -127
  118. package/util/analytics.js +91 -154
  119. package/util/blockTypes.js +106 -240
  120. package/util/calculateDynamicBlocks.js +98 -128
  121. package/util/calculateStaticBlocks.js +105 -125
  122. package/util/color/cssColorsLevel4.js +156 -160
  123. package/util/color/index.js +33 -55
  124. package/util/compositeMap.js +49 -333
  125. package/util/formatFastaStrings.js +9 -14
  126. package/util/idMaker.js +18 -31
  127. package/util/index.d.ts +7 -20
  128. package/util/index.js +742 -1188
  129. package/util/io/RemoteFileWithRangeCache.js +88 -257
  130. package/util/io/index.js +95 -169
  131. package/util/jexl.js +60 -115
  132. package/util/jexlStrings.js +24 -29
  133. package/util/layouts/BaseLayout.js +1 -4
  134. package/util/layouts/GranularRectLayout.js +388 -555
  135. package/util/layouts/MultiLayout.js +41 -109
  136. package/util/layouts/PrecomputedLayout.js +56 -112
  137. package/util/layouts/PrecomputedMultiLayout.js +22 -59
  138. package/util/layouts/SceneGraph.js +127 -197
  139. package/util/layouts/index.js +29 -66
  140. package/util/mst-reflection.js +55 -71
  141. package/util/offscreenCanvasPonyfill.js +66 -134
  142. package/util/offscreenCanvasUtils.d.ts +2 -7
  143. package/util/offscreenCanvasUtils.js +49 -146
  144. package/util/range.js +29 -40
  145. package/util/rxjs.js +20 -27
  146. package/util/simpleFeature.js +88 -152
  147. package/util/stats.js +91 -151
  148. package/util/tracks.js +130 -173
  149. package/util/types/index.js +110 -179
  150. package/util/types/mst.js +91 -146
  151. package/util/types/util.js +1 -4
  152. package/util/when.js +54 -101
  153. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
  154. package/BaseFeatureWidget/index.test.js +0 -69
  155. package/TextSearch/BaseResults.test.js +0 -42
  156. package/configuration/configurationSchema.test.js +0 -266
  157. package/configuration/configurationSlot.test.js +0 -69
  158. package/configuration/util.test.js +0 -39
  159. package/data_adapters/BaseAdapter.test.js +0 -200
  160. package/declare.d.js +0 -1
  161. package/pluggableElementTypes/RpcMethodType.test.js +0 -118
  162. package/pluggableElementTypes/renderers/declare.d.js +0 -1
  163. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
  164. package/rpc/BaseRpcDriver.test.js +0 -540
  165. package/rpc/declaration.d.js +0 -1
  166. package/ui/FatalErrorDialog.test.js +0 -82
  167. package/ui/SanitizedHTML.test.js +0 -36
  168. package/ui/theme.test.js +0 -92
  169. package/util/Base1DViewModel.test.js +0 -130
  170. package/util/calculateDynamicBlocks.test.js +0 -74
  171. package/util/calculateStaticBlocks.test.js +0 -297
  172. package/util/declare.d.js +0 -1
  173. package/util/formatFastaStrings.test.js +0 -40
  174. package/util/index.test.js +0 -213
  175. package/util/jexlStrings.test.js +0 -48
  176. package/util/layouts/GranularRectLayout.test.js +0 -99
  177. package/util/range.test.js +0 -64
  178. package/util/simpleFeature.test.js +0 -34
  179. package/util/stats.test.js +0 -172
@@ -1,92 +1,64 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
- var _ = require("..");
17
-
18
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
19
-
20
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
21
-
22
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
23
-
24
- var SceneGraph = /*#__PURE__*/function () {
25
- /**
26
- * note: all coordinates are inter-base or inter-pixel coordinates
27
- */
28
- function SceneGraph(name, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
29
- data) {
30
- (0, _classCallCheck2.default)(this, SceneGraph);
31
- this.name = name;
32
- this.left = left;
33
- this.top = top;
34
- this.width = width;
35
- this.height = height;
36
- this.data = data;
37
- (0, _defineProperty2.default)(this, "children", void 0);
38
- (0, _defineProperty2.default)(this, "absoluteCache", void 0);
39
- (0, _defineProperty2.default)(this, "parent", void 0);
40
-
41
- if (_.inDevelopment && (typeof name !== 'string' || typeof left !== 'number' || Number.isNaN(left) || typeof top !== 'number' || Number.isNaN(top) || typeof width !== 'number' || Number.isNaN(width) || typeof height !== 'number' || Number.isNaN(height))) {
42
- throw new TypeError('invalid SceneGraph arguments');
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const __1 = require("..");
4
+ class SceneGraph {
5
+ /**
6
+ * note: all coordinates are inter-base or inter-pixel coordinates
7
+ */
8
+ constructor(name, left, top, width, height,
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ data) {
11
+ this.name = name;
12
+ this.left = left;
13
+ this.top = top;
14
+ this.width = width;
15
+ this.height = height;
16
+ this.data = data;
17
+ if (__1.inDevelopment &&
18
+ (typeof name !== 'string' ||
19
+ typeof left !== 'number' ||
20
+ Number.isNaN(left) ||
21
+ typeof top !== 'number' ||
22
+ Number.isNaN(top) ||
23
+ typeof width !== 'number' ||
24
+ Number.isNaN(width) ||
25
+ typeof height !== 'number' ||
26
+ Number.isNaN(height))) {
27
+ throw new TypeError('invalid SceneGraph arguments');
28
+ }
29
+ this.children = new Map();
30
+ this.absoluteCache = { dirty: true };
43
31
  }
44
-
45
- this.children = new Map();
46
- this.absoluteCache = {
47
- dirty: true
48
- };
49
- }
50
-
51
- (0, _createClass2.default)(SceneGraph, [{
52
- key: "addChild",
53
- value: function addChild(nameOrSceneGraph, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
32
+ addChild(nameOrSceneGraph, left, top, width, height,
33
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
54
34
  data) {
55
- var child;
56
-
57
- if (nameOrSceneGraph instanceof SceneGraph) {
58
- child = nameOrSceneGraph;
59
- } else {
60
- child = new SceneGraph(nameOrSceneGraph, left, top, width, height, data);
61
- }
62
-
63
- if (!(child instanceof SceneGraph)) {
64
- throw new TypeError('argument to addChild must be an array or a SceneGraph');
65
- }
66
-
67
- if (this.children.has(child.name)) {
68
- throw new Error("child named \"".concat(child.name, "\" already exists"));
69
- } // update the bounds to match the child
70
-
71
-
72
- child.parent = this;
73
- var _child$absolute = child.absolute,
74
- childLeft = _child$absolute.left,
75
- childRight = _child$absolute.right,
76
- childTop = _child$absolute.top,
77
- childBottom = _child$absolute.bottom;
78
-
79
- if (childLeft !== undefined && childRight !== undefined && childTop !== undefined && childBottom !== undefined) {
80
- this.expand(childLeft, childRight, childTop, childBottom);
81
- this.children.set(child.name, child);
82
- }
83
-
84
- return child;
35
+ let child;
36
+ if (nameOrSceneGraph instanceof SceneGraph) {
37
+ child = nameOrSceneGraph;
38
+ }
39
+ else {
40
+ child = new SceneGraph(nameOrSceneGraph, left, top, width, height, data);
41
+ }
42
+ if (!(child instanceof SceneGraph)) {
43
+ throw new TypeError('argument to addChild must be an array or a SceneGraph');
44
+ }
45
+ if (this.children.has(child.name)) {
46
+ throw new Error(`child named "${child.name}" already exists`);
47
+ }
48
+ // update the bounds to match the child
49
+ child.parent = this;
50
+ const { left: childLeft, right: childRight, top: childTop, bottom: childBottom, } = child.absolute;
51
+ if (childLeft !== undefined &&
52
+ childRight !== undefined &&
53
+ childTop !== undefined &&
54
+ childBottom !== undefined) {
55
+ this.expand(childLeft, childRight, childTop, childBottom);
56
+ this.children.set(child.name, child);
57
+ }
58
+ return child;
85
59
  }
86
- }, {
87
- key: "getSubRecord",
88
- value: function getSubRecord(name) {
89
- return this.children.get(name);
60
+ getSubRecord(name) {
61
+ return this.children.get(name);
90
62
  }
91
63
  /**
92
64
  * if the record does not already cover the given
@@ -97,123 +69,81 @@ var SceneGraph = /*#__PURE__*/function () {
97
69
  * @param top -
98
70
  * @param bottom -
99
71
  */
100
-
101
- }, {
102
- key: "expand",
103
- value: function expand(newLeft, newRight, newTop, newBottom) {
104
- var _this$absolute = this.absolute,
105
- left = _this$absolute.left,
106
- right = _this$absolute.right,
107
- top = _this$absolute.top,
108
- bottom = _this$absolute.bottom;
109
-
110
- if (left !== undefined && newLeft < left) {
111
- var diff = left - newLeft;
112
- this.width += diff;
113
- this.left -= diff;
114
- }
115
-
116
- if (right !== undefined && newRight > right) {
117
- this.width += newRight - right;
118
- }
119
-
120
- if (top !== undefined && newTop < top) {
121
- var _diff = top - newTop;
122
-
123
- this.height += _diff;
124
- this.top -= _diff;
125
- }
126
-
127
- if (bottom !== undefined && newBottom > bottom) {
128
- this.height += newBottom - bottom;
129
- }
130
-
131
- if (this.parent) {
132
- this.parent.expand(newLeft, newRight, newTop, newBottom);
133
- }
134
-
135
- this.absoluteCache.dirty = true;
72
+ expand(newLeft, newRight, newTop, newBottom) {
73
+ const { left, right, top, bottom } = this.absolute;
74
+ if (left !== undefined && newLeft < left) {
75
+ const diff = left - newLeft;
76
+ this.width += diff;
77
+ this.left -= diff;
78
+ }
79
+ if (right !== undefined && newRight > right) {
80
+ this.width += newRight - right;
81
+ }
82
+ if (top !== undefined && newTop < top) {
83
+ const diff = top - newTop;
84
+ this.height += diff;
85
+ this.top -= diff;
86
+ }
87
+ if (bottom !== undefined && newBottom > bottom) {
88
+ this.height += newBottom - bottom;
89
+ }
90
+ if (this.parent) {
91
+ this.parent.expand(newLeft, newRight, newTop, newBottom);
92
+ }
93
+ this.absoluteCache.dirty = true;
136
94
  }
137
- }, {
138
- key: "bottom",
139
- get: function get() {
140
- return this.top + this.height;
95
+ get bottom() {
96
+ return this.top + this.height;
141
97
  }
142
- }, {
143
- key: "right",
144
- get: function get() {
145
- return this.left + this.width;
98
+ get right() {
99
+ return this.left + this.width;
146
100
  }
147
- }, {
148
- key: "walkParents",
149
- value: function walkParents(callback) {
150
- if (this.parent) {
151
- callback(this.parent);
152
- this.parent.walkParents(callback);
153
- }
101
+ walkParents(callback) {
102
+ if (this.parent) {
103
+ callback(this.parent);
104
+ this.parent.walkParents(callback);
105
+ }
154
106
  }
155
- }, {
156
- key: "walkChildren",
157
- value: function walkChildren(callback) {
158
- var _iterator = _createForOfIteratorHelper(this.children.values()),
159
- _step;
160
-
161
- try {
162
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
163
- var sub = _step.value;
164
- callback(sub);
165
- sub.walkChildren(callback);
107
+ walkChildren(callback) {
108
+ for (const sub of this.children.values()) {
109
+ callback(sub);
110
+ sub.walkChildren(callback);
166
111
  }
167
- } catch (err) {
168
- _iterator.e(err);
169
- } finally {
170
- _iterator.f();
171
- }
172
112
  }
173
- }, {
174
- key: "absolute",
175
- get: function get() {
176
- if (this.absoluteCache.dirty) {
177
- var xOffset = 0;
178
- var yOffset = 0;
179
- this.walkParents(function (node) {
180
- xOffset += node.left;
181
- yOffset += node.top;
182
- });
183
- this.absoluteCache = {
184
- dirty: false,
185
- left: this.left + xOffset,
186
- right: this.right + xOffset,
187
- top: this.top + yOffset,
188
- bottom: this.bottom + yOffset,
189
- width: this.width,
190
- height: this.height
191
- };
192
- }
193
-
194
- return this.absoluteCache;
113
+ get absolute() {
114
+ if (this.absoluteCache.dirty) {
115
+ let xOffset = 0;
116
+ let yOffset = 0;
117
+ this.walkParents((node) => {
118
+ xOffset += node.left;
119
+ yOffset += node.top;
120
+ });
121
+ this.absoluteCache = {
122
+ dirty: false,
123
+ left: this.left + xOffset,
124
+ right: this.right + xOffset,
125
+ top: this.top + yOffset,
126
+ bottom: this.bottom + yOffset,
127
+ width: this.width,
128
+ height: this.height,
129
+ };
130
+ }
131
+ return this.absoluteCache;
195
132
  }
196
- }, {
197
- key: "move",
198
- value: function move(x, y) {
199
- this.left += x;
200
- this.top += y;
201
- this.absoluteCache.dirty = true;
202
- this.walkChildren(function (c) {
203
- c.absoluteCache.dirty = true;
204
- });
205
- var _this$absolute2 = this.absolute,
206
- left = _this$absolute2.left,
207
- right = _this$absolute2.right,
208
- top = _this$absolute2.top,
209
- bottom = _this$absolute2.bottom;
210
-
211
- if (left !== undefined && right !== undefined && top !== undefined && bottom !== undefined) {
212
- this.expand(left, right, top, bottom);
213
- }
133
+ move(x, y) {
134
+ this.left += x;
135
+ this.top += y;
136
+ this.absoluteCache.dirty = true;
137
+ this.walkChildren((c) => {
138
+ c.absoluteCache.dirty = true;
139
+ });
140
+ const { left, right, top, bottom } = this.absolute;
141
+ if (left !== undefined &&
142
+ right !== undefined &&
143
+ top !== undefined &&
144
+ bottom !== undefined) {
145
+ this.expand(left, right, top, bottom);
146
+ }
214
147
  }
215
- }]);
216
- return SceneGraph;
217
- }();
218
-
219
- exports.default = SceneGraph;
148
+ }
149
+ exports.default = SceneGraph;
@@ -1,68 +1,31 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- var _exportNames = {
9
- GranularRectLayout: true,
10
- MultiLayout: true,
11
- PrecomputedLayout: true,
12
- PrecomputedMultiLayout: true,
13
- SceneGraph: true
14
- };
15
- Object.defineProperty(exports, "GranularRectLayout", {
16
- enumerable: true,
17
- get: function get() {
18
- return _GranularRectLayout.default;
19
- }
20
- });
21
- Object.defineProperty(exports, "MultiLayout", {
22
- enumerable: true,
23
- get: function get() {
24
- return _MultiLayout.default;
25
- }
26
- });
27
- Object.defineProperty(exports, "PrecomputedLayout", {
28
- enumerable: true,
29
- get: function get() {
30
- return _PrecomputedLayout.default;
31
- }
32
- });
33
- Object.defineProperty(exports, "PrecomputedMultiLayout", {
34
- enumerable: true,
35
- get: function get() {
36
- return _PrecomputedMultiLayout.default;
37
- }
38
- });
39
- Object.defineProperty(exports, "SceneGraph", {
40
- enumerable: true,
41
- get: function get() {
42
- return _SceneGraph.default;
43
- }
44
- });
45
-
46
- var _BaseLayout = require("./BaseLayout");
47
-
48
- Object.keys(_BaseLayout).forEach(function (key) {
49
- if (key === "default" || key === "__esModule") return;
50
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
51
- if (key in exports && exports[key] === _BaseLayout[key]) return;
52
- Object.defineProperty(exports, key, {
53
- enumerable: true,
54
- get: function get() {
55
- return _BaseLayout[key];
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
56
7
  }
57
- });
58
- });
59
-
60
- var _GranularRectLayout = _interopRequireDefault(require("./GranularRectLayout"));
61
-
62
- var _MultiLayout = _interopRequireDefault(require("./MultiLayout"));
63
-
64
- var _PrecomputedLayout = _interopRequireDefault(require("./PrecomputedLayout"));
65
-
66
- var _PrecomputedMultiLayout = _interopRequireDefault(require("./PrecomputedMultiLayout"));
67
-
68
- var _SceneGraph = _interopRequireDefault(require("./SceneGraph"));
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.SceneGraph = exports.PrecomputedMultiLayout = exports.PrecomputedLayout = exports.MultiLayout = exports.GranularRectLayout = void 0;
21
+ __exportStar(require("./BaseLayout"), exports);
22
+ var GranularRectLayout_1 = require("./GranularRectLayout");
23
+ Object.defineProperty(exports, "GranularRectLayout", { enumerable: true, get: function () { return __importDefault(GranularRectLayout_1).default; } });
24
+ var MultiLayout_1 = require("./MultiLayout");
25
+ Object.defineProperty(exports, "MultiLayout", { enumerable: true, get: function () { return __importDefault(MultiLayout_1).default; } });
26
+ var PrecomputedLayout_1 = require("./PrecomputedLayout");
27
+ Object.defineProperty(exports, "PrecomputedLayout", { enumerable: true, get: function () { return __importDefault(PrecomputedLayout_1).default; } });
28
+ var PrecomputedMultiLayout_1 = require("./PrecomputedMultiLayout");
29
+ Object.defineProperty(exports, "PrecomputedMultiLayout", { enumerable: true, get: function () { return __importDefault(PrecomputedMultiLayout_1).default; } });
30
+ var SceneGraph_1 = require("./SceneGraph");
31
+ Object.defineProperty(exports, "SceneGraph", { enumerable: true, get: function () { return __importDefault(SceneGraph_1).default; } });
@@ -1,19 +1,8 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getDefaultValue = getDefaultValue;
7
- exports.getEnumerationValues = getEnumerationValues;
8
- exports.getPropertyType = getPropertyType;
9
- exports.getSubType = getSubType;
10
- exports.getUnionSubTypes = getUnionSubTypes;
11
- exports.resolveLateType = resolveLateType;
12
-
13
- var _mobxStateTree = require("mobx-state-tree");
14
-
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveLateType = exports.getEnumerationValues = exports.getDefaultValue = exports.getPropertyType = exports.getUnionSubTypes = exports.getSubType = void 0;
15
4
  /* eslint-disable no-underscore-dangle */
16
-
5
+ const mobx_state_tree_1 = require("mobx-state-tree");
17
6
  /**
18
7
  * get the inner type of an MST optional, array, or late type object
19
8
  *
@@ -21,46 +10,46 @@ var _mobxStateTree = require("mobx-state-tree");
21
10
  * @returns {IModelType}
22
11
  */
23
12
  function getSubType(type) {
24
- var t;
25
-
26
- if ((0, _mobxStateTree.isOptionalType)(type)) {
27
- t = type._subtype || type.type;
28
- } else if ((0, _mobxStateTree.isArrayType)(type) || (0, _mobxStateTree.isMapType)(type)) {
29
- t = type._subtype || type._subType || type.subType;
30
- } else if (typeof type.getSubType === 'function') {
31
- return type.getSubType();
32
- } else {
33
- throw new TypeError('unsupported mst type');
34
- }
35
-
36
- if (!t) {
37
- // debugger
38
- throw new Error('failed to get subtype');
39
- }
40
-
41
- return t;
13
+ let t;
14
+ if ((0, mobx_state_tree_1.isOptionalType)(type)) {
15
+ t = type._subtype || type.type;
16
+ }
17
+ else if ((0, mobx_state_tree_1.isArrayType)(type) || (0, mobx_state_tree_1.isMapType)(type)) {
18
+ t = type._subtype || type._subType || type.subType;
19
+ }
20
+ else if (typeof type.getSubType === 'function') {
21
+ return type.getSubType();
22
+ }
23
+ else {
24
+ throw new TypeError('unsupported mst type');
25
+ }
26
+ if (!t) {
27
+ // debugger
28
+ throw new Error('failed to get subtype');
29
+ }
30
+ return t;
42
31
  }
32
+ exports.getSubType = getSubType;
43
33
  /**
44
34
  * get the array of
45
35
  * @param {MST Union Type obj} unionType
46
36
  * @returns {Array<IModelType>}
47
37
  */
48
-
49
-
50
38
  function getUnionSubTypes(unionType) {
51
- if (!(0, _mobxStateTree.isUnionType)(unionType)) {
52
- throw new TypeError('not an MST union type');
53
- }
54
-
55
- var t = unionType._types || unionType.types || getSubType(unionType)._types || getSubType(unionType).types;
56
-
57
- if (!t) {
58
- // debugger
59
- throw new Error('failed to extract subtypes from mst union');
60
- }
61
-
62
- return t;
39
+ if (!(0, mobx_state_tree_1.isUnionType)(unionType)) {
40
+ throw new TypeError('not an MST union type');
41
+ }
42
+ const t = unionType._types ||
43
+ unionType.types ||
44
+ getSubType(unionType)._types ||
45
+ getSubType(unionType).types;
46
+ if (!t) {
47
+ // debugger
48
+ throw new Error('failed to extract subtypes from mst union');
49
+ }
50
+ return t;
63
51
  }
52
+ exports.getUnionSubTypes = getUnionSubTypes;
64
53
  /**
65
54
  * get the type of one of the properties of the given MST model type
66
55
  *
@@ -68,40 +57,35 @@ function getUnionSubTypes(unionType) {
68
57
  * @param {string} propertyName
69
58
  * @returns {IModelType}
70
59
  */
71
-
72
-
73
60
  function getPropertyType(type, propertyName) {
74
- var propertyType = type.properties[propertyName];
75
- return propertyType;
61
+ const propertyType = type.properties[propertyName];
62
+ return propertyType;
76
63
  }
64
+ exports.getPropertyType = getPropertyType;
77
65
  /**
78
66
  * get the base type from inside an MST optional type
79
67
  * @param {*} type
80
68
  */
81
-
82
-
83
69
  function getDefaultValue(type) {
84
- if (!(0, _mobxStateTree.isOptionalType)(type)) {
85
- throw new TypeError('type must be an optional type');
86
- }
87
-
88
- return type._defaultValue || type.defaultValue;
70
+ if (!(0, mobx_state_tree_1.isOptionalType)(type)) {
71
+ throw new TypeError('type must be an optional type');
72
+ }
73
+ return type._defaultValue || type.defaultValue;
89
74
  }
75
+ exports.getDefaultValue = getDefaultValue;
90
76
  /** get the string values of an MST enumeration type */
91
-
92
-
93
77
  function getEnumerationValues(type) {
94
- var subtypes = getUnionSubTypes(type); // the subtypes should all be literals with a value member
95
-
96
- return subtypes.map(function (t) {
97
- return t.value;
98
- });
78
+ const subtypes = getUnionSubTypes(type);
79
+ // the subtypes should all be literals with a value member
80
+ return subtypes.map(t => t.value);
99
81
  }
100
-
82
+ exports.getEnumerationValues = getEnumerationValues;
101
83
  function resolveLateType(maybeLate) {
102
- if (!(0, _mobxStateTree.isUnionType)(maybeLate) && !(0, _mobxStateTree.isArrayType)(maybeLate) && (0, _mobxStateTree.isLateType)(maybeLate)) {
103
- return maybeLate.getSubType();
104
- }
105
-
106
- return maybeLate;
107
- }
84
+ if (!(0, mobx_state_tree_1.isUnionType)(maybeLate) &&
85
+ !(0, mobx_state_tree_1.isArrayType)(maybeLate) &&
86
+ (0, mobx_state_tree_1.isLateType)(maybeLate)) {
87
+ return maybeLate.getSubType();
88
+ }
89
+ return maybeLate;
90
+ }
91
+ exports.resolveLateType = resolveLateType;