@trpc/client 10.0.0-alpha.4 → 10.0.0-alpha.42

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 (174) hide show
  1. package/README.md +58 -1
  2. package/dist/TRPCClientError.d.ts +3 -11
  3. package/dist/TRPCClientError.d.ts.map +1 -1
  4. package/dist/createTRPCClient.d.ts +2 -3
  5. package/dist/createTRPCClient.d.ts.map +1 -1
  6. package/dist/createTRPCClientProxy.d.ts +31 -0
  7. package/dist/createTRPCClientProxy.d.ts.map +1 -0
  8. package/dist/{httpUtils-c09d7b79.mjs → httpUtils-089853f6.mjs} +38 -30
  9. package/dist/{httpUtils-1f9e4e3c.js → httpUtils-a0169eef.js} +38 -29
  10. package/dist/index.d.ts +2 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +256 -107
  13. package/dist/index.mjs +244 -99
  14. package/dist/internals/TRPCClient.d.ts +21 -18
  15. package/dist/internals/TRPCClient.d.ts.map +1 -1
  16. package/dist/internals/dataLoader.d.ts +7 -4
  17. package/dist/internals/dataLoader.d.ts.map +1 -1
  18. package/dist/links/dedupeLink.d.ts.map +1 -1
  19. package/dist/links/httpBatchLink.d.ts +5 -2
  20. package/dist/links/httpBatchLink.d.ts.map +1 -1
  21. package/dist/links/httpBatchLink.js +197 -69
  22. package/dist/links/httpBatchLink.mjs +197 -69
  23. package/dist/links/httpLink.d.ts +1 -1
  24. package/dist/links/httpLink.d.ts.map +1 -1
  25. package/dist/links/httpLink.js +5 -5
  26. package/dist/links/httpLink.mjs +5 -5
  27. package/dist/links/index.d.ts +9 -0
  28. package/dist/links/index.d.ts.map +1 -0
  29. package/dist/links/internals/createChain.d.ts.map +1 -1
  30. package/dist/links/internals/httpUtils.d.ts +30 -0
  31. package/dist/links/internals/httpUtils.d.ts.map +1 -0
  32. package/dist/links/internals/transformOperationResult.d.ts +17 -3
  33. package/dist/links/internals/transformOperationResult.d.ts.map +1 -1
  34. package/dist/links/loggerLink.d.ts.map +1 -1
  35. package/dist/links/loggerLink.js +2 -3
  36. package/dist/links/loggerLink.mjs +1 -2
  37. package/dist/links/retryLink.d.ts.map +1 -1
  38. package/dist/links/splitLink.d.ts +1 -1
  39. package/dist/links/splitLink.d.ts.map +1 -1
  40. package/dist/links/splitLink.js +3 -25
  41. package/dist/links/splitLink.mjs +2 -28
  42. package/dist/links/types.d.ts +12 -9
  43. package/dist/links/types.d.ts.map +1 -1
  44. package/dist/links/wsLink.d.ts +5 -3
  45. package/dist/links/wsLink.d.ts.map +1 -1
  46. package/dist/links/wsLink.js +12 -376
  47. package/dist/links/wsLink.mjs +10 -369
  48. package/dist/splitLink-0202cd7b.mjs +54 -0
  49. package/dist/splitLink-23c5ce5c.js +57 -0
  50. package/dist/wsLink-27b93bd0.mjs +451 -0
  51. package/dist/wsLink-44703a83.js +467 -0
  52. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +4 -4
  53. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +4 -4
  54. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +4 -4
  55. package/links/httpBatchLink/index.d.ts +1 -1
  56. package/links/httpBatchLink/index.js +1 -1
  57. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +1 -1
  58. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +1 -1
  59. package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +1 -1
  60. package/links/httpLink/index.d.ts +1 -1
  61. package/links/httpLink/index.js +1 -1
  62. package/links/loggerLink/index.d.ts +1 -1
  63. package/links/loggerLink/index.js +1 -1
  64. package/links/splitLink/index.d.ts +1 -1
  65. package/links/splitLink/index.js +1 -1
  66. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +3 -1
  67. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +3 -1
  68. package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +3 -1
  69. package/links/wsLink/index.d.ts +1 -1
  70. package/links/wsLink/index.js +1 -1
  71. package/package.json +23 -30
  72. package/src/TRPCClientError.ts +5 -13
  73. package/src/createTRPCClient.ts +7 -3
  74. package/src/createTRPCClientProxy.ts +98 -0
  75. package/src/index.ts +2 -1
  76. package/src/internals/TRPCClient.ts +70 -42
  77. package/src/internals/dataLoader.ts +120 -45
  78. package/src/links/dedupeLink.test.ts +1 -1
  79. package/src/links/dedupeLink.ts +6 -7
  80. package/src/links/httpBatchLink.ts +64 -31
  81. package/src/links/httpLink.ts +4 -4
  82. package/src/links/index.ts +8 -0
  83. package/src/links/internals/createChain.test.ts +5 -5
  84. package/src/links/internals/createChain.ts +8 -3
  85. package/src/links/internals/httpUtils.ts +116 -0
  86. package/src/links/internals/transformOperationResult.ts +40 -12
  87. package/src/links/loggerLink.ts +1 -2
  88. package/src/links/retryLink.ts +1 -2
  89. package/src/links/splitLink.test.ts +3 -3
  90. package/src/links/splitLink.ts +5 -5
  91. package/src/links/types.ts +14 -9
  92. package/src/links/wsLink.ts +31 -16
  93. package/dist/TRPCClientError-17b117e1.mjs +0 -81
  94. package/dist/TRPCClientError-ec6bd2ca.js +0 -94
  95. package/dist/createChain-389cc116.mjs +0 -25
  96. package/dist/createChain-864dbb30.js +0 -27
  97. package/dist/internals/transformRPCResponse.d.ts +0 -15
  98. package/dist/internals/transformRPCResponse.d.ts.map +0 -1
  99. package/dist/links/httpUtils.d.ts +0 -22
  100. package/dist/links/httpUtils.d.ts.map +0 -1
  101. package/dist/links/transformerLink.d.ts +0 -4
  102. package/dist/links/transformerLink.d.ts.map +0 -1
  103. package/dist/links/transformerLink.js +0 -75
  104. package/dist/links/transformerLink.mjs +0 -67
  105. package/dist/links/transformerLink.ts.js +0 -1
  106. package/dist/observable-7e66cb56.mjs +0 -102
  107. package/dist/observable-85669100.js +0 -104
  108. package/dist/rx/index.d.ts +0 -3
  109. package/dist/rx/index.d.ts.map +0 -1
  110. package/dist/rx/index.js +0 -9
  111. package/dist/rx/index.mjs +0 -1
  112. package/dist/rx/index.ts.js +0 -1
  113. package/dist/rx/observable.d.ts +0 -4
  114. package/dist/rx/observable.d.ts.map +0 -1
  115. package/dist/rx/operators/index.d.ts +0 -4
  116. package/dist/rx/operators/index.d.ts.map +0 -1
  117. package/dist/rx/operators/index.js +0 -38
  118. package/dist/rx/operators/index.mjs +0 -32
  119. package/dist/rx/operators/index.ts.js +0 -1
  120. package/dist/rx/operators/map.d.ts +0 -3
  121. package/dist/rx/operators/map.d.ts.map +0 -1
  122. package/dist/rx/operators/share.d.ts +0 -6
  123. package/dist/rx/operators/share.d.ts.map +0 -1
  124. package/dist/rx/operators/tap.d.ts +0 -3
  125. package/dist/rx/operators/tap.d.ts.map +0 -1
  126. package/dist/rx/types.d.ts +0 -29
  127. package/dist/rx/types.d.ts.map +0 -1
  128. package/dist/rx/util/identity.d.ts +0 -2
  129. package/dist/rx/util/identity.d.ts.map +0 -1
  130. package/dist/rx/util/observableToPromise.d.ts +0 -10
  131. package/dist/rx/util/observableToPromise.d.ts.map +0 -1
  132. package/dist/rx/util/pipe.d.ts +0 -4
  133. package/dist/rx/util/pipe.d.ts.map +0 -1
  134. package/dist/share-4d79dc49.js +0 -110
  135. package/dist/share-671b63fa.mjs +0 -108
  136. package/dist/tap-538fa07f.mjs +0 -30
  137. package/dist/tap-799a2d33.js +0 -32
  138. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.d.ts +0 -1
  139. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.dev.js +0 -67
  140. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.js +0 -7
  141. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.prod.js +0 -67
  142. package/links/transformerLink/dist/trpc-client-links-transformerLink.esm.js +0 -63
  143. package/links/transformerLink/index.d.ts +0 -1
  144. package/links/transformerLink/index.js +0 -1
  145. package/rx/dist/trpc-client-rx.cjs.d.ts +0 -1
  146. package/rx/dist/trpc-client-rx.cjs.dev.js +0 -9
  147. package/rx/dist/trpc-client-rx.cjs.js +0 -7
  148. package/rx/dist/trpc-client-rx.cjs.prod.js +0 -9
  149. package/rx/dist/trpc-client-rx.esm.js +0 -1
  150. package/rx/index.d.ts +0 -1
  151. package/rx/index.js +0 -1
  152. package/rx/operators/dist/trpc-client-rx-operators.cjs.d.ts +0 -1
  153. package/rx/operators/dist/trpc-client-rx-operators.cjs.dev.js +0 -39
  154. package/rx/operators/dist/trpc-client-rx-operators.cjs.js +0 -7
  155. package/rx/operators/dist/trpc-client-rx-operators.cjs.prod.js +0 -39
  156. package/rx/operators/dist/trpc-client-rx-operators.esm.js +0 -33
  157. package/rx/operators/index.d.ts +0 -1
  158. package/rx/operators/index.js +0 -1
  159. package/src/internals/transformRPCResponse.ts +0 -25
  160. package/src/links/httpUtils.ts +0 -94
  161. package/src/links/transformerLink.ts +0 -70
  162. package/src/rx/index.ts +0 -2
  163. package/src/rx/observable.test.ts +0 -83
  164. package/src/rx/observable.ts +0 -70
  165. package/src/rx/operators/index.ts +0 -3
  166. package/src/rx/operators/map.test.ts +0 -92
  167. package/src/rx/operators/map.ts +0 -25
  168. package/src/rx/operators/share.test.ts +0 -60
  169. package/src/rx/operators/share.ts +0 -67
  170. package/src/rx/operators/tap.ts +0 -26
  171. package/src/rx/types.ts +0 -69
  172. package/src/rx/util/identity.ts +0 -3
  173. package/src/rx/util/observableToPromise.ts +0 -49
  174. package/src/rx/util/pipe.ts +0 -22
@@ -1,7 +1,7 @@
1
1
  import { AnyRouter } from '@trpc/server';
2
- import { observable } from '../rx/observable';
3
- import { TRPCLink, Operation } from './types';
2
+ import { observable } from '@trpc/server/observable';
4
3
  import { createChain } from './internals/createChain';
4
+ import { Operation, TRPCLink } from './types';
5
5
 
6
6
  function asArray<T>(value: T | T[]) {
7
7
  return Array.isArray(value) ? value : [value];
@@ -17,9 +17,9 @@ export function splitLink<TRouter extends AnyRouter = AnyRouter>(opts: {
17
17
  */
18
18
  false: TRPCLink<TRouter> | TRPCLink<TRouter>[];
19
19
  }): TRPCLink<TRouter> {
20
- return (rt) => {
21
- const yes = asArray(opts.true).map((link) => link(rt));
22
- const no = asArray(opts.false).map((link) => link(rt));
20
+ return (runtime) => {
21
+ const yes = asArray(opts.true).map((link) => link(runtime));
22
+ const no = asArray(opts.false).map((link) => link(runtime));
23
23
  return (props) => {
24
24
  return observable((observer) => {
25
25
  const links = opts.condition(props.op) ? yes : no;
@@ -1,6 +1,6 @@
1
- import { AnyRouter, inferRouterError, Dict } from '@trpc/server';
2
- import { TRPCResponse } from '@trpc/server/rpc';
3
- import { Observable, Observer } from '../rx/types';
1
+ import { AnyRouter, DataTransformer, inferRouterError } from '@trpc/server';
2
+ import { Observable, Observer } from '@trpc/server/observable';
3
+ import { TRPCResponse, TRPCResponseMessage } from '@trpc/server/rpc';
4
4
  import { TRPCClientError } from '../TRPCClientError';
5
5
 
6
6
  export type CancelFn = () => void;
@@ -16,10 +16,10 @@ export type Operation<TInput = unknown> = {
16
16
  type: 'query' | 'mutation' | 'subscription';
17
17
  input: TInput;
18
18
  path: string;
19
- context?: OperationContext;
19
+ context: OperationContext;
20
20
  };
21
21
 
22
- export type HTTPHeaders = Dict<string | string[]>;
22
+ export type HTTPHeaders = Record<string, string | string[]>;
23
23
 
24
24
  /**
25
25
  * The default `fetch` implementation has an overloaded signature. By convention this library
@@ -30,14 +30,19 @@ export type TRPCFetch = (
30
30
  options?: RequestInit,
31
31
  ) => Promise<Response>;
32
32
 
33
- export interface LinkRuntime {
34
- headers: () => HTTPHeaders | Promise<HTTPHeaders>;
33
+ export interface TRPCClientRuntime {
35
34
  fetch: TRPCFetch;
36
35
  AbortController?: typeof AbortController;
36
+ headers: () => HTTPHeaders | Promise<HTTPHeaders>;
37
+ transformer: DataTransformer;
37
38
  }
38
39
 
40
+ type OperationResultData<TRouter extends AnyRouter, TOutput> =
41
+ | TRPCResponse<TOutput, inferRouterError<TRouter>>
42
+ | TRPCResponseMessage<TOutput, inferRouterError<TRouter>>;
43
+
39
44
  export interface OperationResult<TRouter extends AnyRouter, TOutput> {
40
- data: TRPCResponse<TOutput, inferRouterError<TRouter>>;
45
+ data: OperationResultData<TRouter, TOutput>;
41
46
  context?: OperationContext;
42
47
  }
43
48
 
@@ -61,5 +66,5 @@ export type OperationLink<
61
66
  }) => OperationResultObservable<TRouter, TOutput>;
62
67
 
63
68
  export type TRPCLink<TRouter extends AnyRouter> = (
64
- opts: LinkRuntime,
69
+ opts: TRPCClientRuntime,
65
70
  ) => OperationLink<TRouter>;
@@ -1,26 +1,31 @@
1
1
  import { AnyRouter, ProcedureType } from '@trpc/server';
2
+ import { UnsubscribeFn, observable } from '@trpc/server/observable';
2
3
  import {
3
4
  TRPCClientIncomingMessage,
4
5
  TRPCClientIncomingRequest,
5
- TRPCRequest,
6
- TRPCResponse,
6
+ TRPCClientOutgoingMessage,
7
+ TRPCRequestMessage,
8
+ TRPCResponseMessage,
7
9
  } from '@trpc/server/rpc';
8
- import { retryDelay } from '../internals/retryDelay';
9
- import { UnsubscribeFn } from '../rx';
10
- import { observable } from '../rx/observable';
11
10
  import { TRPCClientError } from '../TRPCClientError';
11
+ import { retryDelay } from '../internals/retryDelay';
12
12
  import { Operation, OperationResultObserver, TRPCLink } from './types';
13
13
 
14
14
  export interface WebSocketClientOptions {
15
15
  url: string;
16
- WebSocket?: WebSocket;
16
+ WebSocket?: typeof WebSocket;
17
17
  retryDelayMs?: typeof retryDelay;
18
+ onOpen?: () => void;
19
+ onClose?: () => void;
18
20
  }
21
+
19
22
  export function createWSClient(opts: WebSocketClientOptions) {
20
23
  const {
21
24
  url,
22
25
  WebSocket: WebSocketImpl = WebSocket,
23
26
  retryDelayMs: retryDelayFn = retryDelay,
27
+ onOpen,
28
+ onClose,
24
29
  } = opts;
25
30
  /* istanbul ignore next */
26
31
  if (!WebSocketImpl) {
@@ -31,7 +36,7 @@ export function createWSClient(opts: WebSocketClientOptions) {
31
36
  /**
32
37
  * outgoing messages buffer whilst not open
33
38
  */
34
- let outgoing: TRPCRequest[] = [];
39
+ let outgoing: TRPCClientOutgoingMessage[] = [];
35
40
  /**
36
41
  * pending outgoing requests that are awaiting callback
37
42
  */
@@ -112,7 +117,7 @@ export function createWSClient(opts: WebSocketClientOptions) {
112
117
  }
113
118
 
114
119
  function createWS() {
115
- const conn = new WebSocket(url);
120
+ const conn = new WebSocketImpl(url);
116
121
  clearTimeout(connectTimer as any);
117
122
  connectTimer = null;
118
123
 
@@ -123,6 +128,7 @@ export function createWSClient(opts: WebSocketClientOptions) {
123
128
  }
124
129
  connectAttempt = 0;
125
130
  state = 'open';
131
+ onOpen?.();
126
132
  dispatch();
127
133
  });
128
134
  conn.addEventListener('error', () => {
@@ -132,6 +138,9 @@ export function createWSClient(opts: WebSocketClientOptions) {
132
138
  });
133
139
  const handleIncomingRequest = (req: TRPCClientIncomingRequest) => {
134
140
  if (req.method === 'reconnect' && conn === activeConnection) {
141
+ if (state === 'open') {
142
+ onClose?.();
143
+ }
135
144
  reconnect();
136
145
  // notify subscribers
137
146
  for (const pendingReq of Object.values(pendingRequests)) {
@@ -141,7 +150,7 @@ export function createWSClient(opts: WebSocketClientOptions) {
141
150
  }
142
151
  }
143
152
  };
144
- const handleIncomingResponse = (data: TRPCResponse) => {
153
+ const handleIncomingResponse = (data: TRPCResponseMessage) => {
145
154
  const req = data.id !== null && pendingRequests[data.id];
146
155
  if (!req) {
147
156
  // do something?
@@ -179,13 +188,16 @@ export function createWSClient(opts: WebSocketClientOptions) {
179
188
  });
180
189
 
181
190
  conn.addEventListener('close', () => {
191
+ if (state === 'open') {
192
+ onClose?.();
193
+ }
194
+
182
195
  if (activeConnection === conn) {
183
196
  // connection might have been replaced already
184
197
  tryReconnect();
185
198
  }
186
199
 
187
- for (const key in pendingRequests) {
188
- const req = pendingRequests[key];
200
+ for (const [key, req] of Object.entries(pendingRequests)) {
189
201
  if (req.ws !== conn) {
190
202
  continue;
191
203
  }
@@ -208,9 +220,8 @@ export function createWSClient(opts: WebSocketClientOptions) {
208
220
 
209
221
  function request(op: Operation, callbacks: TCallbacks): UnsubscribeFn {
210
222
  const { type, input, path, id } = op;
211
- const envelope: TRPCRequest = {
223
+ const envelope: TRPCRequestMessage = {
212
224
  id,
213
- jsonrpc: '2.0',
214
225
  method: type,
215
226
  params: {
216
227
  input,
@@ -238,7 +249,6 @@ export function createWSClient(opts: WebSocketClientOptions) {
238
249
  outgoing.push({
239
250
  id,
240
251
  method: 'subscription.stop',
241
- params: undefined,
242
252
  });
243
253
  dispatch();
244
254
  }
@@ -247,7 +257,10 @@ export function createWSClient(opts: WebSocketClientOptions) {
247
257
  return {
248
258
  close: () => {
249
259
  state = 'closed';
260
+ onClose?.();
250
261
  closeIfNoPending(activeConnection);
262
+ clearTimeout(connectTimer as any);
263
+ connectTimer = null;
251
264
  },
252
265
  request,
253
266
  getConnection() {
@@ -279,11 +292,13 @@ class TRPCSubscriptionEndedError extends Error {
279
292
  export function wsLink<TRouter extends AnyRouter>(
280
293
  opts: WebSocketLinkOptions,
281
294
  ): TRPCLink<TRouter> {
282
- return () => {
295
+ return (runtime) => {
283
296
  const { client } = opts;
284
297
  return ({ op }) => {
285
298
  return observable((observer) => {
286
- const { type, input, path, id, context } = op;
299
+ const { type, path, id, context } = op;
300
+
301
+ const input = runtime.transformer.serialize(op.input);
287
302
 
288
303
  let isDone = false;
289
304
  const unsub = client.request(
@@ -1,81 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
3
- import _createClass from '@babel/runtime/helpers/createClass';
4
- import _assertThisInitialized from '@babel/runtime/helpers/assertThisInitialized';
5
- import _inherits from '@babel/runtime/helpers/inherits';
6
- import _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';
7
- import _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';
8
- import _wrapNativeSuper from '@babel/runtime/helpers/wrapNativeSuper';
9
-
10
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
11
-
12
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
-
14
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
15
-
16
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
17
-
18
- var TRPCClientError = /*#__PURE__*/function (_Error) {
19
- _inherits(TRPCClientError, _Error);
20
-
21
- var _super = /*#__PURE__*/_createSuper(TRPCClientError);
22
-
23
- /**
24
- * @deprecated use `cause`
25
- */
26
- function TRPCClientError(message, opts) {
27
- var _opts$cause, _opts$result, _opts$result2;
28
-
29
- var _this;
30
-
31
- _classCallCheck(this, TRPCClientError);
32
-
33
- var cause = (_opts$cause = opts === null || opts === void 0 ? void 0 : opts.cause) !== null && _opts$cause !== void 0 ? _opts$cause : opts === null || opts === void 0 ? void 0 : opts.originalError; // eslint-disable-next-line @typescript-eslint/ban-ts-comment
34
- // @ts-ignore https://github.com/tc39/proposal-error-cause
35
-
36
- _this = _super.call(this, message, {
37
- cause: cause
38
- });
39
- _this.originalError = void 0;
40
- _this.cause = void 0;
41
- _this.shape = void 0;
42
- _this.data = void 0;
43
- _this.meta = void 0;
44
- _this.meta = opts === null || opts === void 0 ? void 0 : opts.meta;
45
- _this.cause = _this.originalError = cause;
46
- _this.shape = opts === null || opts === void 0 ? void 0 : (_opts$result = opts.result) === null || _opts$result === void 0 ? void 0 : _opts$result.error;
47
- _this.data = opts === null || opts === void 0 ? void 0 : (_opts$result2 = opts.result) === null || _opts$result2 === void 0 ? void 0 : _opts$result2.error.data;
48
- _this.name = 'TRPCClientError';
49
- Object.setPrototypeOf(_assertThisInitialized(_this), TRPCClientError.prototype);
50
- return _this;
51
- }
52
-
53
- _createClass(TRPCClientError, null, [{
54
- key: "from",
55
- value: function from(cause) {
56
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
57
-
58
- if (!(cause instanceof Error)) {
59
- var _message;
60
-
61
- return new TRPCClientError((_message = cause.error.message) !== null && _message !== void 0 ? _message : '', _objectSpread(_objectSpread({}, opts), {}, {
62
- cause: null,
63
- result: cause
64
- }));
65
- }
66
-
67
- if (cause.name === 'TRPCClientError') {
68
- return cause;
69
- }
70
-
71
- return new TRPCClientError(cause.message, _objectSpread(_objectSpread({}, opts), {}, {
72
- cause: cause,
73
- result: null
74
- }));
75
- }
76
- }]);
77
-
78
- return TRPCClientError;
79
- }( /*#__PURE__*/_wrapNativeSuper(Error));
80
-
81
- export { TRPCClientError as T };
@@ -1,94 +0,0 @@
1
- 'use strict';
2
-
3
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
5
- var _createClass = require('@babel/runtime/helpers/createClass');
6
- var _assertThisInitialized = require('@babel/runtime/helpers/assertThisInitialized');
7
- var _inherits = require('@babel/runtime/helpers/inherits');
8
- var _possibleConstructorReturn = require('@babel/runtime/helpers/possibleConstructorReturn');
9
- var _getPrototypeOf = require('@babel/runtime/helpers/getPrototypeOf');
10
- var _wrapNativeSuper = require('@babel/runtime/helpers/wrapNativeSuper');
11
-
12
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
-
14
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
15
- var _classCallCheck__default = /*#__PURE__*/_interopDefaultLegacy(_classCallCheck);
16
- var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
17
- var _assertThisInitialized__default = /*#__PURE__*/_interopDefaultLegacy(_assertThisInitialized);
18
- var _inherits__default = /*#__PURE__*/_interopDefaultLegacy(_inherits);
19
- var _possibleConstructorReturn__default = /*#__PURE__*/_interopDefaultLegacy(_possibleConstructorReturn);
20
- var _getPrototypeOf__default = /*#__PURE__*/_interopDefaultLegacy(_getPrototypeOf);
21
- var _wrapNativeSuper__default = /*#__PURE__*/_interopDefaultLegacy(_wrapNativeSuper);
22
-
23
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
24
-
25
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
26
-
27
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf__default["default"](Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf__default["default"](this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn__default["default"](this, result); }; }
28
-
29
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
30
-
31
- var TRPCClientError = /*#__PURE__*/function (_Error) {
32
- _inherits__default["default"](TRPCClientError, _Error);
33
-
34
- var _super = /*#__PURE__*/_createSuper(TRPCClientError);
35
-
36
- /**
37
- * @deprecated use `cause`
38
- */
39
- function TRPCClientError(message, opts) {
40
- var _opts$cause, _opts$result, _opts$result2;
41
-
42
- var _this;
43
-
44
- _classCallCheck__default["default"](this, TRPCClientError);
45
-
46
- var cause = (_opts$cause = opts === null || opts === void 0 ? void 0 : opts.cause) !== null && _opts$cause !== void 0 ? _opts$cause : opts === null || opts === void 0 ? void 0 : opts.originalError; // eslint-disable-next-line @typescript-eslint/ban-ts-comment
47
- // @ts-ignore https://github.com/tc39/proposal-error-cause
48
-
49
- _this = _super.call(this, message, {
50
- cause: cause
51
- });
52
- _this.originalError = void 0;
53
- _this.cause = void 0;
54
- _this.shape = void 0;
55
- _this.data = void 0;
56
- _this.meta = void 0;
57
- _this.meta = opts === null || opts === void 0 ? void 0 : opts.meta;
58
- _this.cause = _this.originalError = cause;
59
- _this.shape = opts === null || opts === void 0 ? void 0 : (_opts$result = opts.result) === null || _opts$result === void 0 ? void 0 : _opts$result.error;
60
- _this.data = opts === null || opts === void 0 ? void 0 : (_opts$result2 = opts.result) === null || _opts$result2 === void 0 ? void 0 : _opts$result2.error.data;
61
- _this.name = 'TRPCClientError';
62
- Object.setPrototypeOf(_assertThisInitialized__default["default"](_this), TRPCClientError.prototype);
63
- return _this;
64
- }
65
-
66
- _createClass__default["default"](TRPCClientError, null, [{
67
- key: "from",
68
- value: function from(cause) {
69
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
70
-
71
- if (!(cause instanceof Error)) {
72
- var _message;
73
-
74
- return new TRPCClientError((_message = cause.error.message) !== null && _message !== void 0 ? _message : '', _objectSpread(_objectSpread({}, opts), {}, {
75
- cause: null,
76
- result: cause
77
- }));
78
- }
79
-
80
- if (cause.name === 'TRPCClientError') {
81
- return cause;
82
- }
83
-
84
- return new TRPCClientError(cause.message, _objectSpread(_objectSpread({}, opts), {}, {
85
- cause: cause,
86
- result: null
87
- }));
88
- }
89
- }]);
90
-
91
- return TRPCClientError;
92
- }( /*#__PURE__*/_wrapNativeSuper__default["default"](Error));
93
-
94
- exports.TRPCClientError = TRPCClientError;
@@ -1,25 +0,0 @@
1
- import { o as observable } from './observable-7e66cb56.mjs';
2
-
3
- /** @internal */
4
- function createChain(opts) {
5
- return observable(function (observer) {
6
- function execute() {
7
- var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
8
- var op = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : opts.op;
9
- var next = opts.links[index];
10
- var next$ = next({
11
- op: op,
12
- next: function next(nextOp) {
13
- var nextObserver = execute(index + 1, nextOp);
14
- return nextObserver;
15
- }
16
- });
17
- return next$;
18
- }
19
-
20
- var obs$ = execute();
21
- return obs$.subscribe(observer);
22
- });
23
- }
24
-
25
- export { createChain as c };
@@ -1,27 +0,0 @@
1
- 'use strict';
2
-
3
- var observable = require('./observable-85669100.js');
4
-
5
- /** @internal */
6
- function createChain(opts) {
7
- return observable.observable(function (observer) {
8
- function execute() {
9
- var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
10
- var op = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : opts.op;
11
- var next = opts.links[index];
12
- var next$ = next({
13
- op: op,
14
- next: function next(nextOp) {
15
- var nextObserver = execute(index + 1, nextOp);
16
- return nextObserver;
17
- }
18
- });
19
- return next$;
20
- }
21
-
22
- var obs$ = execute();
23
- return obs$.subscribe(observer);
24
- });
25
- }
26
-
27
- exports.createChain = createChain;
@@ -1,15 +0,0 @@
1
- import { TRPCResponse } from '@trpc/server/rpc';
2
- import { TRPCClientError } from '../TRPCClientError';
3
- import { LinkRuntime } from '../links/types';
4
- export declare function transformRPCResponse({ envelope, runtime, }: {
5
- envelope: TRPCResponse;
6
- runtime: LinkRuntime;
7
- }): {
8
- type: "started";
9
- } | {
10
- type: "stopped";
11
- } | TRPCClientError<import("@trpc/server").AnyRouter<any>> | {
12
- data: any;
13
- type: "data";
14
- };
15
- //# sourceMappingURL=transformRPCResponse.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformRPCResponse.d.ts","sourceRoot":"","sources":["../../src/internals/transformRPCResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;CACtB;;;;;;;EAcA"}
@@ -1,22 +0,0 @@
1
- import { ProcedureType } from '@trpc/server';
2
- import { LinkRuntime, PromiseAndCancel } from './types';
3
- export interface HTTPLinkOptions {
4
- url: string;
5
- }
6
- export interface ResponseShape {
7
- json: unknown;
8
- meta: {
9
- response: Response;
10
- };
11
- }
12
- export declare function httpRequest(props: {
13
- runtime: LinkRuntime;
14
- type: ProcedureType;
15
- path: string;
16
- url: string;
17
- } & ({
18
- inputs: unknown[];
19
- } | {
20
- input: unknown;
21
- })): PromiseAndCancel<ResponseShape>;
22
- //# sourceMappingURL=httpUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpUtils.d.ts","sourceRoot":"","sources":["../../src/links/httpUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACxD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;CACb;AAiBD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE;QACJ,QAAQ,EAAE,QAAQ,CAAC;KACpB,CAAC;CACH;AACD,wBAAgB,WAAW,CACzB,KAAK,EAAE;IACL,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,CAAC;IAAE,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,GAC/C,gBAAgB,CAAC,aAAa,CAAC,CA2DjC"}
@@ -1,4 +0,0 @@
1
- import { AnyRouter, ClientDataTransformerOptions } from '@trpc/server';
2
- import { TRPCLink } from './types';
3
- export declare function transformerLink<TRouter extends AnyRouter = AnyRouter>(transformer: ClientDataTransformerOptions): TRPCLink<TRouter>;
4
- //# sourceMappingURL=transformerLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformerLink.d.ts","sourceRoot":"","sources":["../../src/links/transformerLink.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,4BAA4B,EAE7B,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAmB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAgCpD,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EACnE,WAAW,EAAE,4BAA4B,GACxC,QAAQ,CAAC,OAAO,CAAC,CA6BnB"}
@@ -1,75 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var observable = require('../observable-85669100.js');
7
-
8
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
-
10
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
11
-
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
-
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
-
16
- /**
17
- * @internal
18
- */
19
- function transformOperationResult(result, transformer) {
20
- if ('error' in result.data) {
21
- return _objectSpread(_objectSpread({}, result), {}, {
22
- data: _objectSpread(_objectSpread({}, result.data), {}, {
23
- error: transformer.deserialize(result.data.error)
24
- })
25
- });
26
- }
27
-
28
- if (result.data.result.type !== 'data') {
29
- return result;
30
- }
31
-
32
- return _objectSpread(_objectSpread({}, result), {}, {
33
- data: _objectSpread(_objectSpread({}, result.data), {}, {
34
- result: _objectSpread(_objectSpread({}, result.data.result), {}, {
35
- data: transformer.deserialize(result.data.result.data)
36
- })
37
- })
38
- });
39
- }
40
-
41
- function transformerLink(transformer) {
42
- var _transformer = transformer ? 'input' in transformer ? {
43
- serialize: transformer.input.serialize,
44
- deserialize: transformer.output.deserialize
45
- } : transformer : {
46
- serialize: function serialize(data) {
47
- return data;
48
- },
49
- deserialize: function deserialize(data) {
50
- return data;
51
- }
52
- };
53
-
54
- return function () {
55
- return function (props) {
56
- var input = _transformer.serialize(props.op.input);
57
-
58
- return observable.observable(function (observer) {
59
- var next$ = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
60
- input: input
61
- })).subscribe({
62
- next: function next(value) {
63
- var transformed = transformOperationResult(value, _transformer);
64
- observer.next(transformed);
65
- },
66
- error: observer.error,
67
- complete: observer.complete
68
- });
69
- return next$;
70
- });
71
- };
72
- };
73
- }
74
-
75
- exports.transformerLink = transformerLink;
@@ -1,67 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import { o as observable } from '../observable-7e66cb56.mjs';
3
-
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
-
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
-
8
- /**
9
- * @internal
10
- */
11
- function transformOperationResult(result, transformer) {
12
- if ('error' in result.data) {
13
- return _objectSpread(_objectSpread({}, result), {}, {
14
- data: _objectSpread(_objectSpread({}, result.data), {}, {
15
- error: transformer.deserialize(result.data.error)
16
- })
17
- });
18
- }
19
-
20
- if (result.data.result.type !== 'data') {
21
- return result;
22
- }
23
-
24
- return _objectSpread(_objectSpread({}, result), {}, {
25
- data: _objectSpread(_objectSpread({}, result.data), {}, {
26
- result: _objectSpread(_objectSpread({}, result.data.result), {}, {
27
- data: transformer.deserialize(result.data.result.data)
28
- })
29
- })
30
- });
31
- }
32
-
33
- function transformerLink(transformer) {
34
- var _transformer = transformer ? 'input' in transformer ? {
35
- serialize: transformer.input.serialize,
36
- deserialize: transformer.output.deserialize
37
- } : transformer : {
38
- serialize: function serialize(data) {
39
- return data;
40
- },
41
- deserialize: function deserialize(data) {
42
- return data;
43
- }
44
- };
45
-
46
- return function () {
47
- return function (props) {
48
- var input = _transformer.serialize(props.op.input);
49
-
50
- return observable(function (observer) {
51
- var next$ = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
52
- input: input
53
- })).subscribe({
54
- next: function next(value) {
55
- var transformed = transformOperationResult(value, _transformer);
56
- observer.next(transformed);
57
- },
58
- error: observer.error,
59
- complete: observer.complete
60
- });
61
- return next$;
62
- });
63
- };
64
- };
65
- }
66
-
67
- export { transformerLink };
@@ -1 +0,0 @@
1
-