UNPKG

@m-ld/gateway

Version:

m-ld gateway for services

40 lines 3.49 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { EndPoint, get } from './EndPoint.js'; import { plugins } from 'restify'; import { domainRelativeIri } from '../lib/index.js'; import { gatewayContext } from '../data/index.js'; export class ApiEndPoint extends EndPoint { constructor(gateway, server) { super(server, '/api/v1', ({ useFor }) => { useFor('put', plugins.bodyParser()); useFor('post', plugins.bodyParser()); useFor('patch', plugins.bodyParser()); }); this.gateway = gateway; } async getContext(req, res) { res.contentType = req.accepts('html') ? 'html' : 'application/ld+json'; res.send({ '@base': domainRelativeIri('/', this.gateway.domainName), ...gatewayContext // TODO: actual gateway context }); } async getPublicKey(_req, res) { res.contentType = 'text'; res.send(this.gateway.me.userKey.getCryptoPublicKey().export({ format: 'pem', type: 'spki' })); } } __decorate([ get('/context') ], ApiEndPoint.prototype, "getContext", null); __decorate([ get('/publicKey') ], ApiEndPoint.prototype, "getPublicKey", null); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpRW5kUG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaHR0cC9BcGlFbmRQb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUEyQyxNQUFNLFNBQVMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsTUFBTSxPQUFPLFdBQVksU0FBUSxRQUFvQjtJQUNuRCxZQUFxQixPQUFnQixFQUFFLE1BQWtCO1FBQ3ZELEtBQUssQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7WUFDcEMsTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUNyQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBTGdCLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFNckMsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFZLEVBQUUsR0FBYTtRQUMxQyxHQUFHLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUM7UUFDdkUsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNQLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7WUFDeEQsR0FBRyxjQUFjLENBQUMsK0JBQStCO1NBQ2xELENBQUMsQ0FBQztJQUNMLENBQUM7SUFHSyxBQUFOLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBYSxFQUFFLEdBQWE7UUFDN0MsR0FBRyxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7UUFDekIsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFRLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDNUQsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTTtTQUM1QixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7Q0FDRjtBQWZPO0lBREwsR0FBRyxDQUFDLFVBQVUsQ0FBQzs2Q0FPZjtBQUdLO0lBREwsR0FBRyxDQUFDLFlBQVksQ0FBQzsrQ0FNakIifQ==