greek-manifests/routes/index.mjs

35 lines
1.1 KiB
JavaScript

import generateManifest from '../controllers/manifest.mjs';
import generateCanvas from '../controllers/canvas.mjs';
import generateSequence from '../controllers/sequence.mjs';
import exposeParams from '../controllers/params.mjs';
import express from 'express';
let router = express.Router();
/* GET manifest JSON */
router.get('/iiif/:manifestid/manifest', async function(req, res) {
const manifest = await generateManifest(req.params.manifestid)
res.set('Access-Control-Allow-Origin', '*');
res.json(manifest);
});
/* GET canvas JSON */
router.get('/iiif/:manifestid/canvas/:name', async function(req, res) {
const canvas = await generateCanvas(req.params.manifestid, req.params.name)
res.set('Access-Control-Allow-Origin', '*');
res.json(canvas);
});
/* GET sequence JSON */
router.get('/iiif/:manifestid/sequence/:name', async function(req, res) {
const sequence = await generateSequence(req.params.manifestid, req.params.name)
res.set('Access-Control-Allow-Origin', '*');
res.json(sequence);
});
/* GET possible params for manifest responses */
router.get('/params', async function(req, res) {
res.json(await exposeParams());
});
export default router;