(request: Request)
| 37 | * Returns `null` when the cloud application owns the request instead. |
| 38 | */ |
| 39 | export const marketingProxyRequest = (request: Request): Request | null => { |
| 40 | const url = new URL(request.url); |
| 41 | if (url.hostname !== "executor.sh") return null; |
| 42 | |
| 43 | const shouldProxy = |
| 44 | isMarketingPath(url.pathname) || |
| 45 | (url.pathname === "/" && !parseCookie(request.headers.get("cookie"), SESSION_COOKIE)); |
| 46 | if (!shouldProxy) return null; |
| 47 | |
| 48 | if (url.pathname === "/home") url.pathname = "/"; |
| 49 | return new Request(url, request); |
| 50 | }; |
no test coverage detected