| Server IP : 159.203.156.69 / Your IP : 216.73.217.172 Web Server : nginx/1.24.0 System : Linux main-ubuntu 6.8.0-71-generic #71-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 22 16:52:38 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/tanviranik.com/node_modules/vinext/dist/server/ |
Upload File : |
import { runWithExecutionContext } from "../shims/request-context.js";
import { badRequestResponse, notFoundResponse } from "./http-error-responses.js";
import { cloneRequestWithHeaders, filterInternalHeaders, isOpenRedirectShaped } from "./request-pipeline.js";
import { resolveStaticAssetSignal } from "./worker-utils.js";
import rscHandler from "virtual:vinext-rsc-entry";
//#region src/server/app-router-entry.ts
/**
* Default Cloudflare Worker entry point for vinext App Router.
*
* Use this directly in wrangler.jsonc:
* "main": "vinext/server/app-router-entry"
*
* Or import and delegate to it from a custom worker:
* import handler from "vinext/server/app-router-entry";
* return handler.fetch(request, env, ctx);
*
* This file runs in the RSC environment. Configure the Cloudflare plugin with:
* cloudflare({ viteEnvironment: { name: "rsc", childEnvironments: ["ssr"] } })
*/
var app_router_entry_default = { async fetch(request, env, ctx) {
return handleRequest(request, env, ctx);
} };
async function handleRequest(request, env, ctx) {
const url = new URL(request.url);
if (isOpenRedirectShaped(url.pathname)) return notFoundResponse();
try {
decodeURIComponent(url.pathname);
} catch {
return badRequestResponse();
}
{
const filteredHeaders = filterInternalHeaders(request.headers);
request = cloneRequestWithHeaders(request, filteredHeaders);
}
const handleFn = () => rscHandler(request, ctx);
const result = await (ctx ? runWithExecutionContext(ctx, handleFn) : handleFn());
if (result instanceof Response) {
if (env?.ASSETS) {
const assetFetcher = env.ASSETS;
const assetResponse = await resolveStaticAssetSignal(result, { fetchAsset: (path) => Promise.resolve(assetFetcher.fetch(new Request(new URL(path, request.url)))) });
if (assetResponse) return assetResponse;
}
return result;
}
if (result === null || result === void 0) return notFoundResponse();
return new Response(String(result), { status: 200 });
}
//#endregion
export { app_router_entry_default as default };
//# sourceMappingURL=app-router-entry.js.map