No, that shouldn't be it. Do you see in the logs that Pages is installing your dependencies?
No, that shouldn't be it. Do you see in the logs that Pages is installing your dependencies?
/functions folder, then produce the erros following that.package-lock.json commited and in GitHub.
grep mailchannels package-lock.json) and did you add and commit (and push obviously) that change?http://127.0.0.1:65193/api/hello it just says 404 not found


_middleware.ts?

send_email bindings with Pages/Functions.wrangler pages dev -e dev -- vite dev (proxy mode). Unfortunately it seems that a Location header doesn't make it all the way back to my browser but instead wrangler/workerd/mf is following the redirect internally. Is there a way to enable this passthrough? I saw the attached note but not sure if that's the same thing. Strangely, it seems that other SvelteKit headers are passed through, i.e X-Sveltekit-Page, but Location isn't.
node_compat build you need for most (all?) drivers that work with Hyperdrive todaynode:fs library as of right now. is there any alternative that can work on Functions?prince lib which calls the CLI to generate PDFs from HTML?prince should work on Pagesgrep mailchannels package-lock.json{
"name": "nnn",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"dependencies": {
"@cloudflare/pages-plugin-mailchannels": "^0.1.2",
"@cloudflare/workers-types": "^4.20230922.0"
}
},
"node_modules/@cloudflare/pages-plugin-mailchannels": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/@cloudflare/pages-plugin-mailchannels/-/pages-plugin-mailchannels-0.1.2.tgz",
},
"node_modules/@cloudflare/workers-types": {
"version": "4.20230922.0",
"resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20230922.0.tgz",
}
}
}http://127.0.0.1:65193/api/hello_middleware.tssend_emailwrangler pages dev -e dev -- vite devLocationX-Sveltekit-Pagenode_compatnode:fsprinceprinceif (cookieIsSet()) {
context.next();
} else {
return Response.redirect("/login", 302);
}...
writeFileSync(`dist/${target}.html`, finalHtml);
await prince()
.license('./prince-license.xml')
.inputs(`dist/${target}.html`)
.output('dist/output.pdf')
.execute();
return new Response(readFileSync('dist/output.pdf'), {
...