Skip to content

Commit 58b200f

Browse files
dario-piotrowiczvicbjames-elicx
authored
add defineCloudflareConfig utility (#412)
Co-authored-by: Victor Berchet <[email protected]> Co-authored-by: James Anderson <[email protected]>
1 parent 47b673a commit 58b200f

File tree

20 files changed

+199
-393
lines changed

20 files changed

+199
-393
lines changed

.changeset/cold-numbers-bow.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
"@opennextjs/cloudflare": patch
3+
---
4+
5+
add `defineCloudflareConfig` utility
6+
7+
this change adds a new `defineCloudflareConfig` utility that developers can use in their `open-next.config.ts`
8+
file to easily generate a configuration compatible with the adapter
9+
10+
Example usage:
11+
12+
```ts
13+
// open-next.config.ts
14+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
15+
import kvIncrementalCache from "@opennextjs/cloudflare/kv-cache";
16+
17+
export default defineCloudflareConfig({
18+
incrementalCache: kvIncrementalCache,
19+
});
20+
```
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: "cloudflare-node",
7-
converter: "edge",
8-
// Unused implementation
9-
incrementalCache: "dummy",
10-
tagCache: "dummy",
11-
queue: "dummy",
12-
},
13-
},
14-
15-
middleware: {
16-
external: true,
17-
override: {
18-
wrapper: "cloudflare-edge",
19-
converter: "edge",
20-
proxyExternalRequest: "fetch",
21-
},
22-
},
23-
};
24-
25-
export default config;
3+
export default defineCloudflareConfig();
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: "cloudflare-node",
7-
converter: "edge",
8-
// Unused implementation
9-
incrementalCache: "dummy",
10-
tagCache: "dummy",
11-
queue: "dummy",
12-
},
13-
},
14-
15-
middleware: {
16-
external: true,
17-
override: {
18-
wrapper: "cloudflare-edge",
19-
converter: "edge",
20-
proxyExternalRequest: "fetch",
21-
},
22-
},
23-
};
24-
25-
export default config;
3+
export default defineCloudflareConfig();
Lines changed: 2 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,3 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: "cloudflare-node",
7-
converter: "edge",
8-
incrementalCache: "dummy",
9-
tagCache: "dummy",
10-
queue: "dummy",
11-
},
12-
},
13-
14-
middleware: {
15-
external: true,
16-
override: {
17-
wrapper: "cloudflare-edge",
18-
converter: "edge",
19-
proxyExternalRequest: "fetch",
20-
},
21-
},
22-
};
23-
24-
export default config;
3+
export default defineCloudflareConfig();
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: "cloudflare-node",
7-
converter: "edge",
8-
// Unused implementation
9-
incrementalCache: "dummy",
10-
tagCache: "dummy",
11-
queue: "dummy",
12-
},
13-
},
14-
15-
middleware: {
16-
external: true,
17-
override: {
18-
wrapper: "cloudflare-edge",
19-
converter: "edge",
20-
proxyExternalRequest: "fetch",
21-
},
22-
},
23-
};
24-
25-
export default config;
3+
export default defineCloudflareConfig();
Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,8 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
2-
import kvCache from "@opennextjs/cloudflare/kv-cache";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
2+
import kvIncrementalCache from "@opennextjs/cloudflare/kv-cache";
33
import memoryQueue from "@opennextjs/cloudflare/memory-queue";
44

