const express = require('express'); const router = express.Router(); const { ipcRequest } = require('../ipcBridge'); router.put('/profile', async (req, res) => { try { await ipcRequest(req, 'update-user-profile', req.body); res.json({ message: 'Profile updated successfully' }); } catch (error) { console.error('Failed to update profile via IPC:', error); res.status(500).json({ error: 'Failed to update profile' }); } }); router.get('/profile', async (req, res) => { try { const user = await ipcRequest(req, 'get-user-profile'); if (!user) return res.status(404).json({ error: 'User not found' }); res.json(user); } catch (error) { console.error('Failed to get profile via IPC:', error); res.status(500).json({ error: 'Failed to get profile' }); } }); router.post('/find-or-create', async (req, res) => { try { const user = await ipcRequest(req, 'find-or-create-user', req.body); res.status(200).json(user); } catch (error) { console.error('Failed to find or create user via IPC:', error); res.status(500).json({ error: 'Failed to find or create user' }); } }); router.post('/api-key', async (req, res) => { try { await ipcRequest(req, 'save-api-key', req.body.apiKey); res.json({ message: 'API key saved successfully' }); } catch (error) { console.error('Failed to save API key via IPC:', error); res.status(500).json({ error: 'Failed to save API key' }); } }); router.get('/api-key-status', async (req, res) => { try { const status = await ipcRequest(req, 'check-api-key-status'); res.json(status); } catch (error) { console.error('Failed to get API key status via IPC:', error); res.status(500).json({ error: 'Failed to get API key status' }); } }); router.delete('/profile', async (req, res) => { try { await ipcRequest(req, 'delete-account'); res.status(200).json({ message: 'User account and all data deleted successfully.' }); } catch (error) { console.error('Failed to delete user account via IPC:', error); res.status(500).json({ error: 'Failed to delete user account' }); } }); router.get('/batch', async (req, res) => { try { const result = await ipcRequest(req, 'get-batch-data', req.query.include); res.json(result); } catch(error) { console.error('Failed to get batch data via IPC:', error); res.status(500).json({ error: 'Failed to get batch data' }); } }); module.exports = router;