(env: Env, node: VNode, init?: ResponseInit)
| 309 | } |
| 310 | |
| 311 | async function renderPage(env: Env, node: VNode, init?: ResponseInit): Promise<Response> { |
| 312 | let assetsManifest = await loadAssetsManifest(env); |
| 313 | |
| 314 | let html = render( |
| 315 | <AssetsContext.Provider value={assetsManifest}> |
| 316 | <Document origin={env.ORIGIN}>{node}</Document> |
| 317 | </AssetsContext.Provider> |
| 318 | ); |
| 319 | |
| 320 | return new Response("<!DOCTYPE html>" + html, { |
| 321 | ...init, |
| 322 | headers: { |
| 323 | "Content-Type": "text/html", |
| 324 | ...init?.headers, |
| 325 | }, |
| 326 | }); |
| 327 | } |
| 328 | |
| 329 | function filesPathname(packageName: string, version?: string, filename?: string): string { |
| 330 | // The /files prefix is not needed for the root of the file browser. |
no test coverage detected