diff --git a/lib/www/server/api/middleware/event/list/index.js b/lib/www/server/api/middleware/event/list/index.js index b6d3531..2c8c721 100644 --- a/lib/www/server/api/middleware/event/list/index.js +++ b/lib/www/server/api/middleware/event/list/index.js @@ -1,12 +1,15 @@ const json = require('./json'); +const yaml = require('./yaml'); const geojson = require('./geojson'); const seis = require('./seis'); const csv = require('./csv'); + module.exports = async function (req, res, next) { try { const handlers = { "application/json": json, + "application/yaml": yaml, "application/geo+json": geojson, "application/vnd.seis+json": seis, "text/csv": csv diff --git a/lib/www/server/api/middleware/event/list/yaml.js b/lib/www/server/api/middleware/event/list/yaml.js new file mode 100644 index 0000000..2bb4cb1 --- /dev/null +++ b/lib/www/server/api/middleware/event/list/yaml.js @@ -0,0 +1,14 @@ +const YAML = require('yaml'); +const { event } = require('../../../../lib/db'); + +const yaml = async function (req, res, next) { + try { + const response = await event.list(req.params.project, req.query); + res.status(200).send(YAML.stringify(response)); + next(); + } catch (err) { + next(err); + } +}; + +module.exports = yaml;