@trpc/server 11.0.0-rc.563 → 11.0.0-rc.566

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,7 +1,7 @@
1
1
  {
2
- "bundleSize": 139519,
3
- "bundleOrigSize": 186356,
4
- "bundleReduction": 25.13,
2
+ "bundleSize": 140224,
3
+ "bundleOrigSize": 186895,
4
+ "bundleReduction": 24.97,
5
5
  "modules": [
6
6
  {
7
7
  "id": "/src/unstable-core-do-not-import/http/resolveResponse.ts",
@@ -14,7 +14,7 @@
14
14
  "dependents": [
15
15
  "/src/unstable-core-do-not-import.ts"
16
16
  ],
17
- "percent": 13.22,
17
+ "percent": 13.15,
18
18
  "reduction": 0
19
19
  },
20
20
  {
@@ -31,7 +31,7 @@
31
31
  "/src/unstable-core-do-not-import.ts",
32
32
  "/src/unstable-core-do-not-import/http/resolveResponse.ts"
33
33
  ],
34
- "percent": 12.59,
34
+ "percent": 12.53,
35
35
  "reduction": 4.86
36
36
  },
37
37
  {
@@ -47,13 +47,13 @@
47
47
  "dependents": [
48
48
  "/src/adapters/fastify/fastifyTRPCPlugin.ts"
49
49
  ],
50
- "percent": 11.67,
50
+ "percent": 11.61,
51
51
  "reduction": 0
52
52
  },
53
53
  {
54
54
  "id": "/src/unstable-core-do-not-import/stream/sse.ts",
55
- "size": 9020,
56
- "origSize": 10407,
55
+ "size": 9380,
56
+ "origSize": 10696,
57
57
  "renderedExports": [
58
58
  "sseStreamProducer",
59
59
  "sseStreamConsumer",
@@ -64,8 +64,8 @@
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.47,
68
- "reduction": 13.33
67
+ "percent": 6.69,
68
+ "reduction": 12.3
69
69
  },
70
70
  {
71
71
  "id": "/src/unstable-core-do-not-import/http/contentType.ts",
@@ -79,7 +79,7 @@
79
79
  "/src/unstable-core-do-not-import.ts",
80
80
  "/src/unstable-core-do-not-import/http/resolveResponse.ts"
81
81
  ],
82
- "percent": 5.51,
82
+ "percent": 5.48,
83
83
  "reduction": 0
84
84
  },
85
85
  {
@@ -97,7 +97,7 @@
97
97
  "/src/unstable-core-do-not-import.ts",
98
98
  "/src/unstable-core-do-not-import/initTRPC.ts"
99
99
  ],
100
- "percent": 4.6,
100
+ "percent": 4.58,
101
101
  "reduction": 40.09
102
102
  },
103
103
  {
@@ -112,7 +112,7 @@
112
112
  "/src/unstable-core-do-not-import.ts",
113
113
  "/src/unstable-core-do-not-import/initTRPC.ts"
114
114
  ],
115
- "percent": 4.15,
115
+ "percent": 4.13,
116
116
  "reduction": 64.74
117
117
  },
118
118
  {
@@ -126,13 +126,13 @@
126
126
  "dependents": [
127
127
  "/src/adapters/aws-lambda/index.ts"
128
128
  ],
129
- "percent": 3.88,
129
+ "percent": 3.86,
130
130
  "reduction": 11.38
131
131
  },
132
132
  {
133
133
  "id": "/src/observable/observable.ts",
134
- "size": 4133,
135
- "origSize": 4110,
134
+ "size": 4478,
135
+ "origSize": 4360,
136
136
  "renderedExports": [
137
137
  "isObservable",
138
138
  "observable",
@@ -145,7 +145,7 @@
145
145
  "/src/unstable-core-do-not-import/http/resolveResponse.ts",
146
146
  "/src/observable/operators.ts"
147
147
  ],
148
- "percent": 2.96,
148
+ "percent": 3.19,
149
149
  "reduction": 0
150
150
  },
151
151
  {
@@ -159,7 +159,7 @@
159
159
  "dependents": [
160
160
  "/src/adapters/next-app-dir.ts"
161
161
  ],
162
- "percent": 2.31,
162
+ "percent": 2.3,
163
163
  "reduction": 22.57
164
164
  },
