fix lint and more features!
This commit is contained in:
@@ -87,12 +87,17 @@ app.get('/', (req: Request, res: Response) => {
|
||||
// Search videos
|
||||
app.post('/api/search', async (req: Request, res: Response) => {
|
||||
try {
|
||||
const { query, userId }: { query?: string; userId?: string } = req.body;
|
||||
const { query, userId, page }: { query?: string; userId?: string; page?: number } = req.body;
|
||||
|
||||
if (!query || query.trim().length === 0) {
|
||||
return res.status(400).json({ error: 'Query is required' });
|
||||
}
|
||||
|
||||
// Calculate offset based on page number (10 results per page)
|
||||
const currentPage = page || 1;
|
||||
const resultsPerPage = 10;
|
||||
const offset = (currentPage - 1) * resultsPerPage;
|
||||
|
||||
// Save search history
|
||||
if (userId && userId !== 'demo') {
|
||||
try {
|
||||
@@ -105,8 +110,12 @@ app.post('/api/search', async (req: Request, res: Response) => {
|
||||
}
|
||||
}
|
||||
|
||||
const videos = await soundcloud.searchTracks(query.trim());
|
||||
res.json({ videos });
|
||||
const videos = await soundcloud.searchTracks(query.trim(), resultsPerPage, offset);
|
||||
|
||||
// Return hasMore flag based on results
|
||||
const hasMore = videos.length === resultsPerPage;
|
||||
|
||||
res.json({ videos, hasMore });
|
||||
|
||||
} catch (error) {
|
||||
logger.error('Search error:', error);
|
||||
|
||||
Reference in New Issue
Block a user