UNPKG

@rcsb/rcsb-saguaro-app

Version:
64 lines (63 loc) 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = tslib_1.__importDefault(require("react")); const RcsbFvBuilder_1 = require("../RcsbFvWeb/RcsbFvBuilder"); const DataContainer_1 = require("../RcsbUtils/Helpers/DataContainer"); const fvContainer = new DataContainer_1.DataContainer(); class UiComponent extends react_1.default.Component { render() { return ((0, jsx_runtime_1.jsx)("div", { onClick: () => { var _a; (_a = this.props.fvContainer.get()) === null || _a === void 0 ? void 0 : _a.getFv().setSelection({ elements: { begin: 10, end: 50 }, mode: "select" }); }, children: this.props.text })); } } (0, RcsbFvBuilder_1.buildSequenceIdentityAlignmentFv)("pfv", "1_30", undefined, { boardConfig: { selectionChangeCallback: (selection) => { console.log(selection); } }, page: { first: 200, after: 0 }, externalTrackBuilder: { filterAlignments: (data) => { console.log("filterAlignments!!!!!!!!"); return new Promise(resolve => resolve(data.alignments)); } }, trackConfigModifier: { alignment: (alignmentContext, targetAlignment) => { return new Promise(resolve => { resolve({ metadata: { targetId: targetAlignment.target_id } }); }); } }, beforeChangeCallback: (module) => { console.log("This happens before change"); }, onChangeCallback: () => { console.log("This happens after change"); }, externalUiComponents: { replace: [{ component: UiComponent, props: { text: "Bring Top", fvContainer, b: "" } }] }, }).then(pfv => { fvContainer.set(pfv); console.log(pfv, "rendered"); });