5-
const config: OpenNextConfig = {
6-
default: {
7-
override: {
8-
wrapper: "cloudflare-node",
9-
converter: "edge",
10-
incrementalCache: () => kvCache,
11-
queue: () => memoryQueue,
12-
// Unused implementation
13-
tagCache: "dummy",
14-
},
15-
},
16-
17-
middleware: {
18-
external: true,
19-
override: {
20-
wrapper: "cloudflare-edge",
21-
converter: "edge",
22-
proxyExternalRequest: "fetch",
23-
},
24-
},
25-
};
26-
27-
export default config;
5+
export default defineCloudflareConfig({
6+
incrementalCache: kvIncrementalCache,
7+
queue: memoryQueue,
8+
});
Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,10 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
2-
import tagCache from "@opennextjs/cloudflare/d1-tag-cache";
3-
import incrementalCache from "@opennextjs/cloudflare/kv-cache";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
2+
import d1TagCache from "@opennextjs/cloudflare/d1-tag-cache";
3+
import kvIncrementalCache from "@opennextjs/cloudflare/kv-cache";
44
import memoryQueue from "@opennextjs/cloudflare/memory-queue";
55

6-
const config: OpenNextConfig = {
7-
default: {
8-
override: {
9-
wrapper: "cloudflare-node",
10-
converter: "edge",
11-
incrementalCache: async () => incrementalCache,
12-
tagCache: () => tagCache,
13-
queue: () => memoryQueue,
14-
},
15-
},
16-
17-
middleware: {
18-
external: true,
19-
override: {
20-
wrapper: "cloudflare-edge",
21-
converter: "edge",
22-
proxyExternalRequest: "fetch",
23-
},
24-
},
25-
};
26-
27-
export default config;
6+
export default defineCloudflareConfig({
7+
incrementalCache: kvIncrementalCache,
8+
tagCache: d1TagCache,
9+
queue: memoryQueue,
10+
});
Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,8 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
2-
import kvCache from "@opennextjs/cloudflare/kv-cache";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
2+
import kvIncrementalCache from "@opennextjs/cloudflare/kv-cache";
33
import memoryQueue from "@opennextjs/cloudflare/memory-queue";
44

5-
const config: OpenNextConfig = {
6-
default: {
7-
override: {
8-
wrapper: "cloudflare-node",
9-
converter: "edge",
10-
incrementalCache: () => kvCache,
11-
queue: () => memoryQueue,
12-
// Unused implementation
13-
tagCache: "dummy",
14-
},
15-
},
16-
17-
middleware: {
18-
external: true,
19-
override: {
20-
wrapper: "cloudflare-edge",
21-
converter: "edge",
22-
proxyExternalRequest: "fetch",
23-
},
24-
},
25-
};
26-
27-
export default config;
5+
export default defineCloudflareConfig({
6+
incrementalCache: kvIncrementalCache,
7+
queue: memoryQueue,
8+
});
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
import type { OpenNextConfig } from "@opennextjs/aws/types/open-next.js";
1+
import { defineCloudflareConfig } from "@opennextjs/cloudflare";
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: "cloudflare-node",
7-
converter: "edge",
8-
// Unused implementation
9-
incrementalCache: "dummy",
10-
tagCache: "dummy",
11-
queue: "dummy",
12-
},
13-
},
14-
15-
middleware: {
16-
external: true,
17-
override: {
18-
wrapper: "cloudflare-edge",
19-
converter: "edge",
20-
proxyExternalRequest: "fetch",
21-
},
22-
},
23-
};
24-
25-
export default config;
3+
export default defineCloudflareConfig();
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
import type { OpenNextConfig } from '@opennextjs/aws/types/open-next.js';
1+
import { defineCloudflareConfig } from '@opennextjs/cloudflare/config';
22

3-
const config: OpenNextConfig = {
4-
default: {
5-
override: {
6-
wrapper: 'cloudflare-node',
7-
converter: 'edge',
8-
// Unused implementation
9-
incrementalCache: 'dummy',
10-
tagCache: 'dummy',
11-
queue: 'dummy',
12-
},
13-
},
14-
15-
middleware: {
16-
external: true,
17-
override: {
18-
wrapper: 'cloudflare-edge',
19-
converter: 'edge',
20-
proxyExternalRequest: 'fetch',
21-
},
22-
},
23-
};
24-
25-
export default config;
3+
export default defineCloudflareConfig();

0 commit comments

Comments
 (0)