@rcsb/rcsb-saguaro-app
Version:
RCSB 1D Saguaro Web App
20 lines • 631 B
JavaScript
import { createRoot } from "react-dom/client";
export class MountableComponent {
constructor(element) {
var _a;
if (MountableComponent.ROOT.has(element.id)) {
(_a = MountableComponent.ROOT.get(element.id)) === null || _a === void 0 ? void 0 : _a.unmount();
}
this.root = createRoot(element);
MountableComponent.ROOT.set(element.id, this.root);
}
render(node) {
this.unmount();
this.root.render(node);
}
unmount() {
this.root.render(undefined);
}
}
MountableComponent.ROOT = new Map();
//# sourceMappingURL=MountableComponent.js.map