@trpc/server 11.0.0-next-beta.264 → 11.0.0-next-beta.272

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.
@@ -1 +1 @@
1
- {"version":3,"file":"fastifyTRPCPlugin.d.ts","sourceRoot":"","sources":["../../../src/adapters/fastify/fastifyTRPCPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAKnE,MAAM,WAAW,wBAAwB,CAAC,OAAO,SAAS,SAAS;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,qBAAqB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;CAC3E;AAED,MAAM,MAAM,2BAA2B,GAAG,8BAA8B,CACtE,cAAc,EACd,YAAY,CACb,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACvC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,QAkC5B"}
1
+ {"version":3,"file":"fastifyTRPCPlugin.d.ts","sourceRoot":"","sources":["../../../src/adapters/fastify/fastifyTRPCPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAKnE,MAAM,WAAW,wBAAwB,CAAC,OAAO,SAAS,SAAS;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,qBAAqB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;CAC3E;AAED,MAAM,MAAM,2BAA2B,GAAG,8BAA8B,CACtE,cAAc,EACd,YAAY,CACb,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACvC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,QAoC5B"}
@@ -20,6 +20,7 @@ function fastifyTRPCPlugin(fastify, opts, done) {
20
20
  _done(null, body);
21
21
  });
22
22
  let prefix = opts.prefix ?? '';
23
+ const websocketPrefix = prefix;
23
24
  // https://github.com/fastify/fastify-plugin/blob/fe079bef6557a83794bf437e14b9b9edb8a74104/plugin.js#L11
24
25
  // @ts-expect-error property 'default' does not exists on type ...
25
26
  if (typeof fastifyTRPCPlugin.default !== 'function') {
@@ -37,6 +38,7 @@ function fastifyTRPCPlugin(fastify, opts, done) {
37
38
  if (opts.useWSS) {
38
39
  ws.applyWSSHandler({
39
40
  ...opts.trpcOptions,
41
+ prefix: websocketPrefix,
40
42
  wss: fastify.websocketServer
41
43
  });
42
44
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -18,6 +18,7 @@ function fastifyTRPCPlugin(fastify, opts, done) {
18
18
  _done(null, body);
19
19
  });
20
20
  let prefix = opts.prefix ?? '';
21
+ const websocketPrefix = prefix;
21
22
  // https://github.com/fastify/fastify-plugin/blob/fe079bef6557a83794bf437e14b9b9edb8a74104/plugin.js#L11
22
23
  // @ts-expect-error property 'default' does not exists on type ...
23
24
  if (typeof fastifyTRPCPlugin.default !== 'function') {
@@ -35,6 +36,7 @@ function fastifyTRPCPlugin(fastify, opts, done) {
35
36
  if (opts.useWSS) {
36
37
  applyWSSHandler({
37
38
  ...opts.trpcOptions,
39
+ prefix: websocketPrefix,
38
40
  wss: fastify.websocketServer
39
41
  });
40
42
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -31,6 +31,7 @@ export type WSSHandlerOptions<TRouter extends AnyRouter> = BaseHandlerOptions<TR
31
31
  }) & {
32
32
  wss: ws.WebSocketServer;
33
33
  process?: NodeJS.Process;
34
+ prefix?: string;
34
35
  };
35
36
  export declare function applyWSSHandler<TRouter extends AnyRouter>(opts: WSSHandlerOptions<TRouter>): {
36
37
  broadcastReconnectNotification: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/adapters/ws.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAQrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAQlE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,8BAA8B,CAAC,eAAe,EAAE,EAAE,CAAC,SAAS,CAAC,EAC7D,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1D,IAAI,EAAE,yBAAyB,KAC5B,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IAAI,kBAAkB,CAC3E,OAAO,EACP,eAAe,CAChB,GACC,CAAC,MAAM,SAAS,kBAAkB,CAAC,OAAO,CAAC,GACvC;IACE;;QAEI;IACJ,aAAa,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC7C,GACD;IACE;;QAEI;IACJ,aAAa,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC5C,CAAC,GAAG;IACP,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;CAC1B,CAAC;AAEJ,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;;EAwQjC"}
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/adapters/ws.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAQrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAQlE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,8BAA8B,CAAC,eAAe,EAAE,EAAE,CAAC,SAAS,CAAC,EAC7D,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1D,IAAI,EAAE,yBAAyB,KAC5B,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IAAI,kBAAkB,CAC3E,OAAO,EACP,eAAe,CAChB,GACC,CAAC,MAAM,SAAS,kBAAkB,CAAC,OAAO,CAAC,GACvC;IACE;;QAEI;IACJ,aAAa,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC7C,GACD;IACE;;QAEI;IACJ,aAAa,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC5C,CAAC,GAAG;IACP,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEJ,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;;EA4QjC"}
@@ -14,9 +14,12 @@ var observable = require('../observable/observable.js');
14
14
  * @link https://github.com/trpc/trpc/pull/5279
15
15
  */ const WEBSOCKET_OPEN = 1; /* ws.WebSocket.OPEN */
16
16
  function applyWSSHandler(opts) {
17
- const { wss , createContext , router: router$1 } = opts;
17
+ const { wss , createContext , router: router$1 , prefix } = opts;
18
18
  const { transformer: transformer$1 } = router$1._def._config;
19
19
  wss.on('connection', async (client, req)=>{
20
+ if (prefix && !req.url?.startsWith(prefix)) {
21
+ return;
22
+ }
20
23
  const clientSubscriptions = new Map();
21
24
  function respond(untransformedJSON) {
22
25
  client.send(JSON.stringify(transformer.transformTRPCResponse(router$1._def._config, untransformedJSON)));
@@ -12,9 +12,12 @@ import { isObservable } from '../observable/observable.mjs';
12
12
  * @link https://github.com/trpc/trpc/pull/5279
13
13
  */ const WEBSOCKET_OPEN = 1; /* ws.WebSocket.OPEN */
14
14
  function applyWSSHandler(opts) {
15
- const { wss , createContext , router } = opts;
15
+ const { wss , createContext , router , prefix } = opts;
16
16
  const { transformer } = router._def._config;
17
17
  wss.on('connection', async (client, req)=>{
18
+ if (prefix && !req.url?.startsWith(prefix)) {
19
+ return;
20
+ }
18
21
  const clientSubscriptions = new Map();
19
22
  function respond(untransformedJSON) {
20
23
  client.send(JSON.stringify(transformTRPCResponse(router._def._config, untransformedJSON)));
@@ -1,12 +1,12 @@
1
1
  {
2
- "bundleSize": 92119,
3
- "bundleOrigSize": 145134,
4
- "bundleReduction": 36.53,
2
+ "bundleSize": 92285,
3
+ "bundleOrigSize": 145552,
4
+ "bundleReduction": 36.6,
5
5
  "modules": [
6
6
  {
7
7
  "id": "/src/adapters/ws.ts",
8
- "size": 9877,
9
- "origSize": 9169,
8
+ "size": 9970,
9
+ "origSize": 9269,
10
10
  "renderedExports": [
11
11
  "applyWSSHandler"
12
12
  ],
@@ -14,7 +14,7 @@
14
14
  "dependents": [
15
15
  "/src/adapters/fastify/fastifyTRPCPlugin.ts"
16
16
  ],
17
- "percent": 10.72,
17
+ "percent": 10.8,
18
18
  "reduction": 0
19
19
  },
20
20
  {
@@ -26,13 +26,13 @@
26
26
  ],
27
27
  "removedExports": [],
28
28
  "dependents": [],
29
- "percent": 10.05,
29
+ "percent": 10.03,
30
30
  "reduction": 21.53
31
31
  },
32
32
  {
33
33
  "id": "/src/unstable-core-do-not-import/router.ts",
34
34
  "size": 6040,
35
- "origSize": 9620,
35
+ "origSize": 9792,
36
36
  "renderedExports": [
37
37
  "createRouterFactory",
38
38
  "callProcedure",
@@ -42,16 +42,16 @@
42
42
  "removedExports": [],
43
43
  "dependents": [
44
44
  "/src/unstable-core-do-not-import.ts",
45
- "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts",
46
- "/src/unstable-core-do-not-import/initTRPC.ts"
45
+ "/src/unstable-core-do-not-import/initTRPC.ts",
46
+ "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts"
47
47
  ],
48
- "percent": 6.56,
49
- "reduction": 37.21
48
+ "percent": 6.54,
49
+ "reduction": 38.32
50
50
  },
51
51
  {
52
52
  "id": "/src/unstable-core-do-not-import/procedureBuilder.ts",
53
53
  "size": 5602,
54
- "origSize": 11684,
54
+ "origSize": 11765,
55
55
  "renderedExports": [
56
56
  "unsetMarker",
57
57
  "createBuilder"
@@ -61,8 +61,8 @@
61
61
  "/src/unstable-core-do-not-import.ts",
62
62
  "/src/unstable-core-do-not-import/initTRPC.ts"
63
63
  ],
64
- "percent": 6.08,
65
- "reduction": 52.05
64
+ "percent": 6.07,
65
+ "reduction": 52.38
66
66
  },
67
67
  {
68
68
  "id": "/src/adapters/node-http/content-type/form-data/fileUploadHandler.ts",
@@ -77,7 +77,7 @@
77
77
  "dependents": [
78
78
  "/src/adapters/node-http/content-type/form-data/index.ts"
79
79
  ],
80
- "percent": 5.4,
80
+ "percent": 5.39,
81
81
  "reduction": 36.77
82
82
  },
83
83
  {
@@ -91,7 +91,7 @@
91
91
  ],
92
92
  "removedExports": [],
93
93
  "dependents": [],
94
- "percent": 4.8,
94
+ "percent": 4.79,
95
95
  "reduction": 32.71
96
96
  },
97
97
  {
@@ -119,7 +119,7 @@
119
119
  "dependents": [
120
120
  "/src/adapters/fetch/index.ts"
121
121
  ],
122
- "percent": 3.86,
122
+ "percent": 3.85,
123
123
  "reduction": 9.5
124
124
  },
125
125
  {
@@ -154,7 +154,7 @@
154
154
  "dependents": [
155
155
  "/src/adapters/aws-lambda/index.ts"
156
156
  ],
157
- "percent": 3.59,
157
+ "percent": 3.58,
158
158
  "reduction": 36.48
159
159
  },
160
160
  {
@@ -184,7 +184,7 @@
184
184
  "dependents": [
185
185
  "/src/unstable-core-do-not-import.ts"
186
186
  ],
187
- "percent": 3.13,
187
+ "percent": 3.12,
188
188
  "reduction": 38.95
189
189
  },
190
190
  {
@@ -200,11 +200,11 @@
200
200
  "removedExports": [],
201
201
  "dependents": [
202
202
  "/src/unstable-core-do-not-import.ts",
203
- "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts",
204
203
  "/src/unstable-core-do-not-import/router.ts",
205
- "/src/unstable-core-do-not-import/initTRPC.ts"
204
+ "/src/unstable-core-do-not-import/initTRPC.ts",
205
+ "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts"
206
206
  ],
207
- "percent": 2.98,
207
+ "percent": 2.97,
208
208
  "reduction": 45.94
209
209
  },
210
210
  {
@@ -239,7 +239,7 @@
239
239
  "/src/unstable-core-do-not-import/initTRPC.ts",
240
240
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
241
241
  ],
242
- "percent": 2.8,
242
+ "percent": 2.79,
243
243
  "reduction": 55.95
244
244
  },
245
245
  {
@@ -251,7 +251,7 @@
251
251
  ],
252
252
  "removedExports": [],
253
253
  "dependents": [],
254
- "percent": 2.76,
254
+ "percent": 2.75,
255
255
  "reduction": 31.37
256
256
  },
257
257
  {
@@ -266,10 +266,10 @@
266
266
  "removedExports": [],
267
267
  "dependents": [
268
268
  "/src/unstable-core-do-not-import.ts",
269
- "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts",
270
- "/src/unstable-core-do-not-import/http/contentType.ts",
271
269
  "/src/unstable-core-do-not-import/router.ts",
272
270
  "/src/unstable-core-do-not-import/middleware.ts",
271
+ "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts",
272
+ "/src/unstable-core-do-not-import/http/contentType.ts",
273
273
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
274
274
  ],
275
275
  "percent": 1.88,
@@ -289,6 +289,20 @@
289
289
  "percent": 1.78,
290
290
  "reduction": 34.79
291
291
  },
292
+ {
293
+ "id": "/src/adapters/fastify/fastifyTRPCPlugin.ts",
294
+ "size": 1603,
295
+ "origSize": 2343,
296
+ "renderedExports": [
297
+ "fastifyTRPCPlugin"
298
+ ],
299
+ "removedExports": [],
300
+ "dependents": [
301
+ "/src/adapters/fastify/index.ts"
302
+ ],
303
+ "percent": 1.74,
304
+ "reduction": 31.58
305
+ },
292
306
  {
293
307
  "id": "/src/adapters/next.ts",
294
308
  "size": 1602,
@@ -310,23 +324,9 @@
310
324
  ],
311
325
  "removedExports": [],
312
326
  "dependents": [],
313
- "percent": 1.72,
327
+ "percent": 1.71,
314
328
  "reduction": 21.04
315
329
  },
316
- {
317
- "id": "/src/adapters/fastify/fastifyTRPCPlugin.ts",
318
- "size": 1530,
319
- "origSize": 2278,
320
- "renderedExports": [
321
- "fastifyTRPCPlugin"
322
- ],
323
- "removedExports": [],
324
- "dependents": [
325
- "/src/adapters/fastify/index.ts"
326
- ],
327
- "percent": 1.66,
328
- "reduction": 32.84
329
- },
330
330
  {
331
331
  "id": "/src/unstable-core-do-not-import/createProxy.ts",
332
332
  "size": 1507,
@@ -341,7 +341,7 @@
341
341
  "/src/unstable-core-do-not-import/router.ts",
342
342
  "/src/unstable-core-do-not-import/initTRPC.ts"
343
343
  ],
344
- "percent": 1.64,
344
+ "percent": 1.63,
345
345
  "reduction": 5.58
346
346
  },
347
347
  {
@@ -368,8 +368,8 @@
368
368
  ],
369
369
  "removedExports": [],
370
370
  "dependents": [
371
- "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts",
372
- "/src/unstable-core-do-not-import/error/getErrorShape.ts"
371
+ "/src/unstable-core-do-not-import/error/getErrorShape.ts",
372
+ "/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts"
373
373
  ],
374
374
  "percent": 1.34,
375
375
  "reduction": 23.32
@@ -414,8 +414,8 @@
414
414
  "removedExports": [],
415
415
  "dependents": [
416
416
  "/src/unstable-core-do-not-import.ts",
417
- "/src/unstable-core-do-not-import/rpc/codes.ts",
418
417
  "/src/unstable-core-do-not-import/error/TRPCError.ts",
418
+ "/src/unstable-core-do-not-import/rpc/codes.ts",
419
419
  "/src/unstable-core-do-not-import/router.ts",
420
420
  "/src/unstable-core-do-not-import/transformer.ts",
421
421
  "/src/unstable-core-do-not-import/middleware.ts",
@@ -628,9 +628,9 @@
628
628
  "reduction": 93.8
629
629
  },
630
630
  {
631
- "id": "/src/http.ts",
631
+ "id": "/src/index.ts",
632
632
  "size": 0,
633
- "origSize": 37,
633
+ "origSize": 32,
634
634
  "renderedExports": [],
635
635
  "removedExports": [],
636
636
  "dependents": [],
@@ -638,9 +638,9 @@
638
638
  "reduction": 100
639
639
  },
640
640
  {
641
- "id": "/src/index.ts",
641
+ "id": "/src/http.ts",
642
642
  "size": 0,
643
- "origSize": 32,
643
+ "origSize": 37,
644
644
  "renderedExports": [],
645
645
  "removedExports": [],
646
646
  "dependents": [],
@@ -658,9 +658,9 @@
658
658
  "reduction": 100
659
659
  },
660
660
  {
661
- "id": "/src/shared.ts",
661
+ "id": "/src/unstable-core-do-not-import.ts",
662
662
  "size": 0,
663
- "origSize": 653,
663
+ "origSize": 1552,
664
664
  "renderedExports": [],
665
665
  "removedExports": [],
666
666
  "dependents": [],
@@ -668,9 +668,9 @@
668
668
  "reduction": 100
669
669
  },
670
670
  {
671
- "id": "/src/unstable-core-do-not-import.ts",
671
+ "id": "/src/shared.ts",
672
672
  "size": 0,
673
- "origSize": 1552,
673
+ "origSize": 653,
674
674
  "renderedExports": [],
675
675
  "removedExports": [],
676
676
  "dependents": [],
@@ -716,9 +716,9 @@
716
716
  "renderedExports": [],
717
717
  "removedExports": [],
718
718
  "dependents": [
719
- "/src/adapters/standalone.ts",
720
719
  "/src/adapters/express.ts",
721
- "/src/adapters/next.ts"
720
+ "/src/adapters/next.ts",
721
+ "/src/adapters/standalone.ts"
722
722
  ],
723
723
  "percent": 0,
724
724
  "reduction": 100
@@ -1,15 +1,15 @@
1
1
  import type { inferObservableValue } from '../../observable';
2
2
  import type { AnyProcedure, inferProcedureInput } from '../procedure';
3
3
  import type { AnyRouter, RouterRecord } from '../router';
4
- import type { AnyClientRootTypes, InferrableClientTypes, inferRootTypes } from './inferrable';
4
+ import type { AnyClientTypes, inferClientTypes, InferrableClientTypes } from './inferrable';
5
5
  import type { Serialize } from './serialize';
6
6
  /**
7
7
  * @internal
8
8
  */
9
- export type inferTransformedProcedureOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferRootTypes<TInferrable>['transformer'] extends false ? Serialize<TProcedure['_def']['_output_out']> : TProcedure['_def']['_output_out'];
9
+ export type inferTransformedProcedureOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferClientTypes<TInferrable>['transformer'] extends false ? Serialize<TProcedure['_def']['_output_out']> : TProcedure['_def']['_output_out'];
10
10
  /** @internal */
11
- export type inferTransformedSubscriptionOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferRootTypes<TInferrable>['transformer'] extends false ? Serialize<inferObservableValue<TProcedure['_def']['_output_out']>> : inferObservableValue<TProcedure['_def']['_output_out']>;
12
- export type GetInferenceHelpers<TType extends 'input' | 'output', TRoot extends AnyClientRootTypes, TRecord extends RouterRecord> = {
11
+ export type inferTransformedSubscriptionOutput<TInferrable extends InferrableClientTypes, TProcedure extends AnyProcedure> = inferClientTypes<TInferrable>['transformer'] extends false ? Serialize<inferObservableValue<TProcedure['_def']['_output_out']>> : inferObservableValue<TProcedure['_def']['_output_out']>;
12
+ export type GetInferenceHelpers<TType extends 'input' | 'output', TRoot extends AnyClientTypes, TRecord extends RouterRecord> = {
13
13
  [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends RouterRecord ? GetInferenceHelpers<TType, TRoot, $Value> : $Value extends AnyProcedure ? TType extends 'input' ? inferProcedureInput<$Value> : inferTransformedProcedureOutput<TRoot, $Value> : never : never;
14
14
  };
15
15
  export type inferRouterInputs<TRouter extends AnyRouter> = GetInferenceHelpers<'input', TRouter['_def']['_config']['$types'], TRouter['_def']['record']>;
@@ -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,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,cAAc,EACf,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,cAAc,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GACxD,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,GAC5C,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC;AACtC,gBAAgB;AAEhB,MAAM,MAAM,kCAAkC,CAC5C,WAAW,SAAS,qBAAqB,EACzC,UAAU,SAAS,YAAY,IAC7B,cAAc,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,SAAS,KAAK,GACxD,SAAS,CAAC,oBAAoB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAClE,oBAAoB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAE5D,MAAM,MAAM,mBAAmB,CAC7B,KAAK,SAAS,OAAO,GAAG,QAAQ,EAChC,KAAK,SAAS,kBAAkB,EAChC,OAAO,SAAS,YAAY,IAC1B;KACD,IAAI,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,MAAM,MAAM,GACvD,MAAM,SAAS,YAAY,GACzB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GACzC,MAAM,SAAS,YAAY,GAC3B,KAAK,SAAS,OAAO,GACnB,mBAAmB,CAAC,MAAM,CAAC,GAC3B,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,GAChD,KAAK,GACP,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,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACtE,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,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,GAC5C,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC;AACtC,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,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAClE,oBAAoB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAE5D,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,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GACzC,MAAM,SAAS,YAAY,GAC3B,KAAK,SAAS,OAAO,GACnB,mBAAmB,CAAC,MAAM,CAAC,GAC3B,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,GAChD,KAAK,GACP,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,11 +1,11 @@
1
1
  import type { AnyRootTypes } from '../rootConfig';
2
- export type AnyClientRootTypes = Pick<AnyRootTypes, 'errorShape' | 'transformer'>;
2
+ export type AnyClientTypes = Pick<AnyRootTypes, 'errorShape' | 'transformer'>;
3
3
  /**
4
4
  * Result of `initTRPC.create()`
5
5
  */
6
6
  type InitLike = {
7
7
  _config: {
8
- $types: AnyClientRootTypes;
8
+ $types: AnyClientTypes;
9
9
  };
10
10
  };
11
11
  /**
@@ -18,16 +18,15 @@ type RouterLike = {
18
18
  * Result of `initTRPC.create()._config`
19
19
  */
20
20
  type RootConfigLike = {
21
- $types: AnyClientRootTypes;
21
+ $types: AnyClientTypes;
22
22
  };
23
23
  /**
24
24
  * Anything that can be inferred to the root config types needed for a TRPC client
25
25
  */
26
- export type InferrableClientTypes = RouterLike | InitLike | RootConfigLike | AnyClientRootTypes;
26
+ export type InferrableClientTypes = RouterLike | InitLike | RootConfigLike | AnyClientTypes;
27
27
  /**
28
28
  * Infer the root types from a InferrableClientTypes
29
29
  */
30
- export type inferRootTypes<TInferrable extends InferrableClientTypes> = TInferrable extends AnyClientRootTypes ? TInferrable : TInferrable extends RootConfigLike ? TInferrable['$types'] : TInferrable extends InitLike ? TInferrable['_config']['$types'] : TInferrable extends RouterLike ? TInferrable['_def']['_config']['$types'] : never;
31
- export type inferErrorShape<TInferrable extends InferrableClientTypes> = inferRootTypes<TInferrable>['errorShape'];
30
+ export type inferClientTypes<TInferrable extends InferrableClientTypes> = TInferrable extends AnyClientTypes ? TInferrable : TInferrable extends RootConfigLike ? TInferrable['$types'] : TInferrable extends InitLike ? TInferrable['_config']['$types'] : TInferrable extends RouterLike ? TInferrable['_def']['_config']['$types'] : never;
32
31
  export {};
33
32
  //# sourceMappingURL=inferrable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inferrable.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/clientish/inferrable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,YAAY,EACZ,YAAY,GAAG,aAAa,CAC7B,CAAC;AAEF;;GAEG;AACH,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE;QACP,MAAM,EAAE,kBAAkB,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,kBAAkB,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,UAAU,GACV,QAAQ,GACR,cAAc,GACd,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,WAAW,SAAS,qBAAqB,IAClE,WAAW,SAAS,kBAAkB,GAClC,WAAW,GACX,WAAW,SAAS,cAAc,GAClC,WAAW,CAAC,QAAQ,CAAC,GACrB,WAAW,SAAS,QAAQ,GAC5B,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAChC,WAAW,SAAS,UAAU,GAC9B,WAAW,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GACxC,KAAK,CAAC;AAEZ,MAAM,MAAM,eAAe,CAAC,WAAW,SAAS,qBAAqB,IACnE,cAAc,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"inferrable.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/clientish/inferrable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;AAE9E;;GAEG;AACH,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE;QACP,MAAM,EAAE,cAAc,CAAC;KACxB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,UAAU,GACV,QAAQ,GACR,cAAc,GACd,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,WAAW,SAAS,qBAAqB,IACpE,WAAW,SAAS,cAAc,GAC9B,WAAW,GACX,WAAW,SAAS,cAAc,GAClC,WAAW,CAAC,QAAQ,CAAC,GACrB,WAAW,SAAS,QAAQ,GAC5B,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAChC,WAAW,SAAS,UAAU,GAC9B,WAAW,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GACxC,KAAK,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { inferObservableValue } from '../observable';
1
2
  import type { AnyMiddlewareFunction, MiddlewareBuilder, MiddlewareFunction } from './middleware';
2
3
  import type { inferParser, Parser } from './parser';
3
4
  import type { MutationProcedure, ProcedureType, QueryProcedure, SubscriptionProcedure } from './procedure';
@@ -77,7 +78,7 @@ export interface ProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn,
77
78
  */
78
79
  subscription<$Output>(resolver: ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output>): SubscriptionProcedure<{
79
80
  input: DefaultValue<TInputIn, void>;
80
- output: DefaultValue<TOutputOut, $Output>;
81
+ output: DefaultValue<TOutputOut, inferObservableValue<$Output>>;
81
82
  }>;
82
83
  /**
83
84
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/procedureBuilder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAKV,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,qBAAqB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,SAAS,EACV,MAAM,SAAS,CAAC;AAGjB,KAAK,kBAAkB,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,SAAS,WAAW,GAC7D,KAAK,GACL,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;AAE5B,gBAAgB;AAChB,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD,KAAK,WAAW,GAAG,OAAO,WAAW,CAAC;AACtC,KAAK,YAAY,CAAC,MAAM,EAAE,SAAS,IAAI,MAAM,SAAS,WAAW,GAC7D,SAAS,GACT,MAAM,CAAC;AAEX,KAAK,mBAAmB,CAAC,KAAK,IAAI;IAChC,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,EAAE,wBAAwB,CAAC;IACpC,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,KAAK,sBAAsB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAEvD;;;GAGG;AACH,UAAU,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS;IACxE,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACxD,KAAK,EAAE,SAAS,SAAS,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;CAC9D;AAED;;GAEG;AACH,KAAK,iBAAiB,CACpB,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,OAAO,IACL,CAAC,IAAI,EAAE;IACT,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACtD,KAAK,EAAE,SAAS,SAAS,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;CAC9D,KAAK,YAAY,CAEhB,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CACvC,CAAC;AAGF,MAAM,WAAW,gBAAgB,CAC/B,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,UAAU;IAEV;;;OAGG;IACH,KAAK,CAAC,OAAO,SAAS,MAAM,EAC1B,MAAM,EAAE,SAAS,SAAS,WAAW,GACjC,OAAO,GACP,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACvE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACnD,SAAS,SAAS,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAC3C,SAAS,SAAS,SAAS,GACzB,OAAO,GACP,SAAS,CAAC,sDAAsD,CAAC,GACnE,OAAO,GACT,SAAS,CAAC,gDAAgD,CAAC,GAC7D,SAAS,CAAC,gDAAgD,CAAC,GAC9D,gBAAgB,CACjB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,EACxD,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAC1D,SAAS,EACT,UAAU,CACX,CAAC;IACF;;;OAGG;IACH,MAAM,CAAC,OAAO,SAAS,MAAM,EAC3B,MAAM,EAAE,OAAO,GACd,gBAAgB,CACjB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,EACzD,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAC5D,CAAC;IACF;;;OAGG;IACH,IAAI,CACF,IAAI,EAAE,KAAK,GACV,gBAAgB,CACjB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,UAAU,CACX,CAAC;IACF;;;OAGG;IACH,GAAG,CAAC,oBAAoB,EACtB,EAAE,EACE,iBAAiB,CACf,SAAS,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EACtC,KAAK,EACL,oBAAoB,EACpB,SAAS,CACV,GACD,kBAAkB,CAChB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,CACV,GACJ,gBAAgB,CACjB,QAAQ,EACR,KAAK,EACL,SAAS,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,EAClD,QAAQ,EACR,SAAS,EACT,SAAS,EACT,UAAU,CACX,CAAC;IACF;;;OAGG;IACH,KAAK,CAAC,OAAO,EACX,QAAQ,EAAE,iBAAiB,CACzB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,OAAO,CACR,GACA,cAAc,CAAC;QAChB,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;KAC3C,CAAC,CAAC;IAEH;;;OAGG;IACH,QAAQ,CAAC,OAAO,EACd,QAAQ,EAAE,iBAAiB,CACzB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,OAAO,CACR,GACA,iBAAiB,CAAC;QACnB,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;KAC3C,CAAC,CAAC;IAEH;;;OAGG;IACH,YAAY,CAAC,OAAO,EAClB,QAAQ,EAAE,iBAAiB,CACzB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,OAAO,CACR,GACA,qBAAqB,CAAC;QACvB,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;KAC3C,CAAC,CAAC;IACH;;OAEG;IACH,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;CAClC;AAGD,KAAK,wBAAwB,GAAG,CAC9B,IAAI,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KACtC,OAAO,CAAC,OAAO,CAAC,CAAC;AAiBtB,wBAAgB,aAAa,CAAC,QAAQ,EAAE,KAAK,EAC3C,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAC5C,gBAAgB,CACjB,QAAQ,EACR,KAAK,EACL,MAAM,EACN,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,CACZ,CAuEA;AAwBD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,OAAO,CAAC;IACb,WAAW,EAAE,aAAa,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;CACrB"}
1
+ {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/procedureBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { Observable } from '../observable';
2
+ import { TRPCError } from './error/TRPCError';
1
3
  import type { AnyProcedure, inferProcedureInput } from './procedure';
2
4
  import type { ProcedureCallOptions } from './procedureBuilder';
3
5
  import type { AnyRootTypes, RootConfig } from './rootConfig';
@@ -5,7 +7,7 @@ import type { MaybePromise } from './types';
5
7
  export interface RouterRecord {
6
8
  [key: string]: AnyProcedure | RouterRecord;
7
9
  }
8
- type DecorateProcedure<TProcedure extends AnyProcedure> = (input: inferProcedureInput<TProcedure>) => Promise<TProcedure['_def']['_output_out']>;
10
+ type DecorateProcedure<TProcedure extends AnyProcedure> = (input: inferProcedureInput<TProcedure>) => Promise<TProcedure['_def']['type'] extends 'subscription' ? Observable<TProcedure['_def']['_output_out'], TRPCError> : TProcedure['_def']['_output_out']>;
9
11
  /**
10
12
  * @internal
11
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/router.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAW,MAAM,SAAS,CAAC;AAGrD,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,YAAY,CAAC;CAC5C;AAED,KAAK,iBAAiB,CAAC,UAAU,SAAS,YAAY,IAAI,CACxD,KAAK,EAAE,mBAAmB,CAAC,UAAU,CAAC,KACnC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,OAAO,SAAS,YAAY,IAAI;KAC9D,IAAI,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,YAAY,GACvD,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC,SAAS,YAAY,GAClC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GACnC,KAAK;CACV,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,CACtB,KAAK,SAAS,YAAY,EAC1B,OAAO,SAAS,YAAY,IAC1B;AACF;;;;GAIG;AACH,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KACnD,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAEnC,MAAM,WAAW,MAAM,CACrB,KAAK,SAAS,YAAY,EAC1B,OAAO,SAAS,YAAY;IAE5B,IAAI,EAAE;QACJ,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,EAAE,IAAI,CAAC;QACb,SAAS,CAAC,EAAE,KAAK,CAAC;QAClB,UAAU,EAAE,OAAO,CAAC;QACpB,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;IACF;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,MAAM,WAAW,CACrB,KAAK,SAAS,YAAY,EAC1B,IAAI,SAAS,YAAY,IACvB,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;AAE/B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAEzC,MAAM,MAAM,oBAAoB,CAAC,OAAO,SAAS,SAAS,IACxD,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEvC,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IACtD,oBAAoB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,SAAS,IACpD,oBAAoB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC;AAC9C,MAAM,MAAM,eAAe,CAAC,OAAO,SAAS,SAAS,IACnD,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AA8BxC,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,mBAAmB,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,2BAA2B,CACrC,cAAc,SAAS,mBAAmB,IACxC;KACD,CAAC,IAAI,MAAM,cAAc,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,MAAM,MAAM,GAC/D,MAAM,SAAS,YAAY,GACzB,MAAM,GACN,MAAM,SAAS,MAAM,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,GACzC,OAAO,GACP,MAAM,SAAS,mBAAmB,GAClC,2BAA2B,CAAC,MAAM,CAAC,GACnC,KAAK,GACP,KAAK;CACV,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,YAAY,EAC5D,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC;;;EA8E1B;AAOD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,oBAAoB,GAAG;IAAE,UAAU,EAAE,YAAY,CAAA;CAAE,oBAY1D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,YAAY,oGAmC7D;AAED,gBAAgB;AAChB,KAAK,YAAY,CACf,QAAQ,SAAS,SAAS,EAAE,EAC5B,KAAK,SAAS,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAErE,OAAO,SAAS,YAAY,GAAG,EAAE,IAC/B,QAAQ,SAAS;IACnB,MAAM,IAAI,SAAS,SAAS;IAC5B,GAAG,MAAM,IAAI,SAAS,SAAS,EAAE;CAClC,GACG,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,GAC3D,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAEhC,wBAAgB,YAAY,CAAC,QAAQ,SAAS,SAAS,EAAE,EACvD,GAAG,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,GAC3B,YAAY,CAAC,QAAQ,CAAC,CAoDxB"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/router.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/server",
3
- "version": "11.0.0-next-beta.264+f5f08f35d",
3
+ "version": "11.0.0-next-beta.272+765a5e71a",
4
4
  "description": "The tRPC server library",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -148,7 +148,7 @@
148
148
  "tslib": "^2.5.0",
149
149
  "tsx": "^4.0.0",
150
150
  "typescript": "^5.3.3",
151
- "valibot": "^0.27.0",
151
+ "valibot": "^0.28.0",
152
152
  "vitest": "^0.32.0",
153
153
  "ws": "^8.0.0",
154
154
  "yup": "^1.0.0",
@@ -157,5 +157,5 @@
157
157
  "funding": [
158
158
  "https://trpc.io/sponsor"
159
159
  ],
160
- "gitHead": "f5f08f35d0fce8eba59e4db2daed36b184f737a4"
160
+ "gitHead": "765a5e71a5b84d54d6275ec93e4314d43feb10cf"
161
161
  }
@@ -43,6 +43,7 @@ export function fastifyTRPCPlugin<TRouter extends AnyRouter>(
43
43
  );
44
44
 
45
45
  let prefix = opts.prefix ?? '';
46
+ const websocketPrefix = prefix;
46
47
 
47
48
  // https://github.com/fastify/fastify-plugin/blob/fe079bef6557a83794bf437e14b9b9edb8a74104/plugin.js#L11
48
49
  // @ts-expect-error property 'default' does not exists on type ...
@@ -58,6 +59,7 @@ export function fastifyTRPCPlugin<TRouter extends AnyRouter>(
58
59
  if (opts.useWSS) {
59
60
  applyWSSHandler<TRouter>({
60
61
  ...(opts.trpcOptions as unknown as WSSHandlerOptions<TRouter>),
62
+ prefix: websocketPrefix,
61
63
  wss: fastify.websocketServer,
62
64
  });
63
65
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -66,15 +66,20 @@ export type WSSHandlerOptions<TRouter extends AnyRouter> = BaseHandlerOptions<
66
66
  }) & {
67
67
  wss: ws.WebSocketServer;
68
68
  process?: NodeJS.Process;
69
+ prefix?: string;
69
70
  };
70
71
 
71
72
  export function applyWSSHandler<TRouter extends AnyRouter>(
72
73
  opts: WSSHandlerOptions<TRouter>,
73
74
  ) {
74
- const { wss, createContext, router } = opts;
75
+ const { wss, createContext, router, prefix } = opts;
75
76
 
76
77
  const { transformer } = router._def._config;
77
78
  wss.on('connection', async (client, req) => {
79
+ if (prefix && !req.url?.startsWith(prefix)) {
80
+ return;
81
+ }
82
+
78
83
  const clientSubscriptions = new Map<number | string, Unsubscribable>();
79
84
 
80
85
  function respond(untransformedJSON: TRPCResponseMessage) {
@@ -2,9 +2,9 @@ import type { inferObservableValue } from '../../observable';
2
2
  import type { AnyProcedure, inferProcedureInput } from '../procedure';
3
3
  import type { AnyRouter, RouterRecord } from '../router';
4
4
  import type {
5
- AnyClientRootTypes,
5
+ AnyClientTypes,
6
+ inferClientTypes,
6
7
  InferrableClientTypes,
7
- inferRootTypes,
8
8
  } from './inferrable';
9
9
  import type { Serialize } from './serialize';
10
10
 
@@ -15,7 +15,7 @@ import type { Serialize } from './serialize';
15
15
  export type inferTransformedProcedureOutput<
16
16
  TInferrable extends InferrableClientTypes,
17
17
  TProcedure extends AnyProcedure,
18
- > = inferRootTypes<TInferrable>['transformer'] extends false
18
+ > = inferClientTypes<TInferrable>['transformer'] extends false
19
19
  ? Serialize<TProcedure['_def']['_output_out']>
20
20
  : TProcedure['_def']['_output_out'];
21
21
  /** @internal */
@@ -23,13 +23,13 @@ export type inferTransformedProcedureOutput<
23
23
  export type inferTransformedSubscriptionOutput<
24
24
  TInferrable extends InferrableClientTypes,
25
25
  TProcedure extends AnyProcedure,
26
- > = inferRootTypes<TInferrable>['transformer'] extends false
26
+ > = inferClientTypes<TInferrable>['transformer'] extends false
27
27
  ? Serialize<inferObservableValue<TProcedure['_def']['_output_out']>>
28
28
  : inferObservableValue<TProcedure['_def']['_output_out']>;
29
29
 
30
30
  export type GetInferenceHelpers<
31
31
  TType extends 'input' | 'output',
32
- TRoot extends AnyClientRootTypes,
32
+ TRoot extends AnyClientTypes,
33
33
  TRecord extends RouterRecord,
34
34
  > = {
35
35
  [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value
@@ -1,16 +1,13 @@
1
1
  import type { AnyRootTypes } from '../rootConfig';
2
2
 
3
- export type AnyClientRootTypes = Pick<
4
- AnyRootTypes,
5
- 'errorShape' | 'transformer'
6
- >;
3
+ export type AnyClientTypes = Pick<AnyRootTypes, 'errorShape' | 'transformer'>;
7
4
 
8
5
  /**
9
6
  * Result of `initTRPC.create()`
10
7
  */
11
8
  type InitLike = {
12
9
  _config: {
13
- $types: AnyClientRootTypes;
10
+ $types: AnyClientTypes;
14
11
  };
15
12
  };
16
13
 
@@ -25,7 +22,7 @@ type RouterLike = {
25
22
  * Result of `initTRPC.create()._config`
26
23
  */
27
24
  type RootConfigLike = {
28
- $types: AnyClientRootTypes;
25
+ $types: AnyClientTypes;
29
26
  };
30
27
 
31
28
  /**
@@ -35,13 +32,13 @@ export type InferrableClientTypes =
35
32
  | RouterLike
36
33
  | InitLike
37
34
  | RootConfigLike
38
- | AnyClientRootTypes;
35
+ | AnyClientTypes;
39
36
 
40
37
  /**
41
38
  * Infer the root types from a InferrableClientTypes
42
39
  */
43
- export type inferRootTypes<TInferrable extends InferrableClientTypes> =
44
- TInferrable extends AnyClientRootTypes
40
+ export type inferClientTypes<TInferrable extends InferrableClientTypes> =
41
+ TInferrable extends AnyClientTypes
45
42
  ? TInferrable
46
43
  : TInferrable extends RootConfigLike
47
44
  ? TInferrable['$types']
@@ -50,6 +47,3 @@ export type inferRootTypes<TInferrable extends InferrableClientTypes> =
50
47
  : TInferrable extends RouterLike
51
48
  ? TInferrable['_def']['_config']['$types']
52
49
  : never;
53
-
54
- export type inferErrorShape<TInferrable extends InferrableClientTypes> =
55
- inferRootTypes<TInferrable>['errorShape'];
@@ -1,3 +1,4 @@
1
+ import type { inferObservableValue } from '../observable';
1
2
  import { getTRPCErrorFromUnknown, TRPCError } from './error/TRPCError';
2
3
  import type {
3
4
  AnyMiddlewareFunction,
@@ -227,7 +228,7 @@ export interface ProcedureBuilder<
227
228
  >,
228
229
  ): SubscriptionProcedure<{
229
230
  input: DefaultValue<TInputIn, void>;
230
- output: DefaultValue<TOutputOut, $Output>;
231
+ output: DefaultValue<TOutputOut, inferObservableValue<$Output>>;
231
232
  }>;
232
233
  /**
233
234
  * @internal
@@ -1,3 +1,4 @@
1
+ import type { Observable } from '../observable';
1
2
  import { createRecursiveProxy } from './createProxy';
2
3
  import { defaultFormatter } from './error/formatter';
3
4
  import { TRPCError } from './error/TRPCError';
@@ -14,7 +15,11 @@ export interface RouterRecord {
14
15
 
15
16
  type DecorateProcedure<TProcedure extends AnyProcedure> = (
16
17
  input: inferProcedureInput<TProcedure>,
17
- ) => Promise<TProcedure['_def']['_output_out']>;
18
+ ) => Promise<
19
+ TProcedure['_def']['type'] extends 'subscription'
20
+ ? Observable<TProcedure['_def']['_output_out'], TRPCError>
21
+ : TProcedure['_def']['_output_out']
22
+ >;
18
23
 
19
24
  /**
20
25
  * @internal