@trpc/server 11.0.0-rc.413 → 11.0.0-rc.419
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.
- package/dist/@trpc/server/index.d.ts +1 -1
- package/dist/@trpc/server/index.d.ts.map +1 -1
- package/dist/adapters/aws-lambda/getPlanner.d.ts.map +1 -1
- package/dist/adapters/next-app-dir/redirect.d.ts.map +1 -1
- package/dist/adapters/node-http/incomingMessageToRequest.d.ts +0 -1
- package/dist/adapters/node-http/incomingMessageToRequest.d.ts.map +1 -1
- package/dist/adapters/node-http/incomingMessageToRequest.js +3 -1
- package/dist/adapters/node-http/incomingMessageToRequest.mjs +3 -1
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/nodeHTTPRequestHandler.js +30 -7
- package/dist/adapters/node-http/nodeHTTPRequestHandler.mjs +30 -7
- package/dist/adapters/node-http/types.d.ts +0 -1
- package/dist/adapters/node-http/types.d.ts.map +1 -1
- package/dist/adapters/standalone.d.ts +0 -1
- package/dist/adapters/standalone.d.ts.map +1 -1
- package/dist/adapters/ws.d.ts +1 -2
- package/dist/adapters/ws.d.ts.map +1 -1
- package/dist/adapters/ws.js +98 -81
- package/dist/adapters/ws.mjs +98 -81
- package/dist/bundle-analysis.json +209 -150
- package/dist/index.js +5 -3
- package/dist/index.mjs +2 -1
- package/dist/observable/observable.d.ts +1 -0
- package/dist/observable/observable.d.ts.map +1 -1
- package/dist/observable/observable.js +55 -0
- package/dist/observable/observable.mjs +55 -1
- package/dist/unstable-core-do-not-import/createProxy.d.ts +1 -1
- package/dist/unstable-core-do-not-import/createProxy.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/createProxy.js +8 -6
- package/dist/unstable-core-do-not-import/createProxy.mjs +8 -6
- package/dist/unstable-core-do-not-import/http/contentType.d.ts +7 -4
- package/dist/unstable-core-do-not-import/http/contentType.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/http/contentType.js +55 -17
- package/dist/unstable-core-do-not-import/http/contentType.mjs +56 -18
- package/dist/unstable-core-do-not-import/http/resolveResponse.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/http/resolveResponse.js +302 -149
- package/dist/unstable-core-do-not-import/http/resolveResponse.mjs +301 -148
- package/dist/unstable-core-do-not-import/http/types.d.ts +34 -5
- package/dist/unstable-core-do-not-import/http/types.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/initTRPC.d.ts +12 -12
- package/dist/unstable-core-do-not-import/initTRPC.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/middleware.d.ts +3 -3
- package/dist/unstable-core-do-not-import/middleware.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/procedureBuilder.d.ts +3 -1
- package/dist/unstable-core-do-not-import/procedureBuilder.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/rootConfig.d.ts +12 -0
- package/dist/unstable-core-do-not-import/rootConfig.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/router.d.ts +2 -2
- package/dist/unstable-core-do-not-import/router.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/router.js +7 -2
- package/dist/unstable-core-do-not-import/router.mjs +7 -2
- package/dist/unstable-core-do-not-import/stream/{stream.d.ts → jsonl.d.ts} +5 -5
- package/dist/unstable-core-do-not-import/stream/jsonl.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/{stream.js → jsonl.js} +90 -89
- package/dist/unstable-core-do-not-import/stream/{stream.mjs → jsonl.mjs} +89 -88
- package/dist/unstable-core-do-not-import/stream/sse.d.ts +95 -0
- package/dist/unstable-core-do-not-import/stream/sse.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/sse.js +175 -0
- package/dist/unstable-core-do-not-import/stream/sse.mjs +169 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.d.ts +18 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.js +46 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.mjs +43 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.d.ts +10 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.js +31 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.mjs +29 -0
- package/dist/unstable-core-do-not-import/stream/utils/createServer.d.ts +7 -0
- package/dist/unstable-core-do-not-import/stream/utils/createServer.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/transformer.d.ts +5 -5
- package/dist/unstable-core-do-not-import/utils.d.ts +4 -0
- package/dist/unstable-core-do-not-import/utils.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/utils.js +4 -0
- package/dist/unstable-core-do-not-import/utils.mjs +4 -1
- package/dist/unstable-core-do-not-import.d.ts +2 -1
- package/dist/unstable-core-do-not-import.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import.js +11 -4
- package/dist/unstable-core-do-not-import.mjs +3 -2
- package/package.json +4 -4
- package/src/@trpc/server/index.ts +1 -0
- package/src/adapters/node-http/incomingMessageToRequest.ts +3 -2
- package/src/adapters/node-http/nodeHTTPRequestHandler.ts +32 -7
- package/src/adapters/ws.ts +101 -75
- package/src/observable/observable.ts +63 -0
- package/src/unstable-core-do-not-import/createProxy.ts +13 -6
- package/src/unstable-core-do-not-import/http/contentType.ts +78 -21
- package/src/unstable-core-do-not-import/http/resolveResponse.ts +331 -164
- package/src/unstable-core-do-not-import/http/types.ts +42 -5
- package/src/unstable-core-do-not-import/procedureBuilder.ts +8 -1
- package/src/unstable-core-do-not-import/rootConfig.ts +12 -0
- package/src/unstable-core-do-not-import/router.ts +46 -34
- package/src/unstable-core-do-not-import/stream/{stream.ts → jsonl.ts} +99 -85
- package/src/unstable-core-do-not-import/stream/sse.ts +291 -0
- package/src/unstable-core-do-not-import/stream/utils/createDeferred.ts +48 -0
- package/src/unstable-core-do-not-import/stream/utils/createReadableStream.ts +31 -0
- package/src/unstable-core-do-not-import/stream/utils/createServer.ts +46 -0
- package/src/unstable-core-do-not-import/utils.ts +5 -0
- package/src/unstable-core-do-not-import.ts +2 -1
- package/dist/unstable-core-do-not-import/stream/stream.d.ts.map +0 -1
|
@@ -2,7 +2,7 @@ export { TRPCError,
|
|
|
2
2
|
/**
|
|
3
3
|
* @deprecated use `experimental_trpcMiddleware` instead
|
|
4
4
|
*/
|
|
5
|
-
experimental_standaloneMiddleware, experimental_standaloneMiddleware as experimental_trpcMiddleware, initTRPC, callProcedure as callTRPCProcedure, getTRPCErrorFromUnknown, transformTRPCResponse, createFlatProxy as createTRPCFlatProxy, type inferProcedureInput, type inferProcedureOutput, type inferProcedureBuilderResolverOptions, type inferRouterError, type inferRouterInputs, type inferRouterOutputs, type inferRouterContext, type inferClientTypes as inferTRPCClientTypes, type AnyClientTypes as AnyTRPCClientTypes, type inferTransformedProcedureOutput, type inferTransformedSubscriptionOutput, type AnyProcedure as AnyTRPCProcedure, type AnyRouter as AnyTRPCRouter, type AnyMiddlewareFunction as AnyTRPCMiddlewareFunction, type CombinedDataTransformer as TRPCCombinedDataTransformer, type ProcedureType as TRPCProcedureType, type AnyMutationProcedure as AnyTRPCMutationProcedure, type AnyQueryProcedure as AnyTRPCQueryProcedure, type RouterRecord as TRPCRouterRecord, type AnySubscriptionProcedure as AnyTRPCSubscriptionProcedure, type ProcedureOptions as TRPCProcedureOptions, type CreateContextCallback, type MutationProcedure as TRPCMutationProcedure, type QueryProcedure as TRPCQueryProcedure, type SubscriptionProcedure as TRPCSubscriptionProcedure, type TRPCBuilder, } from '../../unstable-core-do-not-import';
|
|
5
|
+
experimental_standaloneMiddleware, experimental_standaloneMiddleware as experimental_trpcMiddleware, initTRPC, callProcedure as callTRPCProcedure, getTRPCErrorFromUnknown, transformTRPCResponse, createFlatProxy as createTRPCFlatProxy, type inferProcedureInput, type inferProcedureOutput, type inferProcedureBuilderResolverOptions, type inferRouterError, type inferRouterInputs, type inferRouterOutputs, type inferRouterContext, type inferClientTypes as inferTRPCClientTypes, type AnyClientTypes as AnyTRPCClientTypes, type inferTransformedProcedureOutput, type inferTransformedSubscriptionOutput, type AnyProcedure as AnyTRPCProcedure, type AnyRouter as AnyTRPCRouter, type AnyMiddlewareFunction as AnyTRPCMiddlewareFunction, type CombinedDataTransformer as TRPCCombinedDataTransformer, type ProcedureType as TRPCProcedureType, type AnyMutationProcedure as AnyTRPCMutationProcedure, type AnyQueryProcedure as AnyTRPCQueryProcedure, type RouterRecord as TRPCRouterRecord, type AnySubscriptionProcedure as AnyTRPCSubscriptionProcedure, type ProcedureOptions as TRPCProcedureOptions, type CreateContextCallback, type MutationProcedure as TRPCMutationProcedure, type QueryProcedure as TRPCQueryProcedure, type SubscriptionProcedure as TRPCSubscriptionProcedure, type TRPCBuilder, sse, } from '../../unstable-core-do-not-import';
|
|
6
6
|
export type {
|
|
7
7
|
/**
|
|
8
8
|
* @deprecated use `AnyTRPCProcedure` instead
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/@trpc/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS;AACT;;GAEG;AACH,iCAAiC,EACjC,iCAAiC,IAAI,2BAA2B,EAChE,QAAQ,EAER,aAAa,IAAI,iBAAiB,EAClC,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,IAAI,mBAAmB,EACtC,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,oCAAoC,EACzC,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,+BAA+B,EACpC,KAAK,kCAAkC,EACvC,KAAK,YAAY,IAAI,gBAAgB,EACrC,KAAK,SAAS,IAAI,aAAa,EAC/B,KAAK,qBAAqB,IAAI,yBAAyB,EACvD,KAAK,uBAAuB,IAAI,2BAA2B,EAC3D,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,oBAAoB,IAAI,wBAAwB,EACrD,KAAK,iBAAiB,IAAI,qBAAqB,EAC/C,KAAK,YAAY,IAAI,gBAAgB,EACrC,KAAK,wBAAwB,IAAI,4BAA4B,EAC7D,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,IAAI,qBAAqB,EAC/C,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,qBAAqB,IAAI,yBAAyB,EACvD,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/@trpc/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS;AACT;;GAEG;AACH,iCAAiC,EACjC,iCAAiC,IAAI,2BAA2B,EAChE,QAAQ,EAER,aAAa,IAAI,iBAAiB,EAClC,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,IAAI,mBAAmB,EACtC,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,oCAAoC,EACzC,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,+BAA+B,EACpC,KAAK,kCAAkC,EACvC,KAAK,YAAY,IAAI,gBAAgB,EACrC,KAAK,SAAS,IAAI,aAAa,EAC/B,KAAK,qBAAqB,IAAI,yBAAyB,EACvD,KAAK,uBAAuB,IAAI,2BAA2B,EAC3D,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,oBAAoB,IAAI,wBAAwB,EACrD,KAAK,iBAAiB,IAAI,qBAAqB,EAC/C,KAAK,YAAY,IAAI,gBAAgB,EACrC,KAAK,wBAAwB,IAAI,4BAA4B,EAC7D,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,IAAI,qBAAqB,EAC/C,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,qBAAqB,IAAI,yBAAyB,EACvD,KAAK,WAAW,EAChB,GAAG,GACJ,MAAM,mCAAmC,CAAC;AAE3C,YAAY;AACV;;GAEG;AACH,YAAY;AACZ;;GAEG;AACH,SAAS;AACT;;GAEG;AACH,qBAAqB;AACrB;;GAEG;AACH,uBAAuB;AAEvB;;GAEG;AACH,IAAI;AAEJ;;GAEG;AACH,WAAW;AACX;;GAEG;AACH,aAAa;AACb;;GAEG;AACH,oBAAoB;AAEpB;;GAEG;AACH,iBAAiB;AACjB;;GAEG;AACH,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAE3C,OAAO;AACL;;GAEG;AACH,aAAa;AAEb;;GAEG;AACH,aAAa,GACd,MAAM,mCAAmC,CAAC;AAE3C;;;GAGG;AACH,MAAM,MAAM,oBAAoB,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IACxE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPlanner.d.ts","sourceRoot":"","sources":["../../../src/adapters/aws-lambda/getPlanner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;AAExE,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,iCAAiC,CAAC;AActC;;IAEI;AACJ,MAAM,MAAM,gBAAgB,CAAC,MAAM,IAAI,MAAM,SAAS,oBAAoB,GACtE,qBAAqB,GACrB,MAAM,SAAS,sBAAsB,GACrC,iCAAiC,GACjC,KAAK,CAAC;AA6IV,wBAAgB,UAAU,CAAC,MAAM,SAAS,WAAW,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"getPlanner.d.ts","sourceRoot":"","sources":["../../../src/adapters/aws-lambda/getPlanner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;AAExE,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,iCAAiC,CAAC;AActC;;IAEI;AACJ,MAAM,MAAM,gBAAgB,CAAC,MAAM,IAAI,MAAM,SAAS,oBAAoB,GACtE,qBAAqB,GACrB,MAAM,SAAS,sBAAsB,GACrC,iCAAiC,GACjC,KAAK,CAAC;AA6IV,wBAAgB,UAAU,CAAC,MAAM,SAAS,WAAW,EAAE,KAAK,EAAE,MAAM;;;yBAtI7C,QAAQ,KAAK,OAAO,CAAC,gBAAgB,QAAQ,CAAC;EA0KpE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redirect.d.ts","sourceRoot":"","sources":["../../../src/adapters/next-app-dir/redirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;IAC9C,SAAgB,IAAI,8CAAC;gBACT,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;CAS3D;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,QAAS,GAAG,GAAG,MAAM,iBAAiB,YAAY,
|
|
1
|
+
{"version":3,"file":"redirect.d.ts","sourceRoot":"","sources":["../../../src/adapters/next-app-dir/redirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;IAC9C,SAAgB,IAAI,8CAAC;gBACT,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;CAS3D;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,QAAS,GAAG,GAAG,MAAM,iBAAiB,YAAY,KAEP,SAC/D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incomingMessageToRequest.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/incomingMessageToRequest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"incomingMessageToRequest.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/incomingMessageToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAGlC,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,eAAe;IACnE;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA+CD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,IAAI,EAAE;IACJ;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GACA,OAAO,CA4BT"}
|
|
@@ -49,7 +49,9 @@ const bodyMethods = [
|
|
|
49
49
|
const ac = new AbortController();
|
|
50
50
|
const headers = new Headers(req.headers);
|
|
51
51
|
const url = `http://${headers.get('host')}${req.url}`;
|
|
52
|
-
req.once('aborted', ()=>
|
|
52
|
+
req.once('aborted', ()=>{
|
|
53
|
+
ac.abort();
|
|
54
|
+
});
|
|
53
55
|
const init = {
|
|
54
56
|
headers,
|
|
55
57
|
method: req.method,
|
|
@@ -47,7 +47,9 @@ const bodyMethods = [
|
|
|
47
47
|
const ac = new AbortController();
|
|
48
48
|
const headers = new Headers(req.headers);
|
|
49
49
|
const url = `http://${headers.get('host')}${req.url}`;
|
|
50
|
-
req.once('aborted', ()=>
|
|
50
|
+
req.once('aborted', ()=>{
|
|
51
|
+
ac.abort();
|
|
52
|
+
});
|
|
51
53
|
const init = {
|
|
52
54
|
headers,
|
|
53
55
|
method: req.method,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeHTTPRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/nodeHTTPRequestHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"nodeHTTPRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/nodeHTTPRequestHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAI7E,OAAO,KAAK,EACV,eAAe,EACf,6BAA6B,EAC7B,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,wBAAsB,sBAAsB,CAC1C,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,EAClC,IAAI,EAAE,6BAA6B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,iBAsElE"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var node_stream = require('node:stream');
|
|
4
3
|
var TRPCError = require('../../unstable-core-do-not-import/error/TRPCError.js');
|
|
5
4
|
var resolveResponse = require('../../unstable-core-do-not-import/http/resolveResponse.js');
|
|
6
5
|
require('../../unstable-core-do-not-import/rootConfig.js');
|
|
@@ -40,18 +39,42 @@ async function nodeHTTPRequestHandler(opts) {
|
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
41
|
});
|
|
43
|
-
|
|
42
|
+
const { res } = opts;
|
|
43
|
+
if (res.statusCode === 200) {
|
|
44
44
|
// if the status code is set, we assume that it's been manually overridden
|
|
45
|
-
|
|
45
|
+
res.statusCode = response.status;
|
|
46
46
|
}
|
|
47
47
|
for (const [key, value] of response.headers){
|
|
48
|
-
|
|
48
|
+
res.setHeader(key, value);
|
|
49
49
|
}
|
|
50
50
|
if (response.body) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
const reader = response.body.getReader();
|
|
52
|
+
const onAbort = ()=>{
|
|
53
|
+
// cancelling the reader will cause the whole stream to be cancelled
|
|
54
|
+
reader.cancel().catch(()=>{
|
|
55
|
+
// console.error('reader.cancel() error', err);
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
req.signal.addEventListener('abort', onAbort);
|
|
59
|
+
while(true){
|
|
60
|
+
const { done , value: value1 } = await reader.read();
|
|
61
|
+
if (done) {
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
if (!res.writable) {
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
if (!res.write(value1)) {
|
|
68
|
+
await new Promise((resolve)=>{
|
|
69
|
+
res.once('drain', resolve);
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
// IMPORTANT - flush the response buffer, otherwise the client will not receive the data until `.end()`
|
|
73
|
+
res.flush?.();
|
|
74
|
+
}
|
|
75
|
+
req.signal.removeEventListener('abort', onAbort);
|
|
54
76
|
}
|
|
77
|
+
res.end();
|
|
55
78
|
});
|
|
56
79
|
}
|
|
57
80
|
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Readable } from 'node:stream';
|
|
2
1
|
import { getTRPCErrorFromUnknown } from '../../unstable-core-do-not-import/error/TRPCError.mjs';
|
|
3
2
|
import { resolveResponse } from '../../unstable-core-do-not-import/http/resolveResponse.mjs';
|
|
4
3
|
import '../../unstable-core-do-not-import/rootConfig.mjs';
|
|
@@ -38,18 +37,42 @@ async function nodeHTTPRequestHandler(opts) {
|
|
|
38
37
|
});
|
|
39
38
|
}
|
|
40
39
|
});
|
|
41
|
-
|
|
40
|
+
const { res } = opts;
|
|
41
|
+
if (res.statusCode === 200) {
|
|
42
42
|
// if the status code is set, we assume that it's been manually overridden
|
|
43
|
-
|
|
43
|
+
res.statusCode = response.status;
|
|
44
44
|
}
|
|
45
45
|
for (const [key, value] of response.headers){
|
|
46
|
-
|
|
46
|
+
res.setHeader(key, value);
|
|
47
47
|
}
|
|
48
48
|
if (response.body) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
const reader = response.body.getReader();
|
|
50
|
+
const onAbort = ()=>{
|
|
51
|
+
// cancelling the reader will cause the whole stream to be cancelled
|
|
52
|
+
reader.cancel().catch(()=>{
|
|
53
|
+
// console.error('reader.cancel() error', err);
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
req.signal.addEventListener('abort', onAbort);
|
|
57
|
+
while(true){
|
|
58
|
+
const { done , value: value1 } = await reader.read();
|
|
59
|
+
if (done) {
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
if (!res.writable) {
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
if (!res.write(value1)) {
|
|
66
|
+
await new Promise((resolve)=>{
|
|
67
|
+
res.once('drain', resolve);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
// IMPORTANT - flush the response buffer, otherwise the client will not receive the data until `.end()`
|
|
71
|
+
res.flush?.();
|
|
72
|
+
}
|
|
73
|
+
req.signal.removeEventListener('abort', onAbort);
|
|
52
74
|
}
|
|
75
|
+
res.end();
|
|
53
76
|
});
|
|
54
77
|
}
|
|
55
78
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG;IACnD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,GAAG;IACnD;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,qBAAqB,CACvB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CACtD,CAAC;AAEF;;GAEG;AACH,KAAK,iBAAiB,CACpB,QAAQ,SAAS,eAAe,GAAG,eAAe,EAClD,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,IACnD,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC;AAEtE,MAAM,MAAM,sBAAsB,CAChC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC3C,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG;IAC1D;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEJ,MAAM,MAAM,6BAA6B,CACvC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC;IACF,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,sBAAsB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAEzD,MAAM,MAAM,8BAA8B,CAAC,QAAQ,EAAE,SAAS,IAAI;IAChE,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,CACF,IAAI,EAAE,8BAA8B,CAAC,QAAQ,EAAE,SAAS,CAAC,KACtD,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../../src/adapters/standalone.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../../src/adapters/standalone.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;AAE7E,MAAM,MAAM,wBAAwB,GAAG,8BAA8B,CACnE,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,cAAc,CACpB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAEpB,IAAI,CAAC,eAAe,OAAO,IAAI,CAAC,cAAc,mBAclE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,SAAS,SAAS,EACxD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,wEAIxC"}
|
package/dist/adapters/ws.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
1
|
import type { IncomingMessage } from 'http';
|
|
3
2
|
import type ws from 'ws';
|
|
4
3
|
import type { AnyRouter, CreateContextCallback, inferRouterContext } from '../@trpc/server';
|
|
5
4
|
import type { BaseHandlerOptions } from '../@trpc/server/http';
|
|
6
|
-
import type
|
|
5
|
+
import { type MaybePromise } from '../unstable-core-do-not-import';
|
|
7
6
|
import type { NodeHTTPCreateContextFnOptions } from './node-http';
|
|
8
7
|
/**
|
|
9
8
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/adapters/ws.ts"],"names":[],"mappings":"
|
|
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,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAQzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAW/D,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AACxC,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,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAC9D,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,GAC1C,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,kBAAkB,CAAC,OAAO,CAAC,CAC5B,CAAC;AAEN;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IACrD,0BAA0B,CAAC,OAAO,CAAC,GAAG;IACpC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE;QACV;;;WAGG;QACH,OAAO,EAAE,OAAO,CAAC;QACjB;;;WAGG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;WAGG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH,CAAC;AAEJ,wBAAgB,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAC9D,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,YAKnB,EAAE,CAAC,SAAS,OAAO,eAAe,mBA2QzD;AAiCD,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;;EA+BjC"}
|
package/dist/adapters/ws.js
CHANGED
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
var TRPCError = require('../unstable-core-do-not-import/error/TRPCError.js');
|
|
4
4
|
var getErrorShape = require('../unstable-core-do-not-import/error/getErrorShape.js');
|
|
5
|
+
var utils = require('../unstable-core-do-not-import/utils.js');
|
|
5
6
|
var parseTRPCMessage = require('../unstable-core-do-not-import/rpc/parseTRPCMessage.js');
|
|
6
|
-
var
|
|
7
|
+
var observable = require('../observable/observable.js');
|
|
7
8
|
var transformer = require('../unstable-core-do-not-import/transformer.js');
|
|
8
9
|
require('../unstable-core-do-not-import/rootConfig.js');
|
|
9
|
-
var
|
|
10
|
+
var router = require('../unstable-core-do-not-import/router.js');
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
13
|
* Importing ws causes a build error
|
|
@@ -20,16 +21,6 @@ function getWSConnectionHandler(opts) {
|
|
|
20
21
|
function respond(untransformedJSON) {
|
|
21
22
|
client.send(JSON.stringify(transformer.transformTRPCResponse(router$1._def._config, untransformedJSON)));
|
|
22
23
|
}
|
|
23
|
-
function stopSubscription(subscription, { id , jsonrpc }) {
|
|
24
|
-
subscription.unsubscribe();
|
|
25
|
-
respond({
|
|
26
|
-
id,
|
|
27
|
-
jsonrpc,
|
|
28
|
-
result: {
|
|
29
|
-
type: 'stopped'
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
24
|
const ctxPromise = createContext?.({
|
|
34
25
|
req,
|
|
35
26
|
res: client
|
|
@@ -44,14 +35,7 @@ function getWSConnectionHandler(opts) {
|
|
|
44
35
|
});
|
|
45
36
|
}
|
|
46
37
|
if (msg.method === 'subscription.stop') {
|
|
47
|
-
|
|
48
|
-
if (sub) {
|
|
49
|
-
stopSubscription(sub, {
|
|
50
|
-
id,
|
|
51
|
-
jsonrpc
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
clientSubscriptions.delete(id);
|
|
38
|
+
clientSubscriptions.get(id)?.abort();
|
|
55
39
|
return;
|
|
56
40
|
}
|
|
57
41
|
const { path , input } = msg.params;
|
|
@@ -65,14 +49,7 @@ function getWSConnectionHandler(opts) {
|
|
|
65
49
|
ctx,
|
|
66
50
|
type
|
|
67
51
|
});
|
|
68
|
-
if (type
|
|
69
|
-
if (!observable.isObservable(result)) {
|
|
70
|
-
throw new TRPCError.TRPCError({
|
|
71
|
-
message: `Subscription ${path} did not return an observable`,
|
|
72
|
-
code: 'INTERNAL_SERVER_ERROR'
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
} else {
|
|
52
|
+
if (type !== 'subscription') {
|
|
76
53
|
// send the value as data if the method is not a subscription
|
|
77
54
|
respond({
|
|
78
55
|
id,
|
|
@@ -84,69 +61,110 @@ function getWSConnectionHandler(opts) {
|
|
|
84
61
|
});
|
|
85
62
|
return;
|
|
86
63
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
result: {
|
|
94
|
-
type: 'data',
|
|
95
|
-
data
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
},
|
|
99
|
-
error (err) {
|
|
100
|
-
const error = TRPCError.getTRPCErrorFromUnknown(err);
|
|
101
|
-
opts.onError?.({
|
|
102
|
-
error,
|
|
103
|
-
path,
|
|
104
|
-
type,
|
|
105
|
-
ctx,
|
|
106
|
-
req,
|
|
107
|
-
input
|
|
108
|
-
});
|
|
109
|
-
respond({
|
|
110
|
-
id,
|
|
111
|
-
jsonrpc,
|
|
112
|
-
error: getErrorShape.getErrorShape({
|
|
113
|
-
config: router$1._def._config,
|
|
114
|
-
error,
|
|
115
|
-
type,
|
|
116
|
-
path,
|
|
117
|
-
input,
|
|
118
|
-
ctx
|
|
119
|
-
})
|
|
120
|
-
});
|
|
121
|
-
},
|
|
122
|
-
complete () {
|
|
123
|
-
respond({
|
|
124
|
-
id,
|
|
125
|
-
jsonrpc,
|
|
126
|
-
result: {
|
|
127
|
-
type: 'stopped'
|
|
128
|
-
}
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
});
|
|
64
|
+
if (!observable.isObservable(result) && !utils.isAsyncIterable(result)) {
|
|
65
|
+
throw new TRPCError.TRPCError({
|
|
66
|
+
message: `Subscription ${path} did not return an observable or a AsyncGenerator`,
|
|
67
|
+
code: 'INTERNAL_SERVER_ERROR'
|
|
68
|
+
});
|
|
69
|
+
}
|
|
132
70
|
/* istanbul ignore next -- @preserve */ if (client.readyState !== WEBSOCKET_OPEN) {
|
|
133
71
|
// if the client got disconnected whilst initializing the subscription
|
|
134
72
|
// no need to send stopped message if the client is disconnected
|
|
135
|
-
sub1.unsubscribe();
|
|
136
73
|
return;
|
|
137
74
|
}
|
|
138
75
|
/* istanbul ignore next -- @preserve */ if (clientSubscriptions.has(id)) {
|
|
139
76
|
// duplicate request ids for client
|
|
140
|
-
stopSubscription(sub1, {
|
|
141
|
-
id,
|
|
142
|
-
jsonrpc
|
|
143
|
-
});
|
|
144
77
|
throw new TRPCError.TRPCError({
|
|
145
78
|
message: `Duplicate id ${id}`,
|
|
146
79
|
code: 'BAD_REQUEST'
|
|
147
80
|
});
|
|
148
81
|
}
|
|
149
|
-
|
|
82
|
+
const iterable = observable.isObservable(result) ? observable.observableToAsyncIterable(result) : result;
|
|
83
|
+
const iterator = iterable[Symbol.asyncIterator]();
|
|
84
|
+
const abortController = new AbortController();
|
|
85
|
+
const abortPromise = new Promise((resolve)=>{
|
|
86
|
+
abortController.signal.onabort = ()=>resolve('abort');
|
|
87
|
+
});
|
|
88
|
+
utils.run(async ()=>{
|
|
89
|
+
while(true){
|
|
90
|
+
const next = await Promise.race([
|
|
91
|
+
iterator.next().catch(TRPCError.getTRPCErrorFromUnknown),
|
|
92
|
+
abortPromise
|
|
93
|
+
]);
|
|
94
|
+
if (next === 'abort') {
|
|
95
|
+
await iterator.return?.();
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
if (next instanceof Error) {
|
|
99
|
+
const error = TRPCError.getTRPCErrorFromUnknown(next);
|
|
100
|
+
opts.onError?.({
|
|
101
|
+
error,
|
|
102
|
+
path,
|
|
103
|
+
type,
|
|
104
|
+
ctx,
|
|
105
|
+
req,
|
|
106
|
+
input
|
|
107
|
+
});
|
|
108
|
+
respond({
|
|
109
|
+
id,
|
|
110
|
+
jsonrpc,
|
|
111
|
+
error: getErrorShape.getErrorShape({
|
|
112
|
+
config: router$1._def._config,
|
|
113
|
+
error,
|
|
114
|
+
type,
|
|
115
|
+
path,
|
|
116
|
+
input,
|
|
117
|
+
ctx
|
|
118
|
+
})
|
|
119
|
+
});
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
if (next.done) {
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
respond({
|
|
126
|
+
id,
|
|
127
|
+
jsonrpc,
|
|
128
|
+
result: {
|
|
129
|
+
type: 'data',
|
|
130
|
+
data: next.value
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
await iterator.return?.();
|
|
135
|
+
respond({
|
|
136
|
+
id,
|
|
137
|
+
jsonrpc,
|
|
138
|
+
result: {
|
|
139
|
+
type: 'stopped'
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
clientSubscriptions.delete(id);
|
|
143
|
+
}).catch((cause)=>{
|
|
144
|
+
const error = TRPCError.getTRPCErrorFromUnknown(cause);
|
|
145
|
+
opts.onError?.({
|
|
146
|
+
error,
|
|
147
|
+
path,
|
|
148
|
+
type,
|
|
149
|
+
ctx,
|
|
150
|
+
req,
|
|
151
|
+
input
|
|
152
|
+
});
|
|
153
|
+
respond({
|
|
154
|
+
id,
|
|
155
|
+
jsonrpc,
|
|
156
|
+
error: getErrorShape.getErrorShape({
|
|
157
|
+
config: router$1._def._config,
|
|
158
|
+
error,
|
|
159
|
+
type,
|
|
160
|
+
path,
|
|
161
|
+
input,
|
|
162
|
+
ctx
|
|
163
|
+
})
|
|
164
|
+
});
|
|
165
|
+
abortController.abort();
|
|
166
|
+
});
|
|
167
|
+
clientSubscriptions.set(id, abortController);
|
|
150
168
|
respond({
|
|
151
169
|
id,
|
|
152
170
|
jsonrpc,
|
|
@@ -181,7 +199,6 @@ function getWSConnectionHandler(opts) {
|
|
|
181
199
|
}
|
|
182
200
|
client.on('message', async (message)=>{
|
|
183
201
|
try {
|
|
184
|
-
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
|
185
202
|
const msgJSON = JSON.parse(message.toString());
|
|
186
203
|
const msgs = Array.isArray(msgJSON) ? msgJSON : [
|
|
187
204
|
msgJSON
|
|
@@ -222,7 +239,7 @@ function getWSConnectionHandler(opts) {
|
|
|
222
239
|
});
|
|
223
240
|
client.once('close', ()=>{
|
|
224
241
|
for (const sub of clientSubscriptions.values()){
|
|
225
|
-
sub.
|
|
242
|
+
sub.abort();
|
|
226
243
|
}
|
|
227
244
|
clientSubscriptions.clear();
|
|
228
245
|
});
|