@jbrowse/core 1.7.11 → 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 (204) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +20 -4
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +313 -558
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -473
  4. package/BaseFeatureWidget/index.d.ts +2 -2
  5. package/BaseFeatureWidget/index.js +88 -124
  6. package/BaseFeatureWidget/types.d.ts +1 -0
  7. package/BaseFeatureWidget/types.js +1 -4
  8. package/BaseFeatureWidget/util.js +40 -75
  9. package/CorePlugin.js +55 -94
  10. package/Plugin.js +9 -34
  11. package/PluginLoader.js +153 -422
  12. package/PluginManager.d.ts +84 -117
  13. package/PluginManager.js +377 -666
  14. package/ReExports/Attributes.d.ts +2 -0
  15. package/ReExports/Attributes.js +5 -0
  16. package/ReExports/BaseCard.d.ts +2 -0
  17. package/ReExports/BaseCard.js +5 -0
  18. package/ReExports/DataGrid.d.ts +2 -0
  19. package/ReExports/DataGrid.js +6 -0
  20. package/ReExports/FeatureDetails.d.ts +2 -0
  21. package/ReExports/FeatureDetails.js +5 -0
  22. package/ReExports/index.js +6 -12
  23. package/ReExports/list.d.ts +5 -0
  24. package/ReExports/list.js +271 -7
  25. package/ReExports/material-ui-colors.d.ts +1 -19
  26. package/ReExports/material-ui-colors.js +16 -158
  27. package/ReExports/modules.d.ts +68 -109
  28. package/ReExports/modules.js +455 -244
  29. package/TextSearch/BaseResults.js +51 -123
  30. package/TextSearch/TextSearchManager.d.ts +3 -1
  31. package/TextSearch/TextSearchManager.js +66 -144
  32. package/assemblyManager/assembly.js +280 -554
  33. package/assemblyManager/assemblyConfigSchema.js +47 -64
  34. package/assemblyManager/assemblyManager.d.ts +12 -10
  35. package/assemblyManager/assemblyManager.js +126 -270
  36. package/assemblyManager/index.js +9 -22
  37. package/configuration/configurationSchema.js +167 -203
  38. package/configuration/configurationSlot.js +248 -326
  39. package/configuration/index.js +19 -35
  40. package/configuration/util.d.ts +1 -1
  41. package/configuration/util.js +131 -173
  42. package/data_adapters/BaseAdapter.d.ts +2 -2
  43. package/data_adapters/BaseAdapter.js +132 -521
  44. package/data_adapters/CytobandAdapter.js +40 -126
  45. package/data_adapters/dataAdapterCache.js +77 -158
  46. package/package.json +16 -18
  47. package/pluggableElementTypes/AdapterType.js +24 -79
  48. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
  49. package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
  50. package/pluggableElementTypes/ConnectionType.js +22 -65
  51. package/pluggableElementTypes/DisplayType.js +35 -82
  52. package/pluggableElementTypes/InternetAccountType.js +23 -64
  53. package/pluggableElementTypes/PluggableElementBase.js +8 -20
  54. package/pluggableElementTypes/RpcMethodType.js +85 -427
  55. package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
  56. package/pluggableElementTypes/TrackType.js +26 -70
  57. package/pluggableElementTypes/ViewType.js +21 -63
  58. package/pluggableElementTypes/WidgetType.js +21 -64
  59. package/pluggableElementTypes/index.d.ts +4 -3
  60. package/pluggableElementTypes/index.js +42 -125
  61. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
  62. package/pluggableElementTypes/models/BaseDisplayModel.d.ts +10 -10
  63. package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
  64. package/pluggableElementTypes/models/BaseTrackModel.d.ts +1 -1
  65. package/pluggableElementTypes/models/BaseTrackModel.js +139 -200
  66. package/pluggableElementTypes/models/BaseViewModel.js +24 -40
  67. package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
  68. package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
  69. package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
  70. package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
  71. package/pluggableElementTypes/models/index.js +21 -70
  72. package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
  73. package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
  74. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
  75. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
  76. package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -255
  77. package/pluggableElementTypes/renderers/RendererType.js +31 -105
  78. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
  79. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +2 -2
  80. package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
  81. package/pluggableElementTypes/renderers/index.js +19 -62
  82. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
  83. package/rpc/BaseRpcDriver.js +169 -405
  84. package/rpc/MainThreadRpcDriver.js +27 -150
  85. package/rpc/RpcManager.js +58 -159
  86. package/rpc/WebWorkerRpcDriver.js +54 -171
  87. package/rpc/configSchema.js +25 -49
  88. package/rpc/coreRpcMethods.d.ts +1 -3
  89. package/rpc/coreRpcMethods.js +221 -959
  90. package/rpc/remoteAbortSignals.js +46 -70
  91. package/tsconfig.build.tsbuildinfo +1 -1
  92. package/ui/AboutDialog.js +107 -158
  93. package/ui/App.js +157 -261
  94. package/ui/AssemblySelector.d.ts +1 -1
  95. package/ui/AssemblySelector.js +59 -115
  96. package/ui/CascadingMenu.js +100 -199
  97. package/ui/ColorPicker.d.ts +16 -0
  98. package/ui/ColorPicker.js +97 -0
  99. package/ui/Drawer.js +28 -58
  100. package/ui/DrawerWidget.js +109 -209
  101. package/ui/DropDownMenu.d.ts +0 -8
  102. package/ui/DropDownMenu.js +60 -97
  103. package/ui/EditableTypography.d.ts +1 -1
  104. package/ui/EditableTypography.js +87 -155
  105. package/ui/ErrorMessage.js +41 -66
  106. package/ui/FactoryResetDialog.js +24 -57
  107. package/ui/FatalErrorDialog.js +59 -91
  108. package/ui/FileSelector/FileSelector.js +123 -189
  109. package/ui/FileSelector/LocalFileChooser.js +44 -71
  110. package/ui/FileSelector/UrlChooser.js +17 -38
  111. package/ui/FileSelector/index.js +6 -12
  112. package/ui/Icons.d.ts +1 -1
  113. package/ui/Icons.js +45 -69
  114. package/ui/Logo.js +57 -110
  115. package/ui/Menu.d.ts +1 -1
  116. package/ui/Menu.js +232 -355
  117. package/ui/PrerenderedCanvas.js +63 -78
  118. package/ui/ResizeHandle.js +87 -114
  119. package/ui/ReturnToImportFormDialog.js +32 -59
  120. package/ui/SanitizedHTML.js +63 -52
  121. package/ui/Snackbar.js +74 -99
  122. package/ui/SnackbarModel.js +37 -51
  123. package/ui/Tooltip.d.ts +3 -1
  124. package/ui/Tooltip.js +49 -74
  125. package/ui/ViewContainer.js +113 -183
  126. package/ui/colors.d.ts +10 -0
  127. package/ui/colors.js +78 -0
  128. package/ui/index.js +51 -181
  129. package/ui/react-colorful.d.ts +17 -0
  130. package/ui/react-colorful.js +455 -0
  131. package/ui/theme.d.ts +279 -131
  132. package/ui/theme.js +197 -225
  133. package/util/Base1DUtils.d.ts +32 -0
  134. package/util/Base1DUtils.js +174 -0
  135. package/util/Base1DViewModel.d.ts +16 -37
  136. package/util/Base1DViewModel.js +116 -295
  137. package/util/QuickLRU.js +84 -332
  138. package/util/TimeTraveller.d.ts +19 -0
  139. package/util/TimeTraveller.js +86 -0
  140. package/util/aborting.js +49 -127
  141. package/util/analytics.js +91 -154
  142. package/util/blockTypes.js +106 -240
  143. package/util/calculateDynamicBlocks.js +98 -128
  144. package/util/calculateStaticBlocks.js +105 -125
  145. package/util/color/cssColorsLevel4.js +156 -160
  146. package/util/color/index.js +33 -55
  147. package/util/compositeMap.js +49 -333
  148. package/util/formatFastaStrings.js +9 -14
  149. package/util/idMaker.js +18 -31
  150. package/util/index.d.ts +18 -39
  151. package/util/index.js +743 -1236
  152. package/util/io/RemoteFileWithRangeCache.js +88 -257
  153. package/util/io/index.js +95 -169
  154. package/util/jexl.js +60 -115
  155. package/util/jexlStrings.js +24 -29
  156. package/util/layouts/BaseLayout.js +1 -4
  157. package/util/layouts/GranularRectLayout.js +388 -557
  158. package/util/layouts/MultiLayout.js +41 -109
  159. package/util/layouts/PrecomputedLayout.js +56 -114
  160. package/util/layouts/PrecomputedMultiLayout.js +22 -59
  161. package/util/layouts/SceneGraph.js +127 -197
  162. package/util/layouts/index.js +29 -66
  163. package/util/mst-reflection.js +55 -71
  164. package/util/offscreenCanvasPonyfill.js +66 -134
  165. package/util/offscreenCanvasUtils.d.ts +2 -7
  166. package/util/offscreenCanvasUtils.js +49 -146
  167. package/util/range.js +29 -40
  168. package/util/rxjs.js +20 -27
  169. package/util/simpleFeature.js +88 -152
  170. package/util/stats.js +91 -151
  171. package/util/tracks.js +130 -171
  172. package/util/types/index.d.ts +3 -3
  173. package/util/types/index.js +110 -179
  174. package/util/types/mst.d.ts +3 -3
  175. package/util/types/mst.js +91 -142
  176. package/util/types/util.js +1 -4
  177. package/util/when.js +54 -101
  178. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
  179. package/BaseFeatureWidget/index.test.js +0 -51
  180. package/TextSearch/BaseResults.test.js +0 -42
  181. package/configuration/configurationSchema.test.js +0 -266
  182. package/configuration/configurationSlot.test.js +0 -69
  183. package/configuration/util.test.js +0 -39
  184. package/data_adapters/BaseAdapter.test.js +0 -200
  185. package/declare.d.js +0 -1
  186. package/pluggableElementTypes/RpcMethodType.test.js +0 -118
  187. package/pluggableElementTypes/renderers/declare.d.js +0 -1
  188. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
  189. package/rpc/BaseRpcDriver.test.js +0 -540
  190. package/rpc/declaration.d.js +0 -1
  191. package/ui/FatalErrorDialog.test.js +0 -82
  192. package/ui/SanitizedHTML.test.js +0 -36
  193. package/ui/theme.test.js +0 -111
  194. package/util/Base1DViewModel.test.js +0 -130
  195. package/util/calculateDynamicBlocks.test.js +0 -74
  196. package/util/calculateStaticBlocks.test.js +0 -297
  197. package/util/declare.d.js +0 -1
  198. package/util/formatFastaStrings.test.js +0 -40
  199. package/util/index.test.js +0 -213
  200. package/util/jexlStrings.test.js +0 -48
  201. package/util/layouts/GranularRectLayout.test.js +0 -99
  202. package/util/range.test.js +0 -64
  203. package/util/simpleFeature.test.js +0 -34
  204. package/util/stats.test.js +0 -172
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { IAnyType } from 'mobx-state-tree';
2
+ import { IAnyType, IAnyModelType } from 'mobx-state-tree';
3
3
  import PluggableElementBase from './pluggableElementTypes/PluggableElementBase';
