@trpc/server 11.0.0-alpha-tmp-query-optoins-codemod.721 → 11.0.0-alpha-tmp-02-12-response-types-idea.838

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/adapters/fetch/types.d.ts +8 -2
  2. package/dist/adapters/fetch/types.d.ts.map +1 -1
  3. package/dist/bundle-analysis.json +56 -56
  4. package/dist/unstable-core-do-not-import/clientish/inference.d.ts +1 -1
  5. package/dist/unstable-core-do-not-import/clientish/inference.d.ts.map +1 -1
  6. package/dist/unstable-core-do-not-import/http/resolveResponse.d.ts.map +1 -1
  7. package/dist/unstable-core-do-not-import/http/resolveResponse.js +20 -1
  8. package/dist/unstable-core-do-not-import/http/resolveResponse.mjs +20 -1
  9. package/dist/unstable-core-do-not-import/initTRPC.d.ts.map +1 -1
  10. package/dist/unstable-core-do-not-import/initTRPC.js +1 -0
  11. package/dist/unstable-core-do-not-import/initTRPC.mjs +1 -0
  12. package/dist/unstable-core-do-not-import/procedureBuilder.d.ts +4 -2
  13. package/dist/unstable-core-do-not-import/procedureBuilder.d.ts.map +1 -1
  14. package/dist/unstable-core-do-not-import/procedureBuilder.js +9 -3
  15. package/dist/unstable-core-do-not-import/procedureBuilder.mjs +9 -3
  16. package/dist/unstable-core-do-not-import/rootConfig.d.ts +3 -1
  17. package/dist/unstable-core-do-not-import/rootConfig.d.ts.map +1 -1
  18. package/dist/unstable-core-do-not-import/transformer.d.ts +1 -1
  19. package/package.json +2 -2
  20. package/src/adapters/fetch/types.ts +8 -2
  21. package/src/unstable-core-do-not-import/clientish/inference.ts +8 -3
  22. package/src/unstable-core-do-not-import/http/resolveResponse.ts +31 -4
  23. package/src/unstable-core-do-not-import/initTRPC.ts +1 -0
  24. package/src/unstable-core-do-not-import/procedureBuilder.ts +15 -2
  25. package/src/unstable-core-do-not-import/rootConfig.ts +3 -1
@@ -9,11 +9,17 @@
9
9
  */
10
10
  import type { AnyRouter, CreateContextCallback, inferRouterContext } from '../../@trpc/server';
11
11
  import type { HTTPBaseHandlerOptions, TRPCRequestInfo } from '../../@trpc/server/http';
12
- export type FetchCreateContextFnOptions = {
12
+ export interface FetchCreateContextFnOptions {
13
13
  req: Request;
14
+ /**
15
+ * Used for setting headers on the `Response`
16
+ */
14
17
  resHeaders: Headers;
18
+ /**
19
+ * Info about the request
20
+ */
15
21
  info: TRPCRequestInfo;
16
- };
22
+ }
17
23
  export type FetchCreateContextFn<TRouter extends AnyRouter> = (opts: FetchCreateContextFnOptions) => inferRouterContext<TRouter> | Promise<inferRouterContext<TRouter>>;
18
24
  export type FetchCreateContextOption<TRouter extends AnyRouter> = CreateContextCallback<inferRouterContext<TRouter>, FetchCreateContextFn<TRouter>>;
19
25
  export type FetchHandlerOptions<TRouter extends AnyRouter> = FetchCreateContextOption<TRouter> & HTTPBaseHandlerOptions<TRouter, Request> & {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/fetch/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,2BAA2B,GAAG;IACxC,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC5D,IAAI,EAAE,2BAA2B,KAC9B,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAExE,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAC9B,CAAC;AAEJ,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,SAAS,IACvD,wBAAwB,CAAC,OAAO,CAAC,GAC/B,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG;IACzC,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEN,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAC9D,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GACtC,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAC9B,GAAG;IACF,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/fetch/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,OAAO,CAAC;IACb;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,MAAM,oBAAoB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC5D,IAAI,EAAE,2BAA2B,KAC9B,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAExE,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAC9B,CAAC;AAEJ,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,SAAS,IACvD,wBAAwB,CAAC,OAAO,CAAC,GAC/B,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG;IACzC,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEN,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAC9D,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GACtC,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAC9B,GAAG;IACF,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -1,12 +1,12 @@
1
1
  {
2
- "bundleSize": 199018,
3
- "bundleOrigSize": 230679,
4
- "bundleReduction": 13.73,
2
+ "bundleSize": 200242,
3
+ "bundleOrigSize": 232006,
4
+ "bundleReduction": 13.69,
5
5
  "modules": [
6
6
  {
7
7
  "id": "/src/unstable-core-do-not-import/http/resolveResponse.ts",
8
- "size": 21089,
9
- "origSize": 19447,
8
+ "size": 22092,
9
+ "origSize": 20303,
10
10
  "renderedExports": [
11
11
  "resolveResponse"
12
12
  ],
@@ -14,7 +14,7 @@
14
14
  "dependents": [
15
15
  "/src/unstable-core-do-not-import.ts"
16
16
  ],
17
- "percent": 10.6,
17
+ "percent": 11.03,
18
18
  "reduction": 0
19
19
  },
20
20
  {
@@ -30,7 +30,7 @@
30
30
  "dependents": [
31
31
  "/src/adapters/fastify/fastifyTRPCPlugin.ts"
32
32
  ],
33
- "percent": 10.12,
33
+ "percent": 10.06,
34
34
  "reduction": 0
35
35
  },
36
36
  {
@@ -47,7 +47,7 @@
47
47
  "/src/unstable-core-do-not-import.ts",
48
48
  "/src/unstable-core-do-not-import/http/resolveResponse.ts"
49
49
  ],
50
- "percent": 10.02,
50
+ "percent": 9.96,
51
51
  "reduction": 0
52
52
  },
53
53
  {
@@ -64,7 +64,7 @@
64
64
  "/src/unstable-core-do-not-import.ts",
65
65
  "/src/unstable-core-do-not-import/http/resolveResponse.ts"
66
66
  ],
67
- "percent": 6.51,
67
+ "percent": 6.47,
68
68
  "reduction": 0
69
69
  },
70
70
  {
@@ -77,7 +77,7 @@
77
77
  ],
78
78
  "removedExports": [],
79
79
  "dependents": [],
80
- "percent": 6.11,
80
+ "percent": 6.07,
81
81
  "reduction": 11.62
82
82
  },
