resolveAttributeDefaults static method
Returns attrVal, or its default when null (see
setResolvedAttribute): 'true' or null (off) for a boolean
attribute, as booleanDefault; valueDefault for any other one. A
null result is "no attribute". It only returns the value: nothing is
set.
resolveAttributeDefaults('checked', null,
booleanDefault: true, valueDefault: null); // 'true'
resolveAttributeDefaults('checked', null,
booleanDefault: false, valueDefault: null); // null
resolveAttributeDefaults('title', null,
booleanDefault: false, valueDefault: '-'); // '-'
resolveAttributeDefaults('title', 'x',
booleanDefault: false, valueDefault: '-'); // 'x'
Implementation
static String? resolveAttributeDefaults(
String attrName,
String? attrVal, {
required bool booleanDefault,
required String? valueDefault,
}) {
if (attrVal != null) return attrVal;
if (DOMAttribute.isBooleanAttribute(attrName)) {
return booleanDefault ? 'true' : null;
}
return valueDefault;
}