1import { RenderError } from '../runtime/errors'2import type { RendererAdapter } from '../runtime/types'3import { renderUmlet } from '../languages/umlet'4import { edgeResult } from './types'56const VERSION = 'diagramzip-umlet-svg@1'78export const umletAdapter: RendererAdapter = {9 id: 'umlet',10 runtime: 'edge-js',11 version: VERSION,12 render(request, signal) {13 if (signal.aborted) throw signal.reason14 try {15 return Promise.resolve(edgeResult('umlet', VERSION, renderUmlet(request.source)))16 } catch (error) {17 if (error instanceof RenderError) throw error18 const message = error instanceof Error ? error.message : String(error)19 throw new RenderError(422, 'render_failed', message.slice(0, 500) || 'The UMLet renderer could not render this source.')20 }21 },22}