UNPKG

@jbrowse/plugin-linear-genome-view

Version:

JBrowse 2 linear genome view

39 lines (38 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.stateModelFactory = stateModelFactory; const configuration_1 = require("@jbrowse/core/configuration"); const util_1 = require("@jbrowse/core/util"); const tracks_1 = require("@jbrowse/core/util/tracks"); const mobx_state_tree_1 = require("mobx-state-tree"); const BaseLinearDisplay_1 = require("../BaseLinearDisplay"); function stateModelFactory(configSchema) { return mobx_state_tree_1.types .compose('LinearBareDisplay', BaseLinearDisplay_1.BaseLinearDisplay, mobx_state_tree_1.types.model({ type: mobx_state_tree_1.types.literal('LinearBareDisplay'), configuration: (0, configuration_1.ConfigurationReference)(configSchema), })) .views(self => ({ get rendererConfig() { const configBlob = (0, configuration_1.getConf)(self, ['renderer']) || {}; const config = configBlob; return self.rendererType.configSchema.create(config, (0, util_1.getEnv)(self)); }, get rendererTypeName() { return (0, configuration_1.getConf)(self, ['renderer', 'type']); }, })) .views(self => { const { renderProps: superRenderProps } = self; return { renderProps() { return { ...superRenderProps(), ...(0, tracks_1.getParentRenderProps)(self), rpcDriverName: self.rpcDriverName, config: self.rendererConfig, }; }, }; }); }