UNPKG

@mochabug/adaptkit

Version:

A cmd to create, emulate and publish Mochabug Adapt plugins

42 lines (40 loc) 1.2 kB
import { ConnectError, mapConnectErrorToHttpStatus } from '@mochabug/adapt-sdk/api'; import { ExternalConfiguratorRouter, InternalConfiguratorRouter } from '@mochabug/adapt-sdk/router'; export default { external: new ExternalConfiguratorRouter() .useRequestLogging() .useBearerAuthorization(['/api']) .useErrorHandling(async (e) => { console.error(e); if (e instanceof ConnectError) { return new Response(null, { status: mapConnectErrorToHttpStatus(e) }); } return new Response(null, { status: 500, statusText: 'Internal server error' }); }) .add('GET', '/api/config', async (_req, api) => { const { metadata } = await api.getConfig('metadata'); return new Response(JSON.stringify(metadata), { headers: { 'Content-Type': 'application/json' } }); }) .add('GET', '{/*any}', async (_, api) => { const res = await api.readFile( 'browser/___VERTEX_NAME___/configurator.html' ); return new Response(res.content, { headers: { 'Content-Type': 'text/html; charset=utf-8' } }); }), internal: new InternalConfiguratorRouter() };