UNPKG

@jbrowse/core

Version:

JBrowse 2 core libraries used by plugins

25 lines (24 loc) 1.03 kB
import { lazy } from 'react'; import { configSchema, stateModelFactory } from "./BaseFeatureWidget/index.js"; import Plugin from "./Plugin.js"; import CytobandAdapterF from "./data_adapters/CytobandAdapter/index.js"; import WidgetType from "./pluggableElementTypes/WidgetType.js"; import * as coreRpcMethods from "./rpc/coreRpcMethods.js"; export default class CorePlugin extends Plugin { name = 'CorePlugin'; install(pluginManager) { for (const RpcMethod of Object.values(coreRpcMethods)) { pluginManager.addRpcMethod(() => new RpcMethod(pluginManager)); } CytobandAdapterF(pluginManager); pluginManager.addWidgetType(() => { return new WidgetType({ name: 'BaseFeatureWidget', heading: 'Feature details', configSchema, stateModel: stateModelFactory(pluginManager), ReactComponent: lazy(() => import("./BaseFeatureWidget/BaseFeatureDetail/index.js")), }); }); } }