SpectraConfig.fromMap constructor
Creates a SpectraConfig from a map (used for secure storage).
Implementation
factory SpectraConfig.fromMap(Map<String, String> map) {
// Helper to normalize provider names to lowercase (for v0.1.4 migration)
String? normalizeProvider(String? provider) =>
provider?.toLowerCase().trim();
return SpectraConfig(
geminiKey: map['gemini_key'],
openaiKey: map['openai_key'],
claudeKey: map['claude_key'],
grokKey: map['grok_key'],
deepseekKey: map['deepseek_key'],
geminiModel: map['gemini_model'],
openaiModel: map['openai_model'],
claudeModel: map['claude_model'],
grokModel: map['grok_model'],
deepseekModel: map['deepseek_model'],
preferredProvider: normalizeProvider(map['preferred_provider']),
planningProvider: normalizeProvider(map['planning_provider']),
codingProvider: normalizeProvider(map['coding_provider']),
executionMode: map['execution_mode'],
);
}