buildOpenTagHTML method
String
buildOpenTagHTML({
- bool openCloseTag = false,
- bool resolveDSX = false,
- DOMContext<
Object> ? domContext,
Implementation
String buildOpenTagHTML(
{bool openCloseTag = false,
bool resolveDSX = false,
DOMContext? domContext}) {
var html = StringBuffer('<$tag');
final attributes = _attributes;
if (attributes != null && attributes.isNotEmpty) {
var attributeId = attributes['id'];
var attributeClass = attributes['class'];
var attributeStyle = attributes['style'];
DOMAttribute.appendTo(html, ' ', attributeId,
domContext: domContext, resolveDSX: resolveDSX);
DOMAttribute.appendTo(html, ' ', attributeClass,
domContext: domContext, resolveDSX: resolveDSX);
DOMAttribute.appendTo(html, ' ', attributeStyle,
domContext: domContext, resolveDSX: resolveDSX);
var attributesNormal = attributes.values
.where((v) => v.hasValue && !_isPriorityAttribute(v) && !v.isBoolean);
for (var attr in attributesNormal) {
DOMAttribute.appendTo(html, ' ', attr,
domContext: domContext, resolveDSX: resolveDSX);
}
var attributesBoolean = attributes.values
.where((v) => v.hasValue && !_isPriorityAttribute(v) && v.isBoolean);
for (var attr in attributesBoolean) {
DOMAttribute.appendTo(html, ' ', attr,
domContext: domContext, resolveDSX: resolveDSX);
}
}
if (_resolvedDSXEventAttributes != null) {
for (var entry in _resolvedDSXEventAttributes!.entries) {
var name = entry.key;
var value = entry.value.toString();
html.write(' ');
html.write(name);
html.write('="');
html.write(value);
html.write('"');
}
}
html.write(openCloseTag ? '/>' : '>');
return html.toString();
}