4
4
  import RendererType from './pluggableElementTypes/renderers/RendererType';
5
5
  import AdapterType from './pluggableElementTypes/AdapterType';
@@ -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,93 +99,21 @@ 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(typeGroup: PluggableElementTypeGroup, fieldName: PluggableElementMember, fallback?: IAnyType): IAnyType;
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
- pluggableConfigSchemaType(typeGroup: PluggableElementTypeGroup, fieldName?: PluggableElementMember): IAnyType;
104
+ pluggableConfigSchemaType(typeGroup: PluggableElementTypeGroup, fieldName?: PluggableElementMember): IAnyModelType;
103
105
  jbrequireCache: Map<any, any>;
104
106
  lib: {
105
- mobx: typeof import("mobx");
106
- 'mobx-state-tree': typeof import("mobx-state-tree");
107
- react: typeof import("react");
108
- 'react-dom': typeof import("react-dom");
109
- 'mobx-react': typeof import("mobx-react");
110
- 'prop-types': typeof import("prop-types");
111
- '@material-ui/core': typeof import("@material-ui/core");
112
- '@material-ui/core/SvgIcon': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").SvgIconTypeMap<{}, "svg">>;
113
- '@material-ui/core/utils': typeof import("@material-ui/core/utils");
114
- '@material-ui/lab': typeof import("@material-ui/lab");
115
- '@mui/x-data-grid': typeof import("@mui/x-data-grid");
116
- '@material-ui/data-grid': typeof import("@mui/x-data-grid");
117
- '@material-ui/core/colors': typeof import("./ReExports/material-ui-colors");
118
- '@material-ui/core/styles': typeof import("@material-ui/core/styles");
119
- '@material-ui/core/Box': import("react").ComponentType<import("@material-ui/core").BoxProps>;
120
- '@material-ui/core/Button': import("@material-ui/core").ExtendButtonBase<import("@material-ui/core").ButtonTypeMap<{}, "button">>;
121
- '@material-ui/core/ButtonGroup': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").ButtonGroupTypeMap<{}, "div">>;
122
- '@material-ui/core/Card': typeof import("@material-ui/core").Card;
123
- '@material-ui/core/CardContent': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").CardContentTypeMap<{}, "div">>;
124
- '@material-ui/core/Container': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").ContainerTypeMap<{}, "div">>;
125
- '@material-ui/core/Checkbox': typeof import("@material-ui/core").Checkbox;
126
- '@material-ui/core/Dialog': typeof import("@material-ui/core").Dialog;
127
- '@material-ui/core/FormGroup': typeof import("@material-ui/core").FormGroup;
128
- '@material-ui/core/FormLabel': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").FormLabelTypeMap<{}, "label">>;
129
- '@material-ui/core/FormControl': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").FormControlTypeMap<{}, "div">>;
130
- '@material-ui/core/FormControlLabel': typeof import("@material-ui/core").FormControlLabel;
131
- '@material-ui/core/Grid': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").GridTypeMap<{}, "div">>;
132
- '@material-ui/core/Icon': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").IconTypeMap<{}, "span">>;
133
- '@material-ui/core/IconButton': import("@material-ui/core").ExtendButtonBase<import("@material-ui/core").IconButtonTypeMap<{}, "button">>;
134
- '@material-ui/core/InputAdornment': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").InputAdornmentTypeMap<{}, "div">>;
135
- '@material-ui/core/LinearProgress': typeof import("@material-ui/core").LinearProgress;
136
- '@material-ui/core/ListItemIcon': typeof import("@material-ui/core").ListItemIcon;
137
- '@material-ui/core/ListItemText': typeof import("@material-ui/core").ListItemText;
138
- '@material-ui/core/Menu': typeof import("@material-ui/core").Menu;
139
- '@material-ui/core/MenuItem': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").MenuItemTypeMap<{
140
- button: false;
141
- }, "li">> & ((props: {
142
- href: string;
143
- } & {
144
- button?: true | undefined;
145
- } & {
146
- alignItems?: "center" | "flex-start" | undefined;
147
- autoFocus?: boolean | undefined;
148
- button?: boolean | undefined;
149
- ContainerComponent?: import("react").ElementType<import("react").HTMLAttributes<HTMLDivElement>> | undefined;
150
- ContainerProps?: import("react").HTMLAttributes<HTMLDivElement> | undefined;
151
- dense?: boolean | undefined;
152
- disabled?: boolean | undefined;
153
- disableGutters?: boolean | undefined;
154
- divider?: boolean | undefined;
155
- focusVisibleClassName?: string | undefined;
156
- selected?: boolean | undefined;
157
- } & {
158
- action?: import("react").Ref<import("@material-ui/core").ButtonBaseActions> | undefined;
159
- buttonRef?: import("react").Ref<unknown> | undefined;
160
- centerRipple?: boolean | undefined;
161
- children?: import("react").ReactNode;
162
- disabled?: boolean | undefined;
163
- disableRipple?: boolean | undefined;
164
- disableTouchRipple?: boolean | undefined;
165
- focusRipple?: boolean | undefined;
166
- focusVisibleClassName?: string | undefined;
167
- onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
168
- tabIndex?: string | number | undefined;
169
- TouchRippleProps?: Partial<import("@material-ui/core/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
170
- } & import("@material-ui/core/OverridableComponent").CommonProps<import("@material-ui/core").ExtendButtonBaseTypeMap<import("@material-ui/core").MenuItemTypeMap<{
171
- button?: true | undefined;
172
- }, "li">>> & Pick<Pick<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "key" | keyof import("react").AnchorHTMLAttributes<HTMLAnchorElement>> & {
173
- ref?: ((instance: HTMLAnchorElement | null) => void) | import("react").RefObject<HTMLAnchorElement> | null | undefined;
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<{
175
- button?: true | undefined;
176
- }, "li">>>;
177
- '@material-ui/core/RadioGroup': typeof import("@material-ui/core").RadioGroup;
178
- '@material-ui/core/Radio': typeof import("@material-ui/core").Radio;
179
- '@material-ui/core/Select': typeof import("@material-ui/core").Select;
180
- '@material-ui/core/Snackbar': typeof import("@material-ui/core").Snackbar;
181
- '@material-ui/core/SnackbarContent': typeof import("@material-ui/core").SnackbarContent;
182
- '@material-ui/core/TextField': typeof import("@material-ui/core").TextField;
183
- '@material-ui/core/Tooltip': typeof import("@material-ui/core").Tooltip;
184
- '@material-ui/core/Typography': import("@material-ui/core/OverridableComponent").OverridableComponent<import("@material-ui/core").TypographyTypeMap<{}, "span">>;
185
- '@material-ui/lab/ToggleButton': import("@material-ui/core").ExtendButtonBase<import("@material-ui/lab").ToggleButtonTypeMap<{}, "button">>;
186
- '@material-ui/lab/ToggleButtonGroup': typeof import("@material-ui/lab").ToggleButtonGroup;
107
+ '@material-ui/lab/ToggleButton': import("react").LazyExoticComponent<import("@mui/material").ExtendButtonBase<import("@mui/material").ToggleButtonTypeMap<{}, "button">>>;
108
+ '@material-ui/lab/ToggleButtonGroup': import("react").LazyExoticComponent<typeof import("@mui/material").ToggleButtonGroup>;
109
+ '@material-ui/lab/Autocomplete': import("react").LazyExoticComponent<typeof import("@mui/material").Autocomplete>;
110
+ '@material-ui/lab/Alert': import("react").LazyExoticComponent<typeof import("@mui/material").Alert>;
111
+ '@material-ui/lab': {
112
+ Alert: import("react").LazyExoticComponent<typeof import("@mui/material").Alert>;
113
+ Autocomplete: import("react").LazyExoticComponent<typeof import("@mui/material").Autocomplete>;
114
+ ToggleButton: import("react").LazyExoticComponent<import("@mui/material").ExtendButtonBase<import("@mui/material").ToggleButtonTypeMap<{}, "button">>>;
115
+ ToggleButtonGroup: import("react").LazyExoticComponent<typeof import("@mui/material").ToggleButtonGroup>;
116
+ };
187
117
  '@jbrowse/core/Plugin': typeof Plugin;
188
118
  '@jbrowse/core/pluggableElementTypes': typeof import("./pluggableElementTypes");
189
119
  '@jbrowse/core/pluggableElementTypes/ViewType': typeof ViewType;
@@ -234,30 +164,22 @@ export default class PluginManager {
234
164
  readonly maxOffset: number;
235
165
  readonly minOffset: number;
236
166
  readonly totalBp: number;
167
+ } & {
168
+ readonly dynamicBlocks: import("./util/blockTypes").BlockSet;
169
+ readonly staticBlocks: import("./util/blockTypes").BlockSet;
170
+ readonly currBp: number;
171
+ } & {
237
172
  pxToBp(px: number): {
238
- oob: boolean;
239
- coord: number;
240
- offset: number;
241
- index: number;
242
- refName: string;
243
- start: number;
244
- end: number;
245
- reversed: boolean;
246
- assemblyName: string;
247
- } | {
248
173
  coord: number;
249
174
  index: number;
250
- start: number;
251
175
  refName: string;
252
176
  oob: boolean;
253
177
  assemblyName: string;
254
178
  offset: number;
179
+ start: number;
180
+ end: number;
255
181
  reversed: boolean;
256
182
  };
257
- } & {
258
- readonly dynamicBlocks: import("./util/blockTypes").BlockSet;
259
- readonly staticBlocks: import("./util/blockTypes").BlockSet;
260
- readonly currBp: number;
261
183
  bpToPx({ refName, coord, regionNumber, }: {
262
184
  refName: string;
263
185
  coord: number;
@@ -265,21 +187,64 @@ export default class PluginManager {
265
187
  }): number | undefined;
266
188
  } & {
267
189
  setFeatures(features: import("./util").Feature[]): void;
268
- zoomToDisplayedRegions(leftPx: import("./util/Base1DViewModel").BpOffset | undefined, rightPx: import("./util/Base1DViewModel").BpOffset | undefined): void;
269
190
  showAllRegions(): void;
270
- moveTo(start: import("./util/Base1DViewModel").BpOffset, end: import("./util/Base1DViewModel").BpOffset): void;
271
191
  zoomOut(): void;
272
192
  zoomIn(): void;
273
- zoomTo(newBpPerPx: number, offset?: number): void;
193
+ zoomTo(newBpPerPx: number, offset?: number): number;
274
194
  scrollTo(offsetPx: number): number;
275
- centerAt(bp: number, refName: string, regionIndex: number): void;
195
+ centerAt(coord: number, refName: string | undefined, regionNumber: number): void;
276
196
  scroll(distance: number): number;
197
+ } & {
198
+ moveTo(start?: import("./util/Base1DUtils").BpOffset | undefined, end?: import("./util/Base1DUtils").BpOffset | undefined): void;
277
199
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
278
200
  '@jbrowse/core/util/io': typeof import("./util/io");
279
201
  '@jbrowse/core/util/mst-reflection': typeof import("./util/mst-reflection");
280
202
  '@jbrowse/core/util/rxjs': typeof import("./util/rxjs");
281
- '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail': typeof import("./BaseFeatureWidget/BaseFeatureDetail");
203
+ '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail': {
204
+ Attributes: (props: any) => JSX.Element;
205
+ FeatureDetails: (props: any) => JSX.Element;
206
+ BaseCard: (props: any) => JSX.Element;
207
+ };
282
208
  '@jbrowse/core/data_adapters/BaseAdapter': typeof import("./data_adapters/BaseAdapter");
209
+ mobx: typeof import("mobx");
210
+ 'mobx-state-tree': typeof import("mobx-state-tree");
211
+ react: typeof import("react");
212
+ 'react-dom': typeof import("react-dom");
213
+ 'mobx-react': typeof import("mobx-react");
214
+ '@mui/x-data-grid': {
215
+ useGridApiContext: typeof import("@mui/x-data-grid").useGridApiContext;
216
+ useGridApiRef: <Api extends import("@mui/x-data-grid").GridApiCommon = import("@mui/x-data-grid/models/api/gridApiCommunity").GridApiCommunity>() => import("react").MutableRefObject<Api>;
217
+ useGridRootProps: () => import("@mui/x-data-grid/models/props/DataGridProps").DataGridProcessedProps<any>;
218
+ };
219
+ '@mui/material/utils': typeof import("@mui/material/utils");
220
+ '@material-ui/core/utils': typeof import("@mui/material/utils");
221
+ 'tss-react/mui': {
222
+ makeStyles: <Params = void, RuleNameSubsetReferencableInNestedSelectors extends string = never>(params?: {
223
+ name?: string | Record<string, unknown> | undefined;
224
+ uniqId?: string | undefined;
225
+ } | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("tss-react/types").CSSObject> | ((theme: import("@mui/material").Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("tss-react/types").CSSObject>)) => (params: Params, styleOverrides?: {
226
+ props: {
227
+ classes?: Record<string, string> | undefined;
228
+ } & Record<string, unknown>;
229
+ ownerState?: Record<string, unknown> | undefined;
230
+ } | undefined) => {
231
+ classes: Record<RuleName, string>;
232
+ theme: import("@mui/material").Theme;
233
+ css: import("tss-react/types").Css;
234
+ cx: import("tss-react/types").Cx;
235
+ };
236
+ };
237
+ '@material-ui/core': {
238
+ useTheme: typeof import("@mui/material").useTheme;
239
+ alpha: typeof import("@mui/system").alpha;
240
+ makeStyles: (args: any) => () => Record<string, string>;
241
+ };
242
+ '@mui/material': {
243
+ [k: string]: (props: any) => JSX.Element;
244
+ };
245
+ 'prop-types': typeof import("prop-types");
246
+ '@mui/material/styles': typeof import("@mui/material/styles");
247
+ '@material-ui/core/styles': typeof import("@mui/material/styles");
283
248
  };
284
249
  load: <FTYPE extends AnyFunction>(lib: FTYPE) => ReturnType<FTYPE>;
285
250
  /**
@@ -298,20 +263,22 @@ export default class PluginManager {
298
263
  getTrackType(typeName: string): TrackType;
299
264
  getDisplayType(typeName: string): DisplayType;
300
265
  getViewType(typeName: string): ViewType;
266
+ getAddTrackWorkflow(typeName: string): AddTrackWorkflowType;
301
267
  getWidgetType(typeName: string): WidgetType;
302
268
  getConnectionType(typeName: string): ConnectionType;
303
269
  getRpcMethodType(methodName: string): RpcMethodType;
304
- getInternetAccountType(internetAccountName: string): InternetAccountType;
305
- addRendererType(creationCallback: (pluginManager: PluginManager) => RendererType): this;
306
- addAdapterType(creationCallback: (pluginManager: PluginManager) => AdapterType): this;
307
- addTextSearchAdapterType(creationCallback: (pluginManager: PluginManager) => TextSearchAdapterType): this;
308
- addTrackType(creationCallback: (pluginManager: PluginManager) => TrackType): this;
309
- addDisplayType(creationCallback: (pluginManager: PluginManager) => DisplayType): this;
310
- addViewType(creationCallback: (pluginManager: PluginManager) => ViewType): this;
311
- addWidgetType(creationCallback: (pluginManager: PluginManager) => WidgetType): this;
312
- addConnectionType(creationCallback: (pluginManager: PluginManager) => ConnectionType): this;
313
- addRpcMethod(creationCallback: (pluginManager: PluginManager) => RpcMethodType): this;
314
- addInternetAccountType(creationCallback: (pluginManager: PluginManager) => InternetAccountType): this;
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;
315
282
  addToExtensionPoint<T>(extensionPointName: string, callback: (extendee: T) => T): void;
316
283
  evaluateExtensionPoint(extensionPointName: string, extendee: unknown): unknown;
317
284
  evaluateAsyncExtensionPoint(extensionPointName: string, extendee: unknown): Promise<unknown>;