import 'dom_builder.dart'; import 'dom_node.dart'; abstract class BuilderNode extends DomNode { DomBuilderElement? build(DomBuilder dom); void destroy(DomBuilderElement el); } DomNode h(String tagName, [Map props = const {}, Iterable children = const []]) { return _H(tagName, props, children); } DomNode text(String value) => _Text(value); class _Text extends BuilderNode { final String text; _Text(this.text); @override DomBuilderElement? build(DomBuilder dom) { dom.text(text); // TODO: implement build return null; } @override void destroy(DomBuilderElement el) { // TODO: implement destroy } } class _H extends BuilderNode { final String tagName; final Map props; final Iterable children; _H(this.tagName, this.props, this.children); @override DomBuilderElement? build(DomBuilder dom) { // TODO: implement build return null; } @override void destroy(DomBuilderElement el) { // TODO: implement destroy } }