@trpc/client 11.3.1-canary.1 → 11.3.2-canary.2

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 (237) 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 +731 -0
  27. package/dist/index.d.cts +197 -0
  28. package/dist/index.d.cts.map +1 -0
  29. package/dist/index.d.mts +197 -0
  30. package/dist/index.d.mts.map +1 -0
  31. package/dist/index.mjs +733 -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/unstable-internals/package.json +1 -0
  100. package/dist/TRPCClientError.d.ts +0 -30
  101. package/dist/TRPCClientError.d.ts.map +0 -1
  102. package/dist/TRPCClientError.js +0 -79
  103. package/dist/TRPCClientError.mjs +0 -76
  104. package/dist/bundle-analysis.json +0 -451
  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/wsLink/index.d.ts +0 -1
  235. package/links/wsLink/wsLink/index.js +0 -1
  236. package/unstable-internals/index.d.ts +0 -1
  237. package/unstable-internals/index.js +0 -1
@@ -1,23 +0,0 @@
1
- import { type TRPCRequestInfo } from '@trpc/server/http';
2
- /**
3
- * Get the result of a value or function that returns a value
4
- * It also optionally accepts typesafe arguments for the function
5
- */
6
- export declare const resultOf: <T, TArgs extends any[]>(value: T | ((...args: TArgs) => T), ...args: TArgs) => T;
7
- /**
8
- * A value that can be wrapped in callback
9
- */
10
- export type CallbackOrValue<T> = T | (() => T | Promise<T>);
11
- export interface UrlOptionsWithConnectionParams {
12
- /**
13
- * The URL to connect to (can be a function that returns a URL)
14
- */
15
- url: CallbackOrValue<string>;
16
- /**
17
- * Connection params that are available in `createContext()`
18
- * - For `wsLink`/`wsClient`, these are sent as the first message
19
- * - For `httpSubscriptionLink`, these are serialized as part of the URL under the `connectionParams` query
20
- */
21
- connectionParams?: CallbackOrValue<TRPCRequestInfo['connectionParams']>;
22
- }
23
- //# sourceMappingURL=urlWithConnectionParams.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"urlWithConnectionParams.d.ts","sourceRoot":"","sources":["../../../src/links/internals/urlWithConnectionParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,KAAK,SAAS,GAAG,EAAE,EAC7C,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,EAClC,GAAG,MAAM,KAAK,KACb,CAIF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5D,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,GAAG,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAE7B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC,CAAC;CACzE"}
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Get the result of a value or function that returns a value
5
- * It also optionally accepts typesafe arguments for the function
6
- */ const resultOf = (value, ...args)=>{
7
- return typeof value === 'function' ? value(...args) : value;
8
- };
9
-
10
- exports.resultOf = resultOf;
@@ -1,8 +0,0 @@
1
- /**
2
- * Get the result of a value or function that returns a value
3
- * It also optionally accepts typesafe arguments for the function
4
- */ const resultOf = (value, ...args)=>{
5
- return typeof value === 'function' ? value(...args) : value;
6
- };
7
-
8
- export { resultOf };
@@ -1,15 +0,0 @@
1
- import { type AnyRouter, type ErrorHandlerOptions, type inferClientTypes, type inferRouterContext } from '@trpc/server/unstable-core-do-not-import';
2
- import type { TransformerOptions } from '../internals/transformer';
3
- import type { TRPCLink } from './types';
4
- export type LocalLinkOptions<TRouter extends AnyRouter> = {
5
- router: TRouter;
6
- createContext: () => Promise<inferRouterContext<TRouter>>;
7
- onError?: (opts: ErrorHandlerOptions<inferRouterContext<TRouter>>) => void;
8
- } & TransformerOptions<inferClientTypes<TRouter>>;
9
- /**
10
- * localLink is a terminating link that allows you to make tRPC procedure calls directly in your application without going through HTTP.
11
- *
12
- * @see https://trpc.io/docs/links/localLink
13
- */
14
- export declare function experimental_localLink<TRouter extends AnyRouter>(opts: LocalLinkOptions<TRouter>): TRPCLink<TRouter>;
15
- //# sourceMappingURL=localLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"localLink.d.ts","sourceRoot":"","sources":["../../src/links/localLink.ts"],"names":[],"mappings":"AAOA,OAAO,EAQL,KAAK,SAAS,EACd,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,0CAA0C,CAAC;AAIlD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,SAAS,IAAI;IACxD,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;CAC5E,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAC9D,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAC9B,QAAQ,CAAC,OAAO,CAAC,CA2OnB"}
@@ -1,333 +0,0 @@
1
- 'use strict';
2
-
3
- var server = require('@trpc/server');
4
- var observable = require('@trpc/server/observable');
5
- var rpc = require('@trpc/server/rpc');
6
- var unstableCoreDoNotImport = require('@trpc/server/unstable-core-do-not-import');
7
- var inputWithTrackedEventId = require('../internals/inputWithTrackedEventId.js');
8
- var signals = require('../internals/signals.js');
9
- var transformer = require('../internals/transformer.js');
10
- var TRPCClientError = require('../TRPCClientError.js');
11
-
12
- function _ts_add_disposable_resource(env, value, async) {
13
- if (value !== null && value !== void 0) {
14
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
15
- var dispose, inner;
16
- if (async) {
17
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
18
- dispose = value[Symbol.asyncDispose];
19
- }
20
- if (dispose === void 0) {
21
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
22
- dispose = value[Symbol.dispose];
23
- if (async) inner = dispose;
24
- }
25
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
26
- if (inner) dispose = function() {
27
- try {
28
- inner.call(this);
29
- } catch (e) {
30
- return Promise.reject(e);
31
- }
32
- };
33
- env.stack.push({
34
- value: value,
35
- dispose: dispose,
36
- async: async
37
- });
38
- } else if (async) {
39
- env.stack.push({
40
- async: true
41
- });
42
- }
43
- return value;
44
- }
45
- function _ts_dispose_resources(env) {
46
- var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
47
- var e = new Error(message);
48
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
49
- };
50
- return (_ts_dispose_resources = function _ts_dispose_resources(env) {
51
- function fail(e) {
52
- env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
53
- env.hasError = true;
54
- }
55
- var r, s = 0;
56
- function next() {
57
- while(r = env.stack.pop()){
58
- try {
59
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
60
- if (r.dispose) {
61
- var result = r.dispose.call(r.value);
62
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
63
- fail(e);
64
- return next();
65
- });
66
- } else s |= 1;
67
- } catch (e) {
68
- fail(e);
69
- }
70
- }
71
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
72
- if (env.hasError) throw env.error;
73
- }
74
- return next();
75
- })(env);
76
- }
77
- /**
78
- * localLink is a terminating link that allows you to make tRPC procedure calls directly in your application without going through HTTP.
79
- *
80
- * @see https://trpc.io/docs/links/localLink
81
- */ function experimental_localLink(opts) {
82
- const transformer$1 = transformer.getTransformer(opts.transformer);
83
- const transformChunk = (chunk)=>{
84
- if (opts.transformer) {
85
- // assume transformer will do the right thing
86
- return chunk;
87
- }
88
- // Special case for undefined, because `JSON.stringify(undefined)` throws
89
- if (chunk === undefined) {
90
- return chunk;
91
- }
92
- const serialized = JSON.stringify(transformer$1.input.serialize(chunk));
93
- const deserialized = JSON.parse(transformer$1.output.deserialize(serialized));
94
- return deserialized;
95
- };
96
- return ()=>({ op })=>observable.observable((observer)=>{
97
- let ctx = undefined;
98
- const ac = new AbortController();
99
- const signal = signals.raceAbortSignals(op.signal, ac.signal);
100
- const signalPromise = signals.abortSignalToPromise(signal);
101
- signalPromise.catch(()=>{
102
- // prevent unhandled rejection
103
- });
104
- let input = op.input;
105
- async function runProcedure(newInput) {
106
- input = newInput;
107
- ctx = await opts.createContext();
108
- return unstableCoreDoNotImport.callProcedure({
109
- router: opts.router,
110
- path: op.path,
111
- getRawInput: async ()=>newInput,
112
- ctx,
113
- type: op.type,
114
- signal
115
- });
116
- }
117
- function onErrorCallback(cause) {
118
- if (unstableCoreDoNotImport.isAbortError(cause)) {
119
- return;
120
- }
121
- opts.onError?.({
122
- error: server.getTRPCErrorFromUnknown(cause),
123
- type: op.type,
124
- path: op.path,
125
- input,
126
- ctx
127
- });
128
- }
129
- function coerceToTRPCClientError(cause) {
130
- if (TRPCClientError.isTRPCClientError(cause)) {
131
- return cause;
132
- }
133
- const error = server.getTRPCErrorFromUnknown(cause);
134
- const shape = server.getTRPCErrorShape({
135
- config: opts.router._def._config,
136
- ctx,
137
- error,
138
- input,
139
- path: op.path,
140
- type: op.type
141
- });
142
- return TRPCClientError.TRPCClientError.from({
143
- error: transformChunk(shape)
144
- });
145
- }
146
- unstableCoreDoNotImport.run(async ()=>{
147
- switch(op.type){
148
- case 'query':
149
- case 'mutation':
150
- {
151
- const result = await runProcedure(op.input);
152
- if (!unstableCoreDoNotImport.isAsyncIterable(result)) {
153
- observer.next({
154
- result: {
155
- data: transformChunk(result)
156
- }
157
- });
158
- observer.complete();
159
- break;
160
- }
161
- observer.next({
162
- result: {
163
- data: async function*() {
164
- const env = {
165
- stack: [],
166
- error: void 0,
167
- hasError: false
168
- };
169
- try {
170
- const iterator = _ts_add_disposable_resource(env, unstableCoreDoNotImport.iteratorResource(result), true);
171
- ;
172
- const _finally = _ts_add_disposable_resource(env, unstableCoreDoNotImport.makeResource({}, ()=>{
173
- observer.complete();
174
- }), false);
175
- ;
176
- try {
177
- while(true){
178
- const res = await Promise.race([
179
- iterator.next(),
180
- signalPromise
181
- ]);
182
- if (res.done) {
183
- return transformChunk(res.value);
184
- }
185
- yield transformChunk(res.value);
186
- }
187
- } catch (cause) {
188
- onErrorCallback(cause);
189
- throw coerceToTRPCClientError(cause);
190
- }
191
- } catch (e) {
192
- env.error = e;
193
- env.hasError = true;
194
- } finally{
195
- const result = _ts_dispose_resources(env);
196
- if (result) await result;
197
- }
198
- }()
199
- }
200
- });
201
- break;
202
- }
203
- case 'subscription':
204
- {
205
- const env = {
206
- stack: [],
207
- error: void 0,
208
- hasError: false
209
- };
210
- try {
211
- const connectionState = observable.behaviorSubject({
212
- type: 'state',
213
- state: 'connecting',
214
- error: null
215
- });
216
- const connectionSub = connectionState.subscribe({
217
- next (state) {
218
- observer.next({
219
- result: state
220
- });
221
- }
222
- });
223
- let lastEventId = undefined;
224
- const _finally = _ts_add_disposable_resource(env, unstableCoreDoNotImport.makeResource({}, async ()=>{
225
- observer.complete();
226
- connectionState.next({
227
- type: 'state',
228
- state: 'idle',
229
- error: null
230
- });
231
- connectionSub.unsubscribe();
232
- }), false);
233
- ;
234
- while(true){
235
- const env = {
236
- stack: [],
237
- error: void 0,
238
- hasError: false
239
- };
240
- try {
241
- const result = await runProcedure(inputWithTrackedEventId.inputWithTrackedEventId(op.input, lastEventId));
242
- if (!unstableCoreDoNotImport.isAsyncIterable(result)) {
243
- throw new Error('Expected an async iterable');
244
- }
245
- const iterator = _ts_add_disposable_resource(env, unstableCoreDoNotImport.iteratorResource(result), true);
246
- ;
247
- observer.next({
248
- result: {
249
- type: 'started'
250
- }
251
- });
252
- connectionState.next({
253
- type: 'state',
254
- state: 'pending',
255
- error: null
256
- });
257
- // Use a while loop to handle errors and reconnects
258
- while(true){
259
- let res;
260
- try {
261
- res = await Promise.race([
262
- iterator.next(),
263
- signalPromise
264
- ]);
265
- } catch (cause) {
266
- if (unstableCoreDoNotImport.isAbortError(cause)) {
267
- return;
268
- }
269
- const error = server.getTRPCErrorFromUnknown(cause);
270
- if (!unstableCoreDoNotImport.retryableRpcCodes.includes(rpc.TRPC_ERROR_CODES_BY_KEY[error.code])) {
271
- throw coerceToTRPCClientError(error);
272
- }
273
- onErrorCallback(error);
274
- connectionState.next({
275
- type: 'state',
276
- state: 'connecting',
277
- error: coerceToTRPCClientError(error)
278
- });
279
- break;
280
- }
281
- if (res.done) {
282
- return;
283
- }
284
- let chunk;
285
- if (server.isTrackedEnvelope(res.value)) {
286
- lastEventId = res.value[0];
287
- chunk = {
288
- id: res.value[0],
289
- data: {
290
- id: res.value[0],
291
- data: res.value[1]
292
- }
293
- };
294
- } else {
295
- chunk = {
296
- data: res.value
297
- };
298
- }
299
- observer.next({
300
- result: {
301
- ...chunk,
302
- data: transformChunk(chunk.data)
303
- }
304
- });
305
- }
306
- } catch (e) {
307
- env.error = e;
308
- env.hasError = true;
309
- } finally{
310
- const result = _ts_dispose_resources(env);
311
- if (result) await result;
312
- }
313
- }
314
- break;
315
- } catch (e) {
316
- env.error = e;
317
- env.hasError = true;
318
- } finally{
319
- _ts_dispose_resources(env);
320
- }
321
- }
322
- }
323
- }).catch((cause)=>{
324
- onErrorCallback(cause);
325
- observer.error(coerceToTRPCClientError(cause));
326
- });
327
- return ()=>{
328
- ac.abort();
329
- };
330
- });
331
- }
332
-
333
- exports.experimental_localLink = experimental_localLink;