code: function _n(type, name, children) {
    // Observable containing VNodes or strings
    // if either of the possibilities still contain Observables, they should be flattened elsewhere...
    return (0, _fauxVnode.default)(function (parent, ref) {
      /*var ns;
      if (type == 1) {
      	if (isQName(name)) {
      		ns = name;
      		name = name.name;
      	} else if (/:/.test(name)) {
      		// TODO where are the namespaces?
      	}
      }*/
      const parentIsCx = parent.__vnode_context; // convert to real VNode instance
  
      var node = parent.vnode(parent.create(type, name), parentIsCx ? null : parent, parentIsCx ? 0 : parent.depth + 1, 0, type); // create an inode from each child by calling the inode function on the faux VNode
  
      return children.pipe( // first test if node is observable, then if it's a VNode, else default to text
      (0, _operators.concatMap)(c => (0, _just.default)((0, _vnode.isVNode)(c) ? typeof c.node == "function" ? c.node(node) : c : _v((0, _util.isString)(c) ? 3 : 12, c).node(node))), (0, _operators.reduce)((node, c) => node.modify(c, ref), node));
    }, type, name, null, true);
  }
docs: import { isQName } from "./qname";