165
165
  {
@@ -173,7 +173,7 @@
173
173
  "dependents": [
174
174
  "/src/adapters/node-http/index.ts"
175
175
  ],
176
- "percent": 2.05,
176
+ "percent": 2.04,
177
177
  "reduction": 6.07
178
178
  },
179
179
  {
@@ -189,7 +189,7 @@
189
189
  "dependents": [
190
190
  "/src/observable/index.ts"
191
191
  ],
192
- "percent": 1.98,
192
+ "percent": 1.97,
193
193
  "reduction": 0
194
194
  },
195
195
  {
@@ -209,7 +209,7 @@
209
209
  "/src/unstable-core-do-not-import/initTRPC.ts",
210
210
  "/src/unstable-core-do-not-import/router.ts"
211
211
  ],
212
- "percent": 1.97,
212
+ "percent": 1.96,
213
213
  "reduction": 45.94
214
214
  },
215
215
  {
@@ -223,7 +223,7 @@
223
223
  "dependents": [
224
224
  "/src/unstable-core-do-not-import.ts"
225
225
  ],
226
- "percent": 1.93,
226
+ "percent": 1.92,
227
227
  "reduction": 40.98
228
228
  },
229
229
  {
@@ -243,7 +243,7 @@
243
243
  "/src/unstable-core-do-not-import/initTRPC.ts",
244
244
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
245
245
  ],
246
- "percent": 1.88,
246
+ "percent": 1.87,
247
247
  "reduction": 55.78
248
248
  },
249
249
  {
@@ -259,7 +259,7 @@
259
259
  "/src/unstable-core-do-not-import.ts",
260
260
  "/src/unstable-core-do-not-import/router.ts"
261
261
  ],
262
- "percent": 1.67,
262
+ "percent": 1.66,
263
263
  "reduction": 0
264
264
  },
265
265
  {
@@ -273,7 +273,7 @@
273
273
  "dependents": [
274
274
  "/src/adapters/fetch/index.ts"
275
275
  ],
276
- "percent": 1.62,
276
+ "percent": 1.61,
277
277
  "reduction": 2.17
278
278
  },
279
279
  {
@@ -288,7 +288,7 @@
288
288
  "/src/adapters/node-http/index.ts",
289
289
  "/src/adapters/node-http/nodeHTTPRequestHandler.ts"
290
290
  ],
291
- "percent": 1.57,
291
+ "percent": 1.56,
292
292
  "reduction": 13.79
293
293
  },
294
294
  {
@@ -302,7 +302,7 @@
302
302
  "dependents": [
303
303
  "/src/adapters/next-app-dir/nextAppDirCaller.ts"
304
304
  ],
305
- "percent": 1.47,
305
+ "percent": 1.46,
306
306
  "reduction": 5.79
307
307
  },
308
308
  {
@@ -316,7 +316,7 @@
316
316
  "dependents": [
317
317
  "/src/adapters/fastify/index.ts"
318
318
  ],
319
- "percent": 1.28,
319
+ "percent": 1.27,
320
320
  "reduction": 29.88
321
321
  },
322
322
  {
@@ -352,7 +352,7 @@
352
352
  ],
353
353
  "removedExports": [],
354
354
  "dependents": [],
355
- "percent": 1.22,
355
+ "percent": 1.21,
356
356
  "reduction": 19.29
357
357
  },
358
358
  {
@@ -377,7 +377,7 @@
377
377
  ],
378
378
  "removedExports": [],
379
379
  "dependents": [],
380
- "percent": 1.11,
380
+ "percent": 1.1,
381
381
  "reduction": 26.94
382
382
  },
383
383
  {
@@ -409,7 +409,7 @@
409
409
  "/src/unstable-core-do-not-import.ts",
410
410
  "/src/unstable-core-do-not-import/procedureBuilder.ts"
411
411
  ],
412
- "percent": 0.93,
412
+ "percent": 0.92,
413
413
  "reduction": 55.21
414
414
  },
415
415
  {
@@ -503,7 +503,7 @@
503
503
  "/src/adapters/next-app-dir/nextAppDirCaller.ts",
504
504
  "/src/adapters/next-app-dir/rethrowNextErrors.ts"
505
505
  ],
506
- "percent": 0.71,
506
+ "percent": 0.7,
507
507
  "reduction": 13.65
508
508
  },