83
83
  {
@@ -98,7 +98,7 @@
98
98
  "/src/unstable-core-do-not-import/initTRPC.ts",
99
99
  "/src/unstable-core-do-not-import/http/contentType.ts"
100
100
  ],
101
- "percent": 5.11,
101
+ "percent": 5.08,
102
102
  "reduction": 29.51
103
103
  },
104
104
  {
@@ -112,7 +112,7 @@
112
112
  "dependents": [
113
113
  "/src/unstable-core-do-not-import/stream/jsonl.ts"
114
114
  ],
115
- "percent": 4.08,
115
+ "percent": 4.06,
116
116
  "reduction": 0
117
117
  },
118
118
  {
@@ -127,13 +127,13 @@
127
127
  "/src/unstable-core-do-not-import.ts",
128
128
  "/src/unstable-core-do-not-import/http/resolveResponse.ts"
129
129
  ],
130
- "percent": 3.96,
130
+ "percent": 3.93,
131
131
  "reduction": 0.83
132
132
  },
133
133
  {
134
134
  "id": "/src/unstable-core-do-not-import/procedureBuilder.ts",
135
- "size": 5825,
136
- "origSize": 16584,
135
+ "size": 6013,
136
+ "origSize": 16997,
137
137
  "renderedExports": [
138
138
  "createBuilder"
139
139
  ],
@@ -142,8 +142,8 @@
142
142
  "/src/unstable-core-do-not-import.ts",
143
143
  "/src/unstable-core-do-not-import/initTRPC.ts"
144
144
  ],
145
- "percent": 2.93,
146
- "reduction": 64.88
145
+ "percent": 3,
146
+ "reduction": 64.62
147
147
  },
148
148
  {
149
149
  "id": "/src/unstable-core-do-not-import/stream/utils/asyncIterable.ts",
@@ -162,7 +162,7 @@
162
162
  "/src/unstable-core-do-not-import/stream/sse.ts",
163
163
  "/src/unstable-core-do-not-import/stream/utils/withPing.ts"
164
164
  ],
165
- "percent": 2.87,
165
+ "percent": 2.85,
166
166
  "reduction": 0
167
167
  },
168
168
  {
@@ -176,7 +176,7 @@
176
176
  "dependents": [
177
177
  "/src/adapters/aws-lambda/index.ts"
178
178
  ],
179
- "percent": 2.72,
179
+ "percent": 2.7,
180
180
  "reduction": 11.51
181
181
  },
182
182
  {
@@ -196,7 +196,7 @@
196
196
  "/src/observable/operators.ts",
197
197
  "/src/observable/behaviorSubject.ts"
198
198
  ],
199
- "percent": 2.43,
199
+ "percent": 2.42,
200
200
  "reduction": 0
201
201
  },
202
202
  {
@@ -212,7 +212,7 @@
212
212
  "/src/unstable-core-do-not-import/stream/jsonl.ts",
213
213
  "/src/unstable-core-do-not-import/stream/sse.ts"
214
214
  ],
215
- "percent": 2.23,
215
+ "percent": 2.22,
216
216
  "reduction": 0
217
217
  },
218
218
  {
@@ -228,7 +228,7 @@
228
228
  "/src/adapters/node-http/index.ts",
229
229
  "/src/adapters/node-http/nodeHTTPRequestHandler.ts"
230
230
  ],
231
- "percent": 2.03,
231
+ "percent": 2.02,
232
232
  "reduction": 6.81
233
233
  },
234
234
  {
@@ -246,7 +246,7 @@
246
246
  "dependents": [
247
247
  "/src/observable/index.ts"
248
248
  ],
249
- "percent": 1.96,
249
+ "percent": 1.95,
250
250
  "reduction": 1.66
251
251
  },
252
252
  {
@@ -260,7 +260,7 @@
260
260
  "dependents": [
261
261
  "/src/adapters/next-app-dir.ts"
262
262
  ],
263
- "percent": 1.63,
263
+ "percent": 1.62,
264
264
  "reduction": 22.52
265
265
  },
266
266
  {
@@ -275,7 +275,7 @@
275
275
  "dependents": [
276
276
  "/src/adapters/node-http/index.ts"
277
277
  ],
278
- "percent": 1.38,
278
+ "percent": 1.37,
279
279
  "reduction": 16.3
280
280
  },
281
281
  {
@@ -295,13 +295,13 @@
295
295
  "/src/unstable-core-do-not-import/router.ts",
296
296
  "/src/unstable-core-do-not-import/initTRPC.ts"
297
297
  ],
298
- "percent": 1.38,
298
+ "percent": 1.37,
299
299
  "reduction": 45.98
300
300
  },
301
301
  {
302
302
  "id": "/src/unstable-core-do-not-import/initTRPC.ts",
303
- "size": 2664,
304
- "origSize": 4501,
303
+ "size": 2697,
304
+ "origSize": 4526,
305
305
  "renderedExports": [
306
306
  "initTRPC"
307
307
  ],
@@ -309,8 +309,8 @@
309
309
  "dependents": [
310
310
  "/src/unstable-core-do-not-import.ts"
311
311
  ],
312
- "percent": 1.34,
313
- "reduction": 40.81
312
+ "percent": 1.35,
313
+ "reduction": 40.41
314
314
  },
315
315
  {
316
316
  "id": "/src/unstable-core-do-not-import/middleware.ts",
@@ -329,7 +329,7 @@
329
329
  "/src/unstable-core-do-not-import/initTRPC.ts",
330
330
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
331
331
  ],
332
- "percent": 1.32,
332
+ "percent": 1.31,
333
333
  "reduction": 55.79
334
334
  },
