resolveVariables static method
Implementation
static Future<Map<String, dynamic>> resolveVariables(
List<String> requiredVariables,
Future<Object?> Function(String name) variableResolver, {
Map<String, dynamic>? variables,
Map<String, dynamic>? resolvedVariables,
}) async {
resolvedVariables ??= {};
if (requiredVariables.isEmpty) return resolvedVariables;
variables ??= {};
for (var key in requiredVariables) {
var value = variables[key] ?? resolvedVariables[key];
value ??= await variableResolver(key);
variables[key] ??= value;
resolvedVariables[key] ??= value;
}
return resolvedVariables;
}