import type { RequestListener } from 'http' export function createServer () { const listener = createDynamicFunction(createLoadingHandler('Loading...', 1)) async function listen (opts) { const { listen } = await import('listhen') return listen(listener.call, opts) } return { setApp: (app: RequestListener) => listener.set(app), listen } } export function createLoadingHandler (message: string, retryAfter = 60): RequestListener { return (_req, res) => { res.setHeader('Content-Type', 'text/html; charset=UTF-8') res.statusCode = 503 /* Service Unavailable */ res.setHeader('Retry-After', retryAfter) res.end(`
${message}`) } } function createDynamicFunction