Skip to content

Commit 351a532

Browse files
committed
wrapFetchWithSentry
1 parent c5adf10 commit 351a532

File tree

1 file changed

+35
-32
lines changed

1 file changed

+35
-32
lines changed

src/server.ts

Lines changed: 35 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,44 @@
11
import './instrument.server.mjs'
22

3+
import { wrapFetchWithSentry } from '@sentry/tanstackstart-react'
34
import handler, { createServerEntry } from '@tanstack/react-start/server-entry'
45

5-
export default createServerEntry({
6-
async fetch(request) {
7-
const url = new URL(request.url)
6+
export default createServerEntry(
7+
wrapFetchWithSentry({
8+
async fetch(request) {
9+
const url = new URL(request.url)
810

9-
// Redirect to markdown version if AI/LLM requests text/markdown for doc pages
10-
const acceptHeader = request.headers.get('Accept') || ''
11-
if (
12-
acceptHeader.includes('text/markdown') &&
13-
url.pathname.includes('/docs/') &&
14-
!url.pathname.endsWith('.md')
15-
) {
16-
return new Response(null, {
17-
status: 303,
18-
headers: {
19-
Location: `${url.pathname}.md`,
20-
},
21-
})
22-
}
11+
// Redirect to markdown version if AI/LLM requests text/markdown for doc pages
12+
const acceptHeader = request.headers.get('Accept') || ''
13+
if (
14+
acceptHeader.includes('text/markdown') &&
15+
url.pathname.includes('/docs/') &&
16+
!url.pathname.endsWith('.md')
17+
) {
18+
return new Response(null, {
19+
status: 303,
20+
headers: {
21+
Location: `${url.pathname}.md`,
22+
},
23+
})
24+
}
2325

24-
const response = await handler.fetch(request)
26+
const response = await handler.fetch(request)
2527

26-
// Add COOP/COEP headers for /builder route (required for WebContainer)
27-
if (url.pathname === '/builder' || url.pathname.startsWith('/builder/')) {
28-
const newHeaders = new Headers(response.headers)
29-
newHeaders.set('Cross-Origin-Opener-Policy', 'same-origin')
30-
newHeaders.set('Cross-Origin-Embedder-Policy', 'require-corp')
28+
// Add COOP/COEP headers for /builder route (required for WebContainer)
29+
if (url.pathname === '/builder' || url.pathname.startsWith('/builder/')) {
30+
const newHeaders = new Headers(response.headers)
31+
newHeaders.set('Cross-Origin-Opener-Policy', 'same-origin')
32+
newHeaders.set('Cross-Origin-Embedder-Policy', 'require-corp')
3133

32-
return new Response(response.body, {
33-
status: response.status,
34-
statusText: response.statusText,
35-
headers: newHeaders,
36-
})
37-
}
34+
return new Response(response.body, {
35+
status: response.status,
36+
statusText: response.statusText,
37+
headers: newHeaders,
38+
})
39+
}
3840

39-
return response
40-
},
41-
})
41+
return response
42+
},
43+
}),
44+
)

0 commit comments

Comments
 (0)