streamby-core
Version:
StreamBy middleware framework for media storage management
28 lines (27 loc) • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.databaseRouter = databaseRouter;
const express_1 = require("express");
const connectionManager_1 = require("../../adapters/database/connectionManager");
function databaseRouter(config) {
const router = (0, express_1.Router)();
router.get('/databases', async (req, res) => {
try {
const auth = await config.authProvider(req);
if (!auth ||
!auth.userId ||
!auth.role) {
return res.status(401).json({ message: 'Unauthorized' });
}
const connectedDbIds = (0, connectionManager_1.getConnectedIds)();
const databases = (config.databases || [])
.filter(db => connectedDbIds.includes(db.id))
.map(db => ({ name: db.id, value: db.type }));
res.status(200).json({ databases, message: 'Databases retrieved successfully' });
}
catch (err) {
res.status(500).json({ message: err.message });
}
});
return router;
}