Skip to content

Commit 042df7e

Browse files
authored
refactor(runtime): separate node and edge enhancement code for edge-runtime compatibility (#1684)
1 parent 6ef6f89 commit 042df7e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+358
-253
lines changed

packages/plugins/trpc/tests/projects/t3-trpc-v10/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
"eslint": "^8.54.0",
3737
"eslint-config-next": "^14.0.4",
3838
"prisma": "^5.13.0",
39-
"typescript": "^5.1.6"
39+
"typescript": "^5.5.4"
4040
},
4141
"ct3aMetadata": {
4242
"initVersion": "7.26.0"

packages/plugins/trpc/tests/projects/t3-trpc-v10/src/pages/index.tsx

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,23 @@ import styles from './index.module.css';
44
export default function Home() {
55
const hello = api.greet.hello.useQuery({ text: 'from tRPC' });
66
const posts = api.post.findMany.useQuery({ where: { published: true }, include: { author: true } });
7-
const postsTransformed = api.post.findMany.useQuery({}, { select: (data) => data.map((p) => ({ title: p.name })) });
7+
const postsTransformed = api.post.findMany.useQuery(
8+
{},
9+
{ select: (data) => data.map((p) => ({ id: p.id, title: p.name })) }
10+
);
811

912
return (
1013
<>
1114
<main className={styles.main}>
1215
{hello.data && <h1 className={styles.title}>{hello.data.greeting}</h1>}
13-
{posts.data &&
14-
posts.data.map((post) => (
15-
<p>
16-
{post.name} by {post.author.email}
17-
</p>
18-
))}
19-
{postsTransformed.data && postsTransformed.data.map((post) => <p>{post.title}</p>)}
16+
{posts.data?.map((post) => (
17+
<p key={post.id}>
18+
{post.name} by {post.author.email}
19+
</p>
20+
))}
21+
{postsTransformed.data?.map((post) => (
22+
<p key={post.id}>{post.title}</p>
23+
))}
2024
</main>
2125
</>
2226
);

packages/runtime/package.json

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,17 @@
2525
"types": "./edge.d.ts",
2626
"default": "./edge.js"
2727
},
28-
"./enhancements": {
29-
"types": "./enhancements/index.d.ts",
30-
"default": "./enhancements/index.js"
28+
"./enhancements/node": {
29+
"types": "./enhancements/node/index.d.ts",
30+
"default": "./enhancements/node/index.js"
31+
},
32+
"./enhancements/edge": {
33+
"types": "./enhancements/edge/index.d.ts",
34+
"default": "./enhancements/edge/index.js"
35+
},
36+
"./validation": {
37+
"types": "./validation.d.ts",
38+
"default": "./validation.js"
3139
},
3240
"./constraint-solver": {
3341
"types": "./constraint-solver.d.ts",
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { auth, enhance, type PrismaClient } from '.zenstack/enhance-edge';

packages/runtime/res/enhance-edge.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
'use strict';
2+
Object.defineProperty(exports, '__esModule', { value: true });
3+
4+
try {
5+
exports.enhance = require('.zenstack/enhance-edge').enhance;
6+
} catch {
7+
exports.enhance = function () {
8+
throw new Error('Generated "enhance" function not found. Please run `zenstack generate` first.');
9+
};
10+
}

packages/runtime/src/edge.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

packages/runtime/src/edge.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from './enhance-edge';
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
// @ts-expect-error stub for re-exporting generated code
2+
export { auth, enhance } from '.zenstack/enhance-edge';
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../node/create-enhancement.ts
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../node/default-auth.ts

0 commit comments

Comments
 (0)