335
335
  {
@@ -356,18 +356,18 @@
356
356
  "/src/unstable-core-do-not-import/http/getHTTPStatusCode.ts",
357
357
  "/src/unstable-core-do-not-import/http/parseConnectionParams.ts",
358
358
  "/src/unstable-core-do-not-import/http/resolveResponse.ts",
359
+ "/src/unstable-core-do-not-import/rpc/parseTRPCMessage.ts",
359
360
  "/src/unstable-core-do-not-import/error/TRPCError.ts",
360
361
  "/src/unstable-core-do-not-import/router.ts",
361
362
  "/src/unstable-core-do-not-import/transformer.ts",
362
363
  "/src/unstable-core-do-not-import/middleware.ts",
363
- "/src/unstable-core-do-not-import/rpc/parseTRPCMessage.ts",
364
364
  "/src/unstable-core-do-not-import/http/contentType.ts",
365
365
  "/src/unstable-core-do-not-import/http/abortError.ts",
366
366
  "/src/unstable-core-do-not-import/procedureBuilder.ts",
367
367
  "/src/unstable-core-do-not-import/stream/jsonl.ts",
368
368
  "/src/unstable-core-do-not-import/stream/sse.ts"
369
369
  ],
370
- "percent": 1.24,
370
+ "percent": 1.23,
371
371
  "reduction": 17.51
372
372
  },
373
373
  {
@@ -420,7 +420,7 @@
420
420
  "dependents": [
421
421
  "/src/adapters/fetch/index.ts"
422
422
  ],
423
- "percent": 1.13,
423
+ "percent": 1.12,
424
424
  "reduction": 2.48
425
425
  },
426
426
  {
@@ -434,7 +434,7 @@
434
434
  "dependents": [
435
435
  "/src/adapters/next-app-dir/nextAppDirCaller.ts"
436
436
  ],
437
- "percent": 1.07,
437
+ "percent": 1.06,
438
438
  "reduction": 5.4
439
439
  },
440
440
  {
@@ -455,7 +455,7 @@
455
455
  "/src/unstable-core-do-not-import/http/resolveResponse.ts",
456
456
  "/src/unstable-core-do-not-import/error/getErrorShape.ts"
457
457
  ],
458
- "percent": 1.05,
458
+ "percent": 1.04,
459
459
  "reduction": 18.54
460
460
  },
461
461
  {
@@ -470,7 +470,7 @@
470
470
  "dependents": [
471
471
  "/src/adapters/node-http/nodeHTTPRequestHandler.ts"
472
472
  ],
473
- "percent": 1.02,
473
+ "percent": 1.01,
474
474
  "reduction": 3.8
475
475
  },
476
476
  {
@@ -516,7 +516,7 @@
516
516
  ],
517
517
  "removedExports": [],
518
518
  "dependents": [],
519
- "percent": 0.85,
519
+ "percent": 0.84,
520
520
  "reduction": 19.62
521
521
  },
522
522
  {
@@ -529,7 +529,7 @@
529
529
  ],
530
530
  "removedExports": [],
531
531
  "dependents": [],
532
- "percent": 0.81,
532
+ "percent": 0.8,
533
533
  "reduction": 17.81
534
534
  },
535
535
  {
@@ -544,7 +544,7 @@
544
544
  "/src/unstable-core-do-not-import.ts",
545
545
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
546
546
  ],
547
- "percent": 0.81,
547
+ "percent": 0.8,
548
548
  "reduction": 54.01
549
549
  },
550
550
  {
@@ -556,7 +556,7 @@
556
556
  ],
557
557
  "removedExports": [],
558
558
  "dependents": [],
559
- "percent": 0.67,
559
+ "percent": 0.66,
560
560
  "reduction": 35.1
561
561
  },
562
562
  {
@@ -573,7 +573,7 @@
573
573
  "/src/adapters/next-app-dir/nextAppDirCaller.ts",
574
574
  "/src/adapters/next-app-dir/rethrowNextErrors.ts"
575
575
  ],
576
- "percent": 0.67,
576
+ "percent": 0.66,
577
577
  "reduction": 0
578
578
  },
579
579
  {
@@ -588,7 +588,7 @@
588
588
  "/src/adapters/fastify/index.ts",
589
589
  "/src/adapters/fastify/fastifyTRPCPlugin.ts"
590
590
  ],
591
- "percent": 0.58,
591
+ "percent": 0.57,
592
592
  "reduction": 47.55
593
593
  },
594
594
  {
@@ -632,7 +632,7 @@
632
632
  "dependents": [
633
633
  "/src/observable/index.ts"
634
634
  ],
635
- "percent": 0.49,
635
+ "percent": 0.48,
636
636
  "reduction": 32.89
637
637
  },
638
638
  {
@@ -658,7 +658,7 @@
658
658
  ],
659
659
  "removedExports": [],
660
660
  "dependents": [],
661
- "percent": 0.45,
661
+ "percent": 0.44,
662
662
  "reduction": 34
663
663
  },
664
664
  {
@@ -755,7 +755,7 @@
755
755
  {
756
756
  "id": "/src/unstable-core-do-not-import/rootConfig.ts",
757
757
  "size": 343,
758
- "origSize": 3318,
758
+ "origSize": 3351,
759
759
  "renderedExports": [
760
760
  "isServerDefault"
761
761
  ],
@@ -765,7 +765,7 @@
765
765
  "/src/unstable-core-do-not-import/initTRPC.ts"
766
766
  ],
767
767
  "percent": 0.17,
768
- "reduction": 89.66
768
+ "reduction": 89.76
769
769
  },
770
770
  {
771
771
  "id": "/src/unstable-core-do-not-import/stream/utils/createDeferred.ts",
@@ -780,7 +780,7 @@
780
780
  "/src/unstable-core-do-not-import/stream/jsonl.ts",
781
781
  "/src/unstable-core-do-not-import/stream/utils/mergeAsyncIterables.ts"
782
782
  ],
783
- "percent": 0.16,
783
+ "percent": 0.15,
784
784
  "reduction": 27.12
785
785
  },
786
786
  {
@@ -872,9 +872,9 @@
872
872
  "reduction": 100
873
873
  },
