@jbrowse/core 2.0.0 → 2.1.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/BaseFeatureWidget/BaseFeatureDetail.d.ts +9 -3
- package/BaseFeatureWidget/BaseFeatureDetail.js +313 -581
- package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -478
- package/BaseFeatureWidget/index.js +88 -126
- package/BaseFeatureWidget/types.d.ts +1 -0
- package/BaseFeatureWidget/types.js +1 -4
- package/BaseFeatureWidget/util.js +40 -75
- package/CorePlugin.js +55 -94
- package/Plugin.js +9 -34
- package/PluginLoader.js +153 -422
- package/PluginManager.d.ts +28 -33
- package/PluginManager.js +377 -666
- package/ReExports/Attributes.js +3 -10
- package/ReExports/BaseCard.js +3 -10
- package/ReExports/DataGrid.js +5 -12
- package/ReExports/FeatureDetails.js +3 -10
- package/ReExports/index.js +6 -12
- package/ReExports/list.d.ts +5 -0
- package/ReExports/list.js +271 -7
- package/ReExports/material-ui-colors.js +15 -16
- package/ReExports/modules.d.ts +11 -20
- package/ReExports/modules.js +453 -798
- package/TextSearch/BaseResults.js +51 -123
- package/TextSearch/TextSearchManager.js +66 -144
- package/assemblyManager/assembly.js +280 -555
- package/assemblyManager/assemblyConfigSchema.js +47 -64
- package/assemblyManager/assemblyManager.js +126 -272
- package/assemblyManager/index.js +9 -22
- package/configuration/configurationSchema.js +167 -203
- package/configuration/configurationSlot.js +248 -326
- package/configuration/index.js +19 -35
- package/configuration/util.js +131 -173
- package/data_adapters/BaseAdapter.d.ts +2 -2
- package/data_adapters/BaseAdapter.js +132 -521
- package/data_adapters/CytobandAdapter.js +40 -126
- package/data_adapters/dataAdapterCache.js +77 -158
- package/package.json +4 -5
- package/pluggableElementTypes/AdapterType.js +24 -79
- package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
- package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
- package/pluggableElementTypes/ConnectionType.js +22 -65
- package/pluggableElementTypes/DisplayType.js +35 -82
- package/pluggableElementTypes/InternetAccountType.js +23 -64
- package/pluggableElementTypes/PluggableElementBase.js +8 -20
- package/pluggableElementTypes/RpcMethodType.js +85 -427
- package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
- package/pluggableElementTypes/TrackType.js +26 -70
- package/pluggableElementTypes/ViewType.js +21 -63
- package/pluggableElementTypes/WidgetType.js +21 -64
- package/pluggableElementTypes/index.d.ts +4 -3
- package/pluggableElementTypes/index.js +42 -125
- package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
- package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
- package/pluggableElementTypes/models/BaseTrackModel.js +139 -199
- package/pluggableElementTypes/models/BaseViewModel.js +24 -40
- package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
- package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
- package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
- package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
- package/pluggableElementTypes/models/index.js +21 -70
- package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
- package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
- package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
- package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -255
- package/pluggableElementTypes/renderers/RendererType.js +31 -105
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
- package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
- package/pluggableElementTypes/renderers/index.js +19 -62
- package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
- package/rpc/BaseRpcDriver.js +169 -405
- package/rpc/MainThreadRpcDriver.js +27 -150
- package/rpc/RpcManager.js +58 -159
- package/rpc/WebWorkerRpcDriver.js +54 -171
- package/rpc/configSchema.js +25 -49
- package/rpc/coreRpcMethods.d.ts +1 -3
- package/rpc/coreRpcMethods.js +221 -959
- package/rpc/remoteAbortSignals.js +46 -70
- package/tsconfig.build.tsbuildinfo +1 -1
- package/ui/AboutDialog.js +106 -162
- package/ui/App.js +157 -242
- package/ui/AssemblySelector.js +59 -120
- package/ui/CascadingMenu.js +101 -196
- package/ui/ColorPicker.d.ts +16 -0
- package/ui/ColorPicker.js +97 -0
- package/ui/Drawer.js +28 -61
- package/ui/DrawerWidget.js +108 -202
- package/ui/DropDownMenu.js +60 -91
- package/ui/EditableTypography.js +87 -149
- package/ui/ErrorMessage.js +41 -56
- package/ui/FactoryResetDialog.js +24 -57
- package/ui/FatalErrorDialog.js +59 -91
- package/ui/FileSelector/FileSelector.js +123 -189
- package/ui/FileSelector/LocalFileChooser.js +44 -75
- package/ui/FileSelector/UrlChooser.js +17 -38
- package/ui/FileSelector/index.js +6 -12
- package/ui/Icons.js +45 -69
- package/ui/Logo.js +57 -110
- package/ui/Menu.js +232 -354
- package/ui/PrerenderedCanvas.js +63 -87
- package/ui/ResizeHandle.js +87 -116
- package/ui/ReturnToImportFormDialog.js +32 -63
- package/ui/SanitizedHTML.js +64 -47
- package/ui/Snackbar.js +74 -101
- package/ui/SnackbarModel.js +37 -51
- package/ui/Tooltip.js +49 -76
- package/ui/ViewContainer.js +113 -196
- package/ui/colors.d.ts +10 -0
- package/ui/colors.js +78 -0
- package/ui/index.js +51 -181
- package/ui/react-colorful.d.ts +17 -0
- package/ui/react-colorful.js +455 -0
- package/ui/theme.d.ts +23 -1
- package/ui/theme.js +199 -247
- package/util/Base1DUtils.d.ts +32 -0
- package/util/Base1DUtils.js +174 -0
- package/util/Base1DViewModel.d.ts +16 -30
- package/util/Base1DViewModel.js +116 -293
- package/util/QuickLRU.js +84 -332
- package/util/TimeTraveller.d.ts +19 -0
- package/util/TimeTraveller.js +86 -0
- package/util/aborting.js +49 -127
- package/util/analytics.js +91 -154
- package/util/blockTypes.js +106 -240
- package/util/calculateDynamicBlocks.js +98 -128
- package/util/calculateStaticBlocks.js +105 -125
- package/util/color/cssColorsLevel4.js +156 -160
- package/util/color/index.js +33 -55
- package/util/compositeMap.js +49 -333
- package/util/formatFastaStrings.js +9 -14
- package/util/idMaker.js +18 -31
- package/util/index.d.ts +18 -32
- package/util/index.js +747 -1226
- package/util/io/RemoteFileWithRangeCache.js +88 -257
- package/util/io/index.js +95 -169
- package/util/jexl.js +60 -115
- package/util/jexlStrings.js +24 -29
- package/util/layouts/BaseLayout.js +1 -4
- package/util/layouts/GranularRectLayout.js +388 -555
- package/util/layouts/MultiLayout.js +41 -109
- package/util/layouts/PrecomputedLayout.js +56 -112
- package/util/layouts/PrecomputedMultiLayout.js +22 -59
- package/util/layouts/SceneGraph.js +127 -197
- package/util/layouts/index.js +29 -66
- package/util/mst-reflection.js +55 -71
- package/util/offscreenCanvasPonyfill.js +66 -134
- package/util/offscreenCanvasUtils.d.ts +2 -7
- package/util/offscreenCanvasUtils.js +49 -146
- package/util/range.js +29 -40
- package/util/rxjs.js +20 -27
- package/util/simpleFeature.js +88 -152
- package/util/stats.js +91 -151
- package/util/tracks.js +130 -173
- package/util/types/index.js +110 -179
- package/util/types/mst.js +91 -146
- package/util/types/util.js +1 -4
- package/util/when.js +54 -101
- package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
- package/BaseFeatureWidget/index.test.js +0 -69
- package/TextSearch/BaseResults.test.js +0 -42
- package/configuration/configurationSchema.test.js +0 -266
- package/configuration/configurationSlot.test.js +0 -69
- package/configuration/util.test.js +0 -39
- package/data_adapters/BaseAdapter.test.js +0 -200
- package/declare.d.js +0 -1
- package/pluggableElementTypes/RpcMethodType.test.js +0 -118
- package/pluggableElementTypes/renderers/declare.d.js +0 -1
- package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
- package/rpc/BaseRpcDriver.test.js +0 -540
- package/rpc/declaration.d.js +0 -1
- package/ui/FatalErrorDialog.test.js +0 -82
- package/ui/SanitizedHTML.test.js +0 -36
- package/ui/theme.test.js +0 -92
- package/util/Base1DViewModel.test.js +0 -130
- package/util/calculateDynamicBlocks.test.js +0 -74
- package/util/calculateStaticBlocks.test.js +0 -297
- package/util/declare.d.js +0 -1
- package/util/formatFastaStrings.test.js +0 -40
- package/util/index.test.js +0 -213
- package/util/jexlStrings.test.js +0 -48
- package/util/layouts/GranularRectLayout.test.js +0 -99
- package/util/range.test.js +0 -64
- package/util/simpleFeature.test.js +0 -34
- package/util/stats.test.js +0 -172
package/PluginManager.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ import ConnectionType from './pluggableElementTypes/ConnectionType';
|
|
|
11
11
|
import RpcMethodType from './pluggableElementTypes/RpcMethodType';
|
|
12
12
|
import InternetAccountType from './pluggableElementTypes/InternetAccountType';
|
|
13
13
|
import TextSearchAdapterType from './pluggableElementTypes/TextSearchAdapterType';
|
|
14
|
+
import AddTrackWorkflowType from './pluggableElementTypes/AddTrackWorkflowType';
|
|
14
15
|
import Plugin from './Plugin';
|
|
15
16
|
import ReExports from './ReExports';
|
|
16
17
|
import { PluggableElementType, PluggableElementMember } from './pluggableElementTypes';
|
|
@@ -25,7 +26,7 @@ declare class PhasedScheduler<PhaseName extends string> {
|
|
|
25
26
|
add(phase: PhaseName, callback: Function): void;
|
|
26
27
|
run(): void;
|
|
27
28
|
}
|
|
28
|
-
declare type PluggableElementTypeGroup = 'renderer' | 'adapter' | 'display' | 'track' | 'connection' | 'view' | 'widget' | 'rpc method' | 'internet account' | 'text search adapter';
|
|
29
|
+
declare type PluggableElementTypeGroup = 'renderer' | 'adapter' | 'display' | 'track' | 'connection' | 'view' | 'widget' | 'rpc method' | 'internet account' | 'text search adapter' | 'add track workflow';
|
|
29
30
|
/** internal class that holds the info for a certain element type */
|
|
30
31
|
declare class TypeRecord<ElementClass extends PluggableElementBase> {
|
|
31
32
|
typeName: string;
|
|
@@ -78,6 +79,7 @@ export default class PluginManager {
|
|
|
78
79
|
viewTypes: TypeRecord<ViewType>;
|
|
79
80
|
widgetTypes: TypeRecord<WidgetType>;
|
|
80
81
|
rpcMethods: TypeRecord<RpcMethodType>;
|
|
82
|
+
addTrackWidgets: TypeRecord<AddTrackWorkflowType>;
|
|
81
83
|
internetAccountTypes: TypeRecord<InternetAccountType>;
|
|
82
84
|
configured: boolean;
|
|
83
85
|
rootModel?: AbstractRootModel;
|
|
@@ -97,7 +99,7 @@ export default class PluginManager {
|
|
|
97
99
|
getElementType(groupName: PluggableElementTypeGroup, typeName: string): PluggableElementBase;
|
|
98
100
|
getElementTypesInGroup(groupName: PluggableElementTypeGroup): PluggableElementBase[];
|
|
99
101
|
/** get a MST type for the union of all specified pluggable MST types */
|
|
100
|
-
pluggableMstType(
|
|
102
|
+
pluggableMstType(groupName: PluggableElementTypeGroup, fieldName: PluggableElementMember, fallback?: IAnyType): IAnyType;
|
|
101
103
|
/** get a MST type for the union of all specified pluggable config schemas */
|
|
102
104
|
pluggableConfigSchemaType(typeGroup: PluggableElementTypeGroup, fieldName?: PluggableElementMember): IAnyModelType;
|
|
103
105
|
jbrequireCache: Map<any, any>;
|
|
@@ -162,30 +164,22 @@ export default class PluginManager {
|
|
|
162
164
|
readonly maxOffset: number;
|
|
163
165
|
readonly minOffset: number;
|
|
164
166
|
readonly totalBp: number;
|
|
167
|
+
} & {
|
|
168
|
+
readonly dynamicBlocks: import("./util/blockTypes").BlockSet;
|
|
169
|
+
readonly staticBlocks: import("./util/blockTypes").BlockSet;
|
|
170
|
+
readonly currBp: number;
|
|
171
|
+
} & {
|
|
165
172
|
pxToBp(px: number): {
|
|
166
|
-
oob: boolean;
|
|
167
|
-
coord: number;
|
|
168
|
-
offset: number;
|
|
169
|
-
index: number;
|
|
170
|
-
refName: string;
|
|
171
|
-
start: number;
|
|
172
|
-
end: number;
|
|
173
|
-
reversed: boolean;
|
|
174
|
-
assemblyName: string;
|
|
175
|
-
} | {
|
|
176
173
|
coord: number;
|
|
177
174
|
index: number;
|
|
178
|
-
start: number;
|
|
179
175
|
refName: string;
|
|
180
176
|
oob: boolean;
|
|
181
177
|
assemblyName: string;
|
|
182
178
|
offset: number;
|
|
179
|
+
start: number;
|
|
180
|
+
end: number;
|
|
183
181
|
reversed: boolean;
|
|
184
182
|
};
|
|
185
|
-
} & {
|
|
186
|
-
readonly dynamicBlocks: import("./util/blockTypes").BlockSet;
|
|
187
|
-
readonly staticBlocks: import("./util/blockTypes").BlockSet;
|
|
188
|
-
readonly currBp: number;
|
|
189
183
|
bpToPx({ refName, coord, regionNumber, }: {
|
|
190
184
|
refName: string;
|
|
191
185
|
coord: number;
|
|
@@ -193,15 +187,15 @@ export default class PluginManager {
|
|
|
193
187
|
}): number | undefined;
|
|
194
188
|
} & {
|
|
195
189
|
setFeatures(features: import("./util").Feature[]): void;
|
|
196
|
-
zoomToDisplayedRegions(leftPx: import("./util/Base1DViewModel").BpOffset | undefined, rightPx: import("./util/Base1DViewModel").BpOffset | undefined): void;
|
|
197
190
|
showAllRegions(): void;
|
|
198
|
-
moveTo(start: import("./util/Base1DViewModel").BpOffset, end: import("./util/Base1DViewModel").BpOffset): void;
|
|
199
191
|
zoomOut(): void;
|
|
200
192
|
zoomIn(): void;
|
|
201
|
-
zoomTo(newBpPerPx: number, offset?: number):
|
|
193
|
+
zoomTo(newBpPerPx: number, offset?: number): number;
|
|
202
194
|
scrollTo(offsetPx: number): number;
|
|
203
|
-
centerAt(coord: number, refName: string, regionNumber: number): void;
|
|
195
|
+
centerAt(coord: number, refName: string | undefined, regionNumber: number): void;
|
|
204
196
|
scroll(distance: number): number;
|
|
197
|
+
} & {
|
|
198
|
+
moveTo(start?: import("./util/Base1DUtils").BpOffset | undefined, end?: import("./util/Base1DUtils").BpOffset | undefined): void;
|
|
205
199
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
206
200
|
'@jbrowse/core/util/io': typeof import("./util/io");
|
|
207
201
|
'@jbrowse/core/util/mst-reflection': typeof import("./util/mst-reflection");
|
|
@@ -218,7 +212,6 @@ export default class PluginManager {
|
|
|
218
212
|
'react-dom': typeof import("react-dom");
|
|
219
213
|
'mobx-react': typeof import("mobx-react");
|
|
220
214
|
'@mui/x-data-grid': {
|
|
221
|
-
DataGrid: any;
|
|
222
215
|
useGridApiContext: typeof import("@mui/x-data-grid").useGridApiContext;
|
|
223
216
|
useGridApiRef: <Api extends import("@mui/x-data-grid").GridApiCommon = import("@mui/x-data-grid/models/api/gridApiCommunity").GridApiCommunity>() => import("react").MutableRefObject<Api>;
|
|
224
217
|
useGridRootProps: () => import("@mui/x-data-grid/models/props/DataGridProps").DataGridProcessedProps<any>;
|
|
@@ -270,20 +263,22 @@ export default class PluginManager {
|
|
|
270
263
|
getTrackType(typeName: string): TrackType;
|
|
271
264
|
getDisplayType(typeName: string): DisplayType;
|
|
272
265
|
getViewType(typeName: string): ViewType;
|
|
266
|
+
getAddTrackWorkflow(typeName: string): AddTrackWorkflowType;
|
|
273
267
|
getWidgetType(typeName: string): WidgetType;
|
|
274
268
|
getConnectionType(typeName: string): ConnectionType;
|
|
275
269
|
getRpcMethodType(methodName: string): RpcMethodType;
|
|
276
|
-
getInternetAccountType(
|
|
277
|
-
addRendererType(
|
|
278
|
-
addAdapterType(
|
|
279
|
-
addTextSearchAdapterType(
|
|
280
|
-
addTrackType(
|
|
281
|
-
addDisplayType(
|
|
282
|
-
addViewType(
|
|
283
|
-
addWidgetType(
|
|
284
|
-
addConnectionType(
|
|
285
|
-
addRpcMethod(
|
|
286
|
-
addInternetAccountType(
|
|
270
|
+
getInternetAccountType(name: string): InternetAccountType;
|
|
271
|
+
addRendererType(cb: (pm: PluginManager) => RendererType): this;
|
|
272
|
+
addAdapterType(cb: (pm: PluginManager) => AdapterType): this;
|
|
273
|
+
addTextSearchAdapterType(cb: (pm: PluginManager) => TextSearchAdapterType): this;
|
|
274
|
+
addTrackType(cb: (pm: PluginManager) => TrackType): this;
|
|
275
|
+
addDisplayType(cb: (pluginManager: PluginManager) => DisplayType): this;
|
|
276
|
+
addViewType(cb: (pluginManager: PluginManager) => ViewType): this;
|
|
277
|
+
addWidgetType(cb: (pm: PluginManager) => WidgetType): this;
|
|
278
|
+
addConnectionType(cb: (pm: PluginManager) => ConnectionType): this;
|
|
279
|
+
addRpcMethod(cb: (pm: PluginManager) => RpcMethodType): this;
|
|
280
|
+
addInternetAccountType(cb: (pm: PluginManager) => InternetAccountType): this;
|
|
281
|
+
addAddTrackWorkflowType(cb: (pm: PluginManager) => AddTrackWorkflowType): this;
|
|
287
282
|
addToExtensionPoint<T>(extensionPointName: string, callback: (extendee: T) => T): void;
|
|
288
283
|
evaluateExtensionPoint(extensionPointName: string, extendee: unknown): unknown;
|
|
289
284
|
evaluateAsyncExtensionPoint(extensionPointName: string, extendee: unknown): Promise<unknown>;
|