buildHTML method
String
buildHTML({
- DOMContext<
Object> ? domContext, - DSXResolution dsxResolution = DSXResolution.skipDSX,
Implementation
String buildHTML({
DOMContext? domContext,
DSXResolution dsxResolution = DSXResolution.skipDSX,
}) {
var valueHandler = this.valueHandler;
if (isBoolean) {
return valueHandler.hasAttributeValue ? name : '';
}
String? htmlValue;
if (dsxResolution.resolve && valueHandler is DOMAttributeValueTemplate) {
var templateBuilt = valueHandler.template.build(domContext,
asElement: false,
dsxResolution: dsxResolution,
intlMessageResolver: domContext?.intlMessageResolver);
if (templateBuilt is String && !possiblyWithHTML(templateBuilt)) {
htmlValue = templateBuilt;
} else {
var nodes = DOMNode.parseNodes(templateBuilt);
htmlValue = nodes.map((e) => e.text).join();
}
} else {
htmlValue = valueHandler.getAttributeValue(domContext);
}
if (htmlValue != null) {
var html = StringBuffer('$name=');
if (htmlValue.contains('"')) {
html.write("'");
html.write(htmlValue);
html.write("'");
} else {
html.write('"');
html.write(htmlValue);
html.write('"');
}
return html.toString();
} else {
return '';
}
}