@jbrowse/core 5.0.0-beta.1 → 5.0.0-beta.10
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/README.md +1476 -265
- package/esm/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.d.ts +3 -2
- package/esm/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.js +5 -3
- package/esm/BaseFeatureWidget/BaseFeatureDetail/Attributes.d.ts +3 -5
- package/esm/BaseFeatureWidget/BaseFeatureDetail/Attributes.js +34 -29
- package/esm/BaseFeatureWidget/BaseFeatureDetail/BaseCard.js +1 -4
- package/esm/BaseFeatureWidget/BaseFeatureDetail/BasicValue.d.ts +11 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/BasicValue.js +16 -9
- package/esm/BaseFeatureWidget/BaseFeatureDetail/CoreDetails.d.ts +1 -1
- package/esm/BaseFeatureWidget/BaseFeatureDetail/CoreDetails.js +15 -31
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails.d.ts +4 -3
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails.js +12 -25
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FeatureDetailsFrame.d.ts +11 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FeatureDetailsFrame.js +11 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FieldActionsButton.d.ts +8 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/FieldActionsButton.js +24 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/Formatter.js +6 -4
- package/esm/BaseFeatureWidget/BaseFeatureDetail/ParentFeatureLine.d.ts +4 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/ParentFeatureLine.js +17 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/SimpleField.d.ts +3 -2
- package/esm/BaseFeatureWidget/BaseFeatureDetail/SimpleField.js +5 -3
- package/esm/BaseFeatureWidget/BaseFeatureDetail/index.d.ts +6 -2
- package/esm/BaseFeatureWidget/BaseFeatureDetail/index.js +7 -18
- package/esm/BaseFeatureWidget/BaseFeatureDetail/jexlFilterActions.d.ts +16 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/jexlFilterActions.js +50 -0
- package/esm/BaseFeatureWidget/BaseFeatureDetail/util.d.ts +0 -8
- package/esm/BaseFeatureWidget/BaseFeatureDetail/util.js +6 -29
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/SequenceContents.js +7 -34
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeaturePanel.d.ts +2 -2
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/SequenceName.js +2 -2
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/dialogs/TranscriptSelector.js +3 -1
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/model.d.ts +12 -0
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/model.js +12 -5
- package/esm/BaseFeatureWidget/configSchema.d.ts +1 -1
- package/esm/BaseFeatureWidget/formatDetails.d.ts +13 -29
- package/esm/BaseFeatureWidget/formatDetails.js +62 -83
- package/esm/BaseFeatureWidget/index.d.ts +2 -1
- package/esm/BaseFeatureWidget/stateModelFactory.d.ts +42 -29
- package/esm/BaseFeatureWidget/stateModelFactory.js +98 -98
- package/esm/BaseFeatureWidget/types.d.ts +12 -6
- package/esm/BaseFeatureWidget/util.d.ts +0 -10
- package/esm/BaseFeatureWidget/util.js +0 -17
- package/esm/CorePlugin.js +2 -2
- package/esm/PluginLoader.d.ts +24 -13
- package/esm/PluginLoader.js +167 -51
- package/esm/PluginManager.d.ts +130 -24
- package/esm/PluginManager.js +180 -32
- package/esm/ReExports/MuiDataGridReExports.d.ts +1 -0
- package/esm/ReExports/MuiDataGridReExports.js +2 -2
- package/esm/ReExports/coreModules.generated.d.ts +2 -0
- package/esm/ReExports/coreModules.generated.js +528 -0
- package/esm/ReExports/coreWorkerModules.generated.d.ts +2 -0
- package/esm/ReExports/coreWorkerModules.generated.js +488 -0
- package/esm/ReExports/frameworkModules.d.ts +2 -0
- package/esm/ReExports/frameworkModules.js +68 -0
- package/esm/ReExports/frameworkShared.d.ts +12 -0
- package/esm/ReExports/frameworkShared.js +16 -0
- package/esm/ReExports/frameworkWorkerModules.generated.d.ts +2 -0
- package/esm/ReExports/frameworkWorkerModules.generated.js +130 -0
- package/esm/ReExports/list.js +527 -79
- package/esm/ReExports/modules.d.ts +1 -1
- package/esm/ReExports/modules.js +10 -165
- package/esm/ReExports/registry.d.ts +1 -0
- package/esm/ReExports/registry.js +23 -5
- package/esm/ReExports/uiStub.d.ts +3 -0
- package/esm/ReExports/uiStub.js +33 -0
- package/esm/ReExports/workerModules.d.ts +2 -0
- package/esm/ReExports/workerModules.js +11 -0
- package/esm/TextSearch/TextSearchManager.d.ts +27 -13
- package/esm/TextSearch/TextSearchManager.js +77 -36
- package/esm/TextSearch/places.d.ts +12 -0
- package/esm/TextSearch/places.js +94 -0
- package/esm/assemblyManager/assembly.d.ts +21 -19
- package/esm/assemblyManager/assembly.js +28 -26
- package/esm/assemblyManager/assemblyAdapters.d.ts +1 -1
- package/esm/assemblyManager/assemblyAdapters.js +8 -2
- package/esm/assemblyManager/assemblyConfigSchema.d.ts +31 -90
- package/esm/assemblyManager/assemblyConfigSchema.js +35 -47
- package/esm/assemblyManager/assemblyManager.d.ts +35 -180
- package/esm/assemblyManager/assemblyManager.js +47 -51
- package/esm/assemblyManager/expandAssemblyConfigShorthand.d.ts +25 -18
- package/esm/assemblyManager/expandAssemblyConfigShorthand.js +78 -49
- package/esm/assemblyManager/geneticCodes.js +2 -5
- package/esm/assemblyManager/getSequenceAdapterConfig.d.ts +10 -0
- package/esm/assemblyManager/getSequenceAdapterConfig.js +10 -0
- package/esm/assemblyManager/indexAssemblyNames.d.ts +9 -0
- package/esm/assemblyManager/indexAssemblyNames.js +22 -0
- package/esm/assemblyManager/loadRefNameMap.d.ts +1 -1
- package/esm/assemblyManager/loadRefNameMap.js +4 -9
- package/esm/assemblyManager/refNameMapKey.d.ts +7 -0
- package/esm/assemblyManager/refNameMapKey.js +12 -0
- package/esm/checkPlugins.d.ts +2 -0
- package/esm/checkPlugins.js +38 -17
- package/esm/configuration/bamIndexFields.d.ts +49 -0
- package/esm/configuration/bamIndexFields.js +41 -0
- package/esm/configuration/configurationSchema.d.ts +101 -71
- package/esm/configuration/configurationSchema.js +207 -134
- package/esm/configuration/configurationSchemaUnion.d.ts +39 -0
- package/esm/configuration/configurationSchemaUnion.js +56 -0
- package/esm/configuration/configurationSlot.d.ts +150 -60
- package/esm/configuration/configurationSlot.js +103 -75
- package/esm/configuration/fillLocations.d.ts +14 -0
- package/esm/configuration/fillLocations.js +14 -0
- package/esm/configuration/formatAboutConfigSchema.d.ts +7 -21
- package/esm/configuration/formatDetailsConfigSchema.d.ts +11 -37
- package/esm/configuration/formatDetailsConfigSchema.js +10 -13
- package/esm/configuration/fullConfSnapshot.d.ts +4 -19
- package/esm/configuration/fullConfSnapshot.js +30 -52
- package/esm/configuration/getConf.d.ts +45 -41
- package/esm/configuration/getConf.js +111 -44
- package/esm/configuration/index.d.ts +24 -11
- package/esm/configuration/index.js +15 -7
- package/esm/configuration/indexType.d.ts +26 -0
- package/esm/configuration/indexType.js +38 -0
- package/esm/configuration/mergeFormatCallbacks.d.ts +6 -7
- package/esm/configuration/mergeFormatCallbacks.js +13 -10
- package/esm/configuration/readConfObject.d.ts +2 -24
- package/esm/configuration/readConfObject.js +20 -63
- package/esm/configuration/requirements.d.ts +37 -0
- package/esm/configuration/requirements.js +88 -0
- package/esm/configuration/schemaRegistry.d.ts +32 -15
- package/esm/configuration/schemaRegistry.js +33 -35
- package/esm/configuration/schemaTypes.d.ts +21 -5
- package/esm/configuration/schemaTypes.js +66 -55
- package/esm/configuration/slotFacade.d.ts +12 -29
- package/esm/configuration/slotFacade.js +44 -23
- package/esm/configuration/snapshotPreprocess.d.ts +43 -0
- package/esm/configuration/snapshotPreprocess.js +161 -0
- package/esm/configuration/tabixIndexFields.d.ts +30 -4
- package/esm/configuration/tabixIndexFields.js +21 -4
- package/esm/configuration/tabixShorthand.d.ts +34 -17
- package/esm/configuration/tabixShorthand.js +49 -22
- package/esm/configuration/types.d.ts +182 -43
- package/esm/configuration/uriShorthand.d.ts +9 -0
- package/esm/configuration/uriShorthand.js +16 -0
- package/esm/data_adapters/BaseAdapter/BaseAdapter.d.ts +13 -19
- package/esm/data_adapters/BaseAdapter/BaseAdapter.js +12 -19
- package/esm/data_adapters/BaseAdapter/BaseFeatureDataAdapter.d.ts +40 -2
- package/esm/data_adapters/BaseAdapter/BaseFeatureDataAdapter.js +68 -5
- package/esm/data_adapters/BaseAdapter/featureDensity.d.ts +40 -0
- package/esm/data_adapters/BaseAdapter/featureDensity.js +31 -0
- package/esm/data_adapters/BaseAdapter/index.d.ts +23 -3
- package/esm/data_adapters/BaseAdapter/index.js +1 -0
- package/esm/data_adapters/BaseAdapter/rowSources.d.ts +37 -0
- package/esm/data_adapters/BaseAdapter/rowSources.js +7 -0
- package/esm/data_adapters/BaseAdapter/stats.d.ts +33 -1
- package/esm/data_adapters/BaseAdapter/stats.js +52 -13
- package/esm/data_adapters/BaseAdapter/types.d.ts +8 -12
- package/esm/data_adapters/BaseAdapter/zoomRange.d.ts +10 -0
- package/esm/data_adapters/CytobandAdapter/CytobandAdapter.js +1 -1
- package/esm/data_adapters/CytobandAdapter/configSchema.d.ts +7 -11
- package/esm/data_adapters/CytobandAdapter/configSchema.js +3 -17
- package/esm/data_adapters/dataAdapterCache.d.ts +19 -2
- package/esm/data_adapters/dataAdapterCache.js +44 -10
- package/esm/data_adapters/getFeatureAdapter.d.ts +6 -4
- package/esm/data_adapters/getFeatureAdapter.js +8 -8
- package/esm/data_adapters/getSequenceSubAdapter.d.ts +7 -9
- package/esm/data_adapters/getSequenceSubAdapter.js +8 -10
- package/esm/pluggableElementTypes/AdapterType.d.ts +8 -8
- package/esm/pluggableElementTypes/AdapterType.js +1 -1
- package/esm/pluggableElementTypes/DisplayType.d.ts +46 -16
- package/esm/pluggableElementTypes/DisplayType.js +22 -12
- package/esm/pluggableElementTypes/LazyStateModelElement.d.ts +32 -0
- package/esm/pluggableElementTypes/LazyStateModelElement.js +77 -0
- package/esm/pluggableElementTypes/PluggableElementBase.d.ts +3 -5
- package/esm/pluggableElementTypes/PluggableElementBase.js +3 -5
- package/esm/pluggableElementTypes/RpcMethodType.d.ts +11 -1
- package/esm/pluggableElementTypes/RpcMethodType.js +25 -9
- package/esm/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions.d.ts +1 -2
- package/esm/pluggableElementTypes/TextSearchAdapterType.d.ts +7 -7
- package/esm/pluggableElementTypes/ViewType.d.ts +20 -4
- package/esm/pluggableElementTypes/ViewType.js +32 -4
- package/esm/pluggableElementTypes/addMenuItems.d.ts +3 -2
- package/esm/pluggableElementTypes/extendElementType.d.ts +1 -2
- package/esm/pluggableElementTypes/extendElementType.js +9 -5
- package/esm/pluggableElementTypes/index.d.ts +2 -1
- package/esm/pluggableElementTypes/index.js +1 -1
- package/esm/pluggableElementTypes/models/BaseConnectionModelFactory.d.ts +19 -9
- package/esm/pluggableElementTypes/models/BaseDisplayModel.d.ts +65 -27
- package/esm/pluggableElementTypes/models/BaseDisplayModel.js +72 -10
- package/esm/pluggableElementTypes/models/BaseTrackModel.d.ts +65 -16
- package/esm/pluggableElementTypes/models/BaseTrackModel.js +179 -117
- package/esm/pluggableElementTypes/models/BaseViewModel.d.ts +85 -16
- package/esm/pluggableElementTypes/models/BaseViewModel.js +53 -10
- package/esm/pluggableElementTypes/models/InternetAccountModel.d.ts +26 -16
- package/esm/pluggableElementTypes/models/assertDisplayContract.d.ts +15 -11
- package/esm/pluggableElementTypes/models/assertDisplayContract.js +25 -32
- package/esm/pluggableElementTypes/models/baseConnectionConfig.d.ts +22 -18
- package/esm/pluggableElementTypes/models/baseConnectionConfig.js +5 -5
- package/esm/pluggableElementTypes/models/baseInternetAccountConfig.d.ts +26 -31
- package/esm/pluggableElementTypes/models/baseTrackConfig.d.ts +108 -147
- package/esm/pluggableElementTypes/models/baseTrackConfig.js +96 -73
- package/esm/pluggableElementTypes/models/components/SaveTrackData.js +4 -6
- package/esm/pluggableElementTypes/models/components/fetchTrackData.d.ts +3 -4
- package/esm/pluggableElementTypes/models/components/fetchTrackData.js +3 -3
- package/esm/pluggableElementTypes/models/expandTrackConfigShorthand.d.ts +23 -13
- package/esm/pluggableElementTypes/models/expandTrackConfigShorthand.js +80 -48
- package/esm/pluggableElementTypes/models/index.d.ts +2 -3
- package/esm/pluggableElementTypes/models/index.js +2 -3
- package/esm/pluggableElementTypes/models/migrateTrackConfig.d.ts +15 -1
- package/esm/pluggableElementTypes/models/migrateTrackConfig.js +85 -25
- package/esm/pluggableElementTypes/models/saveTrackFileTypes/genbank.d.ts +4 -3
- package/esm/pluggableElementTypes/models/saveTrackFileTypes/genbank.js +141 -19
- package/esm/pluggableElementTypes/models/saveTrackFileTypes/types.d.ts +3 -3
- package/esm/pluginDefinitions.d.ts +34 -7
- package/esm/pluginDefinitions.js +54 -20
- package/esm/rpc/BaseRpcDriver.d.ts +2 -2
- package/esm/rpc/BaseRpcDriver.js +25 -30
- package/esm/rpc/MainThreadRpcDriver.d.ts +2 -2
- package/esm/rpc/MainThreadRpcDriver.js +13 -8
- package/esm/rpc/RpcClient.d.ts +18 -6
- package/esm/rpc/RpcClient.js +51 -16
- package/esm/rpc/RpcManager.d.ts +14 -10
- package/esm/rpc/RpcManager.js +11 -1
- package/esm/rpc/RpcRegistry.d.ts +40 -7
- package/esm/rpc/RpcServer.d.ts +3 -1
- package/esm/rpc/RpcServer.js +19 -12
- package/esm/rpc/WebWorkerRpcDriver.d.ts +11 -4
- package/esm/rpc/WebWorkerRpcDriver.js +64 -68
- package/esm/rpc/byteBudget.d.ts +20 -5
- package/esm/rpc/byteBudget.js +16 -5
- package/esm/rpc/configSchema.d.ts +7 -21
- package/esm/rpc/coreRpcMethods.d.ts +4 -0
- package/esm/rpc/coreRpcMethods.js +4 -0
- package/esm/rpc/methods/CoreGetEncodedFeature.d.ts +13 -0
- package/esm/rpc/methods/CoreGetEncodedFeature.js +32 -0
- package/esm/rpc/methods/CoreGetEncodedLayers.d.ts +16 -0
- package/esm/rpc/methods/CoreGetEncodedLayers.js +59 -0
- package/esm/rpc/methods/CoreGetExportData.js +3 -4
- package/esm/rpc/methods/CoreGetFeatureDensity.d.ts +11 -0
- package/esm/rpc/methods/CoreGetFeatureDensity.js +22 -0
- package/esm/rpc/methods/CoreGetFeatures.js +3 -5
- package/esm/rpc/methods/CoreGetRefNames.js +2 -12
- package/esm/rpc/methods/CoreGetRegionByteEstimate.js +1 -1
- package/esm/rpc/methods/CoreGetSequence.js +2 -2
- package/esm/rpc/methods/CoreLoadAdapterCode.d.ts +13 -0
- package/esm/rpc/methods/CoreLoadAdapterCode.js +16 -0
- package/esm/rpc/methods/layerFeatures.d.ts +33 -0
- package/esm/rpc/methods/layerFeatures.js +29 -0
- package/esm/svg/SvgExport.js +6 -7
- package/esm/svg/SvgThemeProviders.d.ts +12 -0
- package/esm/svg/SvgThemeProviders.js +15 -0
- package/esm/svg/exportViewSvg.d.ts +28 -0
- package/esm/svg/exportViewSvg.js +13 -0
- package/esm/svg/normalizeSvgMarkup.d.ts +7 -0
- package/esm/svg/normalizeSvgMarkup.js +99 -0
- package/esm/svg/serializeSvg.d.ts +7 -0
- package/esm/svg/serializeSvg.js +11 -0
- package/esm/svg/svgId.d.ts +1 -1
- package/esm/svg/svgId.js +1 -1
- package/esm/svg/svgReady.d.ts +9 -7
- package/esm/svg/svgReady.js +8 -7
- package/esm/svg/trackNames.d.ts +7 -5
- package/esm/svg/trackNames.js +12 -9
- package/esm/svg/wrapSvgExport.js +6 -74
- package/esm/ui/AddCustomPluginDialog.js +3 -8
- package/esm/ui/AppReadyMarker.d.ts +45 -0
- package/esm/ui/AppReadyMarker.js +89 -0
- package/esm/ui/BaseExportSvgDialog.d.ts +1 -1
- package/esm/ui/CascadingMenu.js +181 -104
- package/esm/ui/DropDownMenu.js +2 -1
- package/esm/ui/ErrorBanner.js +1 -1
- package/esm/ui/ErrorBoundary.d.ts +2 -2
- package/esm/ui/ErrorMessageStackTraceContents.js +2 -1
- package/esm/ui/ErrorMessageStackTraceDialog.js +5 -11
- package/esm/ui/ExportSvgDialog.d.ts +1 -1
- package/esm/ui/FileDropZone.js +2 -1
- package/esm/ui/FileSelector/useInternetAccounts.d.ts +156 -96
- package/esm/ui/HoverMenu.d.ts +1 -2
- package/esm/ui/HoverMenu.js +6 -3
- package/esm/ui/JexlFilterDialog.d.ts +13 -10
- package/esm/ui/JexlFilterDialog.js +122 -49
- package/esm/ui/JexlFilterRowEditors.d.ts +15 -0
- package/esm/ui/JexlFilterRowEditors.js +90 -0
- package/esm/ui/LazyBaseTooltip.d.ts +4 -0
- package/esm/ui/LazyBaseTooltip.js +9 -0
- package/esm/ui/LegendSwatchGlyph.js +26 -21
- package/esm/ui/LoadingOverlay.d.ts +14 -0
- package/esm/ui/LoadingOverlay.js +4 -2
- package/esm/ui/MenuTypes.d.ts +23 -53
- package/esm/ui/MenuTypes.js +3 -0
- package/esm/ui/MonospaceTextField.d.ts +2 -1
- package/esm/ui/MonospaceTextField.js +23 -20
- package/esm/ui/PaletteContext.d.ts +10 -5
- package/esm/ui/PaletteContext.js +44 -6
- package/esm/ui/RefNameAutocomplete/SearchOption.d.ts +13 -0
- package/esm/ui/RefNameAutocomplete/SearchOption.js +45 -0
- package/esm/ui/RefNameAutocomplete/index.d.ts +1 -2
- package/esm/ui/RefNameAutocomplete/index.js +8 -2
- package/esm/ui/RefNameAutocomplete/util.d.ts +13 -0
- package/esm/ui/RefNameAutocomplete/util.js +42 -1
- package/esm/ui/ResizeHandle.d.ts +3 -1
- package/esm/ui/ResizeHandle.js +44 -11
- package/esm/ui/ScrollChrome.d.ts +13 -0
- package/esm/ui/ScrollChrome.js +11 -0
- package/esm/ui/ScrollEdgeShadow.d.ts +6 -9
- package/esm/ui/ScrollEdgeShadow.js +14 -35
- package/esm/ui/ScrollZoomToggle.d.ts +4 -27
- package/esm/ui/ScrollZoomToggle.js +34 -51
- package/esm/ui/SessionJsonPanel.d.ts +3 -0
- package/esm/ui/SessionJsonPanel.js +14 -0
- package/esm/ui/SettingsChangesTable.d.ts +1 -0
- package/esm/ui/SettingsChangesTable.js +49 -11
- package/esm/ui/ShareLinkField.d.ts +1 -3
- package/esm/ui/ShareLinkField.js +13 -40
- package/esm/ui/SizeSliderRow.d.ts +1 -3
- package/esm/ui/SizeSliderRow.js +4 -6
- package/esm/ui/SnackbarModel.js +79 -67
- package/esm/ui/StatusProgressBar.js +2 -2
- package/esm/ui/SvgColorLegend.d.ts +9 -4
- package/esm/ui/SvgColorLegend.js +82 -41
- package/esm/ui/VerticalScrollbar.d.ts +13 -34
- package/esm/ui/VerticalScrollbar.js +29 -83
- package/esm/ui/ViewLoadingScreen.d.ts +5 -4
- package/esm/ui/ViewLoadingScreen.js +8 -32
- package/esm/ui/colorScale.d.ts +92 -0
- package/esm/ui/colorScale.js +72 -0
- package/esm/ui/colors.d.ts +64 -0
- package/esm/ui/colors.js +230 -1
- package/esm/ui/hoverBoxStyle.d.ts +14 -2
- package/esm/ui/hoverBoxStyle.js +17 -2
- package/esm/ui/index.d.ts +12 -12
- package/esm/ui/index.js +14 -22
- package/esm/ui/launchViewMenu.js +15 -5
- package/esm/ui/legendMenuItem.d.ts +10 -32
- package/esm/ui/legendMenuItem.js +9 -36
- package/esm/ui/legendSpec.d.ts +15 -8
- package/esm/ui/legendSpec.js +14 -23
- package/esm/ui/makeSizeMenu.d.ts +0 -6
- package/esm/ui/makeSizeMenu.js +6 -30
- package/esm/ui/measureLegendText.js +1 -1
- package/esm/ui/menuItemAdornment.d.ts +9 -20
- package/esm/ui/menuItemAdornment.js +10 -32
- package/esm/ui/menuItems.d.ts +2 -7
- package/esm/ui/menuItems.js +1 -6
- package/esm/ui/multiTrackMenuItems.d.ts +6 -0
- package/esm/ui/palette.d.ts +118 -116
- package/esm/ui/palette.js +114 -75
- package/esm/ui/replaceViewAction.d.ts +1 -1
- package/esm/ui/replaceViewAction.js +1 -1
- package/esm/ui/theme.d.ts +43 -119
- package/esm/ui/theme.js +62 -78
- package/esm/ui/toggleMenuItems.d.ts +1 -3
- package/esm/ui/toggleMenuItems.js +6 -5
- package/esm/ui/useAssemblySelection.d.ts +4 -4
- package/esm/ui/viewHeaderHeight.d.ts +1 -0
- package/esm/ui/viewHeaderHeight.js +1 -0
- package/esm/util/Base1DUtils.d.ts +5 -3
- package/esm/util/Base1DUtils.js +14 -6
- package/esm/util/Base1DViewModel.d.ts +2 -1
- package/esm/util/Base1DViewModel.js +3 -2
- package/esm/util/SvgCanvas.d.ts +15 -13
- package/esm/util/SvgCanvas.js +76 -56
- package/esm/util/aborting.d.ts +39 -0
- package/esm/util/aborting.js +88 -6
- package/esm/util/adapterMetadata.d.ts +1 -1
- package/esm/util/adapterMetadata.js +6 -5
- package/esm/util/addAndShowTrack.d.ts +2 -5
- package/esm/util/addAndShowTrack.js +5 -1
- package/esm/util/addRelativeUris.d.ts +17 -5
- package/esm/util/addRelativeUris.js +46 -10
- package/esm/util/addTrackFromWidget.d.ts +2 -5
- package/esm/util/addTrackFromWidget.js +5 -4
- package/esm/util/aggregateFieldName.d.ts +10 -0
- package/esm/util/aggregateFieldName.js +8 -0
- package/esm/util/analytics.js +46 -13
- package/esm/util/animationAllowed.d.ts +9 -0
- package/esm/util/animationAllowed.js +13 -0
- package/esm/util/applyRowResizeWheel.d.ts +10 -5
- package/esm/util/applyRowResizeWheel.js +10 -21
- package/esm/util/bandHeight.d.ts +10 -0
- package/esm/util/bandHeight.js +29 -0
- package/esm/util/bandLayout.d.ts +4 -4
- package/esm/util/bandLayout.js +4 -4
- package/esm/util/bezierConnector.d.ts +4 -3
- package/esm/util/bezierConnector.js +38 -45
- package/esm/util/bgzfWorkerPool.d.ts +20 -74
- package/esm/util/bgzfWorkerPool.js +20 -74
- package/esm/util/binnedAggregate.d.ts +17 -0
- package/esm/util/binnedAggregate.js +275 -0
- package/esm/util/cacheBudgets.d.ts +22 -19
- package/esm/util/cacheBudgets.js +22 -19
- package/esm/util/cachedSetup.d.ts +1 -1
- package/esm/util/cachedSetup.js +2 -2
- package/esm/util/categoricalField.d.ts +56 -0
- package/esm/util/categoricalField.js +73 -0
- package/esm/util/clampToContig.d.ts +17 -0
- package/esm/util/clampToContig.js +19 -0
- package/esm/util/coarseStripHTML.js +1 -2
- package/esm/util/color/cssColorsLevel4.d.ts +1 -0
- package/esm/util/color/cssColorsLevel4.js +1 -0
- package/esm/util/color/index.d.ts +5 -3
- package/esm/util/color/index.js +7 -4
- package/esm/util/colorBits.d.ts +3 -3
- package/esm/util/colorBits.js +19 -44
- package/esm/util/colorRamp.d.ts +49 -5
- package/esm/util/colorRamp.js +169 -18
- package/esm/util/colorScale.d.ts +156 -0
- package/esm/util/colorScale.js +243 -0
- package/esm/util/colorSchemes.d.ts +21 -0
- package/esm/util/colorSchemes.js +30 -0
- package/esm/util/{createStopTokenRotation.d.ts → createAbortRotation.d.ts} +21 -23
- package/esm/util/{createStopTokenRotation.js → createAbortRotation.js} +21 -52
- package/esm/util/createSvgRasterCanvas.d.ts +10 -0
- package/esm/util/cssColorParse.d.ts +15 -0
- package/esm/util/cssColorParse.js +53 -0
- package/esm/util/diagonalizeRegions.d.ts +2 -3
- package/esm/util/diagonalizeRegions.js +8 -13
- package/esm/util/expandLooseSearchIndex.d.ts +19 -0
- package/esm/util/expandLooseSearchIndex.js +29 -0
- package/esm/util/featureTable.d.ts +224 -0
- package/esm/util/featureTable.js +366 -0
- package/esm/util/featureTransforms.d.ts +80 -0
- package/esm/util/featureTransforms.js +1579 -0
- package/esm/util/featureTypes.d.ts +24 -0
- package/esm/util/featureTypes.js +35 -0
- package/esm/util/fetchAndMaybeUnzip.js +16 -9
- package/esm/util/fetchContext.d.ts +7 -8
- package/esm/util/fetchContext.js +3 -3
- package/esm/util/fetchHub.d.ts +4 -2
- package/esm/util/fetchHub.js +2 -2
- package/esm/util/fetchPhases.d.ts +10 -10
- package/esm/util/fetchSeq.d.ts +2 -3
- package/esm/util/fetchSeq.js +2 -2
- package/esm/util/fieldReader.d.ts +17 -0
- package/esm/util/fieldReader.js +62 -0
- package/esm/util/freezeDeep.d.ts +8 -10
- package/esm/util/freezeDeep.js +8 -10
- package/esm/util/groupKeys.d.ts +77 -0
- package/esm/util/groupKeys.js +155 -0
- package/esm/util/highlights.d.ts +10 -6
- package/esm/util/highlights.js +12 -25
- package/esm/util/hooks.d.ts +31 -2
- package/esm/util/hooks.js +72 -3
- package/esm/util/index.d.ts +11 -11
- package/esm/util/index.js +11 -10
- package/esm/util/indexCandidates.d.ts +1 -31
- package/esm/util/indexCandidates.js +5 -63
- package/esm/util/installFetch.d.ts +77 -37
- package/esm/util/installFetch.js +65 -38
- package/esm/util/installInitAutorun.d.ts +14 -13
- package/esm/util/installInitAutorun.js +17 -17
- package/esm/util/installPrerequisiteFetch.d.ts +115 -0
- package/esm/util/installPrerequisiteFetch.js +111 -0
- package/esm/util/io/index.js +19 -14
- package/esm/util/isDataCurrent.d.ts +7 -5
- package/esm/util/isDataCurrent.js +9 -6
- package/esm/util/isTextEntryFocused.d.ts +7 -0
- package/esm/util/isTextEntryFocused.js +16 -0
- package/esm/util/jexl.js +24 -21
- package/esm/util/jexlFilterRows.d.ts +89 -0
- package/esm/util/jexlFilterRows.js +252 -0
- package/esm/util/jexlFilters.d.ts +20 -27
- package/esm/util/jexlFilters.js +23 -11
- package/esm/util/jexlStrings.d.ts +3 -4
- package/esm/util/jexlStrings.js +2 -3
- package/esm/util/layouts/GranularRectLayout.d.ts +8 -1
- package/esm/util/layouts/GranularRectLayout.js +25 -8
- package/esm/util/lazyAfterAttach.d.ts +13 -0
- package/esm/util/lazyAfterAttach.js +31 -0
- package/esm/util/lazyWithPreload.d.ts +19 -0
- package/esm/util/lazyWithPreload.js +27 -0
- package/esm/util/legendCandidates.d.ts +72 -0
- package/esm/util/legendCandidates.js +138 -0
- package/esm/util/localStorage.js +4 -4
- package/esm/util/markEncoding.d.ts +150 -0
- package/esm/util/markEncoding.js +845 -0
- package/esm/util/markEncodingTypes.d.ts +588 -0
- package/esm/util/markEncodingTypes.js +8 -0
- package/esm/util/mst-reflection.d.ts +2 -20
- package/esm/util/mst-reflection.js +3 -53
- package/esm/util/mstUtils.d.ts +31 -23
- package/esm/util/mstUtils.js +39 -24
- package/esm/util/numericUtils.d.ts +7 -0
- package/esm/util/numericUtils.js +16 -0
- package/esm/util/numericValue.d.ts +14 -0
- package/esm/util/numericValue.js +34 -0
- package/esm/util/openFeatureWidget.d.ts +5 -0
- package/esm/util/openFeatureWidget.js +2 -2
- package/esm/util/openViews.d.ts +17 -0
- package/esm/util/openViews.js +22 -0
- package/esm/util/parentWalk.d.ts +1 -1
- package/esm/util/parentWalk.js +1 -1
- package/esm/util/parseLineByLine.d.ts +4 -5
- package/esm/util/parseLineByLine.js +8 -14
- package/esm/util/pluginStore.d.ts +6 -8
- package/esm/util/pluginStore.js +17 -16
- package/esm/util/preloadComponent.d.ts +5 -0
- package/esm/util/preloadComponent.js +11 -0
- package/esm/util/progress.d.ts +22 -22
- package/esm/util/progress.js +27 -26
- package/esm/util/quantileExtent.d.ts +49 -0
- package/esm/util/quantileExtent.js +162 -0
- package/esm/util/range.d.ts +13 -9
- package/esm/util/range.js +17 -8
- package/esm/util/renameRegions.d.ts +26 -6
- package/esm/util/renameRegions.js +68 -54
- package/esm/util/renderToStaticMarkup.js +24 -14
- package/esm/util/rxjs.d.ts +23 -8
- package/esm/util/rxjs.js +61 -15
- package/esm/util/samplesTsv.d.ts +49 -0
- package/esm/util/samplesTsv.js +86 -0
- package/esm/util/scheduleDetachedDestroy.d.ts +18 -0
- package/esm/util/scheduleDetachedDestroy.js +24 -0
- package/esm/util/scrollLatch.d.ts +1 -0
- package/esm/util/scrollLatch.js +8 -0
- package/esm/util/selectEncodedFeature.d.ts +16 -0
- package/esm/util/selectEncodedFeature.js +34 -0
- package/esm/util/sessionSharing.d.ts +7 -5
- package/esm/util/sessionSharing.js +23 -23
- package/esm/util/shapeNameList.d.ts +2 -0
- package/esm/util/shapeNameList.js +6 -0
- package/esm/util/shapeNames.d.ts +7 -0
- package/esm/util/shapeNames.js +11 -0
- package/esm/util/simpleFeature.d.ts +0 -1
- package/esm/util/starFusion.d.ts +26 -0
- package/esm/util/starFusion.js +37 -0
- package/esm/util/stepTables.d.ts +82 -0
- package/esm/util/stepTables.js +243 -0
- package/esm/util/svAlt.d.ts +145 -0
- package/esm/util/svAlt.js +364 -0
- package/esm/util/svgColorProps.d.ts +11 -0
- package/esm/util/svgColorProps.js +28 -1
- package/esm/util/systemColorScheme.d.ts +12 -0
- package/esm/util/systemColorScheme.js +27 -0
- package/esm/util/tabix.d.ts +13 -8
- package/esm/util/tabix.js +17 -12
- package/esm/util/thresholdScale.d.ts +91 -0
- package/esm/util/thresholdScale.js +166 -0
- package/esm/util/timeGate.d.ts +4 -5
- package/esm/util/timeGate.js +4 -5
- package/esm/util/trackConfigDelta.d.ts +26 -26
- package/esm/util/trackConfigDelta.js +63 -47
- package/esm/util/tracks.d.ts +121 -40
- package/esm/util/tracks.js +497 -112
- package/esm/util/translateTranscript.d.ts +44 -0
- package/esm/util/translateTranscript.js +102 -0
- package/esm/util/types/data.d.ts +0 -2
- package/esm/util/types/index.d.ts +121 -22
- package/esm/util/types/index.js +9 -0
- package/esm/util/types/mst.d.ts +3 -0
- package/esm/util/types/mst.js +4 -0
- package/esm/util/types/renameIds.d.ts +1 -0
- package/esm/util/types/renameIds.js +29 -0
- package/esm/util/types/services.d.ts +1 -1
- package/esm/util/unknownSnapshotKeys.d.ts +51 -0
- package/esm/util/unknownSnapshotKeys.js +82 -0
- package/esm/util/useFeatureSequence.js +5 -5
- package/esm/util/useFetch.d.ts +3 -4
- package/esm/util/useFetch.js +19 -10
- package/esm/util/useFetchPlugins.d.ts +6 -2
- package/esm/util/useFetchPlugins.js +7 -3
- package/esm/util/usePanelVirtualScroll.d.ts +7 -35
- package/esm/util/usePanelVirtualScroll.js +9 -36
- package/esm/util/useRowVirtualScroll.d.ts +6 -29
- package/esm/util/useRowVirtualScroll.js +8 -49
- package/esm/util/useVirtualScrollWheel.d.ts +20 -4
- package/esm/util/useVirtualScrollWheel.js +40 -74
- package/esm/util/viewHighlights.d.ts +3 -0
- package/esm/util/viewHighlights.js +5 -0
- package/esm/util/viewStatus.d.ts +47 -15
- package/esm/util/viewStatus.js +34 -0
- package/esm/util/wheelZoom.d.ts +7 -1
- package/esm/util/wheelZoom.js +85 -19
- package/esm/util/whenViewSettled.d.ts +55 -8
- package/esm/util/whenViewSettled.js +56 -7
- package/esm/util/withLaunchInput.d.ts +174 -0
- package/esm/util/withLaunchInput.js +274 -0
- package/package.json +70 -20
- package/esm/BaseFeatureWidget/BaseFeatureDetail/Position.d.ts +0 -2
- package/esm/BaseFeatureWidget/BaseFeatureDetail/Position.js +0 -8
- package/esm/BaseFeatureWidget/BaseFeatureDetail/types.d.ts +0 -8
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/test_data/DLGAP3.d.ts +0 -80
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/test_data/DLGAP3.js +0 -583
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/test_data/NCDN.d.ts +0 -141
- package/esm/BaseFeatureWidget/SequenceFeatureDetails/test_data/NCDN.js +0 -1116
- package/esm/ReExports/BaseFeatureDetails.d.ts +0 -1
- package/esm/ReExports/BaseFeatureDetails.js +0 -10
- package/esm/ReExports/index.d.ts +0 -1
- package/esm/ReExports/index.js +0 -1
- package/esm/ReExports/publicUtil.d.ts +0 -1
- package/esm/ReExports/publicUtil.js +0 -28
- package/esm/configuration/promotableDefaults.d.ts +0 -199
- package/esm/configuration/promotableDefaults.js +0 -326
- package/esm/configuration/promotablePin.d.ts +0 -55
- package/esm/configuration/promotablePin.js +0 -1
- package/esm/configuration/promotableResolve.d.ts +0 -108
- package/esm/configuration/promotableResolve.js +0 -117
- package/esm/configuration/promotableSlots.d.ts +0 -12
- package/esm/configuration/promotableSlots.js +0 -45
- package/esm/configuration/slotShape.d.ts +0 -12
- package/esm/configuration/slotShape.js +0 -84
- package/esm/pluggableElementTypes/models/HighlightsMixin.d.ts +0 -51
- package/esm/pluggableElementTypes/models/HighlightsMixin.js +0 -78
- package/esm/ui/PinAdornment.d.ts +0 -5
- package/esm/ui/PinAdornment.js +0 -79
- package/esm/ui/SvgGradientLegend.d.ts +0 -26
- package/esm/ui/SvgGradientLegend.js +0 -26
- package/esm/ui/highlightChipReveal.d.ts +0 -32
- package/esm/ui/highlightChipReveal.js +0 -39
- package/esm/ui/promotableMenuItems.d.ts +0 -19
- package/esm/ui/promotableMenuItems.js +0 -89
- package/esm/ui/promotablePinCoverage.d.ts +0 -44
- package/esm/ui/promotablePinCoverage.js +0 -87
- package/esm/util/applyInitSettings.d.ts +0 -79
- package/esm/util/applyInitSettings.js +0 -91
- package/esm/util/openDisplays.d.ts +0 -23
- package/esm/util/openDisplays.js +0 -79
- package/esm/util/stopToken.d.ts +0 -211
- package/esm/util/stopToken.js +0 -438
- /package/esm/{BaseFeatureWidget/BaseFeatureDetail/types.js → data_adapters/BaseAdapter/zoomRange.js} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type PluginManager from '../PluginManager.ts';
|
|
2
|
+
import type { AnyConfigurationModel } from '../configuration/index.ts';
|
|
2
3
|
import type RpcManager from '../rpc/RpcManager.ts';
|
|
3
4
|
import type { StatusCallback } from '../util/progress.ts';
|
|
4
|
-
import type { StopToken } from '../util/stopToken.ts';
|
|
5
5
|
import type { Assembly } from './assembly.ts';
|
|
6
6
|
import type { IAnyType } from '@jbrowse/mobx-state-tree';
|
|
7
7
|
type AdapterConf = Record<string, unknown>;
|
|
8
8
|
export interface AssemblyBaseOpts {
|
|
9
|
-
|
|
9
|
+
signal?: AbortSignal;
|
|
10
10
|
sessionId: string;
|
|
11
11
|
statusCallback?: StatusCallback;
|
|
12
12
|
}
|
|
@@ -26,7 +26,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
26
26
|
error: unknown;
|
|
27
27
|
loadingP: Promise<void> | undefined;
|
|
28
28
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
29
|
-
|
|
29
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
30
30
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
31
31
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
32
32
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -64,7 +64,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
64
64
|
afterAttach(): void;
|
|
65
65
|
} & {
|
|
66
66
|
readonly initialized: boolean;
|
|
67
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
68
67
|
readonly allRefNames: string[] | undefined;
|
|
69
68
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
70
69
|
readonly rpcManager: RpcManager;
|
|
@@ -82,6 +81,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
82
81
|
getCanonicalRefName2(refName: string): string;
|
|
83
82
|
isValidRefName(refName: string): boolean;
|
|
84
83
|
} & {
|
|
84
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
85
85
|
getAliasesForRefName(refName: string): string[];
|
|
86
86
|
getRefNameMapForAdapter(adapterConf: {
|
|
87
87
|
[x: string]: unknown;
|
|
@@ -112,141 +112,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
112
112
|
/**
|
|
113
113
|
* #getter
|
|
114
114
|
*/
|
|
115
|
-
readonly assemblyNameMap: Record<string,
|
|
116
|
-
configuration: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IReferenceType<IAnyType>>;
|
|
117
|
-
}> & {
|
|
118
|
-
error: unknown;
|
|
119
|
-
loadingP: Promise<void> | undefined;
|
|
120
|
-
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
121
|
-
volatileRegions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
122
|
-
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
123
|
-
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
124
|
-
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
125
|
-
loadedGeneticCodes: Record<string, number> | undefined;
|
|
126
|
-
lowerCaseRefNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
127
|
-
statusMessage: string | undefined;
|
|
128
|
-
statusProgress: number | undefined;
|
|
129
|
-
statusSource: string | undefined;
|
|
130
|
-
refNameMismatches: Map<string, import("./refNameMismatch.ts").RefNameMismatch>;
|
|
131
|
-
} & {
|
|
132
|
-
getConf(arg: string): any;
|
|
133
|
-
} & {
|
|
134
|
-
readonly name: string;
|
|
135
|
-
readonly aliases: string[];
|
|
136
|
-
readonly displayName: string;
|
|
137
|
-
readonly refNameColors: string[];
|
|
138
|
-
} & {
|
|
139
|
-
readonly allAliases: string[];
|
|
140
|
-
hasName(name: string): boolean;
|
|
141
|
-
} & {
|
|
142
|
-
setStatus(status?: import("../util/progress.ts").RpcStatus): void;
|
|
143
|
-
setRefNameMismatch(adapterCacheKey: string, mismatch: import("./refNameMismatch.ts").RefNameMismatch): void;
|
|
144
|
-
} & {
|
|
145
|
-
setLoaded({ regions, refNameAliases, lowerCaseRefNameAliases, canonicalToSeqAdapterRefNames, cytobands, geneticCodes, }: import("./refNameMaps.ts").RefNameMaps & {
|
|
146
|
-
regions: import("../util/index.ts").Region[];
|
|
147
|
-
cytobands: import("../util/simpleFeature.ts").Feature[];
|
|
148
|
-
geneticCodes: Record<string, number>;
|
|
149
|
-
}): void;
|
|
150
|
-
setError(e: unknown): void;
|
|
151
|
-
setLoadingP(p?: Promise<void>): void;
|
|
152
|
-
loadPre(): Promise<void>;
|
|
153
|
-
} & {
|
|
154
|
-
load(): Promise<void>;
|
|
155
|
-
} & {
|
|
156
|
-
afterAttach(): void;
|
|
157
|
-
} & {
|
|
158
|
-
readonly initialized: boolean;
|
|
159
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
160
|
-
readonly allRefNames: string[] | undefined;
|
|
161
|
-
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
162
|
-
readonly rpcManager: RpcManager;
|
|
163
|
-
} & {
|
|
164
|
-
readonly refNames: string[] | undefined;
|
|
165
|
-
} & {
|
|
166
|
-
readonly refNameToIndex: Map<string, number> | undefined;
|
|
167
|
-
} & {
|
|
168
|
-
getCanonicalRefName(refName: string): string | undefined;
|
|
169
|
-
getRefNameColor(refName: string): string | undefined;
|
|
170
|
-
getRegionForRefName(refName: string): import("./assembly.ts").BasicRegion | undefined;
|
|
171
|
-
getGeneticCodeId(refName: string): number;
|
|
172
|
-
getSeqAdapterRefName(canonicalRefName: string): string;
|
|
173
|
-
} & {
|
|
174
|
-
getCanonicalRefName2(refName: string): string;
|
|
175
|
-
isValidRefName(refName: string): boolean;
|
|
176
|
-
} & {
|
|
177
|
-
getAliasesForRefName(refName: string): string[];
|
|
178
|
-
getRefNameMapForAdapter(adapterConf: {
|
|
179
|
-
[x: string]: unknown;
|
|
180
|
-
}, options: import("../data_adapters/BaseAdapter/types.ts").BaseOptions): Promise<import("./refNameMaps.ts").RefNameAliases>;
|
|
181
|
-
getRefNameMismatch(adapterCacheKey: string): import("./refNameMismatch.ts").RefNameMismatch | undefined;
|
|
182
|
-
} & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
|
|
183
|
-
configuration: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IReferenceType<IAnyType>>;
|
|
184
|
-
}, {
|
|
185
|
-
error: unknown;
|
|
186
|
-
loadingP: Promise<void> | undefined;
|
|
187
|
-
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
188
|
-
volatileRegions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
189
|
-
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
190
|
-
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
191
|
-
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
192
|
-
loadedGeneticCodes: Record<string, number> | undefined;
|
|
193
|
-
lowerCaseRefNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
194
|
-
statusMessage: string | undefined;
|
|
195
|
-
statusProgress: number | undefined;
|
|
196
|
-
statusSource: string | undefined;
|
|
197
|
-
refNameMismatches: Map<string, import("./refNameMismatch.ts").RefNameMismatch>;
|
|
198
|
-
} & {
|
|
199
|
-
getConf(arg: string): any;
|
|
200
|
-
} & {
|
|
201
|
-
readonly name: string;
|
|
202
|
-
readonly aliases: string[];
|
|
203
|
-
readonly displayName: string;
|
|
204
|
-
readonly refNameColors: string[];
|
|
205
|
-
} & {
|
|
206
|
-
readonly allAliases: string[];
|
|
207
|
-
hasName(name: string): boolean;
|
|
208
|
-
} & {
|
|
209
|
-
setStatus(status?: import("../util/progress.ts").RpcStatus): void;
|
|
210
|
-
setRefNameMismatch(adapterCacheKey: string, mismatch: import("./refNameMismatch.ts").RefNameMismatch): void;
|
|
211
|
-
} & {
|
|
212
|
-
setLoaded({ regions, refNameAliases, lowerCaseRefNameAliases, canonicalToSeqAdapterRefNames, cytobands, geneticCodes, }: import("./refNameMaps.ts").RefNameMaps & {
|
|
213
|
-
regions: import("../util/index.ts").Region[];
|
|
214
|
-
cytobands: import("../util/simpleFeature.ts").Feature[];
|
|
215
|
-
geneticCodes: Record<string, number>;
|
|
216
|
-
}): void;
|
|
217
|
-
setError(e: unknown): void;
|
|
218
|
-
setLoadingP(p?: Promise<void>): void;
|
|
219
|
-
loadPre(): Promise<void>;
|
|
220
|
-
} & {
|
|
221
|
-
load(): Promise<void>;
|
|
222
|
-
} & {
|
|
223
|
-
afterAttach(): void;
|
|
224
|
-
} & {
|
|
225
|
-
readonly initialized: boolean;
|
|
226
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
227
|
-
readonly allRefNames: string[] | undefined;
|
|
228
|
-
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
229
|
-
readonly rpcManager: RpcManager;
|
|
230
|
-
} & {
|
|
231
|
-
readonly refNames: string[] | undefined;
|
|
232
|
-
} & {
|
|
233
|
-
readonly refNameToIndex: Map<string, number> | undefined;
|
|
234
|
-
} & {
|
|
235
|
-
getCanonicalRefName(refName: string): string | undefined;
|
|
236
|
-
getRefNameColor(refName: string): string | undefined;
|
|
237
|
-
getRegionForRefName(refName: string): import("./assembly.ts").BasicRegion | undefined;
|
|
238
|
-
getGeneticCodeId(refName: string): number;
|
|
239
|
-
getSeqAdapterRefName(canonicalRefName: string): string;
|
|
240
|
-
} & {
|
|
241
|
-
getCanonicalRefName2(refName: string): string;
|
|
242
|
-
isValidRefName(refName: string): boolean;
|
|
243
|
-
} & {
|
|
244
|
-
getAliasesForRefName(refName: string): string[];
|
|
245
|
-
getRefNameMapForAdapter(adapterConf: {
|
|
246
|
-
[x: string]: unknown;
|
|
247
|
-
}, options: import("../data_adapters/BaseAdapter/types.ts").BaseOptions): Promise<import("./refNameMaps.ts").RefNameAliases>;
|
|
248
|
-
getRefNameMismatch(adapterCacheKey: string): import("./refNameMismatch.ts").RefNameMismatch | undefined;
|
|
249
|
-
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>>;
|
|
115
|
+
readonly assemblyNameMap: Record<string, Assembly>;
|
|
250
116
|
} & {
|
|
251
117
|
/**
|
|
252
118
|
* #method
|
|
@@ -271,7 +137,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
271
137
|
error: unknown;
|
|
272
138
|
loadingP: Promise<void> | undefined;
|
|
273
139
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
274
|
-
|
|
140
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
275
141
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
276
142
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
277
143
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -309,7 +175,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
309
175
|
afterAttach(): void;
|
|
310
176
|
} & {
|
|
311
177
|
readonly initialized: boolean;
|
|
312
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
313
178
|
readonly allRefNames: string[] | undefined;
|
|
314
179
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
315
180
|
readonly rpcManager: RpcManager;
|
|
@@ -327,6 +192,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
327
192
|
getCanonicalRefName2(refName: string): string;
|
|
328
193
|
isValidRefName(refName: string): boolean;
|
|
329
194
|
} & {
|
|
195
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
330
196
|
getAliasesForRefName(refName: string): string[];
|
|
331
197
|
getRefNameMapForAdapter(adapterConf: {
|
|
332
198
|
[x: string]: unknown;
|
|
@@ -338,7 +204,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
338
204
|
error: unknown;
|
|
339
205
|
loadingP: Promise<void> | undefined;
|
|
340
206
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
341
|
-
|
|
207
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
342
208
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
343
209
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
344
210
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -376,7 +242,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
376
242
|
afterAttach(): void;
|
|
377
243
|
} & {
|
|
378
244
|
readonly initialized: boolean;
|
|
379
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
380
245
|
readonly allRefNames: string[] | undefined;
|
|
381
246
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
382
247
|
readonly rpcManager: RpcManager;
|
|
@@ -394,6 +259,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
394
259
|
getCanonicalRefName2(refName: string): string;
|
|
395
260
|
isValidRefName(refName: string): boolean;
|
|
396
261
|
} & {
|
|
262
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
397
263
|
getAliasesForRefName(refName: string): string[];
|
|
398
264
|
getRefNameMapForAdapter(adapterConf: {
|
|
399
265
|
[x: string]: unknown;
|
|
@@ -425,7 +291,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
425
291
|
error: unknown;
|
|
426
292
|
loadingP: Promise<void> | undefined;
|
|
427
293
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
428
|
-
|
|
294
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
429
295
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
430
296
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
431
297
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -463,7 +329,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
463
329
|
afterAttach(): void;
|
|
464
330
|
} & {
|
|
465
331
|
readonly initialized: boolean;
|
|
466
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
467
332
|
readonly allRefNames: string[] | undefined;
|
|
468
333
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
469
334
|
readonly rpcManager: RpcManager;
|
|
@@ -481,6 +346,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
481
346
|
getCanonicalRefName2(refName: string): string;
|
|
482
347
|
isValidRefName(refName: string): boolean;
|
|
483
348
|
} & {
|
|
349
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
484
350
|
getAliasesForRefName(refName: string): string[];
|
|
485
351
|
getRefNameMapForAdapter(adapterConf: {
|
|
486
352
|
[x: string]: unknown;
|
|
@@ -492,7 +358,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
492
358
|
error: unknown;
|
|
493
359
|
loadingP: Promise<void> | undefined;
|
|
494
360
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
495
|
-
|
|
361
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
496
362
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
497
363
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
498
364
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -530,7 +396,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
530
396
|
afterAttach(): void;
|
|
531
397
|
} & {
|
|
532
398
|
readonly initialized: boolean;
|
|
533
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
534
399
|
readonly allRefNames: string[] | undefined;
|
|
535
400
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
536
401
|
readonly rpcManager: RpcManager;
|
|
@@ -548,6 +413,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
548
413
|
getCanonicalRefName2(refName: string): string;
|
|
549
414
|
isValidRefName(refName: string): boolean;
|
|
550
415
|
} & {
|
|
416
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
551
417
|
getAliasesForRefName(refName: string): string[];
|
|
552
418
|
getRefNameMapForAdapter(adapterConf: {
|
|
553
419
|
[x: string]: unknown;
|
|
@@ -556,32 +422,24 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
556
422
|
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
|
|
557
423
|
/**
|
|
558
424
|
* #getter
|
|
559
|
-
*
|
|
560
|
-
*
|
|
561
|
-
* exists, its model is just not built yet", so the two must agree
|
|
425
|
+
* the canonical name of every configured assembly, read the way the
|
|
426
|
+
* afterAttach autorun names the models it builds
|
|
562
427
|
*/
|
|
563
428
|
readonly assemblyNamesList: string[];
|
|
564
429
|
/**
|
|
565
430
|
* #getter
|
|
566
431
|
* Every name the *configs* answer to — each assembly's `name` and its
|
|
567
|
-
* `aliases
|
|
568
|
-
*
|
|
569
|
-
*
|
|
570
|
-
* name found in that list as "a config exists, its model is just not built
|
|
571
|
-
* yet", which has to stay the canonical name the autorun will create the
|
|
572
|
-
* assembly under. A Set because `has` is called per name by per-render
|
|
573
|
-
* scans over every track in the session.
|
|
432
|
+
* `aliases` — mapped to its config, which exists before the assembly's
|
|
433
|
+
* model does. What {@link has} knows before the models exist, and
|
|
434
|
+
* resolved by the same precedence as `assemblyNameMap`.
|
|
574
435
|
*/
|
|
575
|
-
readonly
|
|
436
|
+
readonly confByName: Map<string, AnyConfigurationModel>;
|
|
576
437
|
/**
|
|
577
438
|
* #getter
|
|
578
439
|
* combined jbrowse.assemblies, session.sessionAssemblies, and
|
|
579
440
|
* session.temporaryAssemblies
|
|
580
441
|
*/
|
|
581
|
-
readonly assemblyList:
|
|
582
|
-
setSubschema(slotName: string, data: Record<string, unknown>): any;
|
|
583
|
-
setSlot(slotName: string, value: unknown): void;
|
|
584
|
-
} & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("../configuration/types.ts").AnyConfigurationSchemaType>)[];
|
|
442
|
+
readonly assemblyList: AnyConfigurationModel[];
|
|
585
443
|
readonly rpcManager: RpcManager;
|
|
586
444
|
} & {
|
|
587
445
|
/**
|
|
@@ -619,7 +477,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
619
477
|
error: unknown;
|
|
620
478
|
loadingP: Promise<void> | undefined;
|
|
621
479
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
622
|
-
|
|
480
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
623
481
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
624
482
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
625
483
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -657,7 +515,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
657
515
|
afterAttach(): void;
|
|
658
516
|
} & {
|
|
659
517
|
readonly initialized: boolean;
|
|
660
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
661
518
|
readonly allRefNames: string[] | undefined;
|
|
662
519
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
663
520
|
readonly rpcManager: RpcManager;
|
|
@@ -675,6 +532,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
675
532
|
getCanonicalRefName2(refName: string): string;
|
|
676
533
|
isValidRefName(refName: string): boolean;
|
|
677
534
|
} & {
|
|
535
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
678
536
|
getAliasesForRefName(refName: string): string[];
|
|
679
537
|
getRefNameMapForAdapter(adapterConf: {
|
|
680
538
|
[x: string]: unknown;
|
|
@@ -686,7 +544,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
686
544
|
error: unknown;
|
|
687
545
|
loadingP: Promise<void> | undefined;
|
|
688
546
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
689
|
-
|
|
547
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
690
548
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
691
549
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
692
550
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -724,7 +582,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
724
582
|
afterAttach(): void;
|
|
725
583
|
} & {
|
|
726
584
|
readonly initialized: boolean;
|
|
727
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
728
585
|
readonly allRefNames: string[] | undefined;
|
|
729
586
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
730
587
|
readonly rpcManager: RpcManager;
|
|
@@ -742,6 +599,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
742
599
|
getCanonicalRefName2(refName: string): string;
|
|
743
600
|
isValidRefName(refName: string): boolean;
|
|
744
601
|
} & {
|
|
602
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
745
603
|
getAliasesForRefName(refName: string): string[];
|
|
746
604
|
getRefNameMapForAdapter(adapterConf: {
|
|
747
605
|
[x: string]: unknown;
|
|
@@ -753,18 +611,15 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
753
611
|
* {@link waitForAssembly}, but a name that cannot be resolved is an error
|
|
754
612
|
* rather than an `undefined` for the caller to interpret.
|
|
755
613
|
*
|
|
756
|
-
*
|
|
757
|
-
*
|
|
758
|
-
*
|
|
759
|
-
*
|
|
760
|
-
* puts the name in front of the user, who is the only one who can add the
|
|
614
|
+
* Use it where a missing assembly produces a wrong result with no error.
|
|
615
|
+
* A refName map is one case: an empty map means an adapter gets queried
|
|
616
|
+
* with un-renamed refNames, finds nothing, and the track draws blank.
|
|
617
|
+
* Throwing here shows the assembly name to the user, who can add the
|
|
761
618
|
* assembly or fix the track.
|
|
762
619
|
*
|
|
763
|
-
*
|
|
764
|
-
*
|
|
765
|
-
*
|
|
766
|
-
* only once every handler and connection that could supply the name has
|
|
767
|
-
* finished, so there is a real answer to report.
|
|
620
|
+
* `waitForAssembly` returns only once every handler and connection that
|
|
621
|
+
* could supply the name has finished, so an unresolved name here is
|
|
622
|
+
* final and throwing does not race a late load.
|
|
768
623
|
*/
|
|
769
624
|
requireAssembly(assemblyName: string): Promise<import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<{
|
|
770
625
|
configuration: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IReferenceType<IAnyType>>;
|
|
@@ -772,7 +627,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
772
627
|
error: unknown;
|
|
773
628
|
loadingP: Promise<void> | undefined;
|
|
774
629
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
775
|
-
|
|
630
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
776
631
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
777
632
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
778
633
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -810,7 +665,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
810
665
|
afterAttach(): void;
|
|
811
666
|
} & {
|
|
812
667
|
readonly initialized: boolean;
|
|
813
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
814
668
|
readonly allRefNames: string[] | undefined;
|
|
815
669
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
816
670
|
readonly rpcManager: RpcManager;
|
|
@@ -828,6 +682,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
828
682
|
getCanonicalRefName2(refName: string): string;
|
|
829
683
|
isValidRefName(refName: string): boolean;
|
|
830
684
|
} & {
|
|
685
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
831
686
|
getAliasesForRefName(refName: string): string[];
|
|
832
687
|
getRefNameMapForAdapter(adapterConf: {
|
|
833
688
|
[x: string]: unknown;
|
|
@@ -839,7 +694,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
839
694
|
error: unknown;
|
|
840
695
|
loadingP: Promise<void> | undefined;
|
|
841
696
|
adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("./refNameMaps.ts").RefNameAliases>>;
|
|
842
|
-
|
|
697
|
+
regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
843
698
|
refNameAliases: import("./refNameMaps.ts").RefNameAliases | undefined;
|
|
844
699
|
canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
|
|
845
700
|
cytobands: import("../util/simpleFeature.ts").Feature[] | undefined;
|
|
@@ -877,7 +732,6 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
877
732
|
afterAttach(): void;
|
|
878
733
|
} & {
|
|
879
734
|
readonly initialized: boolean;
|
|
880
|
-
readonly regions: import("./assembly.ts").BasicRegion[] | undefined;
|
|
881
735
|
readonly allRefNames: string[] | undefined;
|
|
882
736
|
readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
|
|
883
737
|
readonly rpcManager: RpcManager;
|
|
@@ -895,6 +749,7 @@ declare function assemblyManagerFactory(conf: IAnyType, pm: PluginManager): impo
|
|
|
895
749
|
getCanonicalRefName2(refName: string): string;
|
|
896
750
|
isValidRefName(refName: string): boolean;
|
|
897
751
|
} & {
|
|
752
|
+
getRefNamePosition(refName: string): number | undefined;
|
|
898
753
|
getAliasesForRefName(refName: string): string[];
|
|
899
754
|
getRefNameMapForAdapter(adapterConf: {
|
|
900
755
|
[x: string]: unknown;
|
|
@@ -2,6 +2,7 @@ import { addDisposer, getParent, types } from '@jbrowse/mobx-state-tree';
|
|
|
2
2
|
import { autorun, untracked, when } from 'mobx';
|
|
3
3
|
import { readConfObject } from '../configuration/index.js';
|
|
4
4
|
import assemblyFactory from './assembly.js';
|
|
5
|
+
import { indexAssemblyNames } from './indexAssemblyNames.js';
|
|
5
6
|
// How long waitForAssembly gives a handler that did NOT return a promise.
|
|
6
7
|
// Nothing about such a handler is observable — it was told a name and said
|
|
7
8
|
// nothing back — so there is no event to wait on and the only choices are a
|
|
@@ -109,13 +110,10 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
109
110
|
* #getter
|
|
110
111
|
*/
|
|
111
112
|
get assemblyNameMap() {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
return obj;
|
|
113
|
+
return Object.fromEntries(indexAssemblyNames(self.assemblies, a => ({
|
|
114
|
+
name: a.name,
|
|
115
|
+
aliases: a.aliases,
|
|
116
|
+
})));
|
|
119
117
|
},
|
|
120
118
|
}))
|
|
121
119
|
.views(self => ({
|
|
@@ -186,7 +184,7 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
186
184
|
// Both lookups are load-bearing, and the config one has to cover aliases
|
|
187
185
|
// as well: assemblyNameMap is keyed by allAliases ([name, ...aliases]) but
|
|
188
186
|
// only exists once the afterAttach autorun has built the models, while
|
|
189
|
-
//
|
|
187
|
+
// confByName answers off the configs from the first render.
|
|
190
188
|
// Screening on the canonical names alone left `vvx` unknown for the whole
|
|
191
189
|
// startup window even though the config for `volvox` names it — a wrong
|
|
192
190
|
// "no", which means the caller re-adds an assembly the session already
|
|
@@ -201,8 +199,7 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
201
199
|
// read is never undefined to the compiler, so `!!` on it infers the
|
|
202
200
|
// literal `true` and `!has(name)` would be dead code at every call site.
|
|
203
201
|
has(asmName) {
|
|
204
|
-
return
|
|
205
|
-
this.configuredAssemblyNames.has(asmName));
|
|
202
|
+
return !!self.assemblyNameMap[asmName] || this.confByName.has(asmName);
|
|
206
203
|
},
|
|
207
204
|
/**
|
|
208
205
|
* #method
|
|
@@ -219,9 +216,8 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
219
216
|
},
|
|
220
217
|
/**
|
|
221
218
|
* #getter
|
|
222
|
-
*
|
|
223
|
-
*
|
|
224
|
-
* exists, its model is just not built yet", so the two must agree
|
|
219
|
+
* the canonical name of every configured assembly, read the way the
|
|
220
|
+
* afterAttach autorun names the models it builds
|
|
225
221
|
*/
|
|
226
222
|
get assemblyNamesList() {
|
|
227
223
|
return this.assemblyList.map(asm => readConfObject(asm, 'name'));
|
|
@@ -229,19 +225,15 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
229
225
|
/**
|
|
230
226
|
* #getter
|
|
231
227
|
* Every name the *configs* answer to — each assembly's `name` and its
|
|
232
|
-
* `aliases
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
* name found in that list as "a config exists, its model is just not built
|
|
236
|
-
* yet", which has to stay the canonical name the autorun will create the
|
|
237
|
-
* assembly under. A Set because `has` is called per name by per-render
|
|
238
|
-
* scans over every track in the session.
|
|
228
|
+
* `aliases` — mapped to its config, which exists before the assembly's
|
|
229
|
+
* model does. What {@link has} knows before the models exist, and
|
|
230
|
+
* resolved by the same precedence as `assemblyNameMap`.
|
|
239
231
|
*/
|
|
240
|
-
get
|
|
241
|
-
return
|
|
242
|
-
readConfObject(asm, 'name'),
|
|
243
|
-
|
|
244
|
-
|
|
232
|
+
get confByName() {
|
|
233
|
+
return indexAssemblyNames(this.assemblyList, asm => ({
|
|
234
|
+
name: readConfObject(asm, 'name'),
|
|
235
|
+
aliases: readConfObject(asm, 'aliases') ?? [],
|
|
236
|
+
}));
|
|
245
237
|
},
|
|
246
238
|
/**
|
|
247
239
|
* #getter
|
|
@@ -298,9 +290,10 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
298
290
|
// Nothing left that could still produce it. Both clauses are things
|
|
299
291
|
// that end on their own, so this needs no bound of its own.
|
|
300
292
|
const settled = () =>
|
|
301
|
-
// a config
|
|
302
|
-
// afterAttach autorun is about to build
|
|
303
|
-
|
|
293
|
+
// a config answering to the name, as its name or an alias, is
|
|
294
|
+
// already in the tree and the afterAttach autorun is about to build
|
|
295
|
+
// its model
|
|
296
|
+
!self.confByName.has(assemblyName) &&
|
|
304
297
|
// a connection mid-fetch could be carrying it. Every loading
|
|
305
298
|
// connection counts, not just one naming this assembly: a connection
|
|
306
299
|
// config need not declare what it will turn out to provide, and
|
|
@@ -343,18 +336,15 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
343
336
|
* {@link waitForAssembly}, but a name that cannot be resolved is an error
|
|
344
337
|
* rather than an `undefined` for the caller to interpret.
|
|
345
338
|
*
|
|
346
|
-
*
|
|
347
|
-
*
|
|
348
|
-
*
|
|
349
|
-
*
|
|
350
|
-
* puts the name in front of the user, who is the only one who can add the
|
|
339
|
+
* Use it where a missing assembly produces a wrong result with no error.
|
|
340
|
+
* A refName map is one case: an empty map means an adapter gets queried
|
|
341
|
+
* with un-renamed refNames, finds nothing, and the track draws blank.
|
|
342
|
+
* Throwing here shows the assembly name to the user, who can add the
|
|
351
343
|
* assembly or fix the track.
|
|
352
344
|
*
|
|
353
|
-
*
|
|
354
|
-
*
|
|
355
|
-
*
|
|
356
|
-
* only once every handler and connection that could supply the name has
|
|
357
|
-
* finished, so there is a real answer to report.
|
|
345
|
+
* `waitForAssembly` returns only once every handler and connection that
|
|
346
|
+
* could supply the name has finished, so an unresolved name here is
|
|
347
|
+
* final and throwing does not race a late load.
|
|
358
348
|
*/
|
|
359
349
|
async requireAssembly(assemblyName) {
|
|
360
350
|
const assembly = await this.waitForAssembly(assemblyName);
|
|
@@ -389,23 +379,29 @@ function assemblyManagerFactory(conf, pm) {
|
|
|
389
379
|
}))
|
|
390
380
|
.actions(self => ({
|
|
391
381
|
afterAttach() {
|
|
382
|
+
const reconcile = (assemblyConfs) => {
|
|
383
|
+
// filter() returns a new plain array, so removing from
|
|
384
|
+
// self.assemblies in the loop below does not skip elements
|
|
385
|
+
// (removeAssembly splices the live observable array)
|
|
386
|
+
const orphaned = self.assemblies.filter(a => !a.configuration);
|
|
387
|
+
for (const asm of orphaned) {
|
|
388
|
+
this.removeAssembly(asm);
|
|
389
|
+
}
|
|
390
|
+
const built = new Set(self.assemblies.map(a => a.name));
|
|
391
|
+
for (const conf of assemblyConfs) {
|
|
392
|
+
if (!built.has(readConfObject(conf, 'name'))) {
|
|
393
|
+
this.addAssembly(conf);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
};
|
|
397
|
+
// also here, because an enclosing action defers the autorun's first
|
|
398
|
+
// run, and a load waiting on the model would wait for that
|
|
399
|
+
reconcile(self.assemblyList);
|
|
392
400
|
addDisposer(self, autorun(() => {
|
|
393
401
|
const assemblyConfs = self.assemblyList;
|
|
394
402
|
// eslint-disable-next-line no-restricted-syntax -- self-write: removes from the assemblies it reads
|
|
395
403
|
untracked(() => {
|
|
396
|
-
|
|
397
|
-
// self.assemblies in the loop below does not skip elements
|
|
398
|
-
// (removeAssembly splices the live observable array)
|
|
399
|
-
const orphaned = self.assemblies.filter(a => !a.configuration);
|
|
400
|
-
for (const asm of orphaned) {
|
|
401
|
-
this.removeAssembly(asm);
|
|
402
|
-
}
|
|
403
|
-
for (const conf of assemblyConfs) {
|
|
404
|
-
const name = readConfObject(conf, 'name');
|
|
405
|
-
if (!self.assemblies.some(a => a.name === name)) {
|
|
406
|
-
this.addAssembly(conf);
|
|
407
|
-
}
|
|
408
|
-
}
|
|
404
|
+
reconcile(assemblyConfs);
|
|
409
405
|
});
|
|
410
406
|
}, { name: 'assemblyManagerAfterAttach' }));
|
|
411
407
|
},
|