import Component, { TypedComponent } from "../../components/component.js"; import BasicWidget, { TypedBasicWidget } from "../basic_widget.js"; export default class Container> extends TypedBasicWidget { doRender() { this.$widget = $(`
`); this.renderChildren(); } renderChildren() { for (const widget of this.children) { if (!("render" in widget)) { throw "Non-renderable widget encountered."; } const typedWidget = widget as unknown as TypedBasicWidget; try { if ("render" in widget) { this.$widget.append(typedWidget.render()); } } catch (e: any) { typedWidget.logRenderingError(e); } } } }