UNPKG

jsx-view

Version:

Minimal JSX for HTML DOM tightly integrated with RxJS. TypeScript definitions, and attributes can be assigned to observables.

27 lines 929 B
import { flattenChildren, DOMSpecElement } from "./jsxSpec"; export function jsxDEV(elemName, props, key, isStaticChildren, source, // `this` self) { const dev = { key, isStaticChildren, source, self }; if (typeof elemName === "string") { // intrinsic elements like <div/> or <p/> if (!props) props = {}; const { children, ...givenProps } = props; const fixChildren = flattenChildren(Array.isArray(children) ? children : [children]); return new DOMDevSpecElement([elemName, givenProps, ...fixChildren], dev); } // custom elements like <MyComponent/> return new DOMDevSpecElement([elemName, props], dev); } export class DOMDevSpecElement extends DOMSpecElement { spec; constructor(spec, dev) { super(spec); this.spec = spec; if (dev != null) { this._dev = dev; } } } //# sourceMappingURL=jsxDEV.js.map