Skip to content

Commit ce8bfbd

Browse files
update experimental Next.js template to work on @opennextjs/cloudflare@0.4.x (#7903)
1 parent 38db4ed commit ce8bfbd

File tree

2 files changed

+31
-1
lines changed

2 files changed

+31
-1
lines changed

.changeset/cyan-suits-move.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"create-cloudflare": patch
3+
---
4+
5+
update experimental Next.js template to work on `@opennextjs/cloudflare@0.4.x`

packages/create-cloudflare/templates-experimental/next/c3.ts

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import { brandColor, dim } from "@cloudflare/cli/colors";
2+
import { spinner } from "@cloudflare/cli/interactive";
23
import { runFrameworkGenerator } from "frameworks/index";
4+
import { readFile, writeFile } from "helpers/files";
35
import { installPackages } from "helpers/packages";
46
import type { TemplateConfig } from "../../src/templates";
57
import type { C3Context } from "types";
@@ -19,14 +21,37 @@ const generate = async (ctx: C3Context) => {
1921

2022
const configure = async () => {
2123
const packages = [
22-
"@opennextjs/cloudflare@0.3.x",
24+
"@opennextjs/cloudflare@0.4.x",
2325
"@cloudflare/workers-types",
2426
];
2527
await installPackages(packages, {
2628
dev: true,
2729
startText: "Adding the Cloudflare adapter",
2830
doneText: `${brandColor(`installed`)} ${dim(packages.join(", "))}`,
2931
});
32+
33+
updateNextConfig();
34+
};
35+
36+
const updateNextConfig = () => {
37+
const s = spinner();
38+
39+
const configFile = "next.config.mjs";
40+
s.start(`Updating \`${configFile}\``);
41+
42+
const configContent = readFile(configFile);
43+
44+
const updatedConfigFile =
45+
configContent +
46+
`
47+
// added by create cloudflare to enable calling \`getCloudflareContext()\` in \`next dev\`
48+
import { initOpenNextCloudflareForDev } from '@opennextjs/cloudflare';
49+
initOpenNextCloudflareForDev();
50+
`.replace(/\n\t*/g, "\n");
51+
52+
writeFile(configFile, updatedConfigFile);
53+
54+
s.stop(`${brandColor(`updated`)} ${dim(`\`${configFile}\``)}`);
3055
};
3156

3257
export default {

0 commit comments

Comments
 (0)