Skip to content

Commit

Permalink
fix(renderer): check full path for /favicon.ico placeholder (#2553)
Browse files Browse the repository at this point in the history
  • Loading branch information
pi0 committed Jun 21, 2024
1 parent f76d21b commit b86bb45
Show file tree
Hide file tree
Showing 7 changed files with 43 additions and 1 deletion.
1 change: 1 addition & 0 deletions examples/renderer/api/hello.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export default defineEventHandler(() => "Nitro is amazing!");
4 changes: 4 additions & 0 deletions examples/renderer/nitro.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export default defineNitroConfig({
compatibilityDate: "2024-06-21",
renderer: "~/renderer",
});
11 changes: 11 additions & 0 deletions examples/renderer/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"name": "example-renderer",
"private": true,
"scripts": {
"dev": "nitro dev",
"build": "nitro build"
},
"devDependencies": {
"nitropack": "latest"
}
}
15 changes: 15 additions & 0 deletions examples/renderer/renderer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import { defineRenderHandler } from "nitropack/runtime";

export default defineRenderHandler((_event) => {
return {
body: /* html */ `<!DOCTYPE html>
<html>
<head>
<title>Rendered Page</title>
</head>
<body>
<h1>Rendered by Nitro!</h1>
</body>
</html>`,
};
});
3 changes: 3 additions & 0 deletions examples/renderer/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "./.nitro/types/tsconfig.json"
}
6 changes: 6 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion src/runtime/internal/renderer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,13 @@ import {
} from "h3";
import type { RenderHandler } from "nitropack/types";
import { useNitroApp } from "./app";
import { useRuntimeConfig } from "./config";

export function defineRenderHandler(handler: RenderHandler) {
const runtimeConfig = useRuntimeConfig();
return eventHandler(async (event) => {
// TODO: Use serve-placeholder
if (event.path.endsWith("/favicon.ico")) {
if (event.path === `${runtimeConfig.app.baseURL}favicon.ico`) {
setResponseHeader(event, "Content-Type", "image/x-icon");
return send(
event,
Expand Down

0 comments on commit b86bb45

Please sign in to comment.