@trpc/client 10.0.0-alpha.4 → 10.0.0-alpha.40
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/README.md +58 -1
- package/dist/TRPCClientError.d.ts +3 -11
- package/dist/TRPCClientError.d.ts.map +1 -1
- package/dist/createTRPCClient.d.ts +2 -3
- package/dist/createTRPCClient.d.ts.map +1 -1
- package/dist/createTRPCClientProxy.d.ts +24 -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 +240 -102
- package/dist/index.mjs +228 -94
- 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/createChain.d.ts.map +1 -1
- 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 +12 -376
- package/dist/links/wsLink.mjs +10 -369
- package/dist/splitLink-0202cd7b.mjs +54 -0
- package/dist/splitLink-23c5ce5c.js +57 -0
- package/dist/wsLink-11ee4922.mjs +439 -0
- package/dist/wsLink-807f4ad9.js +455 -0
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +4 -4
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +4 -4
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +4 -4
- 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 +1 -1
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +1 -1
- package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +1 -1
- 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 +7 -3
- package/src/createTRPCClientProxy.ts +59 -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 +6 -7
- 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 +8 -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 +17 -16
- 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
|
@@ -4,28 +4,29 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
|
|
6
6
|
var _createClass = require('@babel/runtime/helpers/createClass');
|
|
7
|
+
var observable = require('@trpc/server/observable');
|
|
8
|
+
var links_wsLink = require('./wsLink-807f4ad9.js');
|
|
7
9
|
var links_httpBatchLink = require('./links/httpBatchLink.js');
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
require('
|
|
17
|
-
require('
|
|
18
|
-
require('
|
|
10
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
11
|
+
require('@babel/runtime/helpers/slicedToArray');
|
|
12
|
+
var links_splitLink = require('./splitLink-23c5ce5c.js');
|
|
13
|
+
require('@babel/runtime/helpers/assertThisInitialized');
|
|
14
|
+
require('@babel/runtime/helpers/inherits');
|
|
15
|
+
require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
16
|
+
require('@babel/runtime/helpers/getPrototypeOf');
|
|
17
|
+
require('@babel/runtime/helpers/wrapNativeSuper');
|
|
18
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
19
|
+
var shared = require('@trpc/server/shared');
|
|
20
|
+
var links_httpLink = require('./links/httpLink.js');
|
|
21
|
+
var links_loggerLink = require('./links/loggerLink.js');
|
|
22
|
+
require('./httpUtils-a0169eef.js');
|
|
19
23
|
|
|
20
24
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
25
|
|
|
22
26
|
var _classCallCheck__default = /*#__PURE__*/_interopDefaultLegacy(_classCallCheck);
|
|
23
27
|
var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
|
|
24
|
-
var
|
|
25
|
-
var
|
|
26
|
-
var _possibleConstructorReturn__default = /*#__PURE__*/_interopDefaultLegacy(_possibleConstructorReturn);
|
|
27
|
-
var _getPrototypeOf__default = /*#__PURE__*/_interopDefaultLegacy(_getPrototypeOf);
|
|
28
|
-
var _wrapNativeSuper__default = /*#__PURE__*/_interopDefaultLegacy(_wrapNativeSuper);
|
|
28
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
29
|
+
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
29
30
|
|
|
30
31
|
function getWindow() {
|
|
31
32
|
if (typeof window !== 'undefined') {
|
|
@@ -53,12 +54,134 @@ function getFetch(f) {
|
|
|
53
54
|
throw new Error('No fetch implementation found');
|
|
54
55
|
}
|
|
55
56
|
|
|
57
|
+
function dedupeLink() {
|
|
58
|
+
// initialized config
|
|
59
|
+
return function () {
|
|
60
|
+
// initialized in app
|
|
61
|
+
var pending = {};
|
|
62
|
+
return function (_ref) {
|
|
63
|
+
var op = _ref.op,
|
|
64
|
+
next = _ref.next;
|
|
65
|
+
|
|
66
|
+
// initialized for request
|
|
67
|
+
if (op.type !== 'query') {
|
|
68
|
+
// pass through
|
|
69
|
+
return next(op);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
var key = JSON.stringify([op.path, op.input]);
|
|
73
|
+
var obs$ = pending[key];
|
|
74
|
+
|
|
75
|
+
if (obs$) {
|
|
76
|
+
// console.log('hooking into pending', { op });
|
|
77
|
+
return observable.observable(function (observer) {
|
|
78
|
+
return obs$.subscribe(observer);
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
var shared$ = observable.observable(function (observer) {
|
|
83
|
+
function reset() {
|
|
84
|
+
delete pending[key];
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
var subscription = next(op).subscribe({
|
|
88
|
+
next: function next(v) {
|
|
89
|
+
observer.next(v);
|
|
90
|
+
},
|
|
91
|
+
error: function error(e) {
|
|
92
|
+
reset();
|
|
93
|
+
observer.error(e);
|
|
94
|
+
},
|
|
95
|
+
complete: function complete() {
|
|
96
|
+
reset();
|
|
97
|
+
observer.complete();
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
return function () {
|
|
101
|
+
reset();
|
|
102
|
+
subscription.unsubscribe();
|
|
103
|
+
};
|
|
104
|
+
}).pipe(observable.share());
|
|
105
|
+
pending[key] = shared$;
|
|
106
|
+
return shared$;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function retryLink(opts) {
|
|
112
|
+
// initialized config
|
|
113
|
+
return function () {
|
|
114
|
+
// initialized in app
|
|
115
|
+
return function (_ref) {
|
|
116
|
+
var op = _ref.op,
|
|
117
|
+
next = _ref.next;
|
|
118
|
+
// initialized for request
|
|
119
|
+
return observable.observable(function (observer) {
|
|
120
|
+
var next$ = null;
|
|
121
|
+
var attempts = 0;
|
|
122
|
+
var isDone = false;
|
|
123
|
+
|
|
124
|
+
function attempt() {
|
|
125
|
+
var _next$;
|
|
126
|
+
|
|
127
|
+
attempts++;
|
|
128
|
+
(_next$ = next$) === null || _next$ === void 0 ? void 0 : _next$.unsubscribe();
|
|
129
|
+
next$ = next(op).subscribe({
|
|
130
|
+
error: function error(_error) {
|
|
131
|
+
if (attempts >= opts.attempts) {
|
|
132
|
+
observer.error(_error);
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
attempt();
|
|
137
|
+
},
|
|
138
|
+
next: function next(result) {
|
|
139
|
+
if ('result' in result.data) {
|
|
140
|
+
isDone = true;
|
|
141
|
+
observer.next(result);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
if (attempts >= opts.attempts) {
|
|
146
|
+
isDone = true;
|
|
147
|
+
observer.next(result);
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
attempt();
|
|
152
|
+
},
|
|
153
|
+
complete: function complete() {
|
|
154
|
+
if (isDone) {
|
|
155
|
+
observer.complete();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
attempt();
|
|
162
|
+
return function () {
|
|
163
|
+
var _next$2;
|
|
164
|
+
|
|
165
|
+
isDone = true;
|
|
166
|
+
(_next$2 = next$) === null || _next$2 === void 0 ? void 0 : _next$2.unsubscribe();
|
|
167
|
+
};
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
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; }
|
|
174
|
+
|
|
175
|
+
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; }
|
|
176
|
+
|
|
56
177
|
/** @internal */
|
|
57
|
-
function transformOperationResult(result) {
|
|
178
|
+
function transformOperationResult(result, runtime) {
|
|
58
179
|
var context = result.context;
|
|
59
180
|
|
|
60
181
|
if ('error' in result.data) {
|
|
61
|
-
var error =
|
|
182
|
+
var error = links_wsLink.TRPCClientError.from(_objectSpread(_objectSpread({}, result.data), {}, {
|
|
183
|
+
error: runtime.transformer.deserialize(result.data.error)
|
|
184
|
+
}));
|
|
62
185
|
return {
|
|
63
186
|
ok: false,
|
|
64
187
|
error: error,
|
|
@@ -66,75 +189,39 @@ function transformOperationResult(result) {
|
|
|
66
189
|
};
|
|
67
190
|
}
|
|
68
191
|
|
|
69
|
-
var data = result.data.result.data;
|
|
192
|
+
var data = runtime.transformer.deserialize(result.data.result.data);
|
|
70
193
|
return {
|
|
71
194
|
ok: true,
|
|
72
195
|
data: data,
|
|
73
196
|
context: context
|
|
74
197
|
};
|
|
75
198
|
}
|
|
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
199
|
/** @internal */
|
|
100
200
|
|
|
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
|
-
}
|
|
201
|
+
function transformSubscriptionOperationResult(result, runtime) {
|
|
202
|
+
var context = result.context;
|
|
115
203
|
|
|
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
|
-
}
|
|
204
|
+
if ('error' in result.data) {
|
|
205
|
+
var error = links_wsLink.TRPCClientError.from(_objectSpread(_objectSpread({}, result.data), {}, {
|
|
206
|
+
error: runtime.transformer.deserialize(result.data.error)
|
|
207
|
+
}), {
|
|
208
|
+
meta: context
|
|
131
209
|
});
|
|
132
|
-
|
|
210
|
+
return {
|
|
211
|
+
ok: false,
|
|
212
|
+
error: error,
|
|
213
|
+
context: context
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
var data = _objectSpread(_objectSpread({}, result.data.result), result.data.result.type === 'data' && {
|
|
218
|
+
data: runtime.transformer.deserialize(result.data.result.data)
|
|
133
219
|
});
|
|
220
|
+
|
|
134
221
|
return {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
222
|
+
ok: true,
|
|
223
|
+
data: data,
|
|
224
|
+
context: context
|
|
138
225
|
};
|
|
139
226
|
}
|
|
140
227
|
|
|
@@ -170,10 +257,22 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
170
257
|
};
|
|
171
258
|
}
|
|
172
259
|
|
|
260
|
+
var transformer = opts.transformer ? 'input' in opts.transformer ? {
|
|
261
|
+
serialize: opts.transformer.input.serialize,
|
|
262
|
+
deserialize: opts.transformer.output.deserialize
|
|
263
|
+
} : opts.transformer : {
|
|
264
|
+
serialize: function serialize(data) {
|
|
265
|
+
return data;
|
|
266
|
+
},
|
|
267
|
+
deserialize: function deserialize(data) {
|
|
268
|
+
return data;
|
|
269
|
+
}
|
|
270
|
+
};
|
|
173
271
|
this.runtime = {
|
|
174
272
|
AbortController: AC,
|
|
175
273
|
fetch: _fetch,
|
|
176
|
-
headers: getHeadersFn()
|
|
274
|
+
headers: getHeadersFn(),
|
|
275
|
+
transformer: transformer
|
|
177
276
|
};
|
|
178
277
|
|
|
179
278
|
if ('links' in opts) {
|
|
@@ -195,7 +294,7 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
195
294
|
path = _ref.path,
|
|
196
295
|
_ref$context = _ref.context,
|
|
197
296
|
context = _ref$context === void 0 ? {} : _ref$context;
|
|
198
|
-
var chain$ =
|
|
297
|
+
var chain$ = links_splitLink.createChain({
|
|
199
298
|
links: this.links,
|
|
200
299
|
op: {
|
|
201
300
|
id: getRequestId(),
|
|
@@ -205,20 +304,22 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
205
304
|
context: context
|
|
206
305
|
}
|
|
207
306
|
});
|
|
208
|
-
return chain$.pipe(
|
|
307
|
+
return chain$.pipe(observable.share());
|
|
209
308
|
}
|
|
210
309
|
}, {
|
|
211
310
|
key: "requestAsPromise",
|
|
212
311
|
value: function requestAsPromise(opts) {
|
|
312
|
+
var _this2 = this;
|
|
313
|
+
|
|
213
314
|
var req$ = this.$request(opts);
|
|
214
315
|
|
|
215
|
-
var _observableToPromise = observableToPromise(req$),
|
|
316
|
+
var _observableToPromise = observable.observableToPromise(req$),
|
|
216
317
|
promise = _observableToPromise.promise,
|
|
217
318
|
abort = _observableToPromise.abort;
|
|
218
319
|
|
|
219
320
|
var cancellablePromise = new Promise(function (resolve, reject) {
|
|
220
321
|
promise.then(function (result) {
|
|
221
|
-
var transformed = transformOperationResult(result);
|
|
322
|
+
var transformed = transformOperationResult(result, _this2.runtime);
|
|
222
323
|
|
|
223
324
|
if (transformed.ok) {
|
|
224
325
|
resolve(transformed.data);
|
|
@@ -227,7 +328,7 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
227
328
|
|
|
228
329
|
reject(transformed.error);
|
|
229
330
|
}).catch(function (err) {
|
|
230
|
-
reject(
|
|
331
|
+
reject(links_wsLink.TRPCClientError.from(err));
|
|
231
332
|
});
|
|
232
333
|
});
|
|
233
334
|
cancellablePromise.cancel = abort;
|
|
@@ -236,26 +337,34 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
236
337
|
}, {
|
|
237
338
|
key: "query",
|
|
238
339
|
value: function query(path) {
|
|
239
|
-
var
|
|
340
|
+
var _args$;
|
|
240
341
|
|
|
241
|
-
var
|
|
342
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
343
|
+
args[_key - 1] = arguments[_key];
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
var context = (_args$ = args[1]) === null || _args$ === void 0 ? void 0 : _args$.context;
|
|
242
347
|
return this.requestAsPromise({
|
|
243
348
|
type: 'query',
|
|
244
349
|
path: path,
|
|
245
|
-
input:
|
|
350
|
+
input: args[0],
|
|
246
351
|
context: context
|
|
247
352
|
});
|
|
248
353
|
}
|
|
249
354
|
}, {
|
|
250
355
|
key: "mutation",
|
|
251
356
|
value: function mutation(path) {
|
|
252
|
-
var
|
|
357
|
+
var _args$2;
|
|
358
|
+
|
|
359
|
+
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
360
|
+
args[_key2 - 1] = arguments[_key2];
|
|
361
|
+
}
|
|
253
362
|
|
|
254
|
-
var context = (
|
|
363
|
+
var context = (_args$2 = args[1]) === null || _args$2 === void 0 ? void 0 : _args$2.context;
|
|
255
364
|
return this.requestAsPromise({
|
|
256
365
|
type: 'mutation',
|
|
257
366
|
path: path,
|
|
258
|
-
input:
|
|
367
|
+
input: args[0],
|
|
259
368
|
context: context
|
|
260
369
|
});
|
|
261
370
|
}
|
|
@@ -268,21 +377,21 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
268
377
|
input: input,
|
|
269
378
|
context: opts.context
|
|
270
379
|
});
|
|
271
|
-
var
|
|
380
|
+
var runtime = this.runtime;
|
|
381
|
+
return observable$.subscribe({
|
|
272
382
|
next: function next(result) {
|
|
273
|
-
var _opts$
|
|
383
|
+
var _opts$error;
|
|
384
|
+
|
|
385
|
+
var transformed = transformSubscriptionOperationResult(result, runtime);
|
|
274
386
|
|
|
275
|
-
if (
|
|
276
|
-
var _opts$
|
|
387
|
+
if (transformed.ok) {
|
|
388
|
+
var _opts$next;
|
|
277
389
|
|
|
278
|
-
|
|
279
|
-
meta: result.context
|
|
280
|
-
});
|
|
281
|
-
(_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, err);
|
|
390
|
+
(_opts$next = opts.next) === null || _opts$next === void 0 ? void 0 : _opts$next.call(opts, transformed.data);
|
|
282
391
|
return;
|
|
283
392
|
}
|
|
284
393
|
|
|
285
|
-
(_opts$
|
|
394
|
+
(_opts$error = opts.error) === null || _opts$error === void 0 ? void 0 : _opts$error.call(opts, transformed.error);
|
|
286
395
|
},
|
|
287
396
|
error: function error(err) {
|
|
288
397
|
var _opts$error2;
|
|
@@ -295,20 +404,49 @@ var TRPCClient = /*#__PURE__*/function () {
|
|
|
295
404
|
(_opts$complete = opts.complete) === null || _opts$complete === void 0 ? void 0 : _opts$complete.call(opts);
|
|
296
405
|
}
|
|
297
406
|
});
|
|
298
|
-
return function () {
|
|
299
|
-
observer.unsubscribe();
|
|
300
|
-
};
|
|
301
407
|
}
|
|
302
408
|
}]);
|
|
303
409
|
|
|
304
410
|
return TRPCClient;
|
|
305
411
|
}();
|
|
306
412
|
|
|
307
|
-
/* eslint-disable @typescript-eslint/no-
|
|
413
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
308
414
|
function createTRPCClient(opts) {
|
|
309
|
-
|
|
415
|
+
var client = new TRPCClient(opts);
|
|
416
|
+
return client;
|
|
417
|
+
} // Also the client created above needs to somehow be like `TRPCClient<Router> & Omit<Router, 'createCaller' | 'createProcedure' | '_def' | 'transformer' | 'errorFormatter' | 'getErrorShape>`
|
|
418
|
+
|
|
419
|
+
var clientCallTypeMap = {
|
|
420
|
+
query: 'query',
|
|
421
|
+
mutate: 'mutation',
|
|
422
|
+
subscribe: 'subscription'
|
|
423
|
+
};
|
|
424
|
+
function createTRPCClientProxy(client) {
|
|
425
|
+
var proxy = shared.createProxy(function (_ref) {
|
|
426
|
+
var _ref2;
|
|
427
|
+
|
|
428
|
+
var path = _ref.path,
|
|
429
|
+
args = _ref.args;
|
|
430
|
+
|
|
431
|
+
var pathCopy = _toConsumableArray__default["default"](path);
|
|
432
|
+
|
|
433
|
+
var clientCallType = pathCopy.pop();
|
|
434
|
+
var procedureType = clientCallTypeMap[clientCallType];
|
|
435
|
+
var fullPath = pathCopy.join('.');
|
|
436
|
+
return (_ref2 = client)[procedureType].apply(_ref2, [fullPath].concat(_toConsumableArray__default["default"](args)));
|
|
437
|
+
});
|
|
438
|
+
return proxy;
|
|
310
439
|
}
|
|
311
440
|
|
|
312
|
-
exports.TRPCClientError =
|
|
441
|
+
exports.TRPCClientError = links_wsLink.TRPCClientError;
|
|
442
|
+
exports.createWSClient = links_wsLink.createWSClient;
|
|
443
|
+
exports.wsLink = links_wsLink.wsLink;
|
|
444
|
+
exports.httpBatchLink = links_httpBatchLink.httpBatchLink;
|
|
445
|
+
exports.splitLink = links_splitLink.splitLink;
|
|
446
|
+
exports.httpLink = links_httpLink.httpLink;
|
|
447
|
+
exports.loggerLink = links_loggerLink.loggerLink;
|
|
313
448
|
exports.createTRPCClient = createTRPCClient;
|
|
449
|
+
exports.createTRPCClientProxy = createTRPCClientProxy;
|
|
450
|
+
exports.dedupeLink = dedupeLink;
|
|
314
451
|
exports.getFetch = getFetch;
|
|
452
|
+
exports.retryLink = retryLink;
|