sniffFormat function

Format sniffFormat(
  1. String input
)

Guess format by sniffing the input content.

Falls back to Format.json if uncertain.

Implementation

Format sniffFormat(String input) {
  final trimmed = input.trimLeft();
  if (trimmed.startsWith('{') || trimmed.startsWith('[')) return Format.json;
  if (trimmed.startsWith('---') || trimmed.contains(': ')) return Format.yaml;
  if (trimmed.contains(' = ') && !trimmed.contains('{')) return Format.toml;
  if (trimmed.contains(' = ') || trimmed.contains(' {')) return Format.hcl;
  if (trimmed.startsWith('#') ||
      trimmed.startsWith('- ') ||
      trimmed.startsWith('* ')) {
    return Format.markdown;
  }
  return Format.json;
}