File size: 1,133 Bytes
bb57163
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import geminiService from '../services/gemini.service.js';

class GeminiController {
  async generate(req, res) {
    try {
      const { prompt } = req.body;
      
      if (!prompt) {
        return res.status(400).json({ error: 'Prompt is required' });
      }

      const data = await geminiService.generateContent(prompt);
      res.json(data);
    } catch (error) {
      console.error('Gemini Error:', error.message);
      res.status(500).json({ 
        error: 'Failed to generate content',
        details: error.message 
      });
    }
  }

  async summarize(req, res) {
    try {
      const { content, title } = req.body;
      
      if (!content) {
        return res.status(400).json({ error: 'Content is required' });
      }

      const data = await geminiService.summarizeNews(content, title);
      res.json(data);
    } catch (error) {
      console.error('Gemini Summarize Error:', error.message);
      res.status(500).json({ 
        error: 'Failed to summarize content',
        details: error.message 
      });
    }
  }
}
export default new GeminiController();