renderRunResult function
Adds the output lines and result of a commands.run result to block.
Implementation
void renderRunResult(LiveBlock block, Object? result) {
final Object? output = result is Map ? result['output'] : null;
if (output is List) {
for (final Object? line in output) {
if (line is! Map) continue;
final String message = '${line['message'] ?? ''}';
switch (line['level']) {
case 'success':
block.success(message);
case 'error':
block.failure(message);
case 'warning':
block.warning(message);
default:
block.plain(message);
}
}
}
final Object? value = result is Map ? result['result'] : null;
if (value != null) block.json(value);
if (block.isEmpty) block.success('Done');
}