UNPKG

molstar

Version:

A comprehensive macromolecular library.

42 lines 1.77 kB
"use strict"; /** * Copyright (c) 2018-2020 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal <david.sehnal@gmail.com> * @author Alexander Rose <alexander.rose@weirdbyte.de> */ Object.defineProperty(exports, "__esModule", { value: true }); exports.createPluginAsync = exports.createPlugin = void 0; var tslib_1 = require("tslib"); var React = (0, tslib_1.__importStar)(require("react")); var ReactDOM = (0, tslib_1.__importStar)(require("react-dom")); var plugin_1 = require("./plugin"); var context_1 = require("./context"); var spec_1 = require("./spec"); function createPlugin(target, spec) { var ctx = new context_1.PluginUIContext(spec || (0, spec_1.DefaultPluginUISpec)()); ctx.init(); ReactDOM.render(React.createElement(plugin_1.Plugin, { plugin: ctx }), target); return ctx; } exports.createPlugin = createPlugin; /** Returns the instance of the plugin after all behaviors have been initialized */ function createPluginAsync(target, spec) { return (0, tslib_1.__awaiter)(this, void 0, void 0, function () { var ctx, init; return (0, tslib_1.__generator)(this, function (_a) { switch (_a.label) { case 0: ctx = new context_1.PluginUIContext(spec || (0, spec_1.DefaultPluginUISpec)()); init = ctx.init(); ReactDOM.render(React.createElement(plugin_1.Plugin, { plugin: ctx }), target); return [4 /*yield*/, init]; case 1: _a.sent(); return [2 /*return*/, ctx]; } }); }); } exports.createPluginAsync = createPluginAsync; //# sourceMappingURL=index.js.map