@trpc/client 10.0.0-alpha.3 → 10.0.0-alpha.32
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.
- package/dist/TRPCClientError.d.ts +3 -11
- package/dist/TRPCClientError.d.ts.map +1 -1
- package/dist/createTRPCClient.d.ts +3 -4
- package/dist/createTRPCClient.d.ts.map +1 -1
- package/dist/createTRPCClientProxy.d.ts +8 -0
- package/dist/createTRPCClientProxy.d.ts.map +1 -0
- package/dist/{httpUtils-c09d7b79.mjs → httpUtils-089853f6.mjs} +38 -30
- package/dist/{httpUtils-1f9e4e3c.js → httpUtils-a0169eef.js} +38 -29
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +266 -104
- package/dist/index.mjs +253 -95
- package/dist/internals/TRPCClient.d.ts +14 -17
- package/dist/internals/TRPCClient.d.ts.map +1 -1
- package/dist/internals/dataLoader.d.ts +7 -4
- package/dist/internals/dataLoader.d.ts.map +1 -1
- package/dist/links/dedupeLink.d.ts.map +1 -1
- package/dist/links/httpBatchLink.d.ts +5 -2
- package/dist/links/httpBatchLink.d.ts.map +1 -1
- package/dist/links/httpBatchLink.js +197 -69
- package/dist/links/httpBatchLink.mjs +197 -69
- package/dist/links/httpLink.d.ts +1 -1
- package/dist/links/httpLink.d.ts.map +1 -1
- package/dist/links/httpLink.js +5 -5
- package/dist/links/httpLink.mjs +5 -5
- package/dist/links/index.d.ts +9 -0
- package/dist/links/index.d.ts.map +1 -0
- package/dist/links/internals/httpUtils.d.ts +30 -0
- package/dist/links/internals/httpUtils.d.ts.map +1 -0
- package/dist/links/internals/transformOperationResult.d.ts +17 -3
- package/dist/links/internals/transformOperationResult.d.ts.map +1 -1
- package/dist/links/loggerLink.d.ts.map +1 -1
- package/dist/links/loggerLink.js +2 -3
- package/dist/links/loggerLink.mjs +1 -2
- package/dist/links/retryLink.d.ts.map +1 -1
- package/dist/links/splitLink.d.ts +1 -1
- package/dist/links/splitLink.d.ts.map +1 -1
- package/dist/links/splitLink.js +3 -25
- package/dist/links/splitLink.mjs +2 -28
- package/dist/links/types.d.ts +12 -9
- package/dist/links/types.d.ts.map +1 -1
- package/dist/links/wsLink.d.ts +3 -3
- package/dist/links/wsLink.d.ts.map +1 -1
- package/dist/links/wsLink.js +11 -376
- package/dist/links/wsLink.mjs +9 -369
- package/dist/splitLink-62ff9db0.mjs +49 -0
- package/dist/splitLink-8202386e.js +52 -0
- package/dist/wsLink-69f5adb8.js +451 -0
- package/dist/wsLink-9468a563.mjs +436 -0
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +81 -15
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +81 -15
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +77 -15
- package/links/httpBatchLink/index.d.ts +1 -1
- package/links/httpBatchLink/index.js +1 -1
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +76 -9
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +76 -9
- package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +72 -9
- package/links/httpLink/index.d.ts +1 -1
- package/links/httpLink/index.js +1 -1
- package/links/loggerLink/index.d.ts +1 -1
- package/links/loggerLink/index.js +1 -1
- package/links/splitLink/index.d.ts +1 -1
- package/links/splitLink/index.js +1 -1
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +3 -1
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +3 -1
- package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +3 -1
- package/links/wsLink/index.d.ts +1 -1
- package/links/wsLink/index.js +1 -1
- package/package.json +23 -30
- package/src/TRPCClientError.ts +5 -13
- package/src/createTRPCClient.ts +8 -3
- package/src/createTRPCClientProxy.ts +56 -0
- package/src/index.ts +2 -1
- package/src/internals/TRPCClient.ts +52 -36
- package/src/internals/dataLoader.ts +120 -45
- package/src/links/dedupeLink.test.ts +1 -1
- package/src/links/dedupeLink.ts +3 -5
- package/src/links/httpBatchLink.ts +64 -31
- package/src/links/httpLink.ts +4 -4
- package/src/links/index.ts +8 -0
- package/src/links/internals/createChain.test.ts +5 -5
- package/src/links/internals/createChain.ts +3 -3
- package/src/links/internals/httpUtils.ts +116 -0
- package/src/links/internals/transformOperationResult.ts +40 -12
- package/src/links/loggerLink.ts +1 -2
- package/src/links/retryLink.ts +1 -2
- package/src/links/splitLink.test.ts +3 -3
- package/src/links/splitLink.ts +5 -5
- package/src/links/types.ts +14 -9
- package/src/links/wsLink.ts +16 -14
- package/dist/TRPCClientError-17b117e1.mjs +0 -81
- package/dist/TRPCClientError-ec6bd2ca.js +0 -94
- package/dist/createChain-389cc116.mjs +0 -25
- package/dist/createChain-864dbb30.js +0 -27
- package/dist/internals/transformRPCResponse.d.ts +0 -15
- package/dist/internals/transformRPCResponse.d.ts.map +0 -1
- package/dist/links/httpUtils.d.ts +0 -22
- package/dist/links/httpUtils.d.ts.map +0 -1
- package/dist/links/transformerLink.d.ts +0 -4
- package/dist/links/transformerLink.d.ts.map +0 -1
- package/dist/links/transformerLink.js +0 -75
- package/dist/links/transformerLink.mjs +0 -67
- package/dist/links/transformerLink.ts.js +0 -1
- package/dist/observable-7e66cb56.mjs +0 -102
- package/dist/observable-85669100.js +0 -104
- package/dist/rx/index.d.ts +0 -3
- package/dist/rx/index.d.ts.map +0 -1
- package/dist/rx/index.js +0 -9
- package/dist/rx/index.mjs +0 -1
- package/dist/rx/index.ts.js +0 -1
- package/dist/rx/observable.d.ts +0 -4
- package/dist/rx/observable.d.ts.map +0 -1
- package/dist/rx/operators/index.d.ts +0 -4
- package/dist/rx/operators/index.d.ts.map +0 -1
- package/dist/rx/operators/index.js +0 -38
- package/dist/rx/operators/index.mjs +0 -32
- package/dist/rx/operators/index.ts.js +0 -1
- package/dist/rx/operators/map.d.ts +0 -3
- package/dist/rx/operators/map.d.ts.map +0 -1
- package/dist/rx/operators/share.d.ts +0 -6
- package/dist/rx/operators/share.d.ts.map +0 -1
- package/dist/rx/operators/tap.d.ts +0 -3
- package/dist/rx/operators/tap.d.ts.map +0 -1
- package/dist/rx/types.d.ts +0 -29
- package/dist/rx/types.d.ts.map +0 -1
- package/dist/rx/util/identity.d.ts +0 -2
- package/dist/rx/util/identity.d.ts.map +0 -1
- package/dist/rx/util/observableToPromise.d.ts +0 -10
- package/dist/rx/util/observableToPromise.d.ts.map +0 -1
- package/dist/rx/util/pipe.d.ts +0 -4
- package/dist/rx/util/pipe.d.ts.map +0 -1
- package/dist/share-4d79dc49.js +0 -110
- package/dist/share-671b63fa.mjs +0 -108
- package/dist/tap-538fa07f.mjs +0 -30
- package/dist/tap-799a2d33.js +0 -32
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.d.ts +0 -1
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.dev.js +0 -67
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.js +0 -7
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.prod.js +0 -67
- package/links/transformerLink/dist/trpc-client-links-transformerLink.esm.js +0 -63
- package/links/transformerLink/index.d.ts +0 -1
- package/links/transformerLink/index.js +0 -1
- package/rx/dist/trpc-client-rx.cjs.d.ts +0 -1
- package/rx/dist/trpc-client-rx.cjs.dev.js +0 -9
- package/rx/dist/trpc-client-rx.cjs.js +0 -7
- package/rx/dist/trpc-client-rx.cjs.prod.js +0 -9
- package/rx/dist/trpc-client-rx.esm.js +0 -1
- package/rx/index.d.ts +0 -1
- package/rx/index.js +0 -1
- package/rx/operators/dist/trpc-client-rx-operators.cjs.d.ts +0 -1
- package/rx/operators/dist/trpc-client-rx-operators.cjs.dev.js +0 -39
- package/rx/operators/dist/trpc-client-rx-operators.cjs.js +0 -7
- package/rx/operators/dist/trpc-client-rx-operators.cjs.prod.js +0 -39
- package/rx/operators/dist/trpc-client-rx-operators.esm.js +0 -33
- package/rx/operators/index.d.ts +0 -1
- package/rx/operators/index.js +0 -1
- package/src/internals/transformRPCResponse.ts +0 -25
- package/src/links/httpUtils.ts +0 -94
- package/src/links/transformerLink.ts +0 -70
- package/src/rx/index.ts +0 -2
- package/src/rx/observable.test.ts +0 -83
- package/src/rx/observable.ts +0 -70
- package/src/rx/operators/index.ts +0 -3
- package/src/rx/operators/map.test.ts +0 -92
- package/src/rx/operators/map.ts +0 -25
- package/src/rx/operators/share.test.ts +0 -60
- package/src/rx/operators/share.ts +0 -67
- package/src/rx/operators/tap.ts +0 -26
- package/src/rx/types.ts +0 -69
- package/src/rx/util/identity.ts +0 -3
- package/src/rx/util/observableToPromise.ts +0 -49
- package/src/rx/util/pipe.ts +0 -22
package/dist/index.js
CHANGED
|
@@ -2,30 +2,78 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
5
6
|
var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
|
|
6
7
|
var _createClass = require('@babel/runtime/helpers/createClass');
|
|
8
|
+
var observable = require('@trpc/server/observable');
|
|
9
|
+
var links_wsLink = require('./wsLink-69f5adb8.js');
|
|
7
10
|
var links_httpBatchLink = require('./links/httpBatchLink.js');
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
require('./
|
|
17
|
-
require('./
|
|
18
|
-
require('
|
|
11
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
12
|
+
require('@babel/runtime/helpers/slicedToArray');
|
|
13
|
+
var links_splitLink = require('./splitLink-8202386e.js');
|
|
14
|
+
require('@babel/runtime/helpers/assertThisInitialized');
|
|
15
|
+
require('@babel/runtime/helpers/inherits');
|
|
16
|
+
require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
17
|
+
require('@babel/runtime/helpers/getPrototypeOf');
|
|
18
|
+
require('@babel/runtime/helpers/wrapNativeSuper');
|
|
19
|
+
var links_httpLink = require('./links/httpLink.js');
|
|
20
|
+
var links_loggerLink = require('./links/loggerLink.js');
|
|
21
|
+
require('./httpUtils-a0169eef.js');
|
|
19
22
|
|
|
20
23
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
24
|
|
|
25
|
+
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
22
26
|
var _classCallCheck__default = /*#__PURE__*/_interopDefaultLegacy(_classCallCheck);
|
|
23
27
|
var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
29
|
+
|
|
30
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
31
|
+
|
|
32
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
33
|
+
function makeProxy(client) {
|
|
34
|
+
for (var _len = arguments.length, path = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
35
|
+
path[_key - 1] = arguments[_key];
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
var proxy = new Proxy(function () {// noop
|
|
39
|
+
}, {
|
|
40
|
+
get: function get(_obj, name) {
|
|
41
|
+
if (name in client && !path.length) {
|
|
42
|
+
return client[name];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
if (typeof name === 'string') {
|
|
46
|
+
return makeProxy.apply(void 0, [client].concat(path, [name]));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return client;
|
|
50
|
+
},
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
52
|
+
apply: function apply(_1, _2, args) {
|
|
53
|
+
var _ref;
|
|
54
|
+
|
|
55
|
+
var pathCopy = [].concat(path);
|
|
56
|
+
var type = pathCopy.pop();
|
|
57
|
+
|
|
58
|
+
if (type === 'mutate') {
|
|
59
|
+
type = 'mutation';
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
var fullPath = pathCopy.join('.');
|
|
63
|
+
|
|
64
|
+
if (type.startsWith('use')) {
|
|
65
|
+
throw new Error("Invalid hook call");
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
return (_ref = client)[type].apply(_ref, [fullPath].concat(_toConsumableArray__default["default"](args)));
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return proxy;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function createTRPCClientProxy(client) {
|
|
75
|
+
return makeProxy(client);
|
|
76
|
+
}
|
|
29
77
|
|
|
30
78
|
function getWindow() {
|
|
31
79
|
if (typeof window !== 'undefined') {
|
|
@@ -53,12 +101,133 @@ function getFetch(f) {
|
|
|
53
101
|
throw new Error('No fetch implementation found');
|
|
54
102
|
}
|
|
55
103
|
|
|
104
|
+
function dedupeLink() {
|
|
105
|
+
// initialized config
|
|
106
|
+
return function () {
|
|
107
|
+
// initialized in app
|
|
108
|
+
var pending = {};
|
|
109
|
+
return function (_ref) {
|
|
110
|
+
var op = _ref.op,
|
|
111
|
+
next = _ref.next;
|
|
112
|
+
|
|
113
|
+
// initialized for request
|
|
114
|
+
if (op.type !== 'query') {
|
|
115
|
+
// pass through
|
|
116
|
+
return next(op);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
var key = JSON.stringify([op.path, op.input]);
|
|
120
|
+
|
|
121
|
+
if (pending[key]) {
|
|
122
|
+
// console.log('hooking into pending', { op });
|
|
123
|
+
return observable.observable(function (observer) {
|
|
124
|
+
return pending[key].subscribe(observer);
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
var shared$ = observable.observable(function (observer) {
|
|
129
|
+
function reset() {
|
|
130
|
+
delete pending[key];
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
var subscription = next(op).subscribe({
|
|
134
|
+
next: function next(v) {
|
|
135
|
+
observer.next(v);
|
|
136
|
+
},
|
|
137
|
+
error: function error(e) {
|
|
138
|
+
reset();
|
|
139
|
+
observer.error(e);
|
|
140
|
+
},
|
|
141
|
+
complete: function complete() {
|
|
142
|
+
reset();
|
|
143
|
+
observer.complete();
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
return function () {
|
|
147
|
+
reset();
|
|
148
|
+
subscription.unsubscribe();
|
|
149
|
+
};
|
|
150
|
+
}).pipe(observable.share());
|
|
151
|
+
pending[key] = shared$;
|
|
152
|
+
return shared$;
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
function retryLink(opts) {
|
|
158
|
+
// initialized config
|
|
159
|
+
return function () {
|
|
160
|
+
// initialized in app
|
|
161
|
+
return function (_ref) {
|
|
162
|
+
var op = _ref.op,
|
|
163
|
+
next = _ref.next;
|
|
164
|
+
// initialized for request
|
|
165
|
+
return observable.observable(function (observer) {
|
|
166
|
+
var next$ = null;
|
|
167
|
+
var attempts = 0;
|
|
168
|
+
var isDone = false;
|
|
169
|
+
|
|
170
|
+
function attempt() {
|
|
171
|
+
var _next$;
|
|
172
|
+
|
|
173
|
+
attempts++;
|
|
174
|
+
(_next$ = next$) === null || _next$ === void 0 ? void 0 : _next$.unsubscribe();
|
|
175
|
+
next$ = next(op).subscribe({
|
|
176
|
+
error: function error(_error) {
|
|
177
|
+
if (attempts >= opts.attempts) {
|
|
178
|
+
observer.error(_error);
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
attempt();
|
|
183
|
+
},
|
|
184
|
+
next: function next(result) {
|
|
185
|
+
if ('result' in result.data) {
|
|
186
|
+
isDone = true;
|
|
187
|
+
observer.next(result);
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
if (attempts >= opts.attempts) {
|
|
192
|
+
isDone = true;
|
|
193
|
+
observer.next(result);
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
attempt();
|
|
198
|
+
},
|
|
199
|
+
complete: function complete() {
|
|
200
|
+
if (isDone) {
|
|
201
|
+
observer.complete();
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
attempt();
|
|
208
|
+
return function () {
|
|
209
|
+
var _next$2;
|
|
210
|
+
|
|
211
|
+
isDone = true;
|
|
212
|
+
(_next$2 = next$) === null || _next$2 === void 0 ? void 0 : _next$2.unsubscribe();
|
|
213
|
+
};
|
|
214
|
+
});
|
|
215
|
+
};
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
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; }
|
|
220
|
+
|
|
221
|
+
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; }
|
|
222
|
+
|
|
56
223
|
/** @internal */
|
|
57
|
-
function transformOperationResult(result) {
|
|
224
|
+
function transformOperationResult(result, runtime) {
|
|
58
225
|
var context = result.context;
|
|
59
226
|
|
|
60
227
|
if ('error' in result.data) {
|
|
61
|
-
var error =
|
|
228
|
+
var error = links_wsLink.TRPCClientError.from(_objectSpread(_objectSpread({}, result.data), {}, {
|
|
229
|
+
error: runtime.transformer.deserialize(result.data.error)
|
|
230
|
+
}));
|
|
62
231
|
return {
|
|
63
232
|
ok: false,
|
|
64
233
|
error: error,
|
|
@@ -66,75 +235,39 @@ function transformOperationResult(result) {
|
|
|
66
235
|
};
|
|
67
236
|
}
|
|
68
237
|
|
|
69
|
-
var data = result.data.result.data;
|
|
238
|
+
var data = runtime.transformer.deserialize(result.data.result.data);
|
|
70
239
|
return {
|
|
71
240
|
ok: true,
|
|
72
241
|
data: data,
|
|
73
242
|
context: context
|
|
74
243
|
};
|
|
75
244
|
}
|
|
76
|
-
|
|
77
|
-
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); }; }
|
|
78
|
-
|
|
79
|
-
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; } }
|
|
80
|
-
|
|
81
|
-
var ObservableAbortError = /*#__PURE__*/function (_Error) {
|
|
82
|
-
_inherits__default["default"](ObservableAbortError, _Error);
|
|
83
|
-
|
|
84
|
-
var _super = /*#__PURE__*/_createSuper(ObservableAbortError);
|
|
85
|
-
|
|
86
|
-
function ObservableAbortError(message) {
|
|
87
|
-
var _this;
|
|
88
|
-
|
|
89
|
-
_classCallCheck__default["default"](this, ObservableAbortError);
|
|
90
|
-
|
|
91
|
-
_this = _super.call(this, message);
|
|
92
|
-
_this.name = 'ObservableAbortError';
|
|
93
|
-
Object.setPrototypeOf(_assertThisInitialized__default["default"](_this), ObservableAbortError.prototype);
|
|
94
|
-
return _this;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
return ObservableAbortError;
|
|
98
|
-
}( /*#__PURE__*/_wrapNativeSuper__default["default"](Error));
|
|
99
245
|
/** @internal */
|
|
100
246
|
|
|
101
|
-
function
|
|
102
|
-
var
|
|
103
|
-
var promise = new Promise(function (resolve, reject) {
|
|
104
|
-
var isDone = false;
|
|
105
|
-
|
|
106
|
-
function onDone() {
|
|
107
|
-
if (isDone) {
|
|
108
|
-
return;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
isDone = true;
|
|
112
|
-
reject(new ObservableAbortError('This operation was cancelled.'));
|
|
113
|
-
obs$.unsubscribe();
|
|
114
|
-
}
|
|
247
|
+
function transformSubscriptionOperationResult(result, runtime) {
|
|
248
|
+
var context = result.context;
|
|
115
249
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
},
|
|
122
|
-
error: function error(data) {
|
|
123
|
-
isDone = true;
|
|
124
|
-
reject(data);
|
|
125
|
-
onDone();
|
|
126
|
-
},
|
|
127
|
-
complete: function complete() {
|
|
128
|
-
isDone = true;
|
|
129
|
-
onDone();
|
|
130
|
-
}
|
|
250
|
+
if ('error' in result.data) {
|
|
251
|
+
var error = links_wsLink.TRPCClientError.from(_objectSpread(_objectSpread({}, result.data), {}, {
|
|
252
|
+
error: runtime.transformer.deserialize(result.data.error)
|
|
253
|
+
}), {
|
|
254
|
+
meta: context
|
|
131
255
|
});
|
|
132
|
-
|
|
256
|
+
return {
|
|
257
|
+
ok: false,
|
|
258
|
+
error: error,
|
|
259
|
+
context: context
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
var data = _objectSpread(_objectSpread({}, result.data.result), result.data.result.type === 'data' && {
|
|
264
|
+
data: runtime.transformer.deserialize(result.data.result.data)
|
|
133
265
|
});
|
|
266
|
+
|
|
134
267
|
return {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
268
|
+
ok: true,
|
|
269
|
+
data: data,
|
|
270
|
+
context: context
|
|
138
271
|
};
|
|
139
272
|
}
|
|
140
273
|
|
|
@@ -170,10 +303,22 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
170
303
|
};
|
|
171
304
|
}
|
|
172
305
|
|
|
306
|
+
var transformer = opts.transformer ? 'input' in opts.transformer ? {
|
|
307
|
+
serialize: opts.transformer.input.serialize,
|
|
308
|
+
deserialize: opts.transformer.output.deserialize
|
|
309
|
+
} : opts.transformer : {
|
|
310
|
+
serialize: function serialize(data) {
|
|
311
|
+
return data;
|
|
312
|
+
},
|
|
313
|
+
deserialize: function deserialize(data) {
|
|
314
|
+
return data;
|
|
315
|
+
}
|
|
316
|
+
};
|
|
173
317
|
this.runtime = {
|
|
174
318
|
AbortController: AC,
|
|
175
319
|
fetch: _fetch,
|
|
176
|
-
headers: getHeadersFn()
|
|
320
|
+
headers: getHeadersFn(),
|
|
321
|
+
transformer: transformer
|
|
177
322
|
};
|
|
178
323
|
|
|
179
324
|
if ('links' in opts) {
|
|
@@ -195,7 +340,7 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
195
340
|
path = _ref.path,
|
|
196
341
|
_ref$context = _ref.context,
|
|
197
342
|
context = _ref$context === void 0 ? {} : _ref$context;
|
|
198
|
-
var chain$ =
|
|
343
|
+
var chain$ = links_splitLink.createChain({
|
|
199
344
|
links: this.links,
|
|
200
345
|
op: {
|
|
201
346
|
id: getRequestId(),
|
|
@@ -205,20 +350,22 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
205
350
|
context: context
|
|
206
351
|
}
|
|
207
352
|
});
|
|
208
|
-
return chain$.pipe(
|
|
353
|
+
return chain$.pipe(observable.share());
|
|
209
354
|
}
|
|
210
355
|
}, {
|
|
211
356
|
key: "requestAsPromise",
|
|
212
357
|
value: function requestAsPromise(opts) {
|
|
358
|
+
var _this2 = this;
|
|
359
|
+
|
|
213
360
|
var req$ = this.$request(opts);
|
|
214
361
|
|
|
215
|
-
var _observableToPromise = observableToPromise(req$),
|
|
362
|
+
var _observableToPromise = observable.observableToPromise(req$),
|
|
216
363
|
promise = _observableToPromise.promise,
|
|
217
364
|
abort = _observableToPromise.abort;
|
|
218
365
|
|
|
219
366
|
var cancellablePromise = new Promise(function (resolve, reject) {
|
|
220
367
|
promise.then(function (result) {
|
|
221
|
-
var transformed = transformOperationResult(result);
|
|
368
|
+
var transformed = transformOperationResult(result, _this2.runtime);
|
|
222
369
|
|
|
223
370
|
if (transformed.ok) {
|
|
224
371
|
resolve(transformed.data);
|
|
@@ -227,7 +374,7 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
227
374
|
|
|
228
375
|
reject(transformed.error);
|
|
229
376
|
}).catch(function (err) {
|
|
230
|
-
reject(
|
|
377
|
+
reject(links_wsLink.TRPCClientError.from(err));
|
|
231
378
|
});
|
|
232
379
|
});
|
|
233
380
|
cancellablePromise.cancel = abort;
|
|
@@ -236,26 +383,34 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
236
383
|
}, {
|
|
237
384
|
key: "query",
|
|
238
385
|
value: function query(path) {
|
|
239
|
-
var
|
|
386
|
+
var _args$;
|
|
240
387
|
|
|
241
|
-
var
|
|
388
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
389
|
+
args[_key - 1] = arguments[_key];
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
var context = (_args$ = args[1]) === null || _args$ === void 0 ? void 0 : _args$.context;
|
|
242
393
|
return this.requestAsPromise({
|
|
243
394
|
type: 'query',
|
|
244
395
|
path: path,
|
|
245
|
-
input:
|
|
396
|
+
input: args[0],
|
|
246
397
|
context: context
|
|
247
398
|
});
|
|
248
399
|
}
|
|
249
400
|
}, {
|
|
250
401
|
key: "mutation",
|
|
251
402
|
value: function mutation(path) {
|
|
252
|
-
var
|
|
403
|
+
var _args$2;
|
|
404
|
+
|
|
405
|
+
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
406
|
+
args[_key2 - 1] = arguments[_key2];
|
|
407
|
+
}
|
|
253
408
|
|
|
254
|
-
var context = (
|
|
409
|
+
var context = (_args$2 = args[1]) === null || _args$2 === void 0 ? void 0 : _args$2.context;
|
|
255
410
|
return this.requestAsPromise({
|
|
256
411
|
type: 'mutation',
|
|
257
412
|
path: path,
|
|
258
|
-
input:
|
|
413
|
+
input: args[0],
|
|
259
414
|
context: context
|
|
260
415
|
});
|
|
261
416
|
}
|
|
@@ -268,21 +423,21 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
268
423
|
input: input,
|
|
269
424
|
context: opts.context
|
|
270
425
|
});
|
|
271
|
-
var
|
|
426
|
+
var runtime = this.runtime;
|
|
427
|
+
return observable$.subscribe({
|
|
272
428
|
next: function next(result) {
|
|
273
|
-
var _opts$
|
|
429
|
+
var _opts$error;
|
|
430
|
+
|
|
431
|
+
var transformed = transformSubscriptionOperationResult(result, runtime);
|
|
274
432
|
|
|
275
|
-
if (
|
|
276
|
-
var _opts$
|
|
433
|
+
if (transformed.ok) {
|
|
434
|
+
var _opts$next;
|
|
277
435
|
|
|
278
|
-
|
|
279
|
-
meta: result.context
|
|
280
|
-
});
|
|
281
|
-
(_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, err);
|
|
436
|
+
(_opts$next = opts.next) === null || _opts$next === void 0 ? void 0 : _opts$next.call(opts, transformed.data);
|
|
282
437
|
return;
|
|
283
438
|
}
|
|
284
439
|
|
|
285
|
-
(_opts$
|
|
440
|
+
(_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, transformed.error);
|
|
286
441
|
},
|
|
287
442
|
error: function error(err) {
|
|
288
443
|
var _opts$error2;
|
|
@@ -295,20 +450,27 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
295
450
|
(_opts$complete = opts.complete) === null || _opts$complete === void 0 ? void 0 : _opts$complete.call(opts);
|
|
296
451
|
}
|
|
297
452
|
});
|
|
298
|
-
return function () {
|
|
299
|
-
observer.unsubscribe();
|
|
300
|
-
};
|
|
301
453
|
}
|
|
302
454
|
}]);
|
|
303
455
|
|
|
304
456
|
return TRPCClient;
|
|
305
457
|
}();
|
|
306
458
|
|
|
307
|
-
/* eslint-disable @typescript-eslint/no-
|
|
459
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
308
460
|
function createTRPCClient(opts) {
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
461
|
+
var client = new TRPCClient(opts);
|
|
462
|
+
return createTRPCClientProxy(client);
|
|
463
|
+
} // Also the client created above needs to somehow be like `TRPCClient<Router> & Omit<Router, 'createCaller' | 'createProcedure' | '_def' | 'transformer' | 'errorFormatter' | 'getErrorShape>`
|
|
464
|
+
|
|
465
|
+
exports.TRPCClientError = links_wsLink.TRPCClientError;
|
|
466
|
+
exports.createWSClient = links_wsLink.createWSClient;
|
|
467
|
+
exports.wsLink = links_wsLink.wsLink;
|
|
468
|
+
exports.httpBatchLink = links_httpBatchLink.httpBatchLink;
|
|
469
|
+
exports.splitLink = links_splitLink.splitLink;
|
|
470
|
+
exports.httpLink = links_httpLink.httpLink;
|
|
471
|
+
exports.loggerLink = links_loggerLink.loggerLink;
|
|
313
472
|
exports.createTRPCClient = createTRPCClient;
|
|
473
|
+
exports.createTRPCClientProxy = createTRPCClientProxy;
|
|
474
|
+
exports.dedupeLink = dedupeLink;
|
|
314
475
|
exports.getFetch = getFetch;
|
|
476
|
+
exports.retryLink = retryLink;
|