UNPKG

@jbrowse/plugin-config

Version:

JBrowse 2 config utilities

27 lines (26 loc) 1.11 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 mobx_react_1 = require("mobx-react"); const ConfigurationTextField_1 = __importDefault(require("./ConfigurationTextField")); const NumberEditor = (0, mobx_react_1.observer)(function ({ slot, }) { const [val, setVal] = (0, react_1.useState)(slot.value); (0, react_1.useEffect)(() => { var _a; const num = Number.parseFloat(val); if (Number.isNaN(num)) { (_a = slot.reset) === null || _a === void 0 ? void 0 : _a.call(slot); } else { slot.set(num); } }, [slot, val]); return ((0, jsx_runtime_1.jsx)(ConfigurationTextField_1.default, { label: slot.name, helperText: slot.description, value: val, type: "number", onChange: evt => { setVal(evt.target.value); } })); }); exports.default = NumberEditor;