traxxx/src/web/entities.js

30 lines
697 B
JavaScript
Executable File

'use strict';
const { fetchEntity, fetchEntities, searchEntities } = require('../entities');
async function fetchEntityApi(req, res, type) {
const entity = await fetchEntity(req.params.entityId, type || req.query.type);
if (entity) {
res.send({ entity });
return;
}
res.status(404).send({ entity: null });
}
async function fetchEntitiesApi(req, res, type) {
const query = req.query.query || req.query.q;
const entities = query
? await searchEntities(query, type || req.query.type, req.query.limit)
: await fetchEntities(type || req.query.type, req.query.limit);
res.send({ entities });
}
module.exports = {
fetchEntity: fetchEntityApi,
fetchEntities: fetchEntitiesApi,
};