greek-manifests/controllers/manifest.mjs

24 lines
759 B
JavaScript

import Manifest from '../src/Manifest.js';
import Sequence from '../src/Sequence.js';
import Canvas from '../src/Canvas.js';
import Image from '../src/Image.js';
/**
* Generate a manifest object to serve
* @param {string} manifestId
*/
export default function generateManifest(manifestId) {
const IIIF_API_VERSION = process.env.IIIF_API_VERSION;
const BASE_URL = process.env.BASE_URL;
const manifest = new Manifest(IIIF_API_VERSION, BASE_URL);
const sequence = new Sequence();
const canvas = new Canvas(IIIF_API_VERSION, BASE_URL);
const image = new Image(4000, 3000);
canvas.setThumbnail();
canvas.addImage(image);
sequence.addCanvas(canvas);
manifest.addSequence(sequence);
manifest.generateID(manifestId);
return manifest.toObject();
}