@trpc/client 10.0.0-alpha.2 → 10.0.0-alpha.20

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 (196) hide show
  1. package/dist/{declarations/src/TRPCClientError.d.ts → TRPCClientError.d.ts} +21 -29
  2. package/dist/TRPCClientError.d.ts.map +1 -0
  3. package/dist/{declarations/src/createTRPCClient.d.ts → createTRPCClient.d.ts} +5 -5
  4. package/dist/createTRPCClient.d.ts.map +1 -0
  5. package/dist/{declarations/src/getFetch.d.ts → getFetch.d.ts} +1 -1
  6. package/dist/getFetch.d.ts.map +1 -0
  7. package/dist/{declarations/src/index.d.ts → index.d.ts} +4 -4
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +1373 -0
  10. package/dist/index.mjs +1346 -0
  11. package/dist/index.ts.js +1 -0
  12. package/dist/{declarations/src/internals → internals}/TRPCClient.d.ts +56 -64
  13. package/dist/internals/TRPCClient.d.ts.map +1 -0
  14. package/dist/{declarations/src/internals → internals}/dataLoader.d.ts +16 -14
  15. package/dist/internals/dataLoader.d.ts.map +1 -0
  16. package/dist/{declarations/src/internals → internals}/fetchHelpers.d.ts +2 -2
  17. package/dist/internals/fetchHelpers.d.ts.map +1 -0
  18. package/dist/{declarations/src/internals → internals}/retryDelay.d.ts +1 -1
  19. package/dist/internals/retryDelay.d.ts.map +1 -0
  20. package/dist/links/dedupeLink.d.ts +4 -0
  21. package/dist/links/dedupeLink.d.ts.map +1 -0
  22. package/dist/links/httpBatchLink.d.ts +8 -0
  23. package/dist/links/httpBatchLink.d.ts.map +1 -0
  24. package/dist/{declarations/src/links → links}/httpLink.d.ts +4 -4
  25. package/dist/links/httpLink.d.ts.map +1 -0
  26. package/dist/links/index.d.ts +11 -0
  27. package/dist/links/index.d.ts.map +1 -0
  28. package/dist/{declarations/src/links → links}/internals/createChain.d.ts +7 -7
  29. package/dist/links/internals/createChain.d.ts.map +1 -0
  30. package/dist/{declarations/src/links → links/internals}/httpUtils.d.ts +21 -21
  31. package/dist/links/internals/httpUtils.d.ts.map +1 -0
  32. package/dist/{declarations/src/links → links}/internals/transformOperationResult.d.ts +15 -15
  33. package/dist/links/internals/transformOperationResult.d.ts.map +1 -0
  34. package/dist/{declarations/src/links → links}/loggerLink.d.ts +38 -38
  35. package/dist/links/loggerLink.d.ts.map +1 -0
  36. package/dist/links/retryLink.d.ts +6 -0
  37. package/dist/links/retryLink.d.ts.map +1 -0
  38. package/dist/{declarations/src/links → links}/splitLink.d.ts +13 -13
  39. package/dist/links/splitLink.d.ts.map +1 -0
  40. package/dist/{declarations/src/links → links}/transformerLink.d.ts +3 -3
  41. package/dist/links/transformerLink.d.ts.map +1 -0
  42. package/dist/{declarations/src/links → links}/types.d.ts +39 -39
  43. package/dist/links/types.d.ts.map +1 -0
  44. package/dist/{declarations/src/links → links}/wsLink.d.ts +19 -19
  45. package/dist/links/wsLink.d.ts.map +1 -0
  46. package/dist/observable/index.d.ts +4 -0
  47. package/dist/observable/index.d.ts.map +1 -0
  48. package/{rx/operators/dist/trpc-client-rx-operators.cjs.dev.js → dist/observable/index.js} +3 -4
  49. package/{rx/operators/dist/trpc-client-rx-operators.esm.js → dist/observable/index.mjs} +1 -3
  50. package/dist/observable/index.ts.js +1 -0
  51. package/dist/{declarations/src/rx/util → observable/internals}/identity.d.ts +1 -1
  52. package/dist/observable/internals/identity.d.ts.map +1 -0
  53. package/dist/{declarations/src/rx/util → observable/internals}/observableToPromise.d.ts +9 -9
  54. package/dist/observable/internals/observableToPromise.d.ts.map +1 -0
  55. package/dist/{declarations/src/rx/util → observable/internals}/pipe.d.ts +3 -3
  56. package/dist/observable/internals/pipe.d.ts.map +1 -0
  57. package/dist/{declarations/src/rx → observable}/observable.d.ts +3 -3
  58. package/dist/observable/observable.d.ts.map +1 -0
  59. package/dist/{declarations/src/rx → observable}/operators/index.d.ts +3 -3
  60. package/dist/observable/operators/index.d.ts.map +1 -0
  61. package/dist/{declarations/src/rx → observable}/operators/map.d.ts +2 -2
  62. package/dist/observable/operators/map.d.ts.map +1 -0
  63. package/dist/{declarations/src/rx → observable}/operators/share.d.ts +5 -5
  64. package/dist/observable/operators/share.d.ts.map +1 -0
  65. package/dist/{declarations/src/rx → observable}/operators/tap.d.ts +2 -2
  66. package/dist/observable/operators/tap.d.ts.map +1 -0
  67. package/dist/{declarations/src/rx → observable}/types.d.ts +28 -28
  68. package/dist/observable/types.d.ts.map +1 -0
  69. package/dist/tap-0dcdee86.js +243 -0
  70. package/dist/tap-136a9a90.mjs +239 -0
  71. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +68 -38
  72. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +68 -38
  73. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +67 -37
  74. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +52 -29
  75. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +52 -29
  76. package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +52 -29
  77. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +19 -31
  78. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +19 -31
  79. package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +19 -31
  80. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +7 -20
  81. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +7 -20
  82. package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +7 -20
  83. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +84 -60
  84. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +84 -60
  85. package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +84 -60
  86. package/{rx → observable}/dist/trpc-client-rx.cjs.d.ts +0 -0
  87. package/{rx → observable}/dist/trpc-client-rx.cjs.dev.js +0 -0
  88. package/{rx → observable}/dist/trpc-client-rx.cjs.js +0 -0
  89. package/{rx → observable}/dist/trpc-client-rx.cjs.prod.js +0 -0
  90. package/{rx → observable}/dist/trpc-client-rx.esm.js +0 -0
  91. package/observable/index.d.ts +1 -0
  92. package/observable/index.js +1 -0
  93. package/package.json +22 -21
  94. package/src/TRPCClientError.ts +3 -11
  95. package/src/createTRPCClient.ts +1 -1
  96. package/src/index.ts +1 -1
  97. package/src/internals/TRPCClient.ts +11 -19
  98. package/src/internals/dataLoader.ts +13 -1
  99. package/src/links/dedupeLink.test.ts +1 -1
  100. package/src/links/dedupeLink.ts +4 -5
  101. package/src/links/httpBatchLink.ts +15 -5
  102. package/src/links/httpLink.ts +2 -2
  103. package/src/links/index.ts +10 -0
  104. package/src/links/internals/createChain.test.ts +5 -5
  105. package/src/links/internals/createChain.ts +3 -3
  106. package/src/links/{httpUtils.ts → internals/httpUtils.ts} +2 -1
  107. package/src/links/loggerLink.ts +1 -2
  108. package/src/links/retryLink.ts +2 -2
  109. package/src/links/splitLink.test.ts +3 -3
  110. package/src/links/splitLink.ts +2 -2
  111. package/src/links/transformerLink.ts +9 -5
  112. package/src/links/types.ts +3 -3
  113. package/src/links/wsLink.ts +2 -3
  114. package/src/{rx → observable}/index.ts +1 -0
  115. package/src/{rx/util → observable/internals}/identity.ts +0 -0
  116. package/src/{rx/util → observable/internals}/observableToPromise.ts +0 -0
  117. package/src/{rx/util → observable/internals}/pipe.ts +1 -1
  118. package/src/{rx → observable}/observable.test.ts +22 -4
  119. package/src/{rx → observable}/observable.ts +1 -1
  120. package/src/{rx → observable}/operators/index.ts +0 -0
  121. package/src/{rx → observable}/operators/map.test.ts +2 -2
  122. package/src/{rx → observable}/operators/map.ts +0 -0
  123. package/src/{rx → observable}/operators/share.test.ts +0 -0
  124. package/src/{rx → observable}/operators/share.ts +0 -0
  125. package/src/{rx → observable}/operators/tap.ts +0 -0
  126. package/src/{rx → observable}/types.ts +0 -0
  127. package/dist/TRPCClientError-a5312a5f.cjs.dev.js +0 -74
  128. package/dist/TRPCClientError-e1da1ef0.esm.js +0 -72
  129. package/dist/TRPCClientError-ea7d89b2.cjs.prod.js +0 -74
  130. package/dist/createChain-93a38e1c.cjs.dev.js +0 -27
  131. package/dist/createChain-e45e052a.cjs.prod.js +0 -27
  132. package/dist/createChain-e45e6cf2.esm.js +0 -25
  133. package/dist/declarations/src/TRPCClientError.d.ts.map +0 -1
  134. package/dist/declarations/src/createTRPCClient.d.ts.map +0 -1
  135. package/dist/declarations/src/getFetch.d.ts.map +0 -1
  136. package/dist/declarations/src/index.d.ts.map +0 -1
  137. package/dist/declarations/src/internals/TRPCClient.d.ts.map +0 -1
  138. package/dist/declarations/src/internals/dataLoader.d.ts.map +0 -1
  139. package/dist/declarations/src/internals/fetchHelpers.d.ts.map +0 -1
  140. package/dist/declarations/src/internals/retryDelay.d.ts.map +0 -1
  141. package/dist/declarations/src/links/httpBatchLink.d.ts +0 -5
  142. package/dist/declarations/src/links/httpBatchLink.d.ts.map +0 -1
  143. package/dist/declarations/src/links/httpLink.d.ts.map +0 -1
  144. package/dist/declarations/src/links/httpUtils.d.ts.map +0 -1
  145. package/dist/declarations/src/links/internals/createChain.d.ts.map +0 -1
  146. package/dist/declarations/src/links/internals/transformOperationResult.d.ts.map +0 -1
  147. package/dist/declarations/src/links/loggerLink.d.ts.map +0 -1
  148. package/dist/declarations/src/links/splitLink.d.ts.map +0 -1
  149. package/dist/declarations/src/links/transformerLink.d.ts.map +0 -1
  150. package/dist/declarations/src/links/types.d.ts.map +0 -1
  151. package/dist/declarations/src/links/wsLink.d.ts.map +0 -1
  152. package/dist/declarations/src/rx/index.d.ts +0 -3
  153. package/dist/declarations/src/rx/index.d.ts.map +0 -1
  154. package/dist/declarations/src/rx/observable.d.ts.map +0 -1
  155. package/dist/declarations/src/rx/operators/index.d.ts.map +0 -1
  156. package/dist/declarations/src/rx/operators/map.d.ts.map +0 -1
  157. package/dist/declarations/src/rx/operators/share.d.ts.map +0 -1
  158. package/dist/declarations/src/rx/operators/tap.d.ts.map +0 -1
  159. package/dist/declarations/src/rx/types.d.ts.map +0 -1
  160. package/dist/declarations/src/rx/util/identity.d.ts.map +0 -1
  161. package/dist/declarations/src/rx/util/observableToPromise.d.ts.map +0 -1
  162. package/dist/declarations/src/rx/util/pipe.d.ts.map +0 -1
  163. package/dist/httpUtils-299a66f6.cjs.prod.js +0 -89
  164. package/dist/httpUtils-a1426e14.cjs.dev.js +0 -89
  165. package/dist/httpUtils-e45c9056.esm.js +0 -87
  166. package/dist/observable-01534ea8.esm.js +0 -102
  167. package/dist/observable-9aad8c3e.cjs.dev.js +0 -104
  168. package/dist/observable-ccb54234.cjs.prod.js +0 -104
  169. package/dist/share-5a8c2543.cjs.prod.js +0 -106
  170. package/dist/share-ca585761.esm.js +0 -104
  171. package/dist/share-f2ac9332.cjs.dev.js +0 -106
  172. package/dist/tap-2d565250.cjs.dev.js +0 -32
  173. package/dist/tap-606957cb.esm.js +0 -30
  174. package/dist/tap-d907998d.cjs.prod.js +0 -32
  175. package/dist/trpc-client.cjs.d.ts +0 -1
  176. package/dist/trpc-client.cjs.dev.js +0 -300
  177. package/dist/trpc-client.cjs.js +0 -7
  178. package/dist/trpc-client.cjs.prod.js +0 -300
  179. package/dist/trpc-client.esm.js +0 -295
  180. package/links/httpBatchLink/package.json +0 -4
  181. package/links/httpLink/package.json +0 -4
  182. package/links/loggerLink/package.json +0 -4
  183. package/links/splitLink/package.json +0 -4
  184. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.d.ts +0 -1
  185. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.dev.js +0 -67
  186. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.js +0 -7
  187. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.prod.js +0 -67
  188. package/links/transformerLink/dist/trpc-client-links-transformerLink.esm.js +0 -63
  189. package/links/transformerLink/package.json +0 -4
  190. package/links/wsLink/package.json +0 -4
  191. package/rx/operators/dist/trpc-client-rx-operators.cjs.d.ts +0 -1
  192. package/rx/operators/dist/trpc-client-rx-operators.cjs.js +0 -7
  193. package/rx/operators/dist/trpc-client-rx-operators.cjs.prod.js +0 -39
  194. package/rx/operators/package.json +0 -4
  195. package/rx/package.json +0 -4
  196. package/src/internals/transformRPCResponse.ts +0 -25