509
509
  {
@@ -566,7 +566,7 @@
566
566
  "/src/unstable-core-do-not-import/stream/jsonl.ts",
567
567
  "/src/unstable-core-do-not-import/stream/sse.ts"
568
568
  ],
569
- "percent": 0.51,
569
+ "percent": 0.5,
570
570
  "reduction": 21.32
571
571
  },
572
572
  {
@@ -623,7 +623,7 @@
623
623
  "/src/unstable-core-do-not-import.ts",
624
624
  "/src/unstable-core-do-not-import/initTRPC.ts"
625
625
  ],
626
- "percent": 0.25,
626
+ "percent": 0.24,
627
627
  "reduction": 89.5
628
628
  },
629
629
  {
@@ -815,9 +815,9 @@
815
815
  "renderedExports": [],
816
816
  "removedExports": [],
817
817
  "dependents": [
818
+ "/src/adapters/next.ts",
818
819
  "/src/adapters/express.ts",
819
820
  "/src/adapters/standalone.ts",
820
- "/src/adapters/next.ts",
821
821
  "/src/adapters/fastify/fastifyRequestHandler.ts"
822
822
  ],
823
823
  "percent": 0,
@@ -1 +1 @@
1
- {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EAER,aAAa,EAGd,MAAM,SAAS,CAAC;AAEjB,cAAc;AACd,MAAM,MAAM,oBAAoB,CAAC,WAAW,IAAI,WAAW,SAAS,UAAU,CAC5E,MAAM,MAAM,EACZ,OAAO,CACR,GACG,MAAM,GACN,KAAK,CAAC;AAEV,cAAc;AACd,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAE1E;AAED,cAAc;AACd,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,EACjD,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,aAAa,GAC/D,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CA6D5B;AAMD,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,MAAM,EACxC,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,mBA+BxC;AA6BD,gBAAgB;AAChB,wBAAgB,yBAAyB,CAAC,MAAM,EAC9C,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,aAAa,CAAC,MAAM,CAAC,CA+BvB"}
1
+ {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EAER,aAAa,EAGd,MAAM,SAAS,CAAC;AAEjB,cAAc;AACd,MAAM,MAAM,oBAAoB,CAAC,WAAW,IAAI,WAAW,SAAS,UAAU,CAC5E,MAAM,MAAM,EACZ,OAAO,CACR,GACG,MAAM,GACN,KAAK,CAAC;AAEV,cAAc;AACd,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAE1E;AAED,cAAc;AACd,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,EACjD,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,aAAa,GAC/D,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CA6D5B;AAMD,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,MAAM,EACxC,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,mBA+BxC;AA8BD,gBAAgB;AAChB,wBAAgB,yBAAyB,CAAC,MAAM,EAC9C,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,aAAa,CAAC,MAAM,CAAC,CAmCvB"}
@@ -104,10 +104,17 @@ function pipeReducer(prev, fn) {
104
104
  start (controller) {
105
105
  unsub = observable.subscribe({
106
106
  next (data) {
107
- controller.enqueue(data);
107
+ controller.enqueue({
108
+ ok: true,
109
+ value: data
110
+ });
108
111
  },
109
- error (err) {
110
- controller.error(err);
112
+ error (error) {
113
+ controller.enqueue({
114
+ ok: false,
115
+ error
116
+ });
117
+ controller.close();
111
118
  },
112
119
  complete () {
113
120
  controller.close();
@@ -131,8 +138,12 @@ function pipeReducer(prev, fn) {
131
138
  done: true
132
139
  };
133
140
  }
141
+ const { value: result } = value;
142
+ if (!result.ok) {
143
+ throw result.error;
144
+ }
134
145
  return {
135
- value: value.value,
146
+ value: result.value,
136
147
  done: false
137
148
  };
138
149
  },
@@ -102,10 +102,17 @@ function pipeReducer(prev, fn) {
102
102
  start (controller) {
103
103
  unsub = observable.subscribe({
104
104
  next (data) {
105
- controller.enqueue(data);
105
+ controller.enqueue({
106
+ ok: true,
107
+ value: data
108
+ });
106
109
  },
107
- error (err) {
108
- controller.error(err);
110
+ error (error) {
111
+ controller.enqueue({
112
+ ok: false,
113
+ error
114
+ });
115
+ controller.close();
109
116
  },
110
117
  complete () {
111
118
  controller.close();
@@ -129,8 +136,12 @@ function pipeReducer(prev, fn) {
129
136
  done: true
130
137
  };
131
138
  }
139
+ const { value: result } = value;
140
+ if (!result.ok) {
141
+ throw result.error;
142
+ }
132
143
  return {
133
- value: value.value,
144
+ value: result.value,
134
145
  done: false
135
146
  };
136
147
  },
@@ -1 +1 @@
1
- {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/stream/sse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAKpD,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AACrC,KAAK,WAAW,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC;CACrD;AAUD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,0BAoH/D;AAED,UAAU,wBAAwB;IAChC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,wBAAwB,CAAC,KAAK,CAAE,SAAQ,wBAAwB;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CACjC;AAED,UAAU,yBAA0B,SAAQ,wBAAwB;IAClE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,0BAA2B,SAAQ,wBAAwB;IACnE,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,UAAU,8BAA+B,SAAQ,wBAAwB;IACvE,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,KAAK,oBAAoB,CAAC,KAAK,IAC3B,wBAAwB,CAAC,KAAK,CAAC,GAC/B,yBAAyB,GACzB,0BAA0B,GAC1B,8BAA8B,CAAC;AAEnC,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACtD,MAAM,EAAE,WAAW,CAAC;IACpB,qBAAqB,CAAC,EAAE,CACtB,IAAI,EACA;QACE,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,KAAK,CAAC;KACd,GACD;QACE,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC;KAChB,KACF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AACD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EACrC,IAAI,EAAE,wBAAwB,GAC7B,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAkL5C;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/stream/sse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAKpD,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AACrC,KAAK,WAAW,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC;CACrD;AAUD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,0BA6H/D;AAED,UAAU,wBAAwB;IAChC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,wBAAwB,CAAC,KAAK,CAAE,SAAQ,wBAAwB;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CACjC;AAED,UAAU,yBAA0B,SAAQ,wBAAwB;IAClE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,0BAA2B,SAAQ,wBAAwB;IACnE,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,UAAU,8BAA+B,SAAQ,wBAAwB;IACvE,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,KAAK,oBAAoB,CAAC,KAAK,IAC3B,wBAAwB,CAAC,KAAK,CAAC,GAC/B,yBAAyB,GACzB,0BAA0B,GAC1B,8BAA8B,CAAC;AAEnC,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACtD,MAAM,EAAE,WAAW,CAAC;IACpB,qBAAqB,CAAC,EAAE,CACtB,IAAI,EACA;QACE,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,KAAK,CAAC;KACd,GACD;QACE,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC;KAChB,KACF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AACD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EACrC,IAAI,EAAE,wBAAwB,GAC7B,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAkL5C;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
@@ -28,12 +28,21 @@ const SERIALIZED_ERROR_EVENT = 'serialized-error';
28
28
  while(true){
29
29
  const pingPromise = createDeferred.createTimeoutPromise(ping.enabled ? ping.intervalMs : Infinity, 'ping');
30
30
  const next = await Promise.race([
31
- nextPromise.catch(TRPCError.getTRPCErrorFromUnknown),
31
+ nextPromise.catch((err)=>{
32
+ if (err instanceof Error && err.name === 'AbortError') {
33
+ // Ensures that aborting the request doesn't throw an error
34
+ return 'aborted';
35
+ }
36
+ return TRPCError.getTRPCErrorFromUnknown(err);
37
+ }),
32
38
  pingPromise.promise,
33
39
  closedPromise,
34
40
  maxDurationPromise.promise
35
41
  ]);
36
42
  pingPromise.clear();
43
+ if (next === 'aborted') {
44
+ break;
45
+ }
37
46
  if (next === 'closed') {
38
47
  break;
39
48
  }
@@ -26,12 +26,21 @@ const SERIALIZED_ERROR_EVENT = 'serialized-error';
26
26
  while(true){
27
27
  const pingPromise = createTimeoutPromise(ping.enabled ? ping.intervalMs : Infinity, 'ping');
28
28
  const next = await Promise.race([
29
- nextPromise.catch(getTRPCErrorFromUnknown),
29
+ nextPromise.catch((err)=>{
30
+ if (err instanceof Error && err.name === 'AbortError') {
31
+ // Ensures that aborting the request doesn't throw an error
32
+ return 'aborted';
33
+ }
34
+ return getTRPCErrorFromUnknown(err);
35
+ }),
30
36
  pingPromise.promise,
31
37
  closedPromise,
32
38
  maxDurationPromise.promise
33
39
  ]);
34
40
  pingPromise.clear();
41
+ if (next === 'aborted') {
42
+ break;
43
+ }
35
44
  if (next === 'closed') {
36
45
  break;
37
46
  }
@@ -25,6 +25,16 @@ export type MaybePromise<TType> = Promise<TType> | TType;
25
25
  export type FilterKeys<TObj extends object, TFilter> = {
26
26
  [TKey in keyof TObj]: TObj[TKey] extends TFilter ? TKey : never;
27
27
  }[keyof TObj];
28
+ /**
29
+ * @internal
30
+ */
31
+ export type Result<TType, TErr = unknown> = {
32
+ ok: true;
33
+ value: TType;
34
+ } | {
35
+ ok: false;
36
+ error: TErr;
37
+ };
28
38
  /**
29
39
  * @internal
30
40
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/unstable-core-do-not-import/types.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-rc.563+e5ae464b2",
3
+ "version": "11.0.0-rc.566+cd3dfd830",
4
4
  "description": "The tRPC server library",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -149,5 +149,5 @@
149
149
  "funding": [
150
150
  "https://trpc.io/sponsor"
151
151
  ],
152
- "gitHead": "e5ae464b2428b591d816ee4e01725c86b232d620"
152
+ "gitHead": "cd3dfd83063324e59768d1da7288eb313d69f4ba"
153
153
  }
@@ -1,3 +1,4 @@
1
+ import type { Result } from '../unstable-core-do-not-import';
1
2
  import type {
2
3
  Observable,
3
4
  Observer,
@@ -130,16 +131,17 @@ export function observableToPromise<TValue>(
130
131
  */
131
132
  function observableToReadableStream<TValue>(
132
133
  observable: Observable<TValue, unknown>,
133
- ): ReadableStream<TValue> {
134
+ ): ReadableStream<Result<TValue>> {
134
135
  let unsub: Unsubscribable | null = null;
135
- return new ReadableStream<TValue>({
136
+ return new ReadableStream<Result<TValue>>({
136
137
  start(controller) {
137
138
  unsub = observable.subscribe({
138
139
  next(data) {
139
- controller.enqueue(data);
140
+ controller.enqueue({ ok: true, value: data });
140
141
  },
141
- error(err) {
142
- controller.error(err);
142
+ error(error) {
143
+ controller.enqueue({ ok: false, error });
144
+ controller.close();
143
145
  },
144
146
  complete() {
145
147
  controller.close();
@@ -168,8 +170,12 @@ export function observableToAsyncIterable<TValue>(
168
170
  done: true,
169
171
  };
170
172
  }
173
+ const { value: result } = value;
174
+ if (!result.ok) {
175
+ throw result.error;
176
+ }
171
177
  return {
172
- value: value.value,
178
+ value: result.value,
173
179
  done: false,
174
180
  };
175
181
  },
@@ -87,13 +87,22 @@ export function sseStreamProducer(opts: SSEStreamProducerOptions) {
87
87
  'ping' as const,
88
88
  );
89
89
  const next = await Promise.race([
90
- nextPromise.catch(getTRPCErrorFromUnknown),
90
+ nextPromise.catch((err) => {
91
+ if (err instanceof Error && err.name === 'AbortError') {
92
+ // Ensures that aborting the request doesn't throw an error
93
+ return 'aborted' as const;
94
+ }
95
+ return getTRPCErrorFromUnknown(err);
96
+ }),
91
97
  pingPromise.promise,
92
98
  closedPromise,
93
99
  maxDurationPromise.promise,
94
100
  ]);
95
101
 
96
102
  pingPromise.clear();
103
+ if (next === 'aborted') {
104
+ break;
105
+ }
97
106
  if (next === 'closed') {
98
107
  break;
99
108
  }
@@ -31,6 +31,13 @@ export type FilterKeys<TObj extends object, TFilter> = {
31
31
  [TKey in keyof TObj]: TObj[TKey] extends TFilter ? TKey : never;
32
32
  }[keyof TObj];
33
33
 
34
+ /**
35
+ * @internal
36
+ */
37
+ export type Result<TType, TErr = unknown> =
38
+ | { ok: true; value: TType }
39
+ | { ok: false; error: TErr };
40
+
34
41
  /**
35
42
  * @internal
36
43
  */