874
874
  {
875
- "id": "/src/index.ts",
875
+ "id": "/src/rpc.ts",
876
876
  "size": 0,
877
- "origSize": 32,
877
+ "origSize": 36,
878
878
  "renderedExports": [],
879
879
  "removedExports": [],
880
880
  "dependents": [],
@@ -882,9 +882,9 @@
882
882
  "reduction": 100
883
883
  },
884
884
  {
885
- "id": "/src/rpc.ts",
885
+ "id": "/src/index.ts",
886
886
  "size": 0,
887
- "origSize": 36,
887
+ "origSize": 32,
888
888
  "renderedExports": [],
889
889
  "removedExports": [],
890
890
  "dependents": [],
@@ -942,9 +942,9 @@
942
942
  "reduction": 100
943
943
  },
944
944
  {
945
- "id": "/src/adapters/fetch/index.ts",
945
+ "id": "/src/adapters/fastify/index.ts",
946
946
  "size": 0,
947
- "origSize": 64,
947
+ "origSize": 78,
948
948
  "renderedExports": [],
949
949
  "removedExports": [],
950
950
  "dependents": [],
@@ -952,9 +952,9 @@
952
952
  "reduction": 100
953
953
  },
954
954
  {
955
- "id": "/src/adapters/fastify/index.ts",
955
+ "id": "/src/adapters/fetch/index.ts",
956
956
  "size": 0,
957
- "origSize": 78,
957
+ "origSize": 64,
958
958
  "renderedExports": [],
959
959
  "removedExports": [],
960
960
  "dependents": [],
@@ -6,7 +6,7 @@ import type { Serialize } from './serialize';
6
6
  /**
7
7
  * @internal
8
8
  */
9
- export type inferTransformedProcedureOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferClientTypes<TInferrable>['transformer'] extends false ? Serialize<inferProcedureOutput<TProcedure>> : inferProcedureOutput<TProcedure>;
9
+ export type inferTransformedProcedureOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferProcedureOutput<TProcedure> extends infer $Output ? $Output extends Response ? $Output : inferClientTypes<TInferrable>['transformer'] extends false ? Serialize<$Output> : $Output : inferProcedureOutput<TProcedure>;
10
10
  /** @internal */
11
11
  export type inferTransformedSubscriptionOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferClientTypes<TInferrable>['transformer'] extends false ? Serialize<inferObservableValue<inferProcedureOutput<TProcedure>>> : inferObservableValue<inferProcedureOutput<TProcedure>>;
12
12
  export type GetInferenceHelpers<TType extends 'input' | 'output', TRoot extends AnyClientTypes, TRecord extends RouterRecord> = {
@@ -1 +1 @@
1
- {"version":3,"file":"inference.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/clientish/inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;GAEG;AAEH,MAAM,MAAM,+BAA+B,CACzC,WAAW,SAAS,qBAAqB,EACzC,UAAU,SAAS,YAAY,IAC7B,gBAAgB,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GAC1D,SAAS,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,GAC3C,oBAAoB,CAAC,UAAU,CAAC,CAAC;AACrC,gBAAgB;AAEhB,MAAM,MAAM,kCAAkC,CAC5C,WAAW,SAAS,qBAAqB,EACzC,UAAU,SAAS,YAAY,IAC7B,gBAAgB,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GAC1D,SAAS,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,GACjE,oBAAoB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;AAE3D,MAAM,MAAM,mBAAmB,CAC7B,KAAK,SAAS,OAAO,GAAG,QAAQ,EAChC,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,YAAY,IAC1B;KACD,IAAI,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,MAAM,MAAM,GACvD,MAAM,SAAS,YAAY,GACzB,KAAK,SAAS,OAAO,GACnB,mBAAmB,CAAC,MAAM,CAAC,GAC3B,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,GAChD,MAAM,SAAS,YAAY,GACzB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GACzC,KAAK,GACT,KAAK;CACV,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IAAI,mBAAmB,CAC5E,OAAO,EACP,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,mBAAmB,CAC7E,QAAQ,EACR,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC"}
1
+ {"version":3,"file":"inference.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/clientish/inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;GAEG;AAEH,MAAM,MAAM,+BAA+B,CACzC,WAAW,SAAS,qBAAqB,EACzC,UAAU,SAAS,YAAY,IAE/B,oBAAoB,CAAC,UAAU,CAAC,SAAS,MAAM,OAAO,GAClD,OAAO,SAAS,QAAQ,GACtB,OAAO,GACP,gBAAgB,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GACxD,SAAS,CAAC,OAAO,CAAC,GAClB,OAAO,GACX,oBAAoB,CAAC,UAAU,CAAC,CAAC;AACvC,gBAAgB;AAEhB,MAAM,MAAM,kCAAkC,CAC5C,WAAW,SAAS,qBAAqB,EACzC,UAAU,SAAS,YAAY,IAC7B,gBAAgB,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GAC1D,SAAS,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,GACjE,oBAAoB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;AAE3D,MAAM,MAAM,mBAAmB,CAC7B,KAAK,SAAS,OAAO,GAAG,QAAQ,EAChC,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,YAAY,IAC1B;KACD,IAAI,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,MAAM,MAAM,GACvD,MAAM,SAAS,YAAY,GACzB,KAAK,SAAS,OAAO,GACnB,mBAAmB,CAAC,MAAM,CAAC,GAC3B,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,GAChD,MAAM,SAAS,YAAY,GACzB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GACzC,KAAK,GACT,KAAK;CACV,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IAAI,mBAAmB,CAC5E,OAAO,EACP,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,mBAAmB,CAC7E,QAAQ,EACR,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveResponse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/resolveResponse.ts"],"names":[],"mappings":"AAMA,OAAO,EAA2B,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAExE,OAAO,EACL,KAAK,SAAS,EAGf,MAAM,WAAW,CAAC;AAQnB,OAAO,KAAK,EACV,sBAAsB,EACtB,kCAAkC,EAEnC,MAAM,SAAS,CAAC;AA+BjB,UAAU,yBAAyB,CAAC,OAAO,SAAS,SAAS,CAC3D,SAAQ,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC;IAChD,aAAa,EAAE,kCAAkC,CAAC,OAAO,CAAC,CAAC;IAC3D,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;CACzB;AA2ID,wBAAsB,eAAe,CAAC,OAAO,SAAS,SAAS,EAC7D,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,QAAQ,CAAC,CAqfnB"}
1
+ {"version":3,"file":"resolveResponse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/resolveResponse.ts"],"names":[],"mappings":"AAMA,OAAO,EAA2B,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAExE,OAAO,EACL,KAAK,SAAS,EAGf,MAAM,WAAW,CAAC;AAQnB,OAAO,KAAK,EACV,sBAAsB,EACtB,kCAAkC,EAEnC,MAAM,SAAS,CAAC;AA+BjB,UAAU,yBAAyB,CAAC,OAAO,SAAS,SAAS,CAC3D,SAAQ,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC;IAChD,aAAa,EAAE,kCAAkC,CAAC,OAAO,CAAC,CAAC;IAC3D,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;CACzB;AA2ID,wBAAsB,eAAe,CAAC,OAAO,SAAS,SAAS,EAC7D,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,QAAQ,CAAC,CAghBnB"}
@@ -255,6 +255,12 @@ async function resolveResponse(opts) {
255
255
  type: proc._def.type,
256
256
  signal: opts.req.signal
257
257
  });
