0
Fork 0
mirror of https://codeberg.org/SafeTwitch/safetwitch-backend.git synced 2025-01-18 18:32:29 -05:00
safetwitch-backend/routes/profileRoute.ts

66 lines
1.6 KiB
TypeScript
Raw Normal View History

2023-03-24 07:41:33 -04:00
import { Router } from 'express'
import { TwitchAPI } from '../util/scraping/extractor/index'
const profileRouter = Router()
const twitch = new TwitchAPI()
profileRouter.get('/users/:username', async (req, res, next) => {
const username = req.params.username
2023-04-08 18:15:41 -04:00
console.log(username)
2023-03-24 07:41:33 -04:00
let streamerData = await twitch.getStreamerInfo(username)
.catch(next)
if (streamerData)
res.send({
status: 'ok',
data: streamerData
})
2023-03-24 07:41:33 -04:00
})
profileRouter.get('/discover', async (req, res, next) => {
2023-03-29 10:03:16 -04:00
let cursor = req.query.cursor
let discoveryData;
if (cursor) {
cursor = cursor.toString()
discoveryData = await twitch.getDirectory(15, cursor)
} else {
discoveryData = await twitch.getDirectory(15)
}
res.send({
status: 'ok',
data: discoveryData
})
2023-03-24 07:41:33 -04:00
})
profileRouter.get('/discover/:game', async (req, res, next) => {
let discoveryData = await twitch.getDirectoryGame(req.params.game, 50)
2023-03-31 07:56:38 -04:00
.catch(next)
if(discoveryData)
res.send({
status: 'ok',
data: discoveryData
})
2023-03-31 07:56:38 -04:00
})
profileRouter.get('/badges', async (req, res, next) => {
let badges = await twitch.getTwitchBadges()
.catch(next)
if(req.query.streamerName) {
let broadcastBadges = await twitch.getStreamerBadges(req.query.streamerName.toString())
.catch(next)
if(broadcastBadges && badges)
badges = [...badges, ...broadcastBadges]
}
if(badges)
res.send({
status: 'ok',
data: badges
})
2023-03-24 07:41:33 -04:00
})
export default profileRouter