UNPKG

@nwebui/react-niagara-px

Version:
29 lines 987 B
import { createElement } from "react"; import { findBinding } from "./bindings"; import { findWidget } from "./widgets"; export default function render(widget, factory) { const ts = widget.type.toString(); let type; if (widget.is("bajaui:Widget")) { if (factory) { type = factory(widget) || findWidget(ts); } else { type = findWidget(ts); } } else if (widget.is("bajaui:Binding")) { type = findBinding(ts); } const children = Array.from(widget.childComponents((c) => (c.is("bajaui:Widget") && !c.is("bajaui:ScrollBar")) || c.is("bajaui:Binding"))).map((c) => render(c, factory)); const props = {}; if (widget.is("bajaui:Widget")) { props.nativeWidget = widget; } else if (widget.is("bajaui:Binding")) { props.nativeBinding = widget; } return createElement(type, props, ...children); } //# sourceMappingURL=render.js.map