in src/gemini_95/index.ts [1625:1654]
async function initializeGeminiIfNeeded(context: string): Promise<boolean> {
if (geminiInstance) return true; // Already initialized
try {
console.log(`Attempting Gemini initialization within ${context}...`);
const module = await import('@google/genai');
// @ts-ignore - Module is available at runtime through import map
const GoogleAIClass = module.GoogleGenAI;
if (typeof GoogleAIClass !== 'function') {
console.error("Module content:", module);
throw new Error("GoogleGenAI constructor not found in module.");
}
// @ts-ignore - Vite replaces this during build
const apiKey = process.env.API_KEY || "";
if (!apiKey) {
console.error(`API Key from process.env.API_KEY is empty/undefined in ${context}.`);
alert("CRITICAL ERROR: Gemini API Key environment variable missing/empty.");
throw new Error("API Key is missing from environment variables (process.env.API_KEY).");
}
geminiInstance = new GoogleAIClass({apiKey: apiKey});
console.log(`Gemini initialized successfully within ${context}.`);
return true;
} catch (error) {
console.error(`Failed Gemini initialization in ${context}:`, error);
return false;
}
}