feat: Gemini AI integration — conversations, messages, image gen
- Fixed YAML parse error (unquoted colon in description broke @scalar/json-magic) - Converted orval.config.ts → orval.config.cjs (fixes orval v8 TypeScript config loading) - Codegen now works: zod schemas + React Query hooks regenerated with Gemini types - Added Gemini tag, 4 path groups, 8 schemas to openapi.yaml - lib/integrations-gemini-ai wired: tsconfig refs, api-server package.json dep - Created routes/gemini.ts: CRUD conversations/messages + SSE chat stream + image gen - Mounted /gemini router in routes/index.ts
This commit is contained in:
21
lib/integrations-gemini-ai/src/client.ts
Normal file
21
lib/integrations-gemini-ai/src/client.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { GoogleGenAI } from "@google/genai";
|
||||
|
||||
if (!process.env.AI_INTEGRATIONS_GEMINI_BASE_URL) {
|
||||
throw new Error(
|
||||
"AI_INTEGRATIONS_GEMINI_BASE_URL must be set. Did you forget to provision the Gemini AI integration?",
|
||||
);
|
||||
}
|
||||
|
||||
if (!process.env.AI_INTEGRATIONS_GEMINI_API_KEY) {
|
||||
throw new Error(
|
||||
"AI_INTEGRATIONS_GEMINI_API_KEY must be set. Did you forget to provision the Gemini AI integration?",
|
||||
);
|
||||
}
|
||||
|
||||
export const ai = new GoogleGenAI({
|
||||
apiKey: process.env.AI_INTEGRATIONS_GEMINI_API_KEY,
|
||||
httpOptions: {
|
||||
apiVersion: "",
|
||||
baseUrl: process.env.AI_INTEGRATIONS_GEMINI_BASE_URL,
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user