normalize method
Normalizes a raw providerResponse map from the given provider into
a NormalizedMessage.
Supported providers: 'anthropic', 'openai', 'gemini'. Unknown providers fall back to plain text extraction.
Implementation
@override
NormalizedMessage normalize(
Map<String, dynamic> providerResponse,
String provider,
) {
switch (provider.toLowerCase()) {
case 'anthropic':
return _normalizeAnthropic(providerResponse);
case 'openai':
return _normalizeOpenAI(providerResponse);
case 'gemini':
return _normalizeGemini(providerResponse);
default:
return _normalizeFallback(providerResponse, provider);
}
}