@rcsb/rcsb-saguaro-app
Version:
RCSB 1D Saguaro Web App
31 lines (30 loc) • 1.66 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GroupPfvUI = void 0;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const RcsbTabs_1 = require("../RcsbFvWeb/RcsbFvComponents/RcsbTabs");
const client_1 = require("react-dom/client");
const classes = tslib_1.__importStar(require("../scss/bootstrap-fv-display.module.scss"));
const ItemComponent_1 = require("./Components/ItemComponent");
class GroupPfvUI {
static fvUI(element, uiComponent) {
(0, client_1.createRoot)(typeof element === "string" ? GroupPfvUI.htmlElementUI(element) : element).render((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: uiComponent.map((b, n) => ((0, jsx_runtime_1.jsx)(ItemComponent_1.ItemComponent, { role: "", children: (0, jsx_runtime_1.jsx)(b.component, Object.assign({}, b.props)) }, "uiItem_" + n))) }));
}
static addBootstrapElement(elementId) {
const div = GroupPfvUI.htmlElementUI(elementId);
div.className = classes.bootstrapFvComponentScope;
return div;
}
static htmlElementUI(elementId) {
var _a, _b;
let uiDiv = document.getElementById(elementId + RcsbTabs_1.RcsbTabs.UI_SUFFIX);
if (!uiDiv) {
uiDiv = document.createElement("div");
uiDiv.setAttribute("id", elementId + RcsbTabs_1.RcsbTabs.UI_SUFFIX);
(_b = (_a = document.getElementById(elementId)) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.insertBefore(uiDiv, document.getElementById(elementId));
}
return uiDiv;
}
}
exports.GroupPfvUI = GroupPfvUI;