UNPKG

@jbrowse/plugin-wiggle

Version:

JBrowse 2 wiggle adapters, tracks, etc.

30 lines (29 loc) 2.31 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = require("react"); const ui_1 = require("@jbrowse/core/ui"); const material_1 = require("@mui/material"); const mobx_react_1 = require("mobx-react"); const WiggleClusterDialogAuto_1 = __importDefault(require("./WiggleClusterDialogAuto")); const WiggleClusterDialogManual_1 = __importDefault(require("./WiggleClusterDialogManual")); function Header({ activeMode, setActiveMode, }) { return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(material_1.RadioGroup, { children: Object.entries({ auto: ((0, jsx_runtime_1.jsx)("div", { children: "Run in-app clustering (slower, particularly for large numbers of samples, uses JS implementation of hclust)" })), manual: ((0, jsx_runtime_1.jsx)("div", { children: "Download R script to run clustering (faster, uses R implementation of hclust)" })), }).map(([key, val]) => ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Radio, { checked: activeMode === key, onChange: () => { setActiveMode(key); } }), label: val }, key))) }) })); } const WiggleClusterDialog = (0, mobx_react_1.observer)(function ({ model, handleClose, }) { const [activeMode, setActiveMode] = (0, react_1.useState)('auto'); return ((0, jsx_runtime_1.jsx)(ui_1.Dialog, { open: true, title: "Cluster by score", maxWidth: "xl", onClose: (_, reason) => { if (reason !== 'backdropClick') { handleClose(); } }, children: activeMode === 'auto' ? ((0, jsx_runtime_1.jsx)(WiggleClusterDialogAuto_1.default, { model: model, handleClose: handleClose, children: (0, jsx_runtime_1.jsx)(Header, { activeMode: activeMode, setActiveMode: setActiveMode }) })) : ((0, jsx_runtime_1.jsx)(WiggleClusterDialogManual_1.default, { model: model, handleClose: handleClose, children: (0, jsx_runtime_1.jsx)(Header, { activeMode: activeMode, setActiveMode: setActiveMode }) })) })); }); exports.default = WiggleClusterDialog;