@trpc/client 11.3.1 → 11.3.2-canary.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/dist/TRPCClientError-CGgRtttT.cjs +67 -0
  2. package/dist/TRPCClientError-COkhCKf3.mjs +56 -0
  3. package/dist/TRPCClientError-COkhCKf3.mjs.map +1 -0
  4. package/dist/chunk-DWy1uDak.cjs +39 -0
  5. package/dist/httpBatchLink-CIC9PZ_Z.cjs +267 -0
  6. package/dist/httpBatchLink-DIfnmmcu.mjs +238 -0
  7. package/dist/httpBatchLink-DIfnmmcu.mjs.map +1 -0
  8. package/dist/httpBatchLink.d-BN2Iw_cK.d.mts +33 -0
  9. package/dist/httpBatchLink.d-BN2Iw_cK.d.mts.map +1 -0
  10. package/dist/httpBatchLink.d-CLAuJKNV.d.cts +33 -0
  11. package/dist/httpBatchLink.d-CLAuJKNV.d.cts.map +1 -0
  12. package/dist/httpLink-9bpwQ15c.mjs +90 -0
  13. package/dist/httpLink-9bpwQ15c.mjs.map +1 -0
  14. package/dist/httpLink-BbVj_TgM.cjs +113 -0
  15. package/dist/httpLink.d-CTSOARfE.d.mts +23 -0
  16. package/dist/httpLink.d-CTSOARfE.d.mts.map +1 -0
  17. package/dist/httpLink.d-yMKfOlTU.d.cts +23 -0
  18. package/dist/httpLink.d-yMKfOlTU.d.cts.map +1 -0
  19. package/dist/httpUtils-3pbQzhUL.mjs +123 -0
  20. package/dist/httpUtils-3pbQzhUL.mjs.map +1 -0
  21. package/dist/httpUtils-Buf6jCgh.cjs +163 -0
  22. package/dist/httpUtils.d-C8wPxU79.d.mts +25 -0
  23. package/dist/httpUtils.d-C8wPxU79.d.mts.map +1 -0
  24. package/dist/httpUtils.d-DNRVGNHs.d.cts +25 -0
  25. package/dist/httpUtils.d-DNRVGNHs.d.cts.map +1 -0
  26. package/dist/index.cjs +736 -0
  27. package/dist/index.d.cts +201 -0
  28. package/dist/index.d.cts.map +1 -0
  29. package/dist/index.d.mts +201 -0
  30. package/dist/index.d.mts.map +1 -0
  31. package/dist/index.mjs +737 -16
  32. package/dist/index.mjs.map +1 -0
  33. package/dist/links/httpBatchLink.cjs +6 -0
  34. package/dist/links/httpBatchLink.d.cts +6 -0
  35. package/dist/links/httpBatchLink.d.mts +6 -0
  36. package/dist/links/httpBatchLink.mjs +5 -107
  37. package/dist/links/httpLink.cjs +6 -0
  38. package/dist/links/httpLink.d.cts +6 -0
  39. package/dist/links/httpLink.d.mts +6 -0
  40. package/dist/links/httpLink.mjs +5 -92
  41. package/dist/links/loggerLink.cjs +3 -0
  42. package/dist/links/loggerLink.d.cts +4 -0
  43. package/dist/links/loggerLink.d.mts +4 -0
  44. package/dist/links/loggerLink.mjs +2 -175
  45. package/dist/links/splitLink.cjs +3 -0
  46. package/dist/links/splitLink.d.cts +4 -0
  47. package/dist/links/splitLink.d.mts +4 -0
  48. package/dist/links/splitLink.mjs +2 -24
  49. package/dist/links/wsLink/wsLink.cjs +6 -0
  50. package/dist/links/wsLink/wsLink.d.cts +5 -0
  51. package/dist/links/wsLink/wsLink.d.mts +5 -0
  52. package/dist/links/wsLink/wsLink.mjs +4 -31
  53. package/dist/loggerLink-CsDfg5Bb.cjs +130 -0
  54. package/dist/loggerLink-PGBSQFcR.mjs +125 -0
  55. package/dist/loggerLink-PGBSQFcR.mjs.map +1 -0
  56. package/dist/loggerLink.d-CZjK1CXm.d.mts +54 -0
  57. package/dist/loggerLink.d-CZjK1CXm.d.mts.map +1 -0
  58. package/dist/loggerLink.d-DU855urG.d.cts +54 -0
  59. package/dist/loggerLink.d-DU855urG.d.cts.map +1 -0
  60. package/dist/splitLink-BMgxggng.cjs +58 -0
  61. package/dist/splitLink-BVblHq4n.mjs +47 -0
  62. package/dist/splitLink-BVblHq4n.mjs.map +1 -0
  63. package/dist/splitLink.d-BAqgq0NG.d.mts +20 -0
  64. package/dist/splitLink.d-BAqgq0NG.d.mts.map +1 -0
  65. package/dist/splitLink.d-GdevSkGW.d.cts +20 -0
  66. package/dist/splitLink.d-GdevSkGW.d.cts.map +1 -0
  67. package/dist/subscriptions.d-Ciljg_dH.d.cts +19 -0
  68. package/dist/subscriptions.d-Ciljg_dH.d.cts.map +1 -0
  69. package/dist/subscriptions.d-U92STdZl.d.mts +19 -0
  70. package/dist/subscriptions.d-U92STdZl.d.mts.map +1 -0
  71. package/dist/types.d-DXbqQLCC.d.mts +182 -0
  72. package/dist/types.d-DXbqQLCC.d.mts.map +1 -0
  73. package/dist/types.d-DqGYG6S_.d.cts +182 -0
  74. package/dist/types.d-DqGYG6S_.d.cts.map +1 -0
  75. package/dist/unstable-internals-CYBH4jbF.cjs +34 -0
  76. package/dist/unstable-internals-DU4WecoG.mjs +29 -0
  77. package/dist/unstable-internals-DU4WecoG.mjs.map +1 -0
  78. package/dist/unstable-internals.cjs +3 -0
  79. package/dist/unstable-internals.d-DyLd-B0J.d.mts +46 -0
  80. package/dist/unstable-internals.d-DyLd-B0J.d.mts.map +1 -0
  81. package/dist/unstable-internals.d-kWsZTlQq.d.cts +46 -0
  82. package/dist/unstable-internals.d-kWsZTlQq.d.cts.map +1 -0
  83. package/dist/unstable-internals.d.cts +3 -0
  84. package/dist/unstable-internals.d.mts +3 -0
  85. package/dist/unstable-internals.mjs +3 -1
  86. package/dist/wsLink-DbSHOzlB.mjs +698 -0
  87. package/dist/wsLink-DbSHOzlB.mjs.map +1 -0
  88. package/dist/wsLink-DhJ50EC5.cjs +715 -0
  89. package/dist/wsLink.d-BqO7ltN_.d.mts +194 -0
  90. package/dist/wsLink.d-BqO7ltN_.d.mts.map +1 -0
  91. package/dist/wsLink.d-DtZjg09g.d.cts +194 -0
  92. package/dist/wsLink.d-DtZjg09g.d.cts.map +1 -0
  93. package/links/httpBatchLink/package.json +1 -0
  94. package/links/httpLink/package.json +1 -0
  95. package/links/loggerLink/package.json +1 -0
  96. package/links/splitLink/package.json +1 -0
  97. package/links/wsLink/wsLink/package.json +1 -0
  98. package/package.json +67 -33
  99. package/src/links/localLink.ts +6 -1
  100. package/unstable-internals/package.json +1 -0
  101. package/dist/TRPCClientError.d.ts +0 -30
  102. package/dist/TRPCClientError.d.ts.map +0 -1
  103. package/dist/TRPCClientError.js +0 -79
  104. package/dist/TRPCClientError.mjs +0 -76
  105. package/dist/createTRPCClient.d.ts +0 -69
  106. package/dist/createTRPCClient.d.ts.map +0 -1
  107. package/dist/createTRPCClient.js +0 -48
  108. package/dist/createTRPCClient.mjs +0 -43
  109. package/dist/createTRPCUntypedClient.d.ts +0 -7
  110. package/dist/createTRPCUntypedClient.d.ts.map +0 -1
  111. package/dist/createTRPCUntypedClient.js +0 -10
  112. package/dist/createTRPCUntypedClient.mjs +0 -7
  113. package/dist/getFetch.d.ts +0 -3
  114. package/dist/getFetch.d.ts.map +0 -1
  115. package/dist/getFetch.js +0 -17
  116. package/dist/getFetch.mjs +0 -15
  117. package/dist/index.d.ts +0 -16
  118. package/dist/index.d.ts.map +0 -1
  119. package/dist/index.js +0 -46
  120. package/dist/internals/TRPCUntypedClient.d.ts +0 -39
  121. package/dist/internals/TRPCUntypedClient.d.ts.map +0 -1
  122. package/dist/internals/TRPCUntypedClient.js +0 -115
  123. package/dist/internals/TRPCUntypedClient.mjs +0 -113
  124. package/dist/internals/dataLoader.d.ts +0 -13
  125. package/dist/internals/dataLoader.d.ts.map +0 -1
  126. package/dist/internals/dataLoader.js +0 -117
  127. package/dist/internals/dataLoader.mjs +0 -115
  128. package/dist/internals/inputWithTrackedEventId.d.ts +0 -2
  129. package/dist/internals/inputWithTrackedEventId.d.ts.map +0 -1
  130. package/dist/internals/inputWithTrackedEventId.js +0 -16
  131. package/dist/internals/inputWithTrackedEventId.mjs +0 -14
  132. package/dist/internals/signals.d.ts +0 -16
  133. package/dist/internals/signals.d.ts.map +0 -1
  134. package/dist/internals/signals.js +0 -61
  135. package/dist/internals/signals.mjs +0 -57
  136. package/dist/internals/transformer.d.ts +0 -42
  137. package/dist/internals/transformer.d.ts.map +0 -1
  138. package/dist/internals/transformer.js +0 -30
  139. package/dist/internals/transformer.mjs +0 -28
  140. package/dist/internals/types.d.ts +0 -82
  141. package/dist/internals/types.d.ts.map +0 -1
  142. package/dist/links/HTTPBatchLinkOptions.d.ts +0 -20
  143. package/dist/links/HTTPBatchLinkOptions.d.ts.map +0 -1
  144. package/dist/links/httpBatchLink.d.ts +0 -8
  145. package/dist/links/httpBatchLink.d.ts.map +0 -1
  146. package/dist/links/httpBatchLink.js +0 -110
  147. package/dist/links/httpBatchStreamLink.d.ts +0 -12
  148. package/dist/links/httpBatchStreamLink.d.ts.map +0 -1
  149. package/dist/links/httpBatchStreamLink.js +0 -150
  150. package/dist/links/httpBatchStreamLink.mjs +0 -147
  151. package/dist/links/httpLink.d.ts +0 -17
  152. package/dist/links/httpLink.d.ts.map +0 -1
  153. package/dist/links/httpLink.js +0 -95
  154. package/dist/links/httpSubscriptionLink.d.ts +0 -26
  155. package/dist/links/httpSubscriptionLink.d.ts.map +0 -1
  156. package/dist/links/httpSubscriptionLink.js +0 -177
  157. package/dist/links/httpSubscriptionLink.mjs +0 -174
  158. package/dist/links/internals/contentTypes.d.ts +0 -4
  159. package/dist/links/internals/contentTypes.d.ts.map +0 -1
  160. package/dist/links/internals/contentTypes.js +0 -16
  161. package/dist/links/internals/contentTypes.mjs +0 -12
  162. package/dist/links/internals/createChain.d.ts +0 -8
  163. package/dist/links/internals/createChain.d.ts.map +0 -1
  164. package/dist/links/internals/createChain.js +0 -26
  165. package/dist/links/internals/createChain.mjs +0 -24
  166. package/dist/links/internals/dedupeLink.d.ts +0 -7
  167. package/dist/links/internals/dedupeLink.d.ts.map +0 -1
  168. package/dist/links/internals/httpUtils.d.ts +0 -68
  169. package/dist/links/internals/httpUtils.d.ts.map +0 -1
  170. package/dist/links/internals/httpUtils.js +0 -141
  171. package/dist/links/internals/httpUtils.mjs +0 -133
  172. package/dist/links/internals/subscriptions.d.ts +0 -17
  173. package/dist/links/internals/subscriptions.d.ts.map +0 -1
  174. package/dist/links/internals/urlWithConnectionParams.d.ts +0 -23
  175. package/dist/links/internals/urlWithConnectionParams.d.ts.map +0 -1
  176. package/dist/links/internals/urlWithConnectionParams.js +0 -10
  177. package/dist/links/internals/urlWithConnectionParams.mjs +0 -8
  178. package/dist/links/localLink.d.ts +0 -15
  179. package/dist/links/localLink.d.ts.map +0 -1
  180. package/dist/links/localLink.js +0 -333
  181. package/dist/links/localLink.mjs +0 -331
  182. package/dist/links/loggerLink.d.ts +0 -52
  183. package/dist/links/loggerLink.d.ts.map +0 -1
  184. package/dist/links/loggerLink.js +0 -178
  185. package/dist/links/retryLink.d.ts +0 -33
  186. package/dist/links/retryLink.d.ts.map +0 -1
  187. package/dist/links/retryLink.js +0 -72
  188. package/dist/links/retryLink.mjs +0 -70
  189. package/dist/links/splitLink.d.ts +0 -14
  190. package/dist/links/splitLink.d.ts.map +0 -1
  191. package/dist/links/splitLink.js +0 -27
  192. package/dist/links/types.d.ts +0 -63
  193. package/dist/links/types.d.ts.map +0 -1
  194. package/dist/links/wsLink/createWsClient.d.ts +0 -6
  195. package/dist/links/wsLink/createWsClient.d.ts.map +0 -1
  196. package/dist/links/wsLink/createWsClient.js +0 -9
  197. package/dist/links/wsLink/createWsClient.mjs +0 -7
  198. package/dist/links/wsLink/wsClient/options.d.ts +0 -79
  199. package/dist/links/wsLink/wsClient/options.d.ts.map +0 -1
  200. package/dist/links/wsLink/wsClient/options.js +0 -22
  201. package/dist/links/wsLink/wsClient/options.mjs +0 -18
  202. package/dist/links/wsLink/wsClient/requestManager.d.ts +0 -106
  203. package/dist/links/wsLink/wsClient/requestManager.d.ts.map +0 -1
  204. package/dist/links/wsLink/wsClient/requestManager.js +0 -143
  205. package/dist/links/wsLink/wsClient/requestManager.mjs +0 -141
  206. package/dist/links/wsLink/wsClient/utils.d.ts +0 -38
  207. package/dist/links/wsLink/wsClient/utils.d.ts.map +0 -1
  208. package/dist/links/wsLink/wsClient/utils.js +0 -94
  209. package/dist/links/wsLink/wsClient/utils.mjs +0 -88
  210. package/dist/links/wsLink/wsClient/wsClient.d.ts +0 -84
  211. package/dist/links/wsLink/wsClient/wsClient.d.ts.map +0 -1
  212. package/dist/links/wsLink/wsClient/wsClient.js +0 -325
  213. package/dist/links/wsLink/wsClient/wsClient.mjs +0 -323
  214. package/dist/links/wsLink/wsClient/wsConnection.d.ts +0 -79
  215. package/dist/links/wsLink/wsClient/wsConnection.d.ts.map +0 -1
  216. package/dist/links/wsLink/wsClient/wsConnection.js +0 -188
  217. package/dist/links/wsLink/wsClient/wsConnection.mjs +0 -185
  218. package/dist/links/wsLink/wsLink.d.ts +0 -11
  219. package/dist/links/wsLink/wsLink.d.ts.map +0 -1
  220. package/dist/links/wsLink/wsLink.js +0 -35
  221. package/dist/links.d.ts +0 -12
  222. package/dist/links.d.ts.map +0 -1
  223. package/dist/unstable-internals.d.ts +0 -3
  224. package/dist/unstable-internals.d.ts.map +0 -1
  225. package/dist/unstable-internals.js +0 -7
  226. package/links/httpBatchLink/index.d.ts +0 -1
  227. package/links/httpBatchLink/index.js +0 -1
  228. package/links/httpLink/index.d.ts +0 -1
  229. package/links/httpLink/index.js +0 -1
  230. package/links/loggerLink/index.d.ts +0 -1
  231. package/links/loggerLink/index.js +0 -1
  232. package/links/splitLink/index.d.ts +0 -1
  233. package/links/splitLink/index.js +0 -1
  234. package/links/wsLink/index.d.ts +0 -1
  235. package/links/wsLink/index.js +0 -1
  236. package/links/wsLink/wsLink/index.d.ts +0 -1
  237. package/links/wsLink/wsLink/index.js +0 -1
  238. package/unstable-internals/index.d.ts +0 -1
  239. package/unstable-internals/index.js +0 -1
