@jbrowse/core 1.4.4 → 1.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BaseFeatureWidget/BaseFeatureDetail.d.ts +4 -4
- package/BaseFeatureWidget/BaseFeatureDetail.js +27 -8
- package/BaseFeatureWidget/SequenceFeatureDetails.js +10 -10
- package/BaseFeatureWidget/index.js +1 -1
- package/BaseFeatureWidget/types.d.ts +1 -1
- package/BaseFeatureWidget/util.js +3 -3
- package/CorePlugin.d.ts +0 -1
- package/CorePlugin.js +13 -1
- package/PluginLoader.d.ts +26 -4
- package/PluginLoader.js +337 -51
- package/PluginManager.d.ts +18 -11
- package/PluginManager.js +53 -31
- package/ReExports/list.js +1 -1
- package/ReExports/material-ui-colors.js +38 -38
- package/ReExports/modules.d.ts +19 -20
- package/ReExports/modules.js +10 -3
- package/TextSearch/BaseResults.d.ts +5 -14
- package/TextSearch/BaseResults.js +16 -58
- package/TextSearch/BaseResults.test.js +1 -11
- package/TextSearch/TextSearchManager.d.ts +3 -3
- package/TextSearch/TextSearchManager.js +1 -1
- package/assemblyManager/assembly.d.ts +21 -8
- package/assemblyManager/assembly.js +163 -120
- package/assemblyManager/assemblyConfigSchema.d.ts +3 -0
- package/assemblyManager/{assemblyConfigSchemas.js → assemblyConfigSchema.js} +35 -27
- package/assemblyManager/assemblyManager.d.ts +169 -60
- package/assemblyManager/index.d.ts +1 -1
- package/assemblyManager/index.js +5 -5
- package/configuration/configurationSchema.d.ts +3 -2
- package/configuration/configurationSchema.js +7 -10
- package/configuration/configurationSchema.test.js +4 -2
- package/configuration/configurationSlot.js +5 -4
- package/configuration/index.js +4 -4
- package/configuration/util.js +5 -5
- package/data_adapters/BaseAdapter.d.ts +5 -3
- package/data_adapters/BaseAdapter.js +7 -4
- package/data_adapters/BaseAdapter.test.js +4 -2
- package/data_adapters/CytobandAdapter.d.ts +8 -0
- package/data_adapters/CytobandAdapter.js +128 -0
- package/data_adapters/dataAdapterCache.js +3 -3
- package/package.json +7 -7
- package/pluggableElementTypes/AdapterType.d.ts +9 -1
- package/pluggableElementTypes/AdapterType.js +20 -0
- package/pluggableElementTypes/InternetAccountType.d.ts +12 -0
- package/pluggableElementTypes/InternetAccountType.js +64 -0
- package/pluggableElementTypes/PluggableElementBase.d.ts +1 -2
- package/pluggableElementTypes/PluggableElementBase.js +2 -3
- package/pluggableElementTypes/RpcMethodType.d.ts +3 -0
- package/pluggableElementTypes/RpcMethodType.js +269 -26
- package/pluggableElementTypes/RpcMethodType.test.d.ts +4 -0
- package/pluggableElementTypes/RpcMethodType.test.js +118 -0
- package/pluggableElementTypes/ViewType.d.ts +1 -1
- package/pluggableElementTypes/WidgetType.d.ts +1 -0
- package/pluggableElementTypes/index.d.ts +7 -3
- package/pluggableElementTypes/index.js +127 -1
- package/pluggableElementTypes/models/BaseDisplayModel.d.ts +6 -6
- package/pluggableElementTypes/models/BaseDisplayModel.js +1 -3
- package/pluggableElementTypes/models/BaseViewModel.js +13 -15
- package/pluggableElementTypes/models/InternetAccountModel.d.ts +24 -0
- package/pluggableElementTypes/models/InternetAccountModel.js +85 -0
- package/pluggableElementTypes/models/baseInternetAccountConfig.d.ts +4 -0
- package/pluggableElementTypes/models/baseInternetAccountConfig.js +25 -0
- package/pluggableElementTypes/models/index.d.ts +3 -0
- package/pluggableElementTypes/models/index.js +24 -8
- package/pluggableElementTypes/renderers/BoxRendererType.js +1 -1
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.d.ts +1 -1
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +15 -6
- package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +3 -3
- package/pluggableElementTypes/renderers/FeatureRendererType.js +17 -8
- package/pluggableElementTypes/renderers/RendererType.d.ts +1 -0
- package/pluggableElementTypes/renderers/RendererType.js +4 -1
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +1 -1
- package/pluggableElementTypes/renderers/index.d.ts +9 -0
- package/pluggableElementTypes/renderers/index.js +63 -0
- package/rpc/BaseRpcDriver.js +5 -9
- package/rpc/BaseRpcDriver.test.js +6 -6
- package/rpc/RpcManager.d.ts +1 -1
- package/rpc/RpcManager.js +44 -16
- package/rpc/WebWorkerRpcDriver.js +3 -3
- package/rpc/coreRpcMethods.d.ts +2 -1
- package/rpc/coreRpcMethods.js +109 -75
- package/rpc/remoteAbortSignals.js +2 -2
- package/ui/App.d.ts +17 -4
- package/ui/App.js +55 -41
- package/ui/Drawer.d.ts +6 -14
- package/ui/Drawer.js +11 -12
- package/ui/DrawerWidget.d.ts +5 -3
- package/ui/DrawerWidget.js +100 -61
- package/ui/ErrorMessage.d.ts +5 -0
- package/ui/ErrorMessage.js +54 -0
- package/ui/FileSelector/FileSelector.d.ts +11 -0
- package/ui/FileSelector/FileSelector.js +198 -0
- package/ui/FileSelector/LocalFileChooser.d.ts +7 -0
- package/ui/FileSelector/LocalFileChooser.js +79 -0
- package/ui/FileSelector/UrlChooser.d.ts +9 -0
- package/ui/FileSelector/UrlChooser.js +41 -0
- package/ui/FileSelector/index.d.ts +2 -0
- package/ui/FileSelector/index.js +13 -0
- package/ui/Icons.d.ts +4 -0
- package/ui/Icons.js +34 -0
- package/ui/Logo.js +1 -1
- package/ui/PrerenderedCanvas.d.ts +1 -0
- package/ui/PrerenderedCanvas.js +4 -1
- package/ui/ResizeHandle.d.ts +2 -3
- package/ui/ResizeHandle.js +6 -7
- package/ui/SanitizedHTML.js +1 -1
- package/ui/Snackbar.js +4 -6
- package/ui/SnackbarModel.d.ts +16 -0
- package/ui/SnackbarModel.js +56 -0
- package/ui/Tooltip.d.ts +1 -1
- package/ui/index.js +24 -24
- package/ui/theme.js +5 -5
- package/util/QuickLRU.d.ts +1 -1
- package/util/QuickLRU.js +3 -3
- package/util/aborting.d.ts +1 -1
- package/util/aborting.js +10 -11
- package/util/analytics.d.ts +2 -2
- package/util/analytics.js +20 -7
- package/util/blockTypes.d.ts +11 -6
- package/util/blockTypes.js +7 -1
- package/util/color/cssColorsLevel4.js +1 -1
- package/util/color/index.js +5 -5
- package/util/compositeMap.js +3 -3
- package/util/index.d.ts +6 -16
- package/util/index.js +76 -100
- package/util/io/RemoteFileWithRangeCache.d.ts +17 -0
- package/util/io/RemoteFileWithRangeCache.js +266 -0
- package/util/io/index.d.ts +4 -2
- package/util/io/index.js +134 -25
- package/util/jexl.js +4 -1
- package/util/layouts/BaseLayout.d.ts +3 -0
- package/util/layouts/GranularRectLayout.d.ts +19 -10
- package/util/layouts/GranularRectLayout.js +459 -100
- package/util/layouts/GranularRectLayout.test.js +57 -10
- package/util/layouts/PrecomputedLayout.js +2 -1
- package/util/layouts/index.d.ts +7 -0
- package/util/layouts/index.js +68 -0
- package/util/mst-reflection.js +3 -3
- package/util/offscreenCanvasPonyfill.js +1 -1
- package/util/range.js +1 -1
- package/util/simpleFeature.js +1 -1
- package/util/stats.js +2 -2
- package/util/tracks.d.ts +31 -362
- package/util/tracks.js +74 -190
- package/util/types/index.d.ts +54 -10
- package/util/types/index.js +110 -8
- package/util/types/mst.d.ts +46 -2
- package/util/types/mst.js +56 -8
- package/util/types/util.d.ts +1 -1
- package/util/when.js +1 -1
- package/assemblyManager/assemblyConfigSchemas.d.ts +0 -7
- package/ui/FileSelector.d.ts +0 -9
- package/ui/FileSelector.js +0 -150
- package/util/io/LocalFile.d.ts +0 -18
- package/util/io/LocalFile.js +0 -220
- package/util/io/rangeFetcher.d.ts +0 -3
- package/util/io/rangeFetcher.js +0 -236
- package/value.d.ts +0 -1
- package/value.js +0 -10
package/PluginManager.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import ViewType from './pluggableElementTypes/ViewType';
|
|
|
9
9
|
import WidgetType from './pluggableElementTypes/WidgetType';
|
|
10
10
|
import ConnectionType from './pluggableElementTypes/ConnectionType';
|
|
11
11
|
import RpcMethodType from './pluggableElementTypes/RpcMethodType';
|
|
12
|
+
import InternetAccountType from './pluggableElementTypes/InternetAccountType';
|
|
12
13
|
import TextSearchAdapterType from './pluggableElementTypes/TextSearchAdapterType';
|
|
13
14
|
import Plugin from './Plugin';
|
|
14
15
|
import ReExports from './ReExports';
|
|
@@ -24,7 +25,7 @@ declare class PhasedScheduler<PhaseName extends string> {
|
|
|
24
25
|
add(phase: PhaseName, callback: Function): void;
|
|
25
26
|
run(): void;
|
|
26
27
|
}
|
|
27
|
-
declare type PluggableElementTypeGroup = 'renderer' | 'adapter' | 'display' | 'track' | 'connection' | 'view' | 'widget' | 'rpc method' | 'text search adapter';
|
|
28
|
+
declare type PluggableElementTypeGroup = 'renderer' | 'adapter' | 'display' | 'track' | 'connection' | 'view' | 'widget' | 'rpc method' | 'internet account' | 'text search adapter';
|
|
28
29
|
/** internal class that holds the info for a certain element type */
|
|
29
30
|
declare class TypeRecord<ElementClass extends PluggableElementBase> {
|
|
30
31
|
registeredTypes: {
|
|
@@ -67,7 +68,7 @@ export default class PluginManager {
|
|
|
67
68
|
jexl: any;
|
|
68
69
|
pluginMetadata: Record<string, PluginMetadata>;
|
|
69
70
|
runtimePluginDefinitions: PluginDefinition[];
|
|
70
|
-
elementCreationSchedule: PhasedScheduler<PluggableElementTypeGroup
|
|
71
|
+
elementCreationSchedule: PhasedScheduler<PluggableElementTypeGroup> | undefined;
|
|
71
72
|
rendererTypes: TypeRecord<RendererType>;
|
|
72
73
|
adapterTypes: TypeRecord<AdapterType>;
|
|
73
74
|
textSearchAdapterTypes: TypeRecord<TextSearchAdapterType>;
|
|
@@ -77,6 +78,7 @@ export default class PluginManager {
|
|
|
77
78
|
viewTypes: TypeRecord<ViewType>;
|
|
78
79
|
widgetTypes: TypeRecord<WidgetType>;
|
|
79
80
|
rpcMethods: TypeRecord<RpcMethodType>;
|
|
81
|
+
internetAccountTypes: TypeRecord<InternetAccountType>;
|
|
80
82
|
configured: boolean;
|
|
81
83
|
rootModel?: AbstractRootModel;
|
|
82
84
|
extensionPoints: Map<string, Function[]>;
|
|
@@ -110,7 +112,8 @@ export default class PluginManager {
|
|
|
110
112
|
'@material-ui/core/SvgIcon': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").SvgIconTypeMap<{}, "svg">>;
|
|
111
113
|
'@material-ui/core/utils': typeof import("@material-ui/core/utils");
|
|
112
114
|
'@material-ui/lab': typeof import("@material-ui/lab");
|
|
113
|
-
'@
|
|
115
|
+
'@mui/x-data-grid': typeof import("@mui/x-data-grid");
|
|
116
|
+
'@material-ui/data-grid': typeof import("@mui/x-data-grid");
|
|
114
117
|
'@material-ui/core/colors': typeof import("./ReExports/material-ui-colors");
|
|
115
118
|
'@material-ui/core/styles': typeof import("@material-ui/core/styles");
|
|
116
119
|
'@material-ui/core/Box': import("react").ComponentType<import("@material-ui/core").BoxProps>;
|
|
@@ -143,7 +146,7 @@ export default class PluginManager {
|
|
|
143
146
|
alignItems?: "center" | "flex-start" | undefined;
|
|
144
147
|
autoFocus?: boolean | undefined;
|
|
145
148
|
button?: boolean | undefined;
|
|
146
|
-
ContainerComponent?:
|
|
149
|
+
ContainerComponent?: import("react").ElementType<import("react").HTMLAttributes<HTMLDivElement>> | undefined;
|
|
147
150
|
ContainerProps?: import("react").HTMLAttributes<HTMLDivElement> | undefined;
|
|
148
151
|
dense?: boolean | undefined;
|
|
149
152
|
disabled?: boolean | undefined;
|
|
@@ -152,8 +155,8 @@ export default class PluginManager {
|
|
|
152
155
|
focusVisibleClassName?: string | undefined;
|
|
153
156
|
selected?: boolean | undefined;
|
|
154
157
|
} & {
|
|
155
|
-
action?:
|
|
156
|
-
buttonRef?:
|
|
158
|
+
action?: import("react").Ref<import("@material-ui/core").ButtonBaseActions> | undefined;
|
|
159
|
+
buttonRef?: import("react").Ref<unknown> | undefined;
|
|
157
160
|
centerRipple?: boolean | undefined;
|
|
158
161
|
children?: import("react").ReactNode;
|
|
159
162
|
disabled?: boolean | undefined;
|
|
@@ -161,14 +164,14 @@ export default class PluginManager {
|
|
|
161
164
|
disableTouchRipple?: boolean | undefined;
|
|
162
165
|
focusRipple?: boolean | undefined;
|
|
163
166
|
focusVisibleClassName?: string | undefined;
|
|
164
|
-
onFocusVisible?:
|
|
167
|
+
onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
|
|
165
168
|
tabIndex?: string | number | undefined;
|
|
166
169
|
TouchRippleProps?: Partial<import("@material-ui/core/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
|
|
167
170
|
} & import("@material-ui/core/OverridableComponent").CommonProps<import("@material-ui/core").ExtendButtonBaseTypeMap<import("@material-ui/core").MenuItemTypeMap<{
|
|
168
171
|
button?: true | undefined;
|
|
169
|
-
}, "li">>> & Pick<Pick<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "
|
|
172
|
+
}, "li">>> & Pick<Pick<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "key" | keyof import("react").AnchorHTMLAttributes<HTMLAnchorElement>> & {
|
|
170
173
|
ref?: ((instance: HTMLAnchorElement | null) => void) | import("react").RefObject<HTMLAnchorElement> | null | undefined;
|
|
171
|
-
}, "id" | "
|
|
174
|
+
}, "id" | "is" | "color" | "type" | "defaultValue" | "key" | "prefix" | "defaultChecked" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "title" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "ref" | "href" | "download" | "hrefLang" | "media" | "ping" | "rel" | "target" | "referrerPolicy">) => JSX.Element) & import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").ExtendButtonBaseTypeMap<import("@material-ui/core").MenuItemTypeMap<{
|
|
172
175
|
button?: true | undefined;
|
|
173
176
|
}, "li">>>;
|
|
174
177
|
'@material-ui/core/RadioGroup': typeof import("@material-ui/core").RadioGroup;
|
|
@@ -181,7 +184,8 @@ export default class PluginManager {
|
|
|
181
184
|
'@material-ui/core/Typography': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").TypographyTypeMap<{}, "span">>;
|
|
182
185
|
'@material-ui/lab/ToggleButton': import("@material-ui/core").ExtendButtonBase<import("@material-ui/lab").ToggleButtonTypeMap<{}, "button">>;
|
|
183
186
|
'@material-ui/lab/ToggleButtonGroup': typeof import("@material-ui/lab").ToggleButtonGroup;
|
|
184
|
-
'@jbrowse/core/Plugin': typeof
|
|
187
|
+
'@jbrowse/core/Plugin': typeof Plugin;
|
|
188
|
+
'@jbrowse/core/pluggableElementTypes': typeof import("./pluggableElementTypes");
|
|
185
189
|
'@jbrowse/core/pluggableElementTypes/ViewType': typeof ViewType;
|
|
186
190
|
'@jbrowse/core/pluggableElementTypes/AdapterType': typeof AdapterType;
|
|
187
191
|
'@jbrowse/core/pluggableElementTypes/DisplayType': typeof DisplayType;
|
|
@@ -189,7 +193,7 @@ export default class PluginManager {
|
|
|
189
193
|
'@jbrowse/core/pluggableElementTypes/WidgetType': typeof WidgetType;
|
|
190
194
|
'@jbrowse/core/pluggableElementTypes/models': typeof import("./pluggableElementTypes/models");
|
|
191
195
|
'@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType': typeof import("./pluggableElementTypes/renderers/ServerSideRendererType");
|
|
192
|
-
'@jbrowse/core/pluggableElementTypes/renderers/CircularChordRendererType': typeof import("./pluggableElementTypes
|
|
196
|
+
'@jbrowse/core/pluggableElementTypes/renderers/CircularChordRendererType': typeof import("./pluggableElementTypes").CircularChordRendererType;
|
|
193
197
|
'@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType': typeof import("./pluggableElementTypes/renderers/BoxRendererType");
|
|
194
198
|
'@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType': typeof import("./pluggableElementTypes/renderers/FeatureRendererType");
|
|
195
199
|
'@jbrowse/core/pluggableElementTypes/renderers/RendererType': typeof import("./pluggableElementTypes/renderers/RendererType");
|
|
@@ -198,6 +202,7 @@ export default class PluginManager {
|
|
|
198
202
|
'@jbrowse/core/ui': typeof import("./ui");
|
|
199
203
|
'@jbrowse/core/util': typeof import("./util");
|
|
200
204
|
'@jbrowse/core/util/color': typeof import("./util/color");
|
|
205
|
+
'@jbrowse/core/util/layouts': typeof import("./util/layouts");
|
|
201
206
|
'@jbrowse/core/util/tracks': typeof import("./util/tracks");
|
|
202
207
|
'@jbrowse/core/util/Base1DViewModel': import("mobx-state-tree").IModelType<{
|
|
203
208
|
displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
|
|
@@ -292,6 +297,7 @@ export default class PluginManager {
|
|
|
292
297
|
getWidgetType(typeName: string): WidgetType;
|
|
293
298
|
getConnectionType(typeName: string): ConnectionType;
|
|
294
299
|
getRpcMethodType(methodName: string): RpcMethodType;
|
|
300
|
+
getInternetAccountType(internetAccountName: string): InternetAccountType;
|
|
295
301
|
addRendererType(creationCallback: (pluginManager: PluginManager) => RendererType): this;
|
|
296
302
|
addAdapterType(creationCallback: (pluginManager: PluginManager) => AdapterType): this;
|
|
297
303
|
addTextSearchAdapterType(creationCallback: (pluginManager: PluginManager) => TextSearchAdapterType): this;
|
|
@@ -301,6 +307,7 @@ export default class PluginManager {
|
|
|
301
307
|
addWidgetType(creationCallback: (pluginManager: PluginManager) => WidgetType): this;
|
|
302
308
|
addConnectionType(creationCallback: (pluginManager: PluginManager) => ConnectionType): this;
|
|
303
309
|
addRpcMethod(creationCallback: (pluginManager: PluginManager) => RpcMethodType): this;
|
|
310
|
+
addInternetAccountType(creationCallback: (pluginManager: PluginManager) => InternetAccountType): this;
|
|
304
311
|
addToExtensionPoint<T>(extensionPointName: string, callback: (extendee: T) => T): void;
|
|
305
312
|
evaluateExtensionPoint(extensionPointName: string, extendee: unknown): unknown;
|
|
306
313
|
}
|
package/PluginManager.js
CHANGED
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
+
|
|
10
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
13
|
|
|
12
14
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
@@ -33,6 +35,8 @@ var _ConnectionType = _interopRequireDefault(require("./pluggableElementTypes/Co
|
|
|
33
35
|
|
|
34
36
|
var _RpcMethodType = _interopRequireDefault(require("./pluggableElementTypes/RpcMethodType"));
|
|
35
37
|
|
|
38
|
+
var _InternetAccountType = _interopRequireDefault(require("./pluggableElementTypes/InternetAccountType"));
|
|
39
|
+
|
|
36
40
|
var _TextSearchAdapterType = _interopRequireDefault(require("./pluggableElementTypes/TextSearchAdapterType"));
|
|
37
41
|
|
|
38
42
|
var _configuration = require("./configuration");
|
|
@@ -152,7 +156,7 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
152
156
|
(0, _defineProperty2.default)(this, "jexl", (0, _jexl.default)());
|
|
153
157
|
(0, _defineProperty2.default)(this, "pluginMetadata", {});
|
|
154
158
|
(0, _defineProperty2.default)(this, "runtimePluginDefinitions", []);
|
|
155
|
-
(0, _defineProperty2.default)(this, "elementCreationSchedule", new PhasedScheduler('renderer', 'adapter', 'text search adapter', 'display', 'track', 'connection', 'view', 'widget', 'rpc method'));
|
|
159
|
+
(0, _defineProperty2.default)(this, "elementCreationSchedule", new PhasedScheduler('renderer', 'adapter', 'text search adapter', 'display', 'track', 'connection', 'view', 'widget', 'rpc method', 'internet account'));
|
|
156
160
|
(0, _defineProperty2.default)(this, "rendererTypes", new TypeRecord('RendererType', _RendererType.default));
|
|
157
161
|
(0, _defineProperty2.default)(this, "adapterTypes", new TypeRecord('AdapterType', _AdapterType.default));
|
|
158
162
|
(0, _defineProperty2.default)(this, "textSearchAdapterTypes", new TypeRecord('TextSearchAdapterType', _TextSearchAdapterType.default));
|
|
@@ -162,6 +166,7 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
162
166
|
(0, _defineProperty2.default)(this, "viewTypes", new TypeRecord('ViewType', _ViewType.default));
|
|
163
167
|
(0, _defineProperty2.default)(this, "widgetTypes", new TypeRecord('WidgetType', _WidgetType.default));
|
|
164
168
|
(0, _defineProperty2.default)(this, "rpcMethods", new TypeRecord('RpcMethodType', _RpcMethodType.default));
|
|
169
|
+
(0, _defineProperty2.default)(this, "internetAccountTypes", new TypeRecord('InternetAccountType', _InternetAccountType.default));
|
|
165
170
|
(0, _defineProperty2.default)(this, "configured", false);
|
|
166
171
|
(0, _defineProperty2.default)(this, "rootModel", void 0);
|
|
167
172
|
(0, _defineProperty2.default)(this, "extensionPoints", new Map());
|
|
@@ -174,7 +179,8 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
174
179
|
|
|
175
180
|
return _this2.jbrequireCache.get(lib);
|
|
176
181
|
});
|
|
177
|
-
(0, _defineProperty2.default)(this, "jbrequire", function (lib
|
|
182
|
+
(0, _defineProperty2.default)(this, "jbrequire", function (lib // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
183
|
+
) {
|
|
178
184
|
if (typeof lib === 'string') {
|
|
179
185
|
var pack = _this2.lib[lib];
|
|
180
186
|
|
|
@@ -263,8 +269,11 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
263
269
|
value: function createPluggableElements() {
|
|
264
270
|
// run the creation callbacks for each element type in order.
|
|
265
271
|
// see elementCreationSchedule above for the creation order
|
|
266
|
-
this.elementCreationSchedule
|
|
267
|
-
|
|
272
|
+
if (this.elementCreationSchedule) {
|
|
273
|
+
this.elementCreationSchedule.run();
|
|
274
|
+
delete this.elementCreationSchedule;
|
|
275
|
+
}
|
|
276
|
+
|
|
268
277
|
return this;
|
|
269
278
|
}
|
|
270
279
|
}, {
|
|
@@ -319,6 +328,9 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
319
328
|
case 'rpc method':
|
|
320
329
|
return this.rpcMethods;
|
|
321
330
|
|
|
331
|
+
case 'internet account':
|
|
332
|
+
return this.internetAccountTypes;
|
|
333
|
+
|
|
322
334
|
default:
|
|
323
335
|
throw new Error("invalid element type '".concat(groupName, "'"));
|
|
324
336
|
}
|
|
@@ -333,20 +345,24 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
333
345
|
}
|
|
334
346
|
|
|
335
347
|
var typeRecord = this.getElementTypeRecord(groupName);
|
|
336
|
-
this.elementCreationSchedule.add(groupName, function () {
|
|
337
|
-
var newElement = creationCallback(_this4);
|
|
338
348
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
349
|
+
if (this.elementCreationSchedule) {
|
|
350
|
+
this.elementCreationSchedule.add(groupName, function () {
|
|
351
|
+
var newElement = creationCallback(_this4);
|
|
342
352
|
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
353
|
+
if (!newElement.name) {
|
|
354
|
+
throw new Error("cannot add a ".concat(groupName, " with no name"));
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
if (typeRecord.has(newElement.name)) {
|
|
358
|
+
throw new Error("".concat(groupName, " ").concat(newElement.name, " already registered, cannot register it again"));
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
newElement = _this4.evaluateExtensionPoint('Core-extendPluggableElement', newElement);
|
|
362
|
+
typeRecord.add(newElement.name, newElement);
|
|
363
|
+
});
|
|
364
|
+
}
|
|
346
365
|
|
|
347
|
-
newElement = _this4.evaluateExtensionPoint('Core-extendPluggableElement', newElement);
|
|
348
|
-
typeRecord.add(newElement.name, newElement);
|
|
349
|
-
});
|
|
350
366
|
return this;
|
|
351
367
|
}
|
|
352
368
|
}, {
|
|
@@ -367,13 +383,11 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
367
383
|
key: "pluggableMstType",
|
|
368
384
|
value: function pluggableMstType(typeGroup, fieldName) {
|
|
369
385
|
var fallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _mobxStateTree.types.maybe(_mobxStateTree.types.null);
|
|
370
|
-
var pluggableTypes =
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
pluggableTypes.push(thing);
|
|
376
|
-
}
|
|
386
|
+
var pluggableTypes = this.getElementTypeRecord(typeGroup).all() // @ts-ignore
|
|
387
|
+
.map(function (t) {
|
|
388
|
+
return t[fieldName];
|
|
389
|
+
}).filter(function (t) {
|
|
390
|
+
return (0, _mobxStateTree.isType)(t) && (0, _mobxStateTree.isModelType)(t);
|
|
377
391
|
}); // try to smooth over the case when no types are registered, mostly
|
|
378
392
|
// encountered in tests
|
|
379
393
|
|
|
@@ -382,7 +396,7 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
382
396
|
return fallback;
|
|
383
397
|
}
|
|
384
398
|
|
|
385
|
-
return _mobxStateTree.types.union.apply(_mobxStateTree.types, pluggableTypes);
|
|
399
|
+
return _mobxStateTree.types.union.apply(_mobxStateTree.types, (0, _toConsumableArray2.default)(pluggableTypes));
|
|
386
400
|
}
|
|
387
401
|
/** get a MST type for the union of all specified pluggable config schemas */
|
|
388
402
|
|
|
@@ -390,20 +404,18 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
390
404
|
key: "pluggableConfigSchemaType",
|
|
391
405
|
value: function pluggableConfigSchemaType(typeGroup) {
|
|
392
406
|
var fieldName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'configSchema';
|
|
393
|
-
var pluggableTypes =
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
pluggableTypes.push(thing);
|
|
399
|
-
}
|
|
407
|
+
var pluggableTypes = this.getElementTypeRecord(typeGroup).all() // @ts-ignore
|
|
408
|
+
.map(function (t) {
|
|
409
|
+
return t[fieldName];
|
|
410
|
+
}).filter(function (t) {
|
|
411
|
+
return (0, _configuration.isBareConfigurationSchemaType)(t);
|
|
400
412
|
});
|
|
401
413
|
|
|
402
414
|
if (pluggableTypes.length === 0) {
|
|
403
415
|
pluggableTypes.push((0, _configuration.ConfigurationSchema)('Null', {}));
|
|
404
416
|
}
|
|
405
417
|
|
|
406
|
-
return _mobxStateTree.types.union.apply(_mobxStateTree.types, pluggableTypes);
|
|
418
|
+
return _mobxStateTree.types.union.apply(_mobxStateTree.types, (0, _toConsumableArray2.default)(pluggableTypes));
|
|
407
419
|
}
|
|
408
420
|
}, {
|
|
409
421
|
key: "getRendererType",
|
|
@@ -455,6 +467,11 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
455
467
|
value: function getRpcMethodType(methodName) {
|
|
456
468
|
return this.rpcMethods.get(methodName);
|
|
457
469
|
}
|
|
470
|
+
}, {
|
|
471
|
+
key: "getInternetAccountType",
|
|
472
|
+
value: function getInternetAccountType(internetAccountName) {
|
|
473
|
+
return this.internetAccountTypes.get(internetAccountName);
|
|
474
|
+
}
|
|
458
475
|
}, {
|
|
459
476
|
key: "addRendererType",
|
|
460
477
|
value: function addRendererType(creationCallback) {
|
|
@@ -532,6 +549,11 @@ var PluginManager = /*#__PURE__*/function () {
|
|
|
532
549
|
value: function addRpcMethod(creationCallback) {
|
|
533
550
|
return this.addElementType('rpc method', creationCallback);
|
|
534
551
|
}
|
|
552
|
+
}, {
|
|
553
|
+
key: "addInternetAccountType",
|
|
554
|
+
value: function addInternetAccountType(creationCallback) {
|
|
555
|
+
return this.addElementType('internet account', creationCallback);
|
|
556
|
+
}
|
|
535
557
|
}, {
|
|
536
558
|
key: "addToExtensionPoint",
|
|
537
559
|
value: function addToExtensionPoint(extensionPointName, callback) {
|
package/ReExports/list.js
CHANGED
|
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _default = ['mobx', 'mobx-state-tree', 'react', 'react-dom', 'mobx-react', 'prop-types', '@material-ui/core', '@material-ui/core/SvgIcon', '@material-ui/core/utils', '@material-ui/lab', '@
|
|
7
|
+
var _default = ['mobx', 'mobx-state-tree', 'react', 'react-dom', 'mobx-react', 'prop-types', '@material-ui/core', '@material-ui/core/SvgIcon', '@material-ui/core/utils', '@material-ui/lab', '@mui/x-data-grid', '@jbrowse/core/Plugin', '@jbrowse/core/pluggableElementTypes', '@jbrowse/core/pluggableElementTypes/ViewType', '@jbrowse/core/pluggableElementTypes/AdapterType', '@jbrowse/core/pluggableElementTypes/DisplayType', '@jbrowse/core/pluggableElementTypes/TrackType', '@jbrowse/core/pluggableElementTypes/WidgetType', '@jbrowse/core/pluggableElementTypes/models', '@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType', '@jbrowse/core/pluggableElementTypes/renderers/CircularChordRendererType', '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType', '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType', '@jbrowse/core/pluggableElementTypes/renderers/RendererType', '@jbrowse/core/configuration', '@jbrowse/core/util/types/mst', '@jbrowse/core/ui', '@jbrowse/core/util', '@jbrowse/core/util/color', '@jbrowse/core/util/layouts', '@jbrowse/core/util/tracks', '@jbrowse/core/util/Base1DViewModel', '@jbrowse/core/util/io', '@jbrowse/core/util/mst-reflection', '@jbrowse/core/util/rxjs', '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail', '@jbrowse/core/data_adapters/BaseAdapter'];
|
|
8
8
|
exports.default = _default;
|
|
@@ -5,118 +5,118 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
Object.defineProperty(exports, "
|
|
8
|
+
Object.defineProperty(exports, "amber", {
|
|
9
9
|
enumerable: true,
|
|
10
10
|
get: function get() {
|
|
11
|
-
return
|
|
11
|
+
return _amber.default;
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
|
-
Object.defineProperty(exports, "
|
|
14
|
+
Object.defineProperty(exports, "blue", {
|
|
15
15
|
enumerable: true,
|
|
16
16
|
get: function get() {
|
|
17
|
-
return
|
|
17
|
+
return _blue.default;
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
|
-
Object.defineProperty(exports, "
|
|
20
|
+
Object.defineProperty(exports, "blueGrey", {
|
|
21
21
|
enumerable: true,
|
|
22
22
|
get: function get() {
|
|
23
|
-
return
|
|
23
|
+
return _blueGrey.default;
|
|
24
24
|
}
|
|
25
25
|
});
|
|
26
|
-
Object.defineProperty(exports, "
|
|
26
|
+
Object.defineProperty(exports, "brown", {
|
|
27
27
|
enumerable: true,
|
|
28
28
|
get: function get() {
|
|
29
|
-
return
|
|
29
|
+
return _brown.default;
|
|
30
30
|
}
|
|
31
31
|
});
|
|
32
|
-
Object.defineProperty(exports, "
|
|
32
|
+
Object.defineProperty(exports, "cyan", {
|
|
33
33
|
enumerable: true,
|
|
34
34
|
get: function get() {
|
|
35
|
-
return
|
|
35
|
+
return _cyan.default;
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
|
-
Object.defineProperty(exports, "
|
|
38
|
+
Object.defineProperty(exports, "deepOrange", {
|
|
39
39
|
enumerable: true,
|
|
40
40
|
get: function get() {
|
|
41
|
-
return
|
|
41
|
+
return _deepOrange.default;
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
|
-
Object.defineProperty(exports, "
|
|
44
|
+
Object.defineProperty(exports, "deepPurple", {
|
|
45
45
|
enumerable: true,
|
|
46
46
|
get: function get() {
|
|
47
|
-
return
|
|
47
|
+
return _deepPurple.default;
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
|
-
Object.defineProperty(exports, "
|
|
50
|
+
Object.defineProperty(exports, "green", {
|
|
51
51
|
enumerable: true,
|
|
52
52
|
get: function get() {
|
|
53
|
-
return
|
|
53
|
+
return _green.default;
|
|
54
54
|
}
|
|
55
55
|
});
|
|
56
|
-
Object.defineProperty(exports, "
|
|
56
|
+
Object.defineProperty(exports, "grey", {
|
|
57
57
|
enumerable: true,
|
|
58
58
|
get: function get() {
|
|
59
|
-
return
|
|
59
|
+
return _grey.default;
|
|
60
60
|
}
|
|
61
61
|
});
|
|
62
|
-
Object.defineProperty(exports, "
|
|
62
|
+
Object.defineProperty(exports, "indigo", {
|
|
63
63
|
enumerable: true,
|
|
64
64
|
get: function get() {
|
|
65
|
-
return
|
|
65
|
+
return _indigo.default;
|
|
66
66
|
}
|
|
67
67
|
});
|
|
68
|
-
Object.defineProperty(exports, "
|
|
68
|
+
Object.defineProperty(exports, "lightBlue", {
|
|
69
69
|
enumerable: true,
|
|
70
70
|
get: function get() {
|
|
71
|
-
return
|
|
71
|
+
return _lightBlue.default;
|
|
72
72
|
}
|
|
73
73
|
});
|
|
74
|
-
Object.defineProperty(exports, "
|
|
74
|
+
Object.defineProperty(exports, "lightGreen", {
|
|
75
75
|
enumerable: true,
|
|
76
76
|
get: function get() {
|
|
77
|
-
return
|
|
77
|
+
return _lightGreen.default;
|
|
78
78
|
}
|
|
79
79
|
});
|
|
80
|
-
Object.defineProperty(exports, "
|
|
80
|
+
Object.defineProperty(exports, "lime", {
|
|
81
81
|
enumerable: true,
|
|
82
82
|
get: function get() {
|
|
83
|
-
return
|
|
83
|
+
return _lime.default;
|
|
84
84
|
}
|
|
85
85
|
});
|
|
86
|
-
Object.defineProperty(exports, "
|
|
86
|
+
Object.defineProperty(exports, "orange", {
|
|
87
87
|
enumerable: true,
|
|
88
88
|
get: function get() {
|
|
89
|
-
return
|
|
89
|
+
return _orange.default;
|
|
90
90
|
}
|
|
91
91
|
});
|
|
92
|
-
Object.defineProperty(exports, "
|
|
92
|
+
Object.defineProperty(exports, "pink", {
|
|
93
93
|
enumerable: true,
|
|
94
94
|
get: function get() {
|
|
95
|
-
return
|
|
95
|
+
return _pink.default;
|
|
96
96
|
}
|
|
97
97
|
});
|
|
98
|
-
Object.defineProperty(exports, "
|
|
98
|
+
Object.defineProperty(exports, "purple", {
|
|
99
99
|
enumerable: true,
|
|
100
100
|
get: function get() {
|
|
101
|
-
return
|
|
101
|
+
return _purple.default;
|
|
102
102
|
}
|
|
103
103
|
});
|
|
104
|
-
Object.defineProperty(exports, "
|
|
104
|
+
Object.defineProperty(exports, "red", {
|
|
105
105
|
enumerable: true,
|
|
106
106
|
get: function get() {
|
|
107
|
-
return
|
|
107
|
+
return _red.default;
|
|
108
108
|
}
|
|
109
109
|
});
|
|
110
|
-
Object.defineProperty(exports, "
|
|
110
|
+
Object.defineProperty(exports, "teal", {
|
|
111
111
|
enumerable: true,
|
|
112
112
|
get: function get() {
|
|
113
|
-
return
|
|
113
|
+
return _teal.default;
|
|
114
114
|
}
|
|
115
115
|
});
|
|
116
|
-
Object.defineProperty(exports, "
|
|
116
|
+
Object.defineProperty(exports, "yellow", {
|
|
117
117
|
enumerable: true,
|
|
118
118
|
get: function get() {
|
|
119
|
-
return
|
|
119
|
+
return _yellow.default;
|
|
120
120
|
}
|
|
121
121
|
});
|
|
122
122
|
|