258
+ if (info.isBatchCall && data instanceof Response) {
259
+ throw new TRPCError.TRPCError({
260
+ code: 'BAD_REQUEST',
261
+ message: 'This procedure cannot be batched - use httpLink instead'
262
+ });
263
+ }
258
264
  return [
259
265
  undefined,
260
266
  {
@@ -280,8 +286,21 @@ async function resolveResponse(opts) {
280
286
  });
281
287
  // ----------- response handlers -----------
282
288
  if (!info.isBatchCall) {
283
- const [call] = info.calls;
289
+ const call = info.calls[0];
284
290
  const [error, result] = await rpcCalls[0];
291
+ if (!error && result?.data instanceof Response) {
292
+ const response = result.data;
293
+ if (!config.experimental?.outputResponse) {
294
+ throw new Error('You need to activate outputResponse in the root config to use this feature - e.g. `initTRPC.create({ experimental: { outputResponse: true } })`');
295
+ }
296
+ const headers = new Headers(response.headers);
297
+ headers.set('trpc-response-output', '1');
298
+ return new Response(response.body, {
299
+ status: response.status,
300
+ statusText: response.statusText,
301
+ headers
302
+ });
303
+ }
285
304
  switch(info.type){
286
305
  case 'unknown':
287
306
  case 'mutation':
@@ -253,6 +253,12 @@ async function resolveResponse(opts) {
253
253
  type: proc._def.type,
254
254
  signal: opts.req.signal
255
255
  });
256
+ if (info.isBatchCall && data instanceof Response) {
257
+ throw new TRPCError({
258
+ code: 'BAD_REQUEST',
259
+ message: 'This procedure cannot be batched - use httpLink instead'
260
+ });
261
+ }
256
262
  return [
257
263
  undefined,
258
264
  {
@@ -278,8 +284,21 @@ async function resolveResponse(opts) {
278
284
  });
279
285
  // ----------- response handlers -----------
280
286
  if (!info.isBatchCall) {
281
- const [call] = info.calls;
287
+ const call = info.calls[0];
282
288
  const [error, result] = await rpcCalls[0];
289
+ if (!error && result?.data instanceof Response) {
290
+ const response = result.data;
291
+ if (!config.experimental?.outputResponse) {
292
+ throw new Error('You need to activate outputResponse in the root config to use this feature - e.g. `initTRPC.create({ experimental: { outputResponse: true } })`');
293
+ }
294
+ const headers = new Headers(response.headers);
295
+ headers.set('trpc-response-output', '1');
296
+ return new Response(response.body, {
297
+ status: response.status,
298
+ statusText: response.statusText,
299
+ headers
300
+ });
301
+ }
283
302
  switch(info.type){
284
303
  case 'unknown':
285
304
  case 'mutation':
@@ -1 +1 @@
1
- {"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAGL,YAAY,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAErD,KAAK,wBAAwB,CAAC,KAAK,IACjC,KAAK,SAAS,cAAc,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAC/E,UAAU,oBAAoB,CAAC,QAAQ,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,CAC1E,SAAQ,OAAO,CACb,IAAI,CACF,UAAU,CAAC;IACT,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,EACF,QAAQ,GAAG,aAAa,CACzB,CACF;IACD;;;OAGG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,KAAK,eAAe,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAEpE,cAAM,WAAW,CAAC,QAAQ,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IAC7D;;;OAGG;IACH,OAAO,CAAC,WAAW,SAAS,MAAM,GAAG,eAAe;IAOpD;;;OAGG;IACH,IAAI,CAAC,QAAQ,SAAS,MAAM;IAI5B;;;OAGG;IACH,MAAM,CAAC,QAAQ,SAAS,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC3D,IAAI,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAuCnE;;;WAGG;;iBAvCE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;QAoCrE;;;WAGG;;QAIH;;;WAGG;;QAEH;;;WAGG;;iBAxDE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;QAqDrE;;;WAGG;;QAEH;;;WAGG;;iBAlEE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;iBALhE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;;CAiE1E;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,6BAAoB,CAAC;AAC1C,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAGL,YAAY,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAErD,KAAK,wBAAwB,CAAC,KAAK,IACjC,KAAK,SAAS,cAAc,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAC/E,UAAU,oBAAoB,CAAC,QAAQ,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,CAC1E,SAAQ,OAAO,CACb,IAAI,CACF,UAAU,CAAC;IACT,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,EACF,QAAQ,GAAG,aAAa,CACzB,CACF;IACD;;;OAGG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,KAAK,eAAe,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAEpE,cAAM,WAAW,CAAC,QAAQ,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM;IAC7D;;;OAGG;IACH,OAAO,CAAC,WAAW,SAAS,MAAM,GAAG,eAAe;IAOpD;;;OAGG;IACH,IAAI,CAAC,QAAQ,SAAS,MAAM;IAI5B;;;OAGG;IACH,MAAM,CAAC,QAAQ,SAAS,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC3D,IAAI,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAuCnE;;;WAGG;;iBAvCE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;QAoCrE;;;WAGG;;QAKH;;;WAGG;;QAEH;;;WAGG;;iBAzDE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;QAsDrE;;;WAGG;;QAEH;;;WAGG;;iBAnEE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;iBALhE,QAAQ;kBACP,KAAK;wBACC,SAAS,SAAS,QAAQ,CAAC,gBAAgB,CAAC,GACpD,iBAAiB,GACjB,wBAAwB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;yBAC3C,SAAS,SAAS,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI;;;CAkE1E;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,6BAAoB,CAAC;AAC1C,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -53,6 +53,7 @@ class TRPCBuilder {
53
53
  * Builder object for creating procedures
54
54
  * @see https://trpc.io/docs/v11/server/procedures
55
55
  */ procedure: procedureBuilder.createBuilder({
56
+ _config: config,
56
57
  meta: opts?.defaultMeta
57
58
  }),
58
59
  /**
@@ -51,6 +51,7 @@ class TRPCBuilder {
51
51
  * Builder object for creating procedures
52
52
  * @see https://trpc.io/docs/v11/server/procedures
53
53
  */ procedure: createBuilder({
54
+ _config: config,
54
55
  meta: opts?.defaultMeta
55
56
  }),
56
57
  /**
@@ -2,6 +2,7 @@ import type { inferObservableValue, Observable } from '../observable';
2
2
  import type { AnyMiddlewareFunction, MiddlewareBuilder, MiddlewareFunction } from './middleware';
3
3
  import type { inferParser, Parser } from './parser';
4
4
  import type { AnyProcedure, LegacyObservableSubscriptionProcedure, MutationProcedure, ProcedureType, QueryProcedure, SubscriptionProcedure } from './procedure';
5
+ import type { RootConfig } from './rootConfig';
5
6
  import type { inferTrackedOutput } from './stream/tracked';
6
7
  import type { GetRawInputFn, MaybePromise, Overwrite, Simplify, TypeError } from './types';
7
8
  import type { UnsetMarker } from './utils';
@@ -19,6 +20,7 @@ export type CallerOverride<TContext> = (opts: {
19
20
  _def: AnyProcedure['_def'];
20
21
  }) => Promise<unknown>;
21
22
  type ProcedureBuilderDef<TMeta> = {
23
+ _config: Partial<Pick<RootConfig<any>, 'experimental'>>;
22
24
  procedure: true;
23
25
  inputs: Parser[];
24
26
  output?: Parser;
@@ -40,7 +42,6 @@ type ProcedureBuilderDef<TMeta> = {
40
42
  type?: ProcedureType;
41
43
  caller?: CallerOverride<unknown>;
42
44
  };
43
- type AnyProcedureBuilderDef = ProcedureBuilderDef<any>;
44
45
  /**
45
46
  * Procedure resolver options (what the `.query()`, `.mutation()`, and `.subscription()` functions receive)
46
47
  * @internal
@@ -137,7 +138,8 @@ export interface ProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn,
137
138
  _def: ProcedureBuilderDef<TMeta>;
138
139
  }
139
140
  type ProcedureBuilderResolver = (opts: ProcedureResolverOptions<any, any, any, any>) => Promise<unknown>;
140
- export declare function createBuilder<TContext, TMeta>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<TContext, TMeta, object, UnsetMarker, UnsetMarker, UnsetMarker, UnsetMarker, false>;
141
+ type SetRequired<TType, TKey extends keyof TType> = TType & Required<Pick<TType, TKey>>;
142
+ export declare function createBuilder<TContext, TMeta>(initDef: SetRequired<Partial<ProcedureBuilderDef<TMeta>>, '_config'>): ProcedureBuilder<TContext, TMeta, object, UnsetMarker, UnsetMarker, UnsetMarker, UnsetMarker, false>;
141
143
  /**
142
144
  * @internal
143
145
  */
@@ -1 +1 @@
1
- {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/procedureBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/procedureBuilder.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ var parser = require('./parser.js');
6
6
  var utils = require('./utils.js');
7
7
 
8
8
  function createNewBuilder(def1, def2) {
9
- const { middlewares = [], inputs, meta, ...rest } = def2;
9
+ const { middlewares = [], inputs, meta, _config, ...rest } = def2;
10
10
  // TODO: maybe have a fn here to warn about calls
11
11
  return createBuilder({
12
12
  ...utils.mergeWithoutOverrides(def1, rest),
@@ -21,10 +21,16 @@ function createNewBuilder(def1, def2) {
21
21
  meta: def1.meta && meta ? {
22
22
  ...def1.meta,
23
23
  ...meta
24
- } : meta ?? def1.meta
24
+ } : meta ?? def1.meta,
25
+ _config: !_config ? def1._config : {
26
+ experimental: {
27
+ ...def1._config.experimental,
28
+ ..._config.experimental
29
+ }
30
+ }
25
31
  });
26
32
  }
27
- function createBuilder(initDef = {}) {
33
+ function createBuilder(initDef) {
28
34
  const _def = {
29
35
  procedure: true,
30
36
  inputs: [],
@@ -4,7 +4,7 @@ import { getParseFn } from './parser.mjs';
4
4
  import { mergeWithoutOverrides } from './utils.mjs';
5
5
 
6
6
  function createNewBuilder(def1, def2) {
7
- const { middlewares = [], inputs, meta, ...rest } = def2;
7
+ const { middlewares = [], inputs, meta, _config, ...rest } = def2;
8
8
  // TODO: maybe have a fn here to warn about calls
9
9
  return createBuilder({
10
10
  ...mergeWithoutOverrides(def1, rest),
@@ -19,10 +19,16 @@ function createNewBuilder(def1, def2) {
19
19
  meta: def1.meta && meta ? {
20
20
  ...def1.meta,
21
21
  ...meta
22
- } : meta ?? def1.meta
22
+ } : meta ?? def1.meta,
23
+ _config: !_config ? def1._config : {
24
+ experimental: {
25
+ ...def1._config.experimental,
26
+ ..._config.experimental
27
+ }
28
+ }
23
29
  });
24
30
  }
25
- function createBuilder(initDef = {}) {
31
+ function createBuilder(initDef) {
26
32
  const _def = {
27
33
  procedure: true,
28
34
  inputs: [],
@@ -71,7 +71,9 @@ export interface RootConfig<TTypes extends RootTypes> {
71
71
  * @see https://trpc.io/docs/client/links/httpBatchStreamLink
72
72
  */
73
73
  jsonl?: Pick<JSONLProducerOptions, 'pingMs'>;
74
- experimental?: {};
74
+ experimental?: {
75
+ outputResponse?: boolean;
76
+ };
75
77
  }
76
78
  /**
77
79
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"rootConfig.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/rootConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,iBAAiB,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAMmB,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM,SAAS,SAAS;IAClD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,EAAE,uBAAuB,CAAC;IACrC;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACpE;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IAErE;;;OAGG;IACH,GAAG,CAAC,EAAE;QACJ;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,IAAI,CACN,wBAAwB,EACxB,MAAM,GAAG,uBAAuB,GAAG,eAAe,GAAG,QAAQ,CAC9D,CAAC;IAEF;;;OAGG;IACH,KAAK,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,SAAS,IAAI,SAAS,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC;IACzC,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,CAAC;AAEH,KAAK,SAAS,CAAC,UAAU,SAAS,OAAO,EAAE,KAAK,IAAI,UAAU,SAAS,IAAI,GACvE,OAAO,CAAC,KAAK,CAAC,GACd,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,EACR,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IACvC,SAAS,CACX,MAAM,SAAS,QAAQ,GAAG,IAAI,GAAG,KAAK,EACtC;IACE;;QAEI;IACJ,aAAa,EAAE,SAAS,CAAC;CAC1B,CACF,CAAC"}
1
+ {"version":3,"file":"rootConfig.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/rootConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,iBAAiB,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAMmB,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM,SAAS,SAAS;IAClD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,EAAE,uBAAuB,CAAC;IACrC;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACpE;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IAErE;;;OAGG;IACH,GAAG,CAAC,EAAE;QACJ;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,IAAI,CACN,wBAAwB,EACxB,MAAM,GAAG,uBAAuB,GAAG,eAAe,GAAG,QAAQ,CAC9D,CAAC;IAEF;;;OAGG;IACH,KAAK,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE;QACb,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,SAAS,IAAI,SAAS,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC;IACzC,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,CAAC;AAEH,KAAK,SAAS,CAAC,UAAU,SAAS,OAAO,EAAE,KAAK,IAAI,UAAU,SAAS,IAAI,GACvE,OAAO,CAAC,KAAK,CAAC,GACd,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,EACR,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IACvC,SAAS,CACX,MAAM,SAAS,QAAQ,GAAG,IAAI,GAAG,KAAK,EACtC;IACE;;QAEI;IACJ,aAAa,EAAE,SAAS,CAAC;CAC1B,CACF,CAAC"}
@@ -63,7 +63,7 @@ export declare const defaultTransformer: CombinedDataTransformer;
63
63
  /**
64
64
  * Takes a unserialized `TRPCResponse` and serializes it with the router's transformers
65
65
  **/
66
- export declare function transformTRPCResponse<TResponse extends TRPCResponse | TRPCResponse[] | TRPCResponseMessage | TRPCResponseMessage[]>(config: RootConfig<AnyRootTypes>, itemOrItems: TResponse): import("./rpc").TRPCSuccessResponse<unknown> | import("./rpc").TRPCErrorResponse<import("./rpc").TRPCErrorShape<object>> | ({
66
+ export declare function transformTRPCResponse<TResponse extends TRPCResponse | TRPCResponse[] | TRPCResponseMessage | TRPCResponseMessage[]>(config: RootConfig<AnyRootTypes>, itemOrItems: TResponse): import("./rpc").TRPCErrorResponse<import("./rpc").TRPCErrorShape<object>> | import("./rpc").TRPCSuccessResponse<unknown> | ({
67
67
  id: import("./rpc").JSONRPC2.RequestId;
68
68
  } & TRPCResultMessage<unknown>) | (TRPCResponse | TRPCResponseMessage)[];
69
69
  /** @internal */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/server",
3
- "version": "11.0.0-alpha-tmp-query-optoins-codemod.721+b80507aaf",
3
+ "version": "11.0.0-alpha-tmp-02-12-response-types-idea.838+5e23cdfc1",
4
4
  "description": "The tRPC server library",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -152,5 +152,5 @@
152
152
  "peerDependencies": {
153
153
  "typescript": ">=5.7.2"
154
154
  },
155
- "gitHead": "b80507aaf61ea90d432c301ec564ba6c397a1256"
155
+ "gitHead": "5e23cdfc1215dd81e03b2e032bebb4309b68819a"
156
156
  }
@@ -19,11 +19,17 @@ import type {
19
19
  TRPCRequestInfo,
20
20
  } from '../../@trpc/server/http';
21
21
 
22
- export type FetchCreateContextFnOptions = {
22
+ export interface FetchCreateContextFnOptions {
23
23
  req: Request;
24
+ /**
25
+ * Used for setting headers on the `Response`
26
+ */
24
27
  resHeaders: Headers;
28
+ /**
29
+ * Info about the request
30
+ */
25
31
  info: TRPCRequestInfo;
26
- };
32
+ }
27
33
 
28
34
  export type FetchCreateContextFn<TRouter extends AnyRouter> = (
29
35
  opts: FetchCreateContextFnOptions,
@@ -19,9 +19,14 @@ import type { Serialize } from './serialize';
19
19
  export type inferTransformedProcedureOutput<
20
20
  TInferrable extends InferrableClientTypes,
21
21
  TProcedure extends AnyProcedure,
22
- > = inferClientTypes<TInferrable>['transformer'] extends false
23
- ? Serialize<inferProcedureOutput<TProcedure>>
24
- : inferProcedureOutput<TProcedure>;
22
+ > =
23
+ inferProcedureOutput<TProcedure> extends infer $Output
24
+ ? $Output extends Response
25
+ ? $Output
26
+ : inferClientTypes<TInferrable>['transformer'] extends false
27
+ ? Serialize<$Output>
28
+ : $Output
29
+ : inferProcedureOutput<TProcedure>;
25
30
  /** @internal */
26
31
 
27
32
  export type inferTransformedSubscriptionOutput<
@@ -351,6 +351,14 @@ export async function resolveResponse<TRouter extends AnyRouter>(
351
351
  type: proc._def.type,
352
352
  signal: opts.req.signal,
353
353
  });
354
+
355
+ if (info.isBatchCall && data instanceof Response) {
356
+ throw new TRPCError({
357
+ code: 'BAD_REQUEST',
358
+ message: 'This procedure cannot be batched - use httpLink instead',
359
+ });
360
+ }
361
+
354
362
  return [undefined, { data }];
355
363
  } catch (cause) {
356
364
  const error = getTRPCErrorFromUnknown(cause);
@@ -371,9 +379,27 @@ export async function resolveResponse<TRouter extends AnyRouter>(
371
379
 
372
380
  // ----------- response handlers -----------
373
381
  if (!info.isBatchCall) {
374
- const [call] = info.calls;
382
+ const call = info.calls[0]!;
375
383
  const [error, result] = await rpcCalls[0]!;
376
384
 
385
+ if (!error && result?.data instanceof Response) {
386
+ const response = result.data;
387
+ if (!config.experimental?.outputResponse) {
388
+ throw new Error(
389
+ 'You need to activate outputResponse in the root config to use this feature - e.g. `initTRPC.create({ experimental: { outputResponse: true } })`',
390
+ );
391
+ }
392
+
393
+ const headers = new Headers(response.headers);
394
+ headers.set('trpc-response-output', '1');
395
+
396
+ return new Response(response.body, {
397
+ status: response.status,
398
+ statusText: response.statusText,
399
+ headers,
400
+ });
401
+ }
402
+
377
403
  switch (info.type) {
378
404
  case 'unknown':
379
405
  case 'mutation':
@@ -394,8 +420,8 @@ export async function resolveResponse<TRouter extends AnyRouter>(
394
420
  config,
395
421
  ctx: ctxManager.valueOrUndefined(),
396
422
  error,
397
- input: call!.result(),
398
- path: call!.path,
423
+ input: call.result(),
424
+ path: call.path,
399
425
  type: info.type,
400
426
  }),
401
427
  }
@@ -409,6 +435,7 @@ export async function resolveResponse<TRouter extends AnyRouter>(
409
435
  headers,
410
436
  untransformedJSON: [res],
411
437
  });
438
+
412
439
  return new Response(
413
440
  JSON.stringify(transformTRPCResponse(config, res)),
414
441
  {
@@ -437,7 +464,7 @@ export async function resolveResponse<TRouter extends AnyRouter>(
437
464
  return errorToAsyncIterable(
438
465
  new TRPCError({
439
466
  message: `Subscription ${
440
- call!.path
467
+ call.path
441
468
  } did not return an observable or a AsyncGenerator`,
442
469
  code: 'INTERNAL_SERVER_ERROR',
443
470
  }),
@@ -113,6 +113,7 @@ class TRPCBuilder<TContext extends object, TMeta extends object> {
113
113
  * @see https://trpc.io/docs/v11/server/procedures
114
114
  */
115
115
  procedure: createBuilder<$Root['ctx'], $Root['meta']>({
116
+ _config: config,
116
117
  meta: opts?.defaultMeta,
117
118
  }),
118
119
  /**
@@ -23,6 +23,7 @@ import type {
23
23
  QueryProcedure,
24
24
  SubscriptionProcedure,
25
25
  } from './procedure';
26
+ import type { RootConfig } from './rootConfig';
26
27
  import type { inferTrackedOutput } from './stream/tracked';
27
28
  import type {
28
29
  GetRawInputFn,
@@ -67,6 +68,7 @@ export type CallerOverride<TContext> = (opts: {
67
68
  _def: AnyProcedure['_def'];
68
69
  }) => Promise<unknown>;
69
70
  type ProcedureBuilderDef<TMeta> = {
71
+ _config: Partial<Pick<RootConfig<any>, 'experimental'>>;
70
72
  procedure: true;
71
73
  inputs: Parser[];
72
74
  output?: Parser;
@@ -422,7 +424,7 @@ function createNewBuilder(
422
424
  def1: AnyProcedureBuilderDef,
423
425
  def2: Partial<AnyProcedureBuilderDef>,
424
426
  ): AnyProcedureBuilder {
425
- const { middlewares = [], inputs, meta, ...rest } = def2;
427
+ const { middlewares = [], inputs, meta, _config, ...rest } = def2;
426
428
 
427
429
  // TODO: maybe have a fn here to warn about calls
428
430
  return createBuilder({
@@ -430,11 +432,22 @@ function createNewBuilder(
430
432
  inputs: [...def1.inputs, ...(inputs ?? [])],
431
433
  middlewares: [...def1.middlewares, ...middlewares],
432
434
  meta: def1.meta && meta ? { ...def1.meta, ...meta } : (meta ?? def1.meta),
435
+ _config: !_config
436
+ ? def1._config
437
+ : {
438
+ experimental: {
439
+ ...def1._config.experimental,
440
+ ..._config.experimental,
441
+ },
442
+ },
433
443
  });
434
444
  }
435
445
 
446
+ type SetRequired<TType, TKey extends keyof TType> = TType &
447
+ Required<Pick<TType, TKey>>;
448
+
436
449
  export function createBuilder<TContext, TMeta>(
437
- initDef: Partial<AnyProcedureBuilderDef> = {},
450
+ initDef: SetRequired<Partial<ProcedureBuilderDef<TMeta>>, '_config'>,
438
451
  ): ProcedureBuilder<
439
452
  TContext,
440
453
  TMeta,
@@ -86,7 +86,9 @@ export interface RootConfig<TTypes extends RootTypes> {
86
86
  * @see https://trpc.io/docs/client/links/httpBatchStreamLink
87
87
  */
88
88
  jsonl?: Pick<JSONLProducerOptions, 'pingMs'>;
89
- experimental?: {};
89
+ experimental?: {
90
+ outputResponse?: boolean;
91
+ };
90
92
  }
91
93
 
92
94
  /**