@trpc/client 11.1.3-alpha-tmp-issues-6785.34 → 11.1.3-alpha-tmp-tsdown.24

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 (244) hide show
  1. package/dist/TRPCClientError.d.mts +32 -0
  2. package/dist/TRPCClientError.d.mts.map +1 -0
  3. package/dist/TRPCClientError.d.ts +28 -25
  4. package/dist/TRPCClientError.d.ts.map +1 -1
  5. package/dist/TRPCClientError.js +48 -72
  6. package/dist/TRPCClientError.mjs +48 -71
  7. package/dist/TRPCClientError.mjs.map +1 -0
  8. package/dist/_virtual/rolldown_runtime.js +39 -0
  9. package/dist/_virtual/rolldown_runtime.mjs +27 -0
  10. package/dist/createTRPCClient.d.mts +69 -0
  11. package/dist/createTRPCClient.d.mts.map +1 -0
  12. package/dist/createTRPCClient.d.ts +34 -34
  13. package/dist/createTRPCClient.d.ts.map +1 -1
  14. package/dist/createTRPCClient.js +34 -34
  15. package/dist/createTRPCClient.mjs +33 -31
  16. package/dist/createTRPCClient.mjs.map +1 -0
  17. package/dist/createTRPCUntypedClient.d.mts +8 -0
  18. package/dist/createTRPCUntypedClient.d.mts.map +1 -0
  19. package/dist/createTRPCUntypedClient.d.ts +7 -6
  20. package/dist/createTRPCUntypedClient.d.ts.map +1 -1
  21. package/dist/createTRPCUntypedClient.js +5 -6
  22. package/dist/createTRPCUntypedClient.mjs +6 -3
  23. package/dist/createTRPCUntypedClient.mjs.map +1 -0
  24. package/dist/getFetch.d.mts +9 -0
  25. package/dist/getFetch.d.mts.map +1 -0
  26. package/dist/getFetch.d.ts +8 -2
  27. package/dist/getFetch.d.ts.map +1 -1
  28. package/dist/getFetch.js +8 -13
  29. package/dist/getFetch.mjs +8 -11
  30. package/dist/getFetch.mjs.map +1 -0
  31. package/dist/index.d.mts +21 -0
  32. package/dist/index.d.ts +21 -16
  33. package/dist/index.js +42 -42
  34. package/dist/index.mjs +19 -15
  35. package/dist/internals/TRPCUntypedClient.d.mts +45 -0
  36. package/dist/internals/TRPCUntypedClient.d.mts.map +1 -0
  37. package/dist/internals/TRPCUntypedClient.d.ts +39 -33
  38. package/dist/internals/TRPCUntypedClient.d.ts.map +1 -1
  39. package/dist/internals/TRPCUntypedClient.js +94 -113
  40. package/dist/internals/TRPCUntypedClient.mjs +93 -110
  41. package/dist/internals/TRPCUntypedClient.mjs.map +1 -0
  42. package/dist/internals/dataLoader.js +101 -112
  43. package/dist/internals/dataLoader.mjs +101 -110
  44. package/dist/internals/dataLoader.mjs.map +1 -0
  45. package/dist/internals/inputWithTrackedEventId.js +9 -12
  46. package/dist/internals/inputWithTrackedEventId.mjs +9 -10
  47. package/dist/internals/inputWithTrackedEventId.mjs.map +1 -0
  48. package/dist/internals/signals.js +39 -40
  49. package/dist/internals/signals.mjs +39 -39
  50. package/dist/internals/signals.mjs.map +1 -0
  51. package/dist/internals/transformer.d.mts +46 -0
  52. package/dist/internals/transformer.d.mts.map +1 -0
  53. package/dist/internals/transformer.d.ts +26 -22
  54. package/dist/internals/transformer.d.ts.map +1 -1
  55. package/dist/internals/transformer.js +25 -26
  56. package/dist/internals/transformer.mjs +25 -24
  57. package/dist/internals/transformer.mjs.map +1 -0
  58. package/dist/internals/types.d.mts +84 -0
  59. package/dist/internals/types.d.mts.map +1 -0
  60. package/dist/internals/types.d.ts +44 -42
  61. package/dist/internals/types.d.ts.map +1 -1
  62. package/dist/links/HTTPBatchLinkOptions.d.mts +25 -0
  63. package/dist/links/HTTPBatchLinkOptions.d.mts.map +1 -0
  64. package/dist/links/HTTPBatchLinkOptions.d.ts +23 -18
  65. package/dist/links/HTTPBatchLinkOptions.d.ts.map +1 -1
  66. package/dist/links/httpBatchLink.d.mts +15 -0
  67. package/dist/links/httpBatchLink.d.mts.map +1 -0
  68. package/dist/links/httpBatchLink.d.ts +11 -4
  69. package/dist/links/httpBatchLink.d.ts.map +1 -1
  70. package/dist/links/httpBatchLink.js +90 -106
  71. package/dist/links/httpBatchLink.mjs +89 -103
  72. package/dist/links/httpBatchLink.mjs.map +1 -0
  73. package/dist/links/httpBatchStreamLink.d.mts +19 -0
  74. package/dist/links/httpBatchStreamLink.d.mts.map +1 -0
  75. package/dist/links/httpBatchStreamLink.d.ts +12 -5
  76. package/dist/links/httpBatchStreamLink.d.ts.map +1 -1
  77. package/dist/links/httpBatchStreamLink.js +120 -144
  78. package/dist/links/httpBatchStreamLink.mjs +119 -141
  79. package/dist/links/httpBatchStreamLink.mjs.map +1 -0
  80. package/dist/links/httpLink.d.mts +23 -0
  81. package/dist/links/httpLink.d.mts.map +1 -0
  82. package/dist/links/httpLink.d.ts +18 -12
  83. package/dist/links/httpLink.d.ts.map +1 -1
  84. package/dist/links/httpLink.js +74 -90
  85. package/dist/links/httpLink.mjs +73 -87
  86. package/dist/links/httpLink.mjs.map +1 -0
  87. package/dist/links/httpSubscriptionLink.d.mts +29 -0
  88. package/dist/links/httpSubscriptionLink.d.mts.map +1 -0
  89. package/dist/links/httpSubscriptionLink.d.ts +20 -17
  90. package/dist/links/httpSubscriptionLink.d.ts.map +1 -1
  91. package/dist/links/httpSubscriptionLink.js +134 -179
  92. package/dist/links/httpSubscriptionLink.mjs +133 -176
  93. package/dist/links/httpSubscriptionLink.mjs.map +1 -0
  94. package/dist/links/internals/contentTypes.d.mts +9 -0
  95. package/dist/links/internals/contentTypes.d.mts.map +1 -0
  96. package/dist/links/internals/contentTypes.d.ts +8 -3
  97. package/dist/links/internals/contentTypes.d.ts.map +1 -1
  98. package/dist/links/internals/contentTypes.js +6 -6
  99. package/dist/links/internals/contentTypes.mjs +6 -4
  100. package/dist/links/internals/contentTypes.mjs.map +1 -0
  101. package/dist/links/internals/createChain.js +23 -23
  102. package/dist/links/internals/createChain.mjs +22 -20
  103. package/dist/links/internals/createChain.mjs.map +1 -0
  104. package/dist/links/internals/httpUtils.d.mts +25 -0
  105. package/dist/links/internals/httpUtils.d.mts.map +1 -0
  106. package/dist/links/internals/httpUtils.d.ts +20 -63
  107. package/dist/links/internals/httpUtils.d.ts.map +1 -1
  108. package/dist/links/internals/httpUtils.js +93 -116
  109. package/dist/links/internals/httpUtils.mjs +94 -113
  110. package/dist/links/internals/httpUtils.mjs.map +1 -0
  111. package/dist/links/internals/subscriptions.d.mts +19 -0
  112. package/dist/links/internals/subscriptions.d.mts.map +1 -0
  113. package/dist/links/internals/subscriptions.d.ts +10 -8
  114. package/dist/links/internals/subscriptions.d.ts.map +1 -1
  115. package/dist/links/internals/urlWithConnectionParams.d.mts +24 -0
  116. package/dist/links/internals/urlWithConnectionParams.d.mts.map +1 -0
  117. package/dist/links/internals/urlWithConnectionParams.d.ts +19 -18
  118. package/dist/links/internals/urlWithConnectionParams.d.ts.map +1 -1
  119. package/dist/links/internals/urlWithConnectionParams.js +8 -6
  120. package/dist/links/internals/urlWithConnectionParams.mjs +8 -4
  121. package/dist/links/internals/urlWithConnectionParams.mjs.map +1 -0
  122. package/dist/links/localLink.d.mts +21 -0
  123. package/dist/links/localLink.d.mts.map +1 -0
  124. package/dist/links/localLink.d.ts +21 -0
  125. package/dist/links/localLink.d.ts.map +1 -0
  126. package/dist/links/localLink.js +192 -0
  127. package/dist/links/localLink.mjs +193 -0
  128. package/dist/links/localLink.mjs.map +1 -0
  129. package/dist/links/loggerLink.d.mts +55 -0
  130. package/dist/links/loggerLink.d.mts.map +1 -0
  131. package/dist/links/loggerLink.d.ts +39 -36
  132. package/dist/links/loggerLink.d.ts.map +1 -1
  133. package/dist/links/loggerLink.js +113 -166
  134. package/dist/links/loggerLink.mjs +112 -163
  135. package/dist/links/loggerLink.mjs.map +1 -0
  136. package/dist/links/retryLink.d.mts +36 -0
  137. package/dist/links/retryLink.d.mts.map +1 -0
  138. package/dist/links/retryLink.d.ts +28 -25
  139. package/dist/links/retryLink.d.ts.map +1 -1
  140. package/dist/links/retryLink.js +60 -68
  141. package/dist/links/retryLink.mjs +59 -65
  142. package/dist/links/retryLink.mjs.map +1 -0
  143. package/dist/links/splitLink.d.mts +20 -0
  144. package/dist/links/splitLink.d.mts.map +1 -0
  145. package/dist/links/splitLink.d.ts +18 -12
  146. package/dist/links/splitLink.d.ts.map +1 -1
  147. package/dist/links/splitLink.js +20 -21
  148. package/dist/links/splitLink.mjs +19 -18
  149. package/dist/links/splitLink.mjs.map +1 -0
  150. package/dist/links/types.d.mts +68 -0
  151. package/dist/links/types.d.mts.map +1 -0
  152. package/dist/links/types.d.ts +34 -29
  153. package/dist/links/types.d.ts.map +1 -1
  154. package/dist/links/wsLink/createWsClient.d.mts +9 -0
  155. package/dist/links/wsLink/createWsClient.d.mts.map +1 -0
  156. package/dist/links/wsLink/createWsClient.d.ts +8 -5
  157. package/dist/links/wsLink/createWsClient.d.ts.map +1 -1
  158. package/dist/links/wsLink/createWsClient.js +5 -5
  159. package/dist/links/wsLink/createWsClient.mjs +5 -2
  160. package/dist/links/wsLink/createWsClient.mjs.map +1 -0
  161. package/dist/links/wsLink/wsClient/options.d.mts +69 -0
  162. package/dist/links/wsLink/wsClient/options.d.mts.map +1 -0
  163. package/dist/links/wsLink/wsClient/options.d.ts +53 -63
  164. package/dist/links/wsLink/wsClient/options.d.ts.map +1 -1
  165. package/dist/links/wsLink/wsClient/options.js +14 -12
  166. package/dist/links/wsLink/wsClient/options.mjs +14 -10
  167. package/dist/links/wsLink/wsClient/options.mjs.map +1 -0
  168. package/dist/links/wsLink/wsClient/requestManager.js +133 -140
  169. package/dist/links/wsLink/wsClient/requestManager.mjs +133 -137
  170. package/dist/links/wsLink/wsClient/requestManager.mjs.map +1 -0
  171. package/dist/links/wsLink/wsClient/utils.js +64 -81
  172. package/dist/links/wsLink/wsClient/utils.mjs +64 -78
  173. package/dist/links/wsLink/wsClient/utils.mjs.map +1 -0
  174. package/dist/links/wsLink/wsClient/wsClient.d.mts +101 -0
  175. package/dist/links/wsLink/wsClient/wsClient.d.mts.map +1 -0
  176. package/dist/links/wsLink/wsClient/wsClient.d.ts +95 -78
  177. package/dist/links/wsLink/wsClient/wsClient.d.ts.map +1 -1
  178. package/dist/links/wsLink/wsClient/wsClient.js +273 -322
  179. package/dist/links/wsLink/wsClient/wsClient.mjs +272 -319
  180. package/dist/links/wsLink/wsClient/wsClient.mjs.map +1 -0
  181. package/dist/links/wsLink/wsClient/wsConnection.js +155 -178
  182. package/dist/links/wsLink/wsClient/wsConnection.mjs +154 -175
  183. package/dist/links/wsLink/wsClient/wsConnection.mjs.map +1 -0
  184. package/dist/links/wsLink/wsLink.d.mts +14 -0
  185. package/dist/links/wsLink/wsLink.d.mts.map +1 -0
  186. package/dist/links/wsLink/wsLink.d.ts +12 -9
  187. package/dist/links/wsLink/wsLink.d.ts.map +1 -1
  188. package/dist/links/wsLink/wsLink.js +30 -31
  189. package/dist/links/wsLink/wsLink.mjs +29 -28
  190. package/dist/links/wsLink/wsLink.mjs.map +1 -0
  191. package/dist/links.js +11 -0
  192. package/dist/links.mjs +11 -0
  193. package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js +68 -0
  194. package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.mjs +66 -0
  195. package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.mjs.map +1 -0
  196. package/dist/unstable-internals.d.mts +3 -0
  197. package/dist/unstable-internals.d.ts +3 -3
  198. package/dist/unstable-internals.js +2 -6
  199. package/dist/unstable-internals.mjs +3 -1
  200. package/links/httpBatchLink/package.json +1 -0
  201. package/links/httpLink/package.json +1 -0
  202. package/links/loggerLink/package.json +1 -0
  203. package/links/splitLink/package.json +1 -0
  204. package/links/wsLink/wsLink/package.json +1 -0
  205. package/package.json +63 -30
  206. package/src/TRPCClientError.ts +4 -9
  207. package/src/internals/signals.ts +16 -0
  208. package/src/links/httpSubscriptionLink.ts +3 -18
  209. package/src/links/localLink.ts +277 -0
  210. package/src/links.ts +1 -0
  211. package/unstable-internals/package.json +1 -0
  212. package/dist/bundle-analysis.json +0 -433
  213. package/dist/index.d.ts.map +0 -1
  214. package/dist/internals/dataLoader.d.ts +0 -13
  215. package/dist/internals/dataLoader.d.ts.map +0 -1
  216. package/dist/internals/inputWithTrackedEventId.d.ts +0 -2
  217. package/dist/internals/inputWithTrackedEventId.d.ts.map +0 -1
  218. package/dist/internals/signals.d.ts +0 -15
  219. package/dist/internals/signals.d.ts.map +0 -1
  220. package/dist/links/internals/createChain.d.ts +0 -8
  221. package/dist/links/internals/createChain.d.ts.map +0 -1
  222. package/dist/links/internals/dedupeLink.d.ts +0 -7
  223. package/dist/links/internals/dedupeLink.d.ts.map +0 -1
  224. package/dist/links/wsLink/wsClient/requestManager.d.ts +0 -106
  225. package/dist/links/wsLink/wsClient/requestManager.d.ts.map +0 -1
  226. package/dist/links/wsLink/wsClient/utils.d.ts +0 -38
  227. package/dist/links/wsLink/wsClient/utils.d.ts.map +0 -1
  228. package/dist/links/wsLink/wsClient/wsConnection.d.ts +0 -79
  229. package/dist/links/wsLink/wsClient/wsConnection.d.ts.map +0 -1
  230. package/dist/links.d.ts +0 -11
  231. package/dist/links.d.ts.map +0 -1
  232. package/dist/unstable-internals.d.ts.map +0 -1
  233. package/links/httpBatchLink/index.d.ts +0 -1
  234. package/links/httpBatchLink/index.js +0 -1
  235. package/links/httpLink/index.d.ts +0 -1
  236. package/links/httpLink/index.js +0 -1
  237. package/links/loggerLink/index.d.ts +0 -1
  238. package/links/loggerLink/index.js +0 -1
  239. package/links/splitLink/index.d.ts +0 -1
  240. package/links/splitLink/index.js +0 -1
  241. package/links/wsLink/wsLink/index.d.ts +0 -1
  242. package/links/wsLink/wsLink/index.js +0 -1
  243. package/unstable-internals/index.d.ts +0 -1
  244. package/unstable-internals/index.js +0 -1
@@ -0,0 +1,192 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.js');
2
+ const require_TRPCClientError = require('../TRPCClientError.js');
3
+ const require_signals = require('../internals/signals.js');
4
+ const require_transformer = require('../internals/transformer.js');
5
+ const require_inputWithTrackedEventId = require('../internals/inputWithTrackedEventId.js');
6
+ const require_usingCtx$1 = require('../node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js');
7
+ const __trpc_server_observable = require_rolldown_runtime.__toESM(require("@trpc/server/observable"));
8
+ const __trpc_server_unstable_core_do_not_import = require_rolldown_runtime.__toESM(require("@trpc/server/unstable-core-do-not-import"));
9
+ const __trpc_server = require_rolldown_runtime.__toESM(require("@trpc/server"));
10
+ const __trpc_server_rpc = require_rolldown_runtime.__toESM(require("@trpc/server/rpc"));
11
+
12
+ //#region src/links/localLink.ts
13
+ var import_usingCtx = require_rolldown_runtime.__toESM(require_usingCtx$1.require_usingCtx());
14
+ /**
15
+ * localLink is a terminating link that allows you to make tRPC procedure calls directly in your application without going through HTTP.
16
+ *
17
+ * @see https://trpc.io/docs/links/localLink
18
+ */
19
+ function experimental_localLink(opts) {
20
+ const transformer = require_transformer.getTransformer(opts.transformer);
21
+ const transformChunk = (chunk) => {
22
+ if (opts.transformer) return chunk;
23
+ if (chunk === void 0) return chunk;
24
+ const serialized = JSON.stringify(transformer.input.serialize(chunk));
25
+ const deserialized = JSON.parse(transformer.output.deserialize(serialized));
26
+ return deserialized;
27
+ };
28
+ return () => ({ op }) => (0, __trpc_server_observable.observable)((observer) => {
29
+ let ctx = void 0;
30
+ const ac = new AbortController();
31
+ const signal = require_signals.raceAbortSignals(op.signal, ac.signal);
32
+ const signalPromise = require_signals.abortSignalToPromise(signal);
33
+ signalPromise.catch(() => {});
34
+ let input = op.input;
35
+ async function runProcedure(newInput) {
36
+ input = newInput;
37
+ ctx = await opts.createContext();
38
+ return (0, __trpc_server_unstable_core_do_not_import.callProcedure)({
39
+ router: opts.router,
40
+ path: op.path,
41
+ getRawInput: async () => newInput,
42
+ ctx,
43
+ type: op.type,
44
+ signal
45
+ });
46
+ }
47
+ function onErrorCallback(cause) {
48
+ if ((0, __trpc_server_unstable_core_do_not_import.isAbortError)(cause)) return;
49
+ opts.onError?.({
50
+ error: (0, __trpc_server.getTRPCErrorFromUnknown)(cause),
51
+ type: op.type,
52
+ path: op.path,
53
+ input,
54
+ ctx
55
+ });
56
+ }
57
+ function coerceToTRPCClientError(cause) {
58
+ if (require_TRPCClientError.isTRPCClientError(cause)) return cause;
59
+ const error = (0, __trpc_server.getTRPCErrorFromUnknown)(cause);
60
+ const shape = (0, __trpc_server.getTRPCErrorShape)({
61
+ config: opts.router._def._config,
62
+ ctx,
63
+ error,
64
+ input,
65
+ path: op.path,
66
+ type: op.type
67
+ });
68
+ return require_TRPCClientError.TRPCClientError.from({ error: transformChunk(shape) });
69
+ }
70
+ (0, __trpc_server_unstable_core_do_not_import.run)(async () => {
71
+ switch (op.type) {
72
+ case "query":
73
+ case "mutation": {
74
+ const result = await runProcedure(op.input);
75
+ if (!(0, __trpc_server_unstable_core_do_not_import.isAsyncIterable)(result)) {
76
+ observer.next({ result: { data: transformChunk(result) } });
77
+ observer.complete();
78
+ break;
79
+ }
80
+ observer.next({ result: { data: async function* () {
81
+ try {
82
+ var _usingCtx = (0, import_usingCtx.default)();
83
+ const iterator = _usingCtx.a((0, __trpc_server_unstable_core_do_not_import.iteratorResource)(result));
84
+ const _finally = _usingCtx.u((0, __trpc_server_unstable_core_do_not_import.makeResource)({}, () => {
85
+ observer.complete();
86
+ }));
87
+ try {
88
+ while (true) {
89
+ const res = await Promise.race([iterator.next(), signalPromise]);
90
+ if (res.done) return transformChunk(res.value);
91
+ yield transformChunk(res.value);
92
+ }
93
+ } catch (cause) {
94
+ onErrorCallback(cause);
95
+ throw coerceToTRPCClientError(cause);
96
+ }
97
+ } catch (_) {
98
+ _usingCtx.e = _;
99
+ } finally {
100
+ await _usingCtx.d();
101
+ }
102
+ }() } });
103
+ break;
104
+ }
105
+ case "subscription": try {
106
+ var _usingCtx3 = (0, import_usingCtx.default)();
107
+ const connectionState = (0, __trpc_server_observable.behaviorSubject)({
108
+ type: "state",
109
+ state: "connecting",
110
+ error: null
111
+ });
112
+ const connectionSub = connectionState.subscribe({ next(state) {
113
+ observer.next({ result: state });
114
+ } });
115
+ let lastEventId = void 0;
116
+ const _finally = _usingCtx3.u((0, __trpc_server_unstable_core_do_not_import.makeResource)({}, async () => {
117
+ observer.complete();
118
+ connectionState.next({
119
+ type: "state",
120
+ state: "idle",
121
+ error: null
122
+ });
123
+ connectionSub.unsubscribe();
124
+ }));
125
+ while (true) try {
126
+ var _usingCtx4 = (0, import_usingCtx.default)();
127
+ const result = await runProcedure(require_inputWithTrackedEventId.inputWithTrackedEventId(op.input, lastEventId));
128
+ if (!(0, __trpc_server_unstable_core_do_not_import.isAsyncIterable)(result)) throw new Error("Expected an async iterable");
129
+ const iterator = _usingCtx4.a((0, __trpc_server_unstable_core_do_not_import.iteratorResource)(result));
130
+ observer.next({ result: { type: "started" } });
131
+ connectionState.next({
132
+ type: "state",
133
+ state: "pending",
134
+ error: null
135
+ });
136
+ while (true) {
137
+ let res;
138
+ try {
139
+ res = await Promise.race([iterator.next(), signalPromise]);
140
+ } catch (cause) {
141
+ if ((0, __trpc_server_unstable_core_do_not_import.isAbortError)(cause)) return;
142
+ const error = (0, __trpc_server.getTRPCErrorFromUnknown)(cause);
143
+ if (!__trpc_server_unstable_core_do_not_import.retryableRpcCodes.includes(__trpc_server_rpc.TRPC_ERROR_CODES_BY_KEY[error.code])) throw coerceToTRPCClientError(error);
144
+ onErrorCallback(error);
145
+ connectionState.next({
146
+ type: "state",
147
+ state: "connecting",
148
+ error: coerceToTRPCClientError(error)
149
+ });
150
+ break;
151
+ }
152
+ if (res.done) return;
153
+ let chunk;
154
+ if ((0, __trpc_server.isTrackedEnvelope)(res.value)) {
155
+ lastEventId = res.value[0];
156
+ chunk = {
157
+ id: res.value[0],
158
+ data: {
159
+ id: res.value[0],
160
+ data: res.value[1]
161
+ }
162
+ };
163
+ } else chunk = { data: res.value };
164
+ observer.next({ result: {
165
+ ...chunk,
166
+ data: transformChunk(chunk.data)
167
+ } });
168
+ }
169
+ } catch (_) {
170
+ _usingCtx4.e = _;
171
+ } finally {
172
+ await _usingCtx4.d();
173
+ }
174
+ break;
175
+ } catch (_) {
176
+ _usingCtx3.e = _;
177
+ } finally {
178
+ _usingCtx3.d();
179
+ }
180
+ }
181
+ }).catch((cause) => {
182
+ onErrorCallback(cause);
183
+ observer.error(coerceToTRPCClientError(cause));
184
+ });
185
+ return () => {
186
+ ac.abort();
187
+ };
188
+ });
189
+ }
190
+
191
+ //#endregion
192
+ exports.experimental_localLink = experimental_localLink;
@@ -0,0 +1,193 @@
1
+ import { __toESM } from "../_virtual/rolldown_runtime.mjs";
2
+ import { TRPCClientError, isTRPCClientError } from "../TRPCClientError.mjs";
3
+ import { abortSignalToPromise, raceAbortSignals } from "../internals/signals.mjs";
4
+ import { getTransformer } from "../internals/transformer.mjs";
5
+ import { inputWithTrackedEventId } from "../internals/inputWithTrackedEventId.mjs";
6
+ import { require_usingCtx } from "../node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.mjs";
7
+ import { behaviorSubject, observable } from "@trpc/server/observable";
8
+ import { callProcedure, isAbortError, isAsyncIterable, iteratorResource, makeResource, retryableRpcCodes, run } from "@trpc/server/unstable-core-do-not-import";
9
+ import { getTRPCErrorFromUnknown, getTRPCErrorShape, isTrackedEnvelope } from "@trpc/server";
10
+ import { TRPC_ERROR_CODES_BY_KEY } from "@trpc/server/rpc";
11
+
12
+ //#region src/links/localLink.ts
13
+ var import_usingCtx = __toESM(require_usingCtx());
14
+ /**
15
+ * localLink is a terminating link that allows you to make tRPC procedure calls directly in your application without going through HTTP.
16
+ *
17
+ * @see https://trpc.io/docs/links/localLink
18
+ */
19
+ function experimental_localLink(opts) {
20
+ const transformer = getTransformer(opts.transformer);
21
+ const transformChunk = (chunk) => {
22
+ if (opts.transformer) return chunk;
23
+ if (chunk === void 0) return chunk;
24
+ const serialized = JSON.stringify(transformer.input.serialize(chunk));
25
+ const deserialized = JSON.parse(transformer.output.deserialize(serialized));
26
+ return deserialized;
27
+ };
28
+ return () => ({ op }) => observable((observer) => {
29
+ let ctx = void 0;
30
+ const ac = new AbortController();
31
+ const signal = raceAbortSignals(op.signal, ac.signal);
32
+ const signalPromise = abortSignalToPromise(signal);
33
+ signalPromise.catch(() => {});
34
+ let input = op.input;
35
+ async function runProcedure(newInput) {
36
+ input = newInput;
37
+ ctx = await opts.createContext();
38
+ return callProcedure({
39
+ router: opts.router,
40
+ path: op.path,
41
+ getRawInput: async () => newInput,
42
+ ctx,
43
+ type: op.type,
44
+ signal
45
+ });
46
+ }
47
+ function onErrorCallback(cause) {
48
+ if (isAbortError(cause)) return;
49
+ opts.onError?.({
50
+ error: getTRPCErrorFromUnknown(cause),
51
+ type: op.type,
52
+ path: op.path,
53
+ input,
54
+ ctx
55
+ });
56
+ }
57
+ function coerceToTRPCClientError(cause) {
58
+ if (isTRPCClientError(cause)) return cause;
59
+ const error = getTRPCErrorFromUnknown(cause);
60
+ const shape = getTRPCErrorShape({
61
+ config: opts.router._def._config,
62
+ ctx,
63
+ error,
64
+ input,
65
+ path: op.path,
66
+ type: op.type
67
+ });
68
+ return TRPCClientError.from({ error: transformChunk(shape) });
69
+ }
70
+ run(async () => {
71
+ switch (op.type) {
72
+ case "query":
73
+ case "mutation": {
74
+ const result = await runProcedure(op.input);
75
+ if (!isAsyncIterable(result)) {
76
+ observer.next({ result: { data: transformChunk(result) } });
77
+ observer.complete();
78
+ break;
79
+ }
80
+ observer.next({ result: { data: async function* () {
81
+ try {
82
+ var _usingCtx = (0, import_usingCtx.default)();
83
+ const iterator = _usingCtx.a(iteratorResource(result));
84
+ const _finally = _usingCtx.u(makeResource({}, () => {
85
+ observer.complete();
86
+ }));
87
+ try {
88
+ while (true) {
89
+ const res = await Promise.race([iterator.next(), signalPromise]);
90
+ if (res.done) return transformChunk(res.value);
91
+ yield transformChunk(res.value);
92
+ }
93
+ } catch (cause) {
94
+ onErrorCallback(cause);
95
+ throw coerceToTRPCClientError(cause);
96
+ }
97
+ } catch (_) {
98
+ _usingCtx.e = _;
99
+ } finally {
100
+ await _usingCtx.d();
101
+ }
102
+ }() } });
103
+ break;
104
+ }
105
+ case "subscription": try {
106
+ var _usingCtx3 = (0, import_usingCtx.default)();
107
+ const connectionState = behaviorSubject({
108
+ type: "state",
109
+ state: "connecting",
110
+ error: null
111
+ });
112
+ const connectionSub = connectionState.subscribe({ next(state) {
113
+ observer.next({ result: state });
114
+ } });
115
+ let lastEventId = void 0;
116
+ const _finally = _usingCtx3.u(makeResource({}, async () => {
117
+ observer.complete();
118
+ connectionState.next({
119
+ type: "state",
120
+ state: "idle",
121
+ error: null
122
+ });
123
+ connectionSub.unsubscribe();
124
+ }));
125
+ while (true) try {
126
+ var _usingCtx4 = (0, import_usingCtx.default)();
127
+ const result = await runProcedure(inputWithTrackedEventId(op.input, lastEventId));
128
+ if (!isAsyncIterable(result)) throw new Error("Expected an async iterable");
129
+ const iterator = _usingCtx4.a(iteratorResource(result));
130
+ observer.next({ result: { type: "started" } });
131
+ connectionState.next({
132
+ type: "state",
133
+ state: "pending",
134
+ error: null
135
+ });
136
+ while (true) {
137
+ let res;
138
+ try {
139
+ res = await Promise.race([iterator.next(), signalPromise]);
140
+ } catch (cause) {
141
+ if (isAbortError(cause)) return;
142
+ const error = getTRPCErrorFromUnknown(cause);
143
+ if (!retryableRpcCodes.includes(TRPC_ERROR_CODES_BY_KEY[error.code])) throw coerceToTRPCClientError(error);
144
+ onErrorCallback(error);
145
+ connectionState.next({
146
+ type: "state",
147
+ state: "connecting",
148
+ error: coerceToTRPCClientError(error)
149
+ });
150
+ break;
151
+ }
152
+ if (res.done) return;
153
+ let chunk;
154
+ if (isTrackedEnvelope(res.value)) {
155
+ lastEventId = res.value[0];
156
+ chunk = {
157
+ id: res.value[0],
158
+ data: {
159
+ id: res.value[0],
160
+ data: res.value[1]
161
+ }
162
+ };
163
+ } else chunk = { data: res.value };
164
+ observer.next({ result: {
165
+ ...chunk,
166
+ data: transformChunk(chunk.data)
167
+ } });
168
+ }
169
+ } catch (_) {
170
+ _usingCtx4.e = _;
171
+ } finally {
172
+ await _usingCtx4.d();
173
+ }
174
+ break;
175
+ } catch (_) {
176
+ _usingCtx3.e = _;
177
+ } finally {
178
+ _usingCtx3.d();
179
+ }
180
+ }
181
+ }).catch((cause) => {
182
+ onErrorCallback(cause);
183
+ observer.error(coerceToTRPCClientError(cause));
184
+ });
185
+ return () => {
186
+ ac.abort();
187
+ };
188
+ });
189
+ }
190
+
191
+ //#endregion
192
+ export { experimental_localLink };
193
+ //# sourceMappingURL=localLink.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localLink.mjs","names":["opts: LocalLinkOptions<TRouter>","chunk: unknown","ctx: inferRouterContext<TRouter> | undefined","newInput: unknown","cause: unknown","lastEventId: string | undefined","chunk: TRPCResult<unknown>"],"sources":["../../src/links/localLink.ts"],"sourcesContent":["import {\n getTRPCErrorFromUnknown,\n getTRPCErrorShape,\n isTrackedEnvelope,\n} from '@trpc/server';\nimport { behaviorSubject, observable } from '@trpc/server/observable';\nimport { TRPC_ERROR_CODES_BY_KEY, type TRPCResult } from '@trpc/server/rpc';\nimport {\n callProcedure,\n isAbortError,\n isAsyncIterable,\n iteratorResource,\n makeResource,\n retryableRpcCodes,\n run,\n type AnyRouter,\n type ErrorHandlerOptions,\n type inferClientTypes,\n type inferRouterContext,\n} from '@trpc/server/unstable-core-do-not-import';\nimport { inputWithTrackedEventId } from '../internals/inputWithTrackedEventId';\nimport { abortSignalToPromise, raceAbortSignals } from '../internals/signals';\nimport { getTransformer } from '../internals/transformer';\nimport type { TransformerOptions } from '../internals/transformer';\nimport { isTRPCClientError, TRPCClientError } from '../TRPCClientError';\nimport type { TRPCConnectionState } from './internals/subscriptions';\nimport type { TRPCLink } from './types';\n\nexport type LocalLinkOptions<TRouter extends AnyRouter> = {\n router: TRouter;\n createContext: () => Promise<inferRouterContext<TRouter>>;\n onError?: (opts: ErrorHandlerOptions<inferRouterContext<TRouter>>) => void;\n} & TransformerOptions<inferClientTypes<TRouter>>;\n\n/**\n * localLink is a terminating link that allows you to make tRPC procedure calls directly in your application without going through HTTP.\n *\n * @see https://trpc.io/docs/links/localLink\n */\nexport function experimental_localLink<TRouter extends AnyRouter>(\n opts: LocalLinkOptions<TRouter>,\n): TRPCLink<TRouter> {\n const transformer = getTransformer(opts.transformer);\n\n const transformChunk = (chunk: unknown) => {\n if (opts.transformer) {\n // assume transformer will do the right thing\n return chunk;\n }\n // Special case for undefined, because `JSON.stringify(undefined)` throws\n if (chunk === undefined) {\n return chunk;\n }\n const serialized = JSON.stringify(transformer.input.serialize(chunk));\n const deserialized = JSON.parse(transformer.output.deserialize(serialized));\n return deserialized;\n };\n\n return () =>\n ({ op }) =>\n observable((observer) => {\n let ctx: inferRouterContext<TRouter> | undefined = undefined;\n const ac = new AbortController();\n\n const signal = raceAbortSignals(op.signal, ac.signal);\n const signalPromise = abortSignalToPromise(signal);\n\n signalPromise.catch(() => {\n // prevent unhandled rejection\n });\n\n let input = op.input;\n async function runProcedure(newInput: unknown): Promise<unknown> {\n input = newInput;\n\n ctx = await opts.createContext();\n\n return callProcedure({\n router: opts.router,\n path: op.path,\n getRawInput: async () => newInput,\n ctx,\n type: op.type,\n signal,\n });\n }\n\n function onErrorCallback(cause: unknown) {\n if (isAbortError(cause)) {\n return;\n }\n opts.onError?.({\n error: getTRPCErrorFromUnknown(cause),\n type: op.type,\n path: op.path,\n input,\n ctx,\n });\n }\n\n function coerceToTRPCClientError(cause: unknown) {\n if (isTRPCClientError<TRouter>(cause)) {\n return cause;\n }\n const error = getTRPCErrorFromUnknown(cause);\n\n const shape = getTRPCErrorShape({\n config: opts.router._def._config,\n ctx,\n error,\n input,\n path: op.path,\n type: op.type,\n });\n return TRPCClientError.from({\n error: transformChunk(shape),\n });\n }\n\n run(async () => {\n switch (op.type) {\n case 'query':\n case 'mutation': {\n const result = await runProcedure(op.input);\n if (!isAsyncIterable(result)) {\n observer.next({\n result: { data: transformChunk(result) },\n });\n observer.complete();\n break;\n }\n\n observer.next({\n result: {\n data: (async function* () {\n await using iterator = iteratorResource(result);\n using _finally = makeResource({}, () => {\n observer.complete();\n });\n try {\n while (true) {\n const res = await Promise.race([\n iterator.next(),\n signalPromise,\n ]);\n if (res.done) {\n return transformChunk(res.value);\n }\n yield transformChunk(res.value);\n }\n } catch (cause) {\n onErrorCallback(cause);\n throw coerceToTRPCClientError(cause);\n }\n })(),\n },\n });\n break;\n }\n case 'subscription': {\n const connectionState = behaviorSubject<\n TRPCConnectionState<TRPCClientError<any>>\n >({\n type: 'state',\n state: 'connecting',\n error: null,\n });\n\n const connectionSub = connectionState.subscribe({\n next(state) {\n observer.next({\n result: state,\n });\n },\n });\n let lastEventId: string | undefined = undefined;\n\n using _finally = makeResource({}, async () => {\n observer.complete();\n\n connectionState.next({\n type: 'state',\n state: 'idle',\n error: null,\n });\n connectionSub.unsubscribe();\n });\n while (true) {\n const result = await runProcedure(\n inputWithTrackedEventId(op.input, lastEventId),\n );\n if (!isAsyncIterable(result)) {\n throw new Error('Expected an async iterable');\n }\n await using iterator = iteratorResource(result);\n\n observer.next({\n result: {\n type: 'started',\n },\n });\n connectionState.next({\n type: 'state',\n state: 'pending',\n error: null,\n });\n\n // Use a while loop to handle errors and reconnects\n while (true) {\n let res;\n try {\n res = await Promise.race([iterator.next(), signalPromise]);\n } catch (cause) {\n if (isAbortError(cause)) {\n return;\n }\n const error = getTRPCErrorFromUnknown(cause);\n\n if (\n !retryableRpcCodes.includes(\n TRPC_ERROR_CODES_BY_KEY[error.code],\n )\n ) {\n throw coerceToTRPCClientError(error);\n }\n\n onErrorCallback(error);\n connectionState.next({\n type: 'state',\n state: 'connecting',\n error: coerceToTRPCClientError(error),\n });\n\n break;\n }\n\n if (res.done) {\n return;\n }\n let chunk: TRPCResult<unknown>;\n if (isTrackedEnvelope(res.value)) {\n lastEventId = res.value[0];\n\n chunk = {\n id: res.value[0],\n data: {\n id: res.value[0],\n data: res.value[1],\n },\n };\n } else {\n chunk = {\n data: res.value,\n };\n }\n\n observer.next({\n result: {\n ...chunk,\n data: transformChunk(chunk.data),\n },\n });\n }\n }\n break;\n }\n }\n }).catch((cause) => {\n onErrorCallback(cause);\n observer.error(coerceToTRPCClientError(cause));\n });\n\n return () => {\n ac.abort();\n };\n });\n}\n"],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { TRPCClientError } from "../TRPCClientError.mjs";
2
+ import { Operation, OperationResultEnvelope, TRPCLink } from "./types.mjs";
3
+ import { AnyRouter, InferrableClientTypes } from "@trpc/server/unstable-core-do-not-import";
4
+
5
+ //#region src/links/loggerLink.d.ts
6
+ type ConsoleEsque = {
7
+ log: (...args: any[]) => void;
8
+ error: (...args: any[]) => void;
9
+ };
10
+ type EnableFnOptions<TRouter extends InferrableClientTypes> = {
11
+ direction: 'down';
12
+ result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
13
+ } | (Operation & {
14
+ direction: 'up';
15
+ });
16
+ type EnabledFn<TRouter extends AnyRouter> = (opts: EnableFnOptions<TRouter>) => boolean;
17
+ type LoggerLinkFnOptions<TRouter extends AnyRouter> = Operation & ({
18
+ /**
19
+ * Request result
20
+ */
21
+ direction: 'down';
22
+ result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
23
+ elapsedMs: number;
24
+ } | {
25
+ /**
26
+ * Request was just initialized
27
+ */
28
+ direction: 'up';
29
+ });
30
+ type LoggerLinkFn<TRouter extends AnyRouter> = (opts: LoggerLinkFnOptions<TRouter>) => void;
31
+ type ColorMode = 'ansi' | 'css' | 'none';
32
+ interface LoggerLinkOptions<TRouter extends AnyRouter> {
33
+ logger?: LoggerLinkFn<TRouter>;
34
+ enabled?: EnabledFn<TRouter>;
35
+ /**
36
+ * Used in the built-in defaultLogger
37
+ */
38
+ console?: ConsoleEsque;
39
+ /**
40
+ * Color mode
41
+ * @default typeof window === 'undefined' ? 'ansi' : 'css'
42
+ */
43
+ colorMode?: ColorMode;
44
+ /**
45
+ * Include context in the log - defaults to false unless `colorMode` is 'css'
46
+ */
47
+ withContext?: boolean;
48
+ }
49
+ /**
50
+ * @see https://trpc.io/docs/v11/client/links/loggerLink
51
+ */
52
+ declare function loggerLink<TRouter extends AnyRouter = AnyRouter>(opts?: LoggerLinkOptions<TRouter>): TRPCLink<TRouter>;
53
+ //#endregion
54
+ export { LoggerLinkOptions, loggerLink };
55
+ //# sourceMappingURL=loggerLink.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loggerLink.d.mts","names":[],"sources":["../../src/links/loggerLink.ts"],"sourcesContent":[],"mappings":";;;;;KAeK,YAAA;;EAAA,KAAA,EAAA,CAAA,GAAA,IAAY,EAAA,GAAA,EAAA,EAAA,GAAA,IAAA;AAAA,CAAA;KAKZ,eAAe,CAAA,gBAAiB,qBAAjB,CAAA,GAAA;EAAA,SAAiB,EAAA,MAAA;EAAqB,MAIC,EAAjD,uBAAiD,CAAA,OAAA,EAAhB,eAAgB,CAAA,OAAA,CAAA,CAAA,GACjD,eADiD,CACjC,OADiC,CAAA;CAAO,GAAA,CAG7D,SAHsC,GAAA;EAAe,SAAhD,EAAA,IAAA;CAAuB,CAAA;KAM5B,SALK,CAAA,gBAKqB,SALrB,CAAA,GAAA,CAAA,IAAA,EAMF,eANE,CAMc,OANd,CAAA,EAAA,GAAA,OAAA;KASL,mBAPA,CAAA,gBAOoC,SAPpC,CAAA,GAOiD,SAPjD,GAAA,CAAA;EAAS;AAAA;;EAGA,SAAiB,EAAA,MAAA;EAAS,MAChB,EAWZ,uBAXY,CAAA,OAAA,EAWqB,eAXrB,CAWqC,OAXrC,CAAA,CAAA,GAYZ,eAZY,CAYI,OAZJ,CAAA;EAAO,SAAvB,EAAA,MAAA;AAAe,CAAA,GAAA;EAGlB;;;EAA6C,SAAI,EAAA,IAAA;CAAS,CAAA;KAoB1D,YAZwC,CAAA,gBAYX,SAZW,CAAA,GAAA,CAAA,IAAA,EAarC,mBAbqC,CAajB,OAbiB,CAAA,EAAA,GAAA,IAAA;KAgBxC,SAAA,GAhBO,MAAA,GAAA,KAAA,GAAA,MAAA;AACgB,UAiBX,iBAjBW,CAAA,gBAiBuB,SAjBvB,CAAA,CAAA;EAAO,MAAvB,CAAA,EAkBD,YAlBC,CAkBY,OAlBZ,CAAA;EAAe,OAAA,CAAA,EAmBf,SAnBe,CAmBL,OAnBK,CAAA;EAWtB;;;EAAsC,OACf,CAAA,EAWhB,YAXgB;EAAO;AAAR;AAAA;AAK3B;EAAkC,SAAA,CAAA,EAWpB,SAXoB;EAAA;;;EACX,WACD,CAAA,EAAA,OAAA;;;;AASC;AA8IP,iBAAA,UAAU,CAAA,gBAAiB,SAAjB,GAA6B,SAA7B,CAAA,CAAA,IAAA,CAAA,EAClB,iBADkB,CACA,OADA,CAAA,CAAA,EAEvB,QAFuB,CAEd,OAFc,CAAA"}
@@ -1,52 +1,55 @@
1
- import type { AnyRouter, InferrableClientTypes } from '@trpc/server/unstable-core-do-not-import';
2
- import type { TRPCClientError } from '../TRPCClientError';
3
- import type { Operation, OperationResultEnvelope, TRPCLink } from './types';
1
+ import { TRPCClientError } from "../TRPCClientError.js";
2
+ import { Operation, OperationResultEnvelope, TRPCLink } from "./types.js";
3
+ import { AnyRouter, InferrableClientTypes } from "@trpc/server/unstable-core-do-not-import";
4
+
5
+ //#region src/links/loggerLink.d.ts
4
6
  type ConsoleEsque = {
5
- log: (...args: any[]) => void;
6
- error: (...args: any[]) => void;
7
+ log: (...args: any[]) => void;
8
+ error: (...args: any[]) => void;
7
9
  };
8
10
  type EnableFnOptions<TRouter extends InferrableClientTypes> = {
9
- direction: 'down';
10
- result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
11
+ direction: 'down';
12
+ result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
11
13
  } | (Operation & {
12
- direction: 'up';
14
+ direction: 'up';
13
15
  });
14
16
  type EnabledFn<TRouter extends AnyRouter> = (opts: EnableFnOptions<TRouter>) => boolean;
15
17
  type LoggerLinkFnOptions<TRouter extends AnyRouter> = Operation & ({
16
- /**
17
- * Request result
18
- */
19
- direction: 'down';
20
- result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
21
- elapsedMs: number;
18
+ /**
19
+ * Request result
20
+ */
21
+ direction: 'down';
22
+ result: OperationResultEnvelope<unknown, TRPCClientError<TRouter>> | TRPCClientError<TRouter>;
23
+ elapsedMs: number;
22
24
  } | {
23
- /**
24
- * Request was just initialized
25
- */
26
- direction: 'up';
25
+ /**
26
+ * Request was just initialized
27
+ */
28
+ direction: 'up';
27
29
  });
28
30
  type LoggerLinkFn<TRouter extends AnyRouter> = (opts: LoggerLinkFnOptions<TRouter>) => void;
29
31
  type ColorMode = 'ansi' | 'css' | 'none';
30
- export interface LoggerLinkOptions<TRouter extends AnyRouter> {
31
- logger?: LoggerLinkFn<TRouter>;
32
- enabled?: EnabledFn<TRouter>;
33
- /**
34
- * Used in the built-in defaultLogger
35
- */
36
- console?: ConsoleEsque;
37
- /**
38
- * Color mode
39
- * @default typeof window === 'undefined' ? 'ansi' : 'css'
40
- */
41
- colorMode?: ColorMode;
42
- /**
43
- * Include context in the log - defaults to false unless `colorMode` is 'css'
44
- */
45
- withContext?: boolean;
32
+ interface LoggerLinkOptions<TRouter extends AnyRouter> {
33
+ logger?: LoggerLinkFn<TRouter>;
34
+ enabled?: EnabledFn<TRouter>;
35
+ /**
36
+ * Used in the built-in defaultLogger
37
+ */
38
+ console?: ConsoleEsque;
39
+ /**
40
+ * Color mode
41
+ * @default typeof window === 'undefined' ? 'ansi' : 'css'
42
+ */
43
+ colorMode?: ColorMode;
44
+ /**
45
+ * Include context in the log - defaults to false unless `colorMode` is 'css'
46
+ */
47
+ withContext?: boolean;
46
48
  }
47
49
  /**
48
50
  * @see https://trpc.io/docs/v11/client/links/loggerLink
49
51
  */
50
- export declare function loggerLink<TRouter extends AnyRouter = AnyRouter>(opts?: LoggerLinkOptions<TRouter>): TRPCLink<TRouter>;
51
- export {};
52
+ declare function loggerLink<TRouter extends AnyRouter = AnyRouter>(opts?: LoggerLinkOptions<TRouter>): TRPCLink<TRouter>;
53
+ //#endregion
54
+ export { LoggerLinkOptions, loggerLink };
52
55
  //# sourceMappingURL=loggerLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loggerLink.d.ts","sourceRoot":"","sources":["../../src/links/loggerLink.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACtB,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5E,KAAK,YAAY,GAAG;IAClB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF,KAAK,eAAe,CAAC,OAAO,SAAS,qBAAqB,IACtD;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EACF,uBAAuB,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,GAC1D,eAAe,CAAC,OAAO,CAAC,CAAC;CAC9B,GACD,CAAC,SAAS,GAAG;IACX,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC,CAAC;AACP,KAAK,SAAS,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1C,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,KAC3B,OAAO,CAAC;AAEb,KAAK,mBAAmB,CAAC,OAAO,SAAS,SAAS,IAAI,SAAS,GAC7D,CACI;IACE;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EACF,uBAAuB,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,GAC1D,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,GACD;IACE;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;CACjB,CACJ,CAAC;AAEJ,KAAK,YAAY,CAAC,OAAO,SAAS,SAAS,IAAI,CAC7C,IAAI,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAC/B,IAAI,CAAC;AAEV,KAAK,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAEzC,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,SAAS;IAC1D,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAqID;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EAC9D,IAAI,GAAE,iBAAiB,CAAC,OAAO,CAAM,GACpC,QAAQ,CAAC,OAAO,CAAC,CAoDnB"}
1
+ {"version":3,"file":"loggerLink.d.ts","names":[],"sources":["../../src/links/loggerLink.ts"],"sourcesContent":[],"mappings":";;;;;KAeK,YAAA;;EAAA,KAAA,EAAA,CAAA,GAAA,IAAY,EAAA,GAAA,EAAA,EAAA,GAAA,IAAA;AAAA,CAAA;KAKZ,eAAe,CAAA,gBAAiB,qBAAjB,CAAA,GAAA;EAAA,SAAiB,EAAA,MAAA;EAAqB,MAIC,EAAjD,uBAAiD,CAAA,OAAA,EAAhB,eAAgB,CAAA,OAAA,CAAA,CAAA,GACjD,eADiD,CACjC,OADiC,CAAA;CAAO,GAAA,CAG7D,SAHsC,GAAA;EAAe,SAAhD,EAAA,IAAA;CAAuB,CAAA;KAM5B,SALK,CAAA,gBAKqB,SALrB,CAAA,GAAA,CAAA,IAAA,EAMF,eANE,CAMc,OANd,CAAA,EAAA,GAAA,OAAA;KASL,mBAPA,CAAA,gBAOoC,SAPpC,CAAA,GAOiD,SAPjD,GAAA,CAAA;EAAS;AAAA;;EAGA,SAAiB,EAAA,MAAA;EAAS,MAChB,EAWZ,uBAXY,CAAA,OAAA,EAWqB,eAXrB,CAWqC,OAXrC,CAAA,CAAA,GAYZ,eAZY,CAYI,OAZJ,CAAA;EAAO,SAAvB,EAAA,MAAA;AAAe,CAAA,GAAA;EAGlB;;;EAA6C,SAAI,EAAA,IAAA;CAAS,CAAA;KAoB1D,YAZwC,CAAA,gBAYX,SAZW,CAAA,GAAA,CAAA,IAAA,EAarC,mBAbqC,CAajB,OAbiB,CAAA,EAAA,GAAA,IAAA;KAgBxC,SAAA,GAhBO,MAAA,GAAA,KAAA,GAAA,MAAA;AACgB,UAiBX,iBAjBW,CAAA,gBAiBuB,SAjBvB,CAAA,CAAA;EAAO,MAAvB,CAAA,EAkBD,YAlBC,CAkBY,OAlBZ,CAAA;EAAe,OAAA,CAAA,EAmBf,SAnBe,CAmBL,OAnBK,CAAA;EAWtB;;;EAAsC,OACf,CAAA,EAWhB,YAXgB;EAAO;AAAR;AAAA;AAK3B;EAAkC,SAAA,CAAA,EAWpB,SAXoB;EAAA;;;EACX,WACD,CAAA,EAAA,OAAA;;;;AASC;AA8IP,iBAAA,UAAU,CAAA,gBAAiB,SAAjB,GAA6B,SAA7B,CAAA,CAAA,IAAA,CAAA,EAClB,iBADkB,CACA,OADA,CAAA,CAAA,EAEvB,QAFuB,CAEd,OAFc,CAAA"}