@@ -1,26 +0,0 @@
1
- import type { AnyClientTypes, EventSourceLike, inferClientTypes, InferrableClientTypes } from '@trpc/server/unstable-core-do-not-import';
2
- import { type TransformerOptions } from '../unstable-internals';
3
- import { type UrlOptionsWithConnectionParams } from './internals/urlWithConnectionParams';
4
- import type { Operation, TRPCLink } from './types';
5
- type HTTPSubscriptionLinkOptions<TRoot extends AnyClientTypes, TEventSource extends EventSourceLike.AnyConstructor = typeof EventSource> = {
6
- /**
7
- * EventSource ponyfill
8
- */
9
- EventSource?: TEventSource;
10
- /**
11
- * EventSource options or a callback that returns them
12
- */
13
- eventSourceOptions?: EventSourceLike.InitDictOf<TEventSource> | ((opts: {
14
- op: Operation;
15
- }) => EventSourceLike.InitDictOf<TEventSource> | Promise<EventSourceLike.InitDictOf<TEventSource>>);
16
- } & TransformerOptions<TRoot> & UrlOptionsWithConnectionParams;
17
- /**
18
- * @see https://trpc.io/docs/client/links/httpSubscriptionLink
19
- */
20
- export declare function httpSubscriptionLink<TInferrable extends InferrableClientTypes, TEventSource extends EventSourceLike.AnyConstructor>(opts: HTTPSubscriptionLinkOptions<inferClientTypes<TInferrable>, TEventSource>): TRPCLink<TInferrable>;
21
- /**
22
- * @deprecated use {@link httpSubscriptionLink} instead
23
- */
24
- export declare const unstable_httpSubscriptionLink: typeof httpSubscriptionLink;
25
- export {};
26
- //# sourceMappingURL=httpSubscriptionLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpSubscriptionLink.d.ts","sourceRoot":"","sources":["../../src/links/httpSubscriptionLink.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,0CAA0C,CAAC;AAUlD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAiBnD,KAAK,2BAA2B,CAC9B,KAAK,SAAS,cAAc,EAC5B,YAAY,SAAS,eAAe,CAAC,cAAc,GAAG,OAAO,WAAW,IACtE;IACF;;OAEG;IACH,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B;;OAEG;IACH,kBAAkB,CAAC,EACf,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,GACxC,CAAC,CAAC,IAAI,EAAE;QACN,EAAE,EAAE,SAAS,CAAC;KACf,KACG,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,GACxC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAC5D,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAC3B,8BAA8B,CAAC;AAEjC;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,SAAS,qBAAqB,EACzC,YAAY,SAAS,eAAe,CAAC,cAAc,EAEnD,IAAI,EAAE,2BAA2B,CAC/B,gBAAgB,CAAC,WAAW,CAAC,EAC7B,YAAY,CACb,GACA,QAAQ,CAAC,WAAW,CAAC,CAuKvB;AAED;;GAEG;AACH,eAAO,MAAM,6BAA6B,6BAAuB,CAAC"}
@@ -1,177 +0,0 @@
1
- 'use strict';
2
-
3
- var observable = require('@trpc/server/observable');
4
- var unstableCoreDoNotImport = require('@trpc/server/unstable-core-do-not-import');
5
- var inputWithTrackedEventId = require('../internals/inputWithTrackedEventId.js');
6
- var signals = require('../internals/signals.js');
7
- var TRPCClientError = require('../TRPCClientError.js');
8
- var transformer = require('../internals/transformer.js');
9
- var httpUtils = require('./internals/httpUtils.js');
10
- var urlWithConnectionParams$1 = require('./internals/urlWithConnectionParams.js');
11
-
12
- async function urlWithConnectionParams(opts) {
13
- let url = await urlWithConnectionParams$1.resultOf(opts.url);
14
- if (opts.connectionParams) {
15
- const params = await urlWithConnectionParams$1.resultOf(opts.connectionParams);
16
- const prefix = url.includes('?') ? '&' : '?';
17
- url += prefix + 'connectionParams=' + encodeURIComponent(JSON.stringify(params));
18
- }
19
- return url;
20
- }
21
- /**
22
- * @see https://trpc.io/docs/client/links/httpSubscriptionLink
23
- */ function httpSubscriptionLink(opts) {
24
- const transformer$1 = transformer.getTransformer(opts.transformer);
25
- return ()=>{
26
- return ({ op })=>{
27
- return observable.observable((observer)=>{
28
- const { type, path, input } = op;
29
- /* istanbul ignore if -- @preserve */ if (type !== 'subscription') {
30
- throw new Error('httpSubscriptionLink only supports subscriptions');
31
- }
32
- let lastEventId = undefined;
33
- const ac = new AbortController();
34
- const signal = signals.raceAbortSignals(op.signal, ac.signal);
35
- const eventSourceStream = unstableCoreDoNotImport.sseStreamConsumer({
36
- url: async ()=>httpUtils.getUrl({
37
- transformer: transformer$1,
38
- url: await urlWithConnectionParams(opts),
39
- input: inputWithTrackedEventId.inputWithTrackedEventId(input, lastEventId),
40
- path,
41
- type,
42
- signal: null
43
- }),
44
- init: ()=>urlWithConnectionParams$1.resultOf(opts.eventSourceOptions, {
45
- op
46
- }),
47
- signal,
48
- deserialize: transformer$1.output.deserialize,
49
- EventSource: opts.EventSource ?? globalThis.EventSource
50
- });
51
- const connectionState = observable.behaviorSubject({
52
- type: 'state',
53
- state: 'connecting',
54
- error: null
55
- });
56
- const connectionSub = connectionState.subscribe({
57
- next (state) {
58
- observer.next({
59
- result: state
60
- });
61
- }
62
- });
63
- unstableCoreDoNotImport.run(async ()=>{
64
- for await (const chunk of eventSourceStream){
65
- switch(chunk.type){
66
- case 'ping':
67
- break;
68
- case 'data':
69
- const chunkData = chunk.data;
70
- let result;
71
- if (chunkData.id) {
72
- // if the `tracked()`-helper is used, we always have an `id` field
73
- lastEventId = chunkData.id;
74
- result = {
75
- id: chunkData.id,
76
- data: chunkData
77
- };
78
- } else {
79
- result = {
80
- data: chunkData.data
81
- };
82
- }
83
- observer.next({
84
- result,
85
- context: {
86
- eventSource: chunk.eventSource
87
- }
88
- });
89
- break;
90
- case 'connected':
91
- {
92
- observer.next({
93
- result: {
94
- type: 'started'
95
- },
96
- context: {
97
- eventSource: chunk.eventSource
98
- }
99
- });
100
- connectionState.next({
101
- type: 'state',
102
- state: 'pending',
103
- error: null
104
- });
105
- break;
106
- }
107
- case 'serialized-error':
108
- {
109
- const error = TRPCClientError.TRPCClientError.from({
110
- error: chunk.error
111
- });
112
- if (unstableCoreDoNotImport.retryableRpcCodes.includes(chunk.error.code)) {
113
- //
114
- connectionState.next({
115
- type: 'state',
116
- state: 'connecting',
117
- error
118
- });
119
- break;
120
- }
121
- //
122
- // non-retryable error, cancel the subscription
123
- throw error;
124
- }
125
- case 'connecting':
126
- {
127
- const lastState = connectionState.get();
128
- const error = chunk.event && TRPCClientError.TRPCClientError.from(chunk.event);
129
- if (!error && lastState.state === 'connecting') {
130
- break;
131
- }
132
- connectionState.next({
133
- type: 'state',
134
- state: 'connecting',
135
- error
136
- });
137
- break;
138
- }
139
- case 'timeout':
140
- {
141
- connectionState.next({
142
- type: 'state',
143
- state: 'connecting',
144
- error: new TRPCClientError.TRPCClientError(`Timeout of ${chunk.ms}ms reached while waiting for a response`)
145
- });
146
- }
147
- }
148
- }
149
- observer.next({
150
- result: {
151
- type: 'stopped'
152
- }
153
- });
154
- connectionState.next({
155
- type: 'state',
156
- state: 'idle',
157
- error: null
158
- });
159
- observer.complete();
160
- }).catch((error)=>{
161
- observer.error(TRPCClientError.TRPCClientError.from(error));
162
- });
163
- return ()=>{
164
- observer.complete();
165
- ac.abort();
166
- connectionSub.unsubscribe();
167
- };
168
- });
169
- };
170
- };
171
- }
172
- /**
173
- * @deprecated use {@link httpSubscriptionLink} instead
174
- */ const unstable_httpSubscriptionLink = httpSubscriptionLink;
175
-
176
- exports.httpSubscriptionLink = httpSubscriptionLink;
177
- exports.unstable_httpSubscriptionLink = unstable_httpSubscriptionLink;
@@ -1,174 +0,0 @@
1
- import { observable, behaviorSubject } from '@trpc/server/observable';
2
- import { sseStreamConsumer, run, retryableRpcCodes } from '@trpc/server/unstable-core-do-not-import';
3
- import { inputWithTrackedEventId } from '../internals/inputWithTrackedEventId.mjs';
4
- import { raceAbortSignals } from '../internals/signals.mjs';
5
- import { TRPCClientError } from '../TRPCClientError.mjs';
6
- import { getTransformer } from '../internals/transformer.mjs';
7
- import { getUrl } from './internals/httpUtils.mjs';
8
- import { resultOf } from './internals/urlWithConnectionParams.mjs';
9
-
10
- async function urlWithConnectionParams(opts) {
11
- let url = await resultOf(opts.url);
12
- if (opts.connectionParams) {
13
- const params = await resultOf(opts.connectionParams);
14
- const prefix = url.includes('?') ? '&' : '?';
15
- url += prefix + 'connectionParams=' + encodeURIComponent(JSON.stringify(params));
16
- }
17
- return url;
18
- }
19
- /**
20
- * @see https://trpc.io/docs/client/links/httpSubscriptionLink
21
- */ function httpSubscriptionLink(opts) {
22
- const transformer = getTransformer(opts.transformer);
23
- return ()=>{
24
- return ({ op })=>{
25
- return observable((observer)=>{
26
- const { type, path, input } = op;
27
- /* istanbul ignore if -- @preserve */ if (type !== 'subscription') {
28
- throw new Error('httpSubscriptionLink only supports subscriptions');
29
- }
30
- let lastEventId = undefined;
31
- const ac = new AbortController();
32
- const signal = raceAbortSignals(op.signal, ac.signal);
33
- const eventSourceStream = sseStreamConsumer({
34
- url: async ()=>getUrl({
35
- transformer,
36
- url: await urlWithConnectionParams(opts),
37
- input: inputWithTrackedEventId(input, lastEventId),
38
- path,
39
- type,
40
- signal: null
41
- }),
42
- init: ()=>resultOf(opts.eventSourceOptions, {
43
- op
44
- }),
45
- signal,
46
- deserialize: transformer.output.deserialize,
47
- EventSource: opts.EventSource ?? globalThis.EventSource
48
- });
49
- const connectionState = behaviorSubject({
50
- type: 'state',
51
- state: 'connecting',
52
- error: null
53
- });
54
- const connectionSub = connectionState.subscribe({
55
- next (state) {
56
- observer.next({
57
- result: state
58
- });
59
- }
60
- });
61
- run(async ()=>{
62
- for await (const chunk of eventSourceStream){
63
- switch(chunk.type){
64
- case 'ping':
65
- break;
66
- case 'data':
67
- const chunkData = chunk.data;
68
- let result;
69
- if (chunkData.id) {
70
- // if the `tracked()`-helper is used, we always have an `id` field
71
- lastEventId = chunkData.id;
72
- result = {
73
- id: chunkData.id,
74
- data: chunkData
75
- };
76
- } else {
77
- result = {
78
- data: chunkData.data
79
- };
80
- }
81
- observer.next({
82
- result,
83
- context: {
84
- eventSource: chunk.eventSource
85
- }
86
- });
87
- break;
88
- case 'connected':
89
- {
90
- observer.next({
91
- result: {
92
- type: 'started'
93
- },
94
- context: {
95
- eventSource: chunk.eventSource
96
- }
97
- });
98
- connectionState.next({
99
- type: 'state',
100
- state: 'pending',
101
- error: null
102
- });
103
- break;
104
- }
105
- case 'serialized-error':
106
- {
107
- const error = TRPCClientError.from({
108
- error: chunk.error
109
- });
110
- if (retryableRpcCodes.includes(chunk.error.code)) {
111
- //
112
- connectionState.next({
113
- type: 'state',
114
- state: 'connecting',
115
- error
116
- });
117
- break;
118
- }
119
- //
120
- // non-retryable error, cancel the subscription
121
- throw error;
122
- }
123
- case 'connecting':
124
- {
125
- const lastState = connectionState.get();
126
- const error = chunk.event && TRPCClientError.from(chunk.event);
127
- if (!error && lastState.state === 'connecting') {
128
- break;
129
- }
130
- connectionState.next({
131
- type: 'state',
132
- state: 'connecting',
133
- error
134
- });
135
- break;
136
- }
137
- case 'timeout':
138
- {
139
- connectionState.next({
140
- type: 'state',
141
- state: 'connecting',
142
- error: new TRPCClientError(`Timeout of ${chunk.ms}ms reached while waiting for a response`)
143
- });
144
- }
145
- }
146
- }
147
- observer.next({
148
- result: {
149
- type: 'stopped'
150
- }
151
- });
152
- connectionState.next({
153
- type: 'state',
154
- state: 'idle',
155
- error: null
156
- });
157
- observer.complete();
158
- }).catch((error)=>{
159
- observer.error(TRPCClientError.from(error));
160
- });
161
- return ()=>{
162
- observer.complete();
163
- ac.abort();
164
- connectionSub.unsubscribe();
165
- };
166
- });
167
- };
168
- };
169
- }
170
- /**
171
- * @deprecated use {@link httpSubscriptionLink} instead
172
- */ const unstable_httpSubscriptionLink = httpSubscriptionLink;
173
-
174
- export { httpSubscriptionLink, unstable_httpSubscriptionLink };
@@ -1,4 +0,0 @@
1
- export declare function isOctetType(input: unknown): input is Uint8Array<ArrayBufferLike> | Blob;
2
- export declare function isFormData(input: unknown): input is FormData;
3
- export declare function isNonJsonSerializable(input: unknown): input is FormData | Uint8Array<ArrayBufferLike> | Blob;
4
- //# sourceMappingURL=contentTypes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"contentTypes.d.ts","sourceRoot":"","sources":["../../../src/links/internals/contentTypes.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,+CAMzC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,qBAExC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,0DAEnD"}
@@ -1,16 +0,0 @@
1
- 'use strict';
2
-
3
- function isOctetType(input) {
4
- return input instanceof Uint8Array || // File extends from Blob but is only available in nodejs from v20
5
- input instanceof Blob;
6
- }
7
- function isFormData(input) {
8
- return input instanceof FormData;
9
- }
10
- function isNonJsonSerializable(input) {
11
- return isOctetType(input) || isFormData(input);
12
- }
13
-
14
- exports.isFormData = isFormData;
15
- exports.isNonJsonSerializable = isNonJsonSerializable;
16
- exports.isOctetType = isOctetType;
@@ -1,12 +0,0 @@
1
- function isOctetType(input) {
2
- return input instanceof Uint8Array || // File extends from Blob but is only available in nodejs from v20
3
- input instanceof Blob;
4
- }
5
- function isFormData(input) {
6
- return input instanceof FormData;
7
- }
8
- function isNonJsonSerializable(input) {
9
- return isOctetType(input) || isFormData(input);
10
- }
11
-
12
- export { isFormData, isNonJsonSerializable, isOctetType };
@@ -1,8 +0,0 @@
1
- import type { AnyRouter } from '@trpc/server/unstable-core-do-not-import';
2
- import type { Operation, OperationLink, OperationResultObservable } from '../types';
3
- /** @internal */
4
- export declare function createChain<TRouter extends AnyRouter, TInput = unknown, TOutput = unknown>(opts: {
5
- links: OperationLink<TRouter, TInput, TOutput>[];
6
- op: Operation<TInput>;
7
- }): OperationResultObservable<TRouter, TOutput>;
8
- //# sourceMappingURL=createChain.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createChain.d.ts","sourceRoot":"","sources":["../../../src/links/internals/createChain.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EACV,SAAS,EACT,aAAa,EACb,yBAAyB,EAC1B,MAAM,UAAU,CAAC;AAElB,gBAAgB;AAChB,wBAAgB,WAAW,CACzB,OAAO,SAAS,SAAS,EACzB,MAAM,GAAG,OAAO,EAChB,OAAO,GAAG,OAAO,EACjB,IAAI,EAAE;IACN,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACjD,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;CACvB,GAAG,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAuB9C"}
@@ -1,26 +0,0 @@
1
- 'use strict';
2
-
3
- var observable = require('@trpc/server/observable');
4
-
5
- /** @internal */ function createChain(opts) {
6
- return observable.observable((observer)=>{
7
- function execute(index = 0, op = opts.op) {
8
- const next = opts.links[index];
9
- if (!next) {
10
- throw new Error('No more links to execute - did you forget to add an ending link?');
11
- }
12
- const subscription = next({
13
- op,
14
- next (nextOp) {
15
- const nextObserver = execute(index + 1, nextOp);
16
- return nextObserver;
17
- }
18
- });
19
- return subscription;
20
- }
21
- const obs$ = execute();
22
- return obs$.subscribe(observer);
23
- });
24
- }
25
-
26
- exports.createChain = createChain;
@@ -1,24 +0,0 @@
1
- import { observable } from '@trpc/server/observable';
2
-
3
- /** @internal */ function createChain(opts) {
4
- return observable((observer)=>{
5
- function execute(index = 0, op = opts.op) {
6
- const next = opts.links[index];
7
- if (!next) {
8
- throw new Error('No more links to execute - did you forget to add an ending link?');
9
- }
10
- const subscription = next({
11
- op,
12
- next (nextOp) {
13
- const nextObserver = execute(index + 1, nextOp);
14
- return nextObserver;
15
- }
16
- });
17
- return subscription;
18
- }
19
- const obs$ = execute();
20
- return obs$.subscribe(observer);
21
- });
22
- }
23
-
24
- export { createChain };
@@ -1,7 +0,0 @@
1
- import type { AnyRouter } from '@trpc/server/unstable-core-do-not-import';
2
- import type { TRPCLink } from '../types';
3
- /**
4
- * @internal used for testing
5
- */
6
- export declare function dedupeLink<TRouter extends AnyRouter = AnyRouter>(): TRPCLink<TRouter>;
7
- //# sourceMappingURL=dedupeLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dedupeLink.d.ts","sourceRoot":"","sources":["../../../src/links/internals/dedupeLink.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,SAAS,SAAS,GAAG,SAAS,KAClC,QAAQ,CAAC,OAAO,CAAC,CA2CrB"}
@@ -1,68 +0,0 @@
1
- import type { AnyClientTypes, CombinedDataTransformer, Maybe, ProcedureType, TRPCAcceptHeader, TRPCResponse } from '@trpc/server/unstable-core-do-not-import';
2
- import type { FetchEsque, RequestInitEsque, ResponseEsque } from '../../internals/types';
3
- import type { TransformerOptions } from '../../unstable-internals';
4
- import type { HTTPHeaders } from '../types';
5
- /**
6
- * @internal
7
- */
8
- export type HTTPLinkBaseOptions<TRoot extends Pick<AnyClientTypes, 'transformer'>> = {
9
- url: string | URL;
10
- /**
11
- * Add ponyfill for fetch
12
- */
13
- fetch?: FetchEsque;
14
- /**
15
- * Send all requests `as POST`s requests regardless of the procedure type
16
- * The HTTP handler must separately allow overriding the method. See:
17
- * @see https://trpc.io/docs/rpc
18
- */
19
- methodOverride?: 'POST';
20
- } & TransformerOptions<TRoot>;
21
- export interface ResolvedHTTPLinkOptions {
22
- url: string;
23
- fetch?: FetchEsque;
24
- transformer: CombinedDataTransformer;
25
- methodOverride?: 'POST';
26
- }
27
- export declare function resolveHTTPLinkOptions(opts: HTTPLinkBaseOptions<AnyClientTypes>): ResolvedHTTPLinkOptions;
28
- export interface HTTPResult {
29
- json: TRPCResponse;
30
- meta: {
31
- response: ResponseEsque;
32
- responseJSON?: unknown;
33
- };
34
- }
35
- type GetInputOptions = {
36
- transformer: CombinedDataTransformer;
37
- } & ({
38
- input: unknown;
39
- } | {
40
- inputs: unknown[];
41
- });
42
- export declare function getInput(opts: GetInputOptions): any;
43
- export type HTTPBaseRequestOptions = GetInputOptions & ResolvedHTTPLinkOptions & {
44
- type: ProcedureType;
45
- path: string;
46
- signal: Maybe<AbortSignal>;
47
- };
48
- type GetUrl = (opts: HTTPBaseRequestOptions) => string;
49
- type GetBody = (opts: HTTPBaseRequestOptions) => RequestInitEsque['body'];
50
- export type ContentOptions = {
51
- trpcAcceptHeader?: TRPCAcceptHeader;
52
- contentTypeHeader?: string;
53
- getUrl: GetUrl;
54
- getBody: GetBody;
55
- };
56
- export declare const getUrl: GetUrl;
57
- export declare const getBody: GetBody;
58
- export type Requester = (opts: HTTPBaseRequestOptions & {
59
- headers: () => HTTPHeaders | Promise<HTTPHeaders>;
60
- }) => Promise<HTTPResult>;
61
- export declare const jsonHttpRequester: Requester;
62
- export type HTTPRequestOptions = ContentOptions & HTTPBaseRequestOptions & {
63
- headers: () => HTTPHeaders | Promise<HTTPHeaders>;
64
- };
65
- export declare function fetchHTTPResponse(opts: HTTPRequestOptions): Promise<ResponseEsque>;
66
- export declare function httpRequest(opts: HTTPRequestOptions): Promise<HTTPResult>;
67
- export {};
68
- //# sourceMappingURL=httpUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpUtils.d.ts","sourceRoot":"","sources":["../../../src/links/internals/httpUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACvB,KAAK,EACL,aAAa,EACb,gBAAgB,EAChB,YAAY,EACb,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAC7B,KAAK,SAAS,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,IAC/C;IACF,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AAE9B,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,uBAAuB,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,mBAAmB,CAAC,cAAc,CAAC,GACxC,uBAAuB,CAOzB;AAkBD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE;QACJ,QAAQ,EAAE,aAAa,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACH;AAED,KAAK,eAAe,GAAG;IACrB,WAAW,EAAE,uBAAuB,CAAC;CACtC,GAAG,CAAC;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC,CAAC;AAEjD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,eAAe,OAM7C;AAED,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAClD,uBAAuB,GAAG;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;CAC5B,CAAC;AAEJ,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,sBAAsB,KAAK,MAAM,CAAC;AACvD,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,sBAAsB,KAAK,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE1E,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,MAuBpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CACtB,IAAI,EAAE,sBAAsB,GAAG;IAC7B,OAAO,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACnD,KACE,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,eAAO,MAAM,iBAAiB,EAAE,SAO/B,CAAC;AAcF,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAC7C,sBAAsB,GAAG;IACvB,OAAO,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACnD,CAAC;AAuBJ,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,0BA6B/D;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,UAAU,CAAC,CAcrB"}