resolveValues method
Resolve the specified values in the context of the provided element.
For example, a value of '1em' is evaluated according to the computed
'font-size' of the element and a value 'calc(1px + 2px)' will be
resolved to '3px'.
If the propertyName was specified the values are resolved as if
they were property's declaration. If a value cannot be parsed according
to the provided property syntax, the value is parsed using combined
syntax as if null propertyName was provided. If the value cannot be
resolved even then, return the provided value without any changes.
values Substitution functions (var()/env()/attr()) and cascade-dependent
keywords (revert/revert-layer) do not work.
nodeId Id of the node in whose context the expression is evaluated
propertyName Only longhands and custom property names are accepted.
pseudoType Pseudo element type, only works for pseudo elements that generate
elements in the tree, such as ::before and ::after.
pseudoIdentifier Pseudo element custom ident.
Implementation
Future<List<String>> resolveValues(
List<String> values,
dom.NodeId nodeId, {
String? propertyName,
dom.PseudoType? pseudoType,
String? pseudoIdentifier,
}) async {
var result = await _client.send('CSS.resolveValues', {
'values': [...values],
'nodeId': nodeId,
if (propertyName != null) 'propertyName': propertyName,
if (pseudoType != null) 'pseudoType': pseudoType,
if (pseudoIdentifier != null) 'pseudoIdentifier': pseudoIdentifier,
});
return (result['results'] as List).map((e) => e as String).toList();
}