@@ -1,300 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
6
- var _createClass = require('@babel/runtime/helpers/createClass');
7
- var links_httpBatchLink_dist_trpcClientLinksHttpBatchLink = require('../links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js');
8
- var createChain = require('./createChain-e45e052a.cjs.prod.js');
9
- var TRPCClientError = require('./TRPCClientError-ea7d89b2.cjs.prod.js');
10
- var share = require('./share-5a8c2543.cjs.prod.js');
11
- var _assertThisInitialized = require('@babel/runtime/helpers/assertThisInitialized');
12
- var _inherits = require('@babel/runtime/helpers/inherits');
13
- var _createSuper = require('@babel/runtime/helpers/createSuper');
14
- var _wrapNativeSuper = require('@babel/runtime/helpers/wrapNativeSuper');
15
- require('@babel/runtime/helpers/createForOfIteratorHelper');
16
- require('./observable-ccb54234.cjs.prod.js');
17
- require('./httpUtils-299a66f6.cjs.prod.js');
18
- require('@babel/runtime/helpers/objectSpread2');
19
-
20
- function getWindow() {
21
- if (typeof window !== 'undefined') {
22
- return window;
23
- }
24
-
25
- return global;
26
- }
27
- function getAbortController(ac) {
28
- var win = getWindow();
29
- return ac || win.AbortController || null;
30
- }
31
-
32
- function getFetch(f) {
33
- if (f) {
34
- return f;
35
- }
36
-
37
- var win = getWindow();
38
-
39
- if (win.fetch) {
40
- return typeof win.fetch.bind === 'function' ? win.fetch.bind(win) : win.fetch;
41
- }
42
-
43
- throw new Error('No fetch implementation found');
44
- }
45
-
46
- /** @internal */
47
- function transformOperationResult(result) {
48
- var context = result.context;
49
-
50
- if ('error' in result.data) {
51
- var error = TRPCClientError.TRPCClientError.from(result.data);
52
- return {
53
- ok: false,
54
- error: error,
55
- context: context
56
- };
57
- }
58
-
59
- var data = result.data.result.data;
60
- return {
61
- ok: true,
62
- data: data,
63
- context: context
64
- };
65
- }
66
-
67
- var ObservableAbortError = /*#__PURE__*/function (_Error) {
68
- _inherits(ObservableAbortError, _Error);
69
-
70
- var _super = /*#__PURE__*/_createSuper(ObservableAbortError);
71
-
72
- function ObservableAbortError(message) {
73
- var _this;
74
-
75
- _classCallCheck(this, ObservableAbortError);
76
-
77
- _this = _super.call(this, message);
78
- _this.name = 'ObservableAbortError';
79
- Object.setPrototypeOf(_assertThisInitialized(_this), ObservableAbortError.prototype);
80
- return _this;
81
- }
82
-
83
- return ObservableAbortError;
84
- }( /*#__PURE__*/_wrapNativeSuper(Error));
85
- /** @internal */
86
-
87
- function observableToPromise(observable) {
88
- var abort;
89
- var promise = new Promise(function (resolve, reject) {
90
- var isDone = false;
91
-
92
- function onDone() {
93
- if (isDone) {
94
- return;
95
- }
96
-
97
- isDone = true;
98
- reject(new ObservableAbortError('This operation was cancelled.'));
99
- obs$.unsubscribe();
100
- }
101
-
102
- var obs$ = observable.subscribe({
103
- next: function next(data) {
104
- isDone = true;
105
- resolve(data);
106
- onDone();
107
- },
108
- error: function error(data) {
109
- isDone = true;
110
- reject(data);
111
- onDone();
112
- },
113
- complete: function complete() {
114
- isDone = true;
115
- onDone();
116
- }
117
- });
118
- abort = onDone;
119
- });
120
- return {
121
- promise: promise,
122
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
123
- abort: abort
124
- };
125
- }
126
-
127
- var idCounter = 0;
128
-
129
- function getRequestId() {
130
- return ++idCounter;
131
- }
132
-
133
- var TRPCClient = /*#__PURE__*/function () {
134
- function TRPCClient(opts) {
135
- var _this = this;
136
-
137
- _classCallCheck(this, TRPCClient);
138
-
139
- this.links = void 0;
140
- this.runtime = void 0;
141
-
142
- var _fetch = getFetch(opts === null || opts === void 0 ? void 0 : opts.fetch);
143
-
144
- var AC = getAbortController(opts === null || opts === void 0 ? void 0 : opts.AbortController);
145
-
146
- function getHeadersFn() {
147
- if (opts.headers) {
148
- var headers = opts.headers;
149
- return typeof headers === 'function' ? headers : function () {
150
- return headers;
151
- };
152
- }
153
-
154
- return function () {
155
- return {};
156
- };
157
- }
158
-
159
- this.runtime = {
160
- AbortController: AC,
161
- fetch: _fetch,
162
- headers: getHeadersFn()
163
- };
164
-
165
- if ('links' in opts) {
166
- this.links = opts.links.map(function (link) {
167
- return link(_this.runtime);
168
- });
169
- } else {
170
- this.links = [links_httpBatchLink_dist_trpcClientLinksHttpBatchLink.httpBatchLink({
171
- url: opts.url
172
- })(this.runtime)];
173
- }
174
- }
175
-
176
- _createClass(TRPCClient, [{
177
- key: "$request",
178
- value: function $request(_ref) {
179
- var type = _ref.type,
180
- input = _ref.input,
181
- path = _ref.path,
182
- _ref$context = _ref.context,
183
- context = _ref$context === void 0 ? {} : _ref$context;
184
- var chain$ = createChain.createChain({
185
- links: this.links,
186
- op: {
187
- id: getRequestId(),
188
- type: type,
189
- path: path,
190
- input: input,
191
- context: context
192
- }
193
- });
194
- return chain$.pipe(share.share());
195
- }
196
- }, {
197
- key: "requestAsPromise",
198
- value: function requestAsPromise(opts) {
199
- var req$ = this.$request(opts);
200
-
201
- var _observableToPromise = observableToPromise(req$),
202
- promise = _observableToPromise.promise,
203
- abort = _observableToPromise.abort;
204
-
205
- var cancellablePromise = new Promise(function (resolve, reject) {
206
- promise.then(function (result) {
207
- var transformed = transformOperationResult(result);
208
-
209
- if (transformed.ok) {
210
- resolve(transformed.data);
211
- return;
212
- }
213
-
214
- reject(transformed.error);
215
- }).catch(function (err) {
216
- reject(TRPCClientError.TRPCClientError.from(err));
217
- });
218
- });
219
- cancellablePromise.cancel = abort;
220
- return cancellablePromise;
221
- }
222
- }, {
223
- key: "query",
224
- value: function query(path) {
225
- var _ref2;
226
-
227
- var context = (_ref2 = arguments.length <= 2 ? undefined : arguments[2]) === null || _ref2 === void 0 ? void 0 : _ref2.context;
228
- return this.requestAsPromise({
229
- type: 'query',
230
- path: path,
231
- input: arguments.length <= 1 ? undefined : arguments[1],
232
- context: context
233
- });
234
- }
235
- }, {
236
- key: "mutation",
237
- value: function mutation(path) {
238
- var _ref3;
239
-
240
- var context = (_ref3 = arguments.length <= 2 ? undefined : arguments[2]) === null || _ref3 === void 0 ? void 0 : _ref3.context;
241
- return this.requestAsPromise({
242
- type: 'mutation',
243
- path: path,
244
- input: arguments.length <= 1 ? undefined : arguments[1],
245
- context: context
246
- });
247
- }
248
- }, {
249
- key: "subscription",
250
- value: function subscription(path, input, opts) {
251
- var observable$ = this.$request({
252
- type: 'subscription',
253
- path: path,
254
- input: input,
255
- context: opts.context
256
- });
257
- var observer = observable$.subscribe({
258
- next: function next(result) {
259
- var _opts$next;
260
-
261
- if ('error' in result.data) {
262
- var _opts$error;
263
-
264
- var err = TRPCClientError.TRPCClientError.from(result.data, {
265
- meta: result.context
266
- });
267
- (_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, err);
268
- return;
269
- }
270
-
271
- (_opts$next = opts.next) === null || _opts$next === void 0 ? void 0 : _opts$next.call(opts, result.data.result);
272
- },
273
- error: function error(err) {
274
- var _opts$error2;
275
-
276
- (_opts$error2 = opts.error) === null || _opts$error2 === void 0 ? void 0 : _opts$error2.call(opts, err);
277
- },
278
- complete: function complete() {
279
- var _opts$complete;
280
-
281
- (_opts$complete = opts.complete) === null || _opts$complete === void 0 ? void 0 : _opts$complete.call(opts);
282
- }
283
- });
284
- return function () {
285
- observer.unsubscribe();
286
- };
287
- }
288
- }]);
289
-
290
- return TRPCClient;
291
- }();
292
-
293
- /* eslint-disable @typescript-eslint/no-explicit-any */
294
- function createTRPCClient(opts) {
295
- return new TRPCClient(opts);
296
- }
297
-
298
- exports.TRPCClientError = TRPCClientError.TRPCClientError;
299
- exports.createTRPCClient = createTRPCClient;
300
- exports.getFetch = getFetch;
@@ -1,295 +0,0 @@
1
- import _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';
2
- import _createClass from '@babel/runtime/helpers/esm/createClass';
3
- import { httpBatchLink } from '../links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js';
4
- import { c as createChain } from './createChain-e45e6cf2.esm.js';
5
- import { T as TRPCClientError } from './TRPCClientError-e1da1ef0.esm.js';
6
- export { T as TRPCClientError } from './TRPCClientError-e1da1ef0.esm.js';
7
- import { s as share } from './share-ca585761.esm.js';
8
- import _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';
9
- import _inherits from '@babel/runtime/helpers/esm/inherits';
10
- import _createSuper from '@babel/runtime/helpers/esm/createSuper';
11
- import _wrapNativeSuper from '@babel/runtime/helpers/esm/wrapNativeSuper';
12
- import '@babel/runtime/helpers/createForOfIteratorHelper';
13
- import './observable-01534ea8.esm.js';
14
- import './httpUtils-e45c9056.esm.js';
15
- import '@babel/runtime/helpers/objectSpread2';
16
-
17
- function getWindow() {
18
- if (typeof window !== 'undefined') {
19
- return window;
20
- }
21
-
22
- return global;
23
- }
24
- function getAbortController(ac) {
25
- var win = getWindow();
26
- return ac || win.AbortController || null;
27
- }
28
-
29
- function getFetch(f) {
30
- if (f) {
31
- return f;
32
- }
33
-
34
- var win = getWindow();
35
-
36
- if (win.fetch) {
37
- return typeof win.fetch.bind === 'function' ? win.fetch.bind(win) : win.fetch;
38
- }
39
-
40
- throw new Error('No fetch implementation found');
41
- }
42
-
43
- /** @internal */
44
- function transformOperationResult(result) {
45
- var context = result.context;
46
-
47
- if ('error' in result.data) {
48
- var error = TRPCClientError.from(result.data);
49
- return {
50
- ok: false,
51
- error: error,
52
- context: context
53
- };
54
- }
55
-
56
- var data = result.data.result.data;
57
- return {
58
- ok: true,
59
- data: data,
60
- context: context
61
- };
62
- }
63
-
64
- var ObservableAbortError = /*#__PURE__*/function (_Error) {
65
- _inherits(ObservableAbortError, _Error);
66
-
67
- var _super = /*#__PURE__*/_createSuper(ObservableAbortError);
68
-
69
- function ObservableAbortError(message) {
70
- var _this;
71
-
72
- _classCallCheck(this, ObservableAbortError);
73
-
74
- _this = _super.call(this, message);
75
- _this.name = 'ObservableAbortError';
76
- Object.setPrototypeOf(_assertThisInitialized(_this), ObservableAbortError.prototype);
77
- return _this;
78
- }
79
-
80
- return ObservableAbortError;
81
- }( /*#__PURE__*/_wrapNativeSuper(Error));
82
- /** @internal */
83
-
84
- function observableToPromise(observable) {
85
- var abort;
86
- var promise = new Promise(function (resolve, reject) {
87
- var isDone = false;
88
-
89
- function onDone() {
90
- if (isDone) {
91
- return;
92
- }
93
-
94
- isDone = true;
95
- reject(new ObservableAbortError('This operation was cancelled.'));
96
- obs$.unsubscribe();
97
- }
98
-
99
- var obs$ = observable.subscribe({
100
- next: function next(data) {
101
- isDone = true;
102
- resolve(data);
103
- onDone();
104
- },
105
- error: function error(data) {
106
- isDone = true;
107
- reject(data);
108
- onDone();
109
- },
110
- complete: function complete() {
111
- isDone = true;
112
- onDone();
113
- }
114
- });
115
- abort = onDone;
116
- });
117
- return {
118
- promise: promise,
119
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
120
- abort: abort
121
- };
122
- }
123
-
124
- var idCounter = 0;
125
-
126
- function getRequestId() {
127
- return ++idCounter;
128
- }
129
-
130
- var TRPCClient = /*#__PURE__*/function () {
131
- function TRPCClient(opts) {
132
- var _this = this;
133
-
134
- _classCallCheck(this, TRPCClient);
135
-
136
- this.links = void 0;
137
- this.runtime = void 0;
138
-
139
- var _fetch = getFetch(opts === null || opts === void 0 ? void 0 : opts.fetch);
140
-
141
- var AC = getAbortController(opts === null || opts === void 0 ? void 0 : opts.AbortController);
142
-
143
- function getHeadersFn() {
144
- if (opts.headers) {
145
- var headers = opts.headers;
146
- return typeof headers === 'function' ? headers : function () {
147
- return headers;
148
- };
149
- }
150
-
151
- return function () {
152
- return {};
153
- };
154
- }
155
-
156
- this.runtime = {
157
- AbortController: AC,
158
- fetch: _fetch,
159
- headers: getHeadersFn()
160
- };
161
-
162
- if ('links' in opts) {
163
- this.links = opts.links.map(function (link) {
164
- return link(_this.runtime);
165
- });
166
- } else {
167
- this.links = [httpBatchLink({
168
- url: opts.url
169
- })(this.runtime)];
170
- }
171
- }
172
-
173
- _createClass(TRPCClient, [{
174
- key: "$request",
175
- value: function $request(_ref) {
176
- var type = _ref.type,
177
- input = _ref.input,
178
- path = _ref.path,
179
- _ref$context = _ref.context,
180
- context = _ref$context === void 0 ? {} : _ref$context;
181
- var chain$ = createChain({
182
- links: this.links,
183
- op: {
184
- id: getRequestId(),
185
- type: type,
186
- path: path,
187
- input: input,
188
- context: context
189
- }
190
- });
191
- return chain$.pipe(share());
192
- }
193
- }, {
194
- key: "requestAsPromise",
195
- value: function requestAsPromise(opts) {
196
- var req$ = this.$request(opts);
197
-
198
- var _observableToPromise = observableToPromise(req$),
199
- promise = _observableToPromise.promise,
200
- abort = _observableToPromise.abort;
201
-
202
- var cancellablePromise = new Promise(function (resolve, reject) {
203
- promise.then(function (result) {
204
- var transformed = transformOperationResult(result);
205
-
206
- if (transformed.ok) {
207
- resolve(transformed.data);
208
- return;
209
- }
210
-
211
- reject(transformed.error);
212
- }).catch(function (err) {
213
- reject(TRPCClientError.from(err));
214
- });
215
- });
216
- cancellablePromise.cancel = abort;
217
- return cancellablePromise;
218
- }
219
- }, {
220
- key: "query",
221
- value: function query(path) {
222
- var _ref2;
223
-
224
- var context = (_ref2 = arguments.length <= 2 ? undefined : arguments[2]) === null || _ref2 === void 0 ? void 0 : _ref2.context;
225
- return this.requestAsPromise({
226
- type: 'query',
227
- path: path,
228
- input: arguments.length <= 1 ? undefined : arguments[1],
229
- context: context
230
- });
231
- }
232
- }, {
233
- key: "mutation",
234
- value: function mutation(path) {
235
- var _ref3;
236
-
237
- var context = (_ref3 = arguments.length <= 2 ? undefined : arguments[2]) === null || _ref3 === void 0 ? void 0 : _ref3.context;
238
- return this.requestAsPromise({
239
- type: 'mutation',
240
- path: path,
241
- input: arguments.length <= 1 ? undefined : arguments[1],
242
- context: context
243
- });
244
- }
245
- }, {
246
- key: "subscription",
247
- value: function subscription(path, input, opts) {
248
- var observable$ = this.$request({
249
- type: 'subscription',
250
- path: path,
251
- input: input,
252
- context: opts.context
253
- });
254
- var observer = observable$.subscribe({
255
- next: function next(result) {
256
- var _opts$next;
257
-
258
- if ('error' in result.data) {
259
- var _opts$error;
260
-
261
- var err = TRPCClientError.from(result.data, {
262
- meta: result.context
263
- });
264
- (_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, err);
265
- return;
266
- }
267
-
268
- (_opts$next = opts.next) === null || _opts$next === void 0 ? void 0 : _opts$next.call(opts, result.data.result);
269
- },
270
- error: function error(err) {
271
- var _opts$error2;
272
-
273
- (_opts$error2 = opts.error) === null || _opts$error2 === void 0 ? void 0 : _opts$error2.call(opts, err);
274
- },
275
- complete: function complete() {
276
- var _opts$complete;
277
-
278
- (_opts$complete = opts.complete) === null || _opts$complete === void 0 ? void 0 : _opts$complete.call(opts);
279
- }
280
- });
281
- return function () {
282
- observer.unsubscribe();
283
- };
284
- }
285
- }]);
286
-
287
- return TRPCClient;
288
- }();
289
-
290
- /* eslint-disable @typescript-eslint/no-explicit-any */
291
- function createTRPCClient(opts) {
292
- return new TRPCClient(opts);
293
- }
294
-
295
- export { createTRPCClient, getFetch };
@@ -1,4 +0,0 @@
1
- {
2
- "main": "dist/trpc-client-links-httpBatchLink.cjs.js",
3
- "module": "dist/trpc-client-links-httpBatchLink.esm.js"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "main": "dist/trpc-client-links-httpLink.cjs.js",
3
- "module": "dist/trpc-client-links-httpLink.esm.js"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "main": "dist/trpc-client-links-loggerLink.cjs.js",
3
- "module": "dist/trpc-client-links-loggerLink.esm.js"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "main": "dist/trpc-client-links-splitLink.cjs.js",
3
- "module": "dist/trpc-client-links-splitLink.esm.js"
4
- }
@@ -1 +0,0 @@
1
- export * from "../../../dist/declarations/src/links/transformerLink";
@@ -1,67 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
6
- var observable = require('../../../dist/observable-9aad8c3e.cjs.dev.js');
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.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
- exports.transformerLink = transformerLink;
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- if (process.env.NODE_ENV === "production") {
4
- module.exports = require("./trpc-client-links-transformerLink.cjs.prod.js");
5
- } else {
6
- module.exports = require("./trpc-client-links-transformerLink.cjs.dev.js");
7
- }