@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,115 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-non-null-assertion */ /**
2
- * A function that should never be called unless we messed something up.
3
- */ const throwFatalError = ()=>{
4
- throw new Error('Something went wrong. Please submit an issue at https://github.com/trpc/trpc/issues/new');
5
- };
6
- /**
7
- * Dataloader that's very inspired by https://github.com/graphql/dataloader
8
- * Less configuration, no caching, and allows you to cancel requests
9
- * When cancelling a single fetch the whole batch will be cancelled only when _all_ items are cancelled
10
- */ function dataLoader(batchLoader) {
11
- let pendingItems = null;
12
- let dispatchTimer = null;
13
- const destroyTimerAndPendingItems = ()=>{
14
- clearTimeout(dispatchTimer);
15
- dispatchTimer = null;
16
- pendingItems = null;
17
- };
18
- /**
19
- * Iterate through the items and split them into groups based on the `batchLoader`'s validate function
20
- */ function groupItems(items) {
21
- const groupedItems = [
22
- []
23
- ];
24
- let index = 0;
25
- while(true){
26
- const item = items[index];
27
- if (!item) {
28
- break;
29
- }
30
- const lastGroup = groupedItems[groupedItems.length - 1];
31
- if (item.aborted) {
32
- // Item was aborted before it was dispatched
33
- item.reject?.(new Error('Aborted'));
34
- index++;
35
- continue;
36
- }
37
- const isValid = batchLoader.validate(lastGroup.concat(item).map((it)=>it.key));
38
- if (isValid) {
39
- lastGroup.push(item);
40
- index++;
41
- continue;
42
- }
43
- if (lastGroup.length === 0) {
44
- item.reject?.(new Error('Input is too big for a single dispatch'));
45
- index++;
46
- continue;
47
- }
48
- // Create new group, next iteration will try to add the item to that
49
- groupedItems.push([]);
50
- }
51
- return groupedItems;
52
- }
53
- function dispatch() {
54
- const groupedItems = groupItems(pendingItems);
55
- destroyTimerAndPendingItems();
56
- // Create batches for each group of items
57
- for (const items of groupedItems){
58
- if (!items.length) {
59
- continue;
60
- }
61
- const batch = {
62
- items
63
- };
64
- for (const item of items){
65
- item.batch = batch;
66
- }
67
- const promise = batchLoader.fetch(batch.items.map((_item)=>_item.key));
68
- promise.then(async (result)=>{
69
- await Promise.all(result.map(async (valueOrPromise, index)=>{
70
- const item = batch.items[index];
71
- try {
72
- const value = await Promise.resolve(valueOrPromise);
73
- item.resolve?.(value);
74
- } catch (cause) {
75
- item.reject?.(cause);
76
- }
77
- item.batch = null;
78
- item.reject = null;
79
- item.resolve = null;
80
- }));
81
- for (const item of batch.items){
82
- item.reject?.(new Error('Missing result'));
83
- item.batch = null;
84
- }
85
- }).catch((cause)=>{
86
- for (const item of batch.items){
87
- item.reject?.(cause);
88
- item.batch = null;
89
- }
90
- });
91
- }
92
- }
93
- function load(key) {
94
- const item = {
95
- aborted: false,
96
- key,
97
- batch: null,
98
- resolve: throwFatalError,
99
- reject: throwFatalError
100
- };
101
- const promise = new Promise((resolve, reject)=>{
102
- item.reject = reject;
103
- item.resolve = resolve;
104
- pendingItems ?? (pendingItems = []);
105
- pendingItems.push(item);
106
- });
107
- dispatchTimer ?? (dispatchTimer = setTimeout(dispatch));
108
- return promise;
109
- }
110
- return {
111
- load
112
- };
113
- }
114
-
115
- export { dataLoader };
@@ -1,2 +0,0 @@
1
- export declare function inputWithTrackedEventId(input: unknown, lastEventId: string | undefined): unknown;
2
- //# sourceMappingURL=inputWithTrackedEventId.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inputWithTrackedEventId.d.ts","sourceRoot":"","sources":["../../src/internals/inputWithTrackedEventId.ts"],"names":[],"mappings":"AAAA,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,MAAM,GAAG,SAAS,WAYhC"}
@@ -1,16 +0,0 @@
1
- 'use strict';
2
-
3
- function inputWithTrackedEventId(input, lastEventId) {
4
- if (!lastEventId) {
5
- return input;
6
- }
7
- if (input != null && typeof input !== 'object') {
8
- return input;
9
- }
10
- return {
11
- ...input ?? {},
12
- lastEventId
13
- };
14
- }
15
-
16
- exports.inputWithTrackedEventId = inputWithTrackedEventId;
@@ -1,14 +0,0 @@
1
- function inputWithTrackedEventId(input, lastEventId) {
2
- if (!lastEventId) {
3
- return input;
4
- }
5
- if (input != null && typeof input !== 'object') {
6
- return input;
7
- }
8
- return {
9
- ...input ?? {},
10
- lastEventId
11
- };
12
- }
13
-
14
- export { inputWithTrackedEventId };
@@ -1,16 +0,0 @@
1
- import type { Maybe } from '@trpc/server/unstable-core-do-not-import';
2
- /**
3
- * Like `Promise.all()` but for abort signals
4
- * - When all signals have been aborted, the merged signal will be aborted
5
- * - If one signal is `null`, no signal will be aborted
6
- */
7
- export declare function allAbortSignals(...signals: Maybe<AbortSignal>[]): AbortSignal;
8
- /**
9
- * Like `Promise.race` but for abort signals
10
- *
11
- * Basically, a ponyfill for
12
- * [`AbortSignal.any`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/any_static).
13
- */
14
- export declare function raceAbortSignals(...signals: Maybe<AbortSignal>[]): AbortSignal;
15
- export declare function abortSignalToPromise(signal: AbortSignal): Promise<never>;
16
- //# sourceMappingURL=signals.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../../src/internals/signals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAC;AAEtE;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,GAAG,WAAW,CAwB7E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,GAC/B,WAAW,CAYb;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAcxE"}
@@ -1,61 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Like `Promise.all()` but for abort signals
5
- * - When all signals have been aborted, the merged signal will be aborted
6
- * - If one signal is `null`, no signal will be aborted
7
- */ function allAbortSignals(...signals) {
8
- const ac = new AbortController();
9
- const count = signals.length;
10
- let abortedCount = 0;
11
- const onAbort = ()=>{
12
- if (++abortedCount === count) {
13
- ac.abort();
14
- }
15
- };
16
- for (const signal of signals){
17
- if (signal?.aborted) {
18
- onAbort();
19
- } else {
20
- signal?.addEventListener('abort', onAbort, {
21
- once: true
22
- });
23
- }
24
- }
25
- return ac.signal;
26
- }
27
- /**
28
- * Like `Promise.race` but for abort signals
29
- *
30
- * Basically, a ponyfill for
31
- * [`AbortSignal.any`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/any_static).
32
- */ function raceAbortSignals(...signals) {
33
- const ac = new AbortController();
34
- for (const signal of signals){
35
- if (signal?.aborted) {
36
- ac.abort();
37
- } else {
38
- signal?.addEventListener('abort', ()=>ac.abort(), {
39
- once: true
40
- });
41
- }
42
- }
43
- return ac.signal;
44
- }
45
- function abortSignalToPromise(signal) {
46
- return new Promise((_, reject)=>{
47
- if (signal.aborted) {
48
- reject(signal.reason);
49
- return;
50
- }
51
- signal.addEventListener('abort', ()=>{
52
- reject(signal.reason);
53
- }, {
54
- once: true
55
- });
56
- });
57
- }
58
-
59
- exports.abortSignalToPromise = abortSignalToPromise;
60
- exports.allAbortSignals = allAbortSignals;
61
- exports.raceAbortSignals = raceAbortSignals;
@@ -1,57 +0,0 @@
1
- /**
2
- * Like `Promise.all()` but for abort signals
3
- * - When all signals have been aborted, the merged signal will be aborted
4
- * - If one signal is `null`, no signal will be aborted
5
- */ function allAbortSignals(...signals) {
6
- const ac = new AbortController();
7
- const count = signals.length;
8
- let abortedCount = 0;
9
- const onAbort = ()=>{
10
- if (++abortedCount === count) {
11
- ac.abort();
12
- }
13
- };
14
- for (const signal of signals){
15
- if (signal?.aborted) {
16
- onAbort();
17
- } else {
18
- signal?.addEventListener('abort', onAbort, {
19
- once: true
20
- });
21
- }
22
- }
23
- return ac.signal;
24
- }
25
- /**
26
- * Like `Promise.race` but for abort signals
27
- *
28
- * Basically, a ponyfill for
29
- * [`AbortSignal.any`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/any_static).
30
- */ function raceAbortSignals(...signals) {
31
- const ac = new AbortController();
32
- for (const signal of signals){
33
- if (signal?.aborted) {
34
- ac.abort();
35
- } else {
36
- signal?.addEventListener('abort', ()=>ac.abort(), {
37
- once: true
38
- });
39
- }
40
- }
41
- return ac.signal;
42
- }
43
- function abortSignalToPromise(signal) {
44
- return new Promise((_, reject)=>{
45
- if (signal.aborted) {
46
- reject(signal.reason);
47
- return;
48
- }
49
- signal.addEventListener('abort', ()=>{
50
- reject(signal.reason);
51
- }, {
52
- once: true
53
- });
54
- });
55
- }
56
-
57
- export { abortSignalToPromise, allAbortSignals, raceAbortSignals };
@@ -1,42 +0,0 @@
1
- import type { AnyClientTypes, CombinedDataTransformer, DataTransformerOptions, TypeError } from '@trpc/server/unstable-core-do-not-import';
2
- /**
3
- * @internal
4
- */
5
- export type CoercedTransformerParameters = {
6
- transformer?: DataTransformerOptions;
7
- };
8
- type TransformerOptionYes = {
9
- /**
10
- * Data transformer
11
- *
12
- * You must use the same transformer on the backend and frontend
13
- * @see https://trpc.io/docs/v11/data-transformers
14
- **/
15
- transformer: DataTransformerOptions;
16
- };
17
- type TransformerOptionNo = {
18
- /**
19
- * Data transformer
20
- *
21
- * You must use the same transformer on the backend and frontend
22
- * @see https://trpc.io/docs/v11/data-transformers
23
- **/
24
- transformer?: TypeError<'You must define a transformer on your your `initTRPC`-object first'>;
25
- };
26
- /**
27
- * @internal
28
- */
29
- export type TransformerOptions<TRoot extends Pick<AnyClientTypes, 'transformer'>> = TRoot['transformer'] extends true ? TransformerOptionYes : TransformerOptionNo;
30
- /**
31
- * @internal
32
- */
33
- /**
34
- * @internal
35
- */
36
- export declare function getTransformer(transformer: TransformerOptions<{
37
- transformer: false;
38
- }>['transformer'] | TransformerOptions<{
39
- transformer: true;
40
- }>['transformer'] | undefined): CombinedDataTransformer;
41
- export {};
42
- //# sourceMappingURL=transformer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../src/internals/transformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACvB,sBAAsB,EACtB,SAAS,EACV,MAAM,0CAA0C,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B;;;;;QAKI;IACJ,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC;AACF,KAAK,mBAAmB,GAAG;IACzB;;;;;QAKI;IACJ,WAAW,CAAC,EAAE,SAAS,CAAC,oEAAoE,CAAC,CAAC;CAC/F,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAC5B,KAAK,SAAS,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,IAC/C,KAAK,CAAC,aAAa,CAAC,SAAS,IAAI,GACjC,oBAAoB,GACpB,mBAAmB,CAAC;AACxB;;GAEG;AAEH;;GAEG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EACP,kBAAkB,CAAC;IAAE,WAAW,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC,aAAa,CAAC,GACzD,kBAAkB,CAAC;IAAE,WAAW,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC,aAAa,CAAC,GACxD,SAAS,GACZ,uBAAuB,CAsBzB"}
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * @internal
5
- */ /**
6
- * @internal
7
- */ function getTransformer(transformer) {
8
- const _transformer = transformer;
9
- if (!_transformer) {
10
- return {
11
- input: {
12
- serialize: (data)=>data,
13
- deserialize: (data)=>data
14
- },
15
- output: {
16
- serialize: (data)=>data,
17
- deserialize: (data)=>data
18
- }
19
- };
20
- }
21
- if ('input' in _transformer) {
22
- return _transformer;
23
- }
24
- return {
25
- input: _transformer,
26
- output: _transformer
27
- };
28
- }
29
-
30
- exports.getTransformer = getTransformer;
@@ -1,28 +0,0 @@
1
- /**
2
- * @internal
3
- */ /**
4
- * @internal
5
- */ function getTransformer(transformer) {
6
- const _transformer = transformer;
7
- if (!_transformer) {
8
- return {
9
- input: {
10
- serialize: (data)=>data,
11
- deserialize: (data)=>data
12
- },
13
- output: {
14
- serialize: (data)=>data,
15
- deserialize: (data)=>data
16
- }
17
- };
18
- }
19
- if ('input' in _transformer) {
20
- return _transformer;
21
- }
22
- return {
23
- input: _transformer,
24
- output: _transformer
25
- };
26
- }
27
-
28
- export { getTransformer };
@@ -1,82 +0,0 @@
1
- /**
2
- * A subset of the standard fetch function type needed by tRPC internally.
3
- * @see fetch from lib.dom.d.ts
4
- * @remarks
5
- * If you need a property that you know exists but doesn't exist on this
6
- * interface, go ahead and add it.
7
- */
8
- export type FetchEsque = (input: RequestInfo | URL | string, init?: RequestInit | RequestInitEsque) => Promise<ResponseEsque>;
9
- /**
10
- * A simpler version of the native fetch function's type for packages with
11
- * their own fetch types, such as undici and node-fetch.
12
- */
13
- export type NativeFetchEsque = (url: URL | string, init?: NodeFetchRequestInitEsque) => Promise<ResponseEsque>;
14
- export interface NodeFetchRequestInitEsque {
15
- body?: string;
16
- }
17
- /**
18
- * A subset of the standard RequestInit properties needed by tRPC internally.
19
- * @see RequestInit from lib.dom.d.ts
20
- * @remarks
21
- * If you need a property that you know exists but doesn't exist on this
22
- * interface, go ahead and add it.
23
- */
24
- export interface RequestInitEsque {
25
- /**
26
- * Sets the request's body.
27
- */
28
- body?: FormData | string | null | Uint8Array | Blob | File;
29
- /**
30
- * Sets the request's associated headers.
31
- */
32
- headers?: [string, string][] | Record<string, string>;
33
- /**
34
- * The request's HTTP-style method.
35
- */
36
- method?: string;
37
- /**
38
- * Sets the request's signal.
39
- */
40
- signal?: AbortSignal | undefined;
41
- }
42
- /**
43
- * A subset of the standard ReadableStream properties needed by tRPC internally.
44
- * @see ReadableStream from lib.dom.d.ts
45
- */
46
- export type WebReadableStreamEsque = {
47
- getReader: () => ReadableStreamDefaultReader<Uint8Array>;
48
- };
49
- export type NodeJSReadableStreamEsque = {
50
- on(eventName: string | symbol, listener: (...args: any[]) => void): NodeJSReadableStreamEsque;
51
- };
52
- /**
53
- * A subset of the standard Response properties needed by tRPC internally.
54
- * @see Response from lib.dom.d.ts
55
- */
56
- export interface ResponseEsque {
57
- readonly body?: NodeJSReadableStreamEsque | WebReadableStreamEsque | null;
58
- /**
59
- * @remarks
60
- * The built-in Response::json() method returns Promise<any>, but
61
- * that's not as type-safe as unknown. We use unknown because we're
62
- * more type-safe. You do want more type safety, right? 😉
63
- */
64
- json(): Promise<unknown>;
65
- }
66
- /**
67
- * @internal
68
- */
69
- export type NonEmptyArray<TItem> = [TItem, ...TItem[]];
70
- type ClientContext = Record<string, unknown>;
71
- /**
72
- * @public
73
- */
74
- export interface TRPCProcedureOptions {
75
- /**
76
- * Client-side context
77
- */
78
- context?: ClientContext;
79
- signal?: AbortSignal;
80
- }
81
- export {};
82
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/internals/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,WAAW,GAAG,GAAG,GAAG,MAAM,EACjC,IAAI,CAAC,EAAE,WAAW,GAAG,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,GAAG,EAAE,GAAG,GAAG,MAAM,EACjB,IAAI,CAAC,EAAE,yBAAyB,KAC7B,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;IAE3D;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,2BAA2B,CAAC,UAAU,CAAC,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,CACA,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GACjC,yBAAyB,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,yBAAyB,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC1E;;;;;OAKG;IACH,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAEvD,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB"}
@@ -1,20 +0,0 @@
1
- import type { AnyClientTypes } from '@trpc/server/unstable-core-do-not-import';
2
- import type { NonEmptyArray } from '../internals/types';
3
- import type { HTTPLinkBaseOptions } from './internals/httpUtils';
4
- import type { HTTPHeaders, Operation } from './types';
5
- export type HTTPBatchLinkOptions<TRoot extends AnyClientTypes> = HTTPLinkBaseOptions<TRoot> & {
6
- maxURLLength?: number;
7
- /**
8
- * Headers to be set on outgoing requests or a callback that of said headers
9
- * @see http://trpc.io/docs/client/headers
10
- */
11
- headers?: HTTPHeaders | ((opts: {
12
- opList: NonEmptyArray<Operation>;
13
- }) => HTTPHeaders | Promise<HTTPHeaders>);
14
- /**
15
- * Maximum number of calls in a single batch request
16
- * @default Infinity
17
- */
18
- maxItems?: number;
19
- };
20
- //# sourceMappingURL=HTTPBatchLinkOptions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HTTPBatchLinkOptions.d.ts","sourceRoot":"","sources":["../../src/links/HTTPBatchLinkOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,oBAAoB,CAAC,KAAK,SAAS,cAAc,IAC3D,mBAAmB,CAAC,KAAK,CAAC,GAAG;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EACJ,WAAW,GACX,CAAC,CAAC,IAAI,EAAE;QACN,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;KAClC,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { AnyRouter } from '@trpc/server';
2
- import type { HTTPBatchLinkOptions } from './HTTPBatchLinkOptions';
3
- import type { TRPCLink } from './types';
4
- /**
5
- * @see https://trpc.io/docs/client/links/httpBatchLink
6
- */
7
- export declare function httpBatchLink<TRouter extends AnyRouter>(opts: HTTPBatchLinkOptions<TRouter['_def']['_config']['$types']>): TRPCLink<TRouter>;
8
- //# sourceMappingURL=httpBatchLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpBatchLink.d.ts","sourceRoot":"","sources":["../../src/links/httpBatchLink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AAQ7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAOnE,OAAO,KAAK,EAAa,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnD;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,SAAS,SAAS,EACrD,IAAI,EAAE,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,GAC/D,QAAQ,CAAC,OAAO,CAAC,CAsHnB"}
@@ -1,110 +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 dataLoader = require('../internals/dataLoader.js');
6
- var signals = require('../internals/signals.js');
7
- var TRPCClientError = require('../TRPCClientError.js');
8
- var httpUtils = require('./internals/httpUtils.js');
9
-
10
- /**
11
- * @see https://trpc.io/docs/client/links/httpBatchLink
12
- */ function httpBatchLink(opts) {
13
- const resolvedOpts = httpUtils.resolveHTTPLinkOptions(opts);
14
- const maxURLLength = opts.maxURLLength ?? Infinity;
15
- const maxItems = opts.maxItems ?? Infinity;
16
- return ()=>{
17
- const batchLoader = (type)=>{
18
- return {
19
- validate (batchOps) {
20
- if (maxURLLength === Infinity && maxItems === Infinity) {
21
- // escape hatch for quick calcs
22
- return true;
23
- }
24
- if (batchOps.length > maxItems) {
25
- return false;
26
- }
27
- const path = batchOps.map((op)=>op.path).join(',');
28
- const inputs = batchOps.map((op)=>op.input);
29
- const url = httpUtils.getUrl({
30
- ...resolvedOpts,
31
- type,
32
- path,
33
- inputs,
34
- signal: null
35
- });
36
- return url.length <= maxURLLength;
37
- },
38
- async fetch (batchOps) {
39
- const path = batchOps.map((op)=>op.path).join(',');
40
- const inputs = batchOps.map((op)=>op.input);
41
- const signal = signals.allAbortSignals(...batchOps.map((op)=>op.signal));
42
- const res = await httpUtils.jsonHttpRequester({
43
- ...resolvedOpts,
44
- path,
45
- inputs,
46
- type,
47
- headers () {
48
- if (!opts.headers) {
49
- return {};
50
- }
51
- if (typeof opts.headers === 'function') {
52
- return opts.headers({
53
- opList: batchOps
54
- });
55
- }
56
- return opts.headers;
57
- },
58
- signal
59
- });
60
- const resJSON = Array.isArray(res.json) ? res.json : batchOps.map(()=>res.json);
61
- const result = resJSON.map((item)=>({
62
- meta: res.meta,
63
- json: item
64
- }));
65
- return result;
66
- }
67
- };
68
- };
69
- const query = dataLoader.dataLoader(batchLoader('query'));
70
- const mutation = dataLoader.dataLoader(batchLoader('mutation'));
71
- const loaders = {
72
- query,
73
- mutation
74
- };
75
- return ({ op })=>{
76
- return observable.observable((observer)=>{
77
- /* istanbul ignore if -- @preserve */ if (op.type === 'subscription') {
78
- throw new Error('Subscriptions are unsupported by `httpLink` - use `httpSubscriptionLink` or `wsLink`');
79
- }
80
- const loader = loaders[op.type];
81
- const promise = loader.load(op);
82
- let _res = undefined;
83
- promise.then((res)=>{
84
- _res = res;
85
- const transformed = unstableCoreDoNotImport.transformResult(res.json, resolvedOpts.transformer.output);
86
- if (!transformed.ok) {
87
- observer.error(TRPCClientError.TRPCClientError.from(transformed.error, {
88
- meta: res.meta
89
- }));
90
- return;
91
- }
92
- observer.next({
93
- context: res.meta,
94
- result: transformed.result
95
- });
96
- observer.complete();
97
- }).catch((err)=>{
98
- observer.error(TRPCClientError.TRPCClientError.from(err, {
99
- meta: _res?.meta
100
- }));
101
- });
102
- return ()=>{
103
- // noop
104
- };
105
- });
106
- };
107
- };
108
- }
109
-
110
- exports.httpBatchLink = httpBatchLink;
@@ -1,12 +0,0 @@
1
- import type { AnyRouter } from '@trpc/server';
2
- import type { HTTPBatchLinkOptions } from './HTTPBatchLinkOptions';
3
- import type { TRPCLink } from './types';
4
- /**
5
- * @see https://trpc.io/docs/client/links/httpBatchStreamLink
6
- */
7
- export declare function httpBatchStreamLink<TRouter extends AnyRouter>(opts: HTTPBatchLinkOptions<TRouter['_def']['_config']['$types']>): TRPCLink<TRouter>;
8
- /**
9
- * @deprecated use {@link httpBatchStreamLink} instead
10
- */
11
- export declare const unstable_httpBatchStreamLink: typeof httpBatchStreamLink;
12
- //# sourceMappingURL=httpBatchStreamLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpBatchStreamLink.d.ts","sourceRoot":"","sources":["../../src/links/httpBatchStreamLink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AAS7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAQnE,OAAO,KAAK,EAAa,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,SAAS,SAAS,EAC3D,IAAI,EAAE,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,GAC/D,QAAQ,CAAC,OAAO,CAAC,CAgKnB;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,4BAAsB,CAAC"}