@trpc/client 10.0.0-alpha.25 → 10.0.0-alpha.28
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 +2 -2
- package/dist/TRPCClientError.d.ts.map +1 -1
- package/dist/httpUtils-089853f6.mjs +99 -0
- package/dist/httpUtils-a0169eef.js +106 -0
- package/dist/index.js +63 -1031
- package/dist/index.mjs +55 -1015
- package/dist/internals/TRPCClient.d.ts +4 -2
- package/dist/internals/TRPCClient.d.ts.map +1 -1
- package/dist/links/httpBatchLink.js +317 -0
- package/dist/links/httpBatchLink.mjs +313 -0
- package/dist/links/httpBatchLink.ts.js +1 -0
- package/dist/links/httpLink.js +44 -0
- package/dist/links/httpLink.mjs +40 -0
- package/dist/links/httpLink.ts.js +1 -0
- package/dist/links/loggerLink.js +107 -0
- package/dist/links/loggerLink.mjs +98 -0
- package/dist/links/loggerLink.ts.js +1 -0
- package/dist/links/splitLink.js +10 -0
- package/dist/links/splitLink.mjs +2 -0
- package/dist/links/splitLink.ts.js +1 -0
- package/dist/links/types.d.ts +1 -1
- package/dist/links/types.d.ts.map +1 -1
- package/dist/links/wsLink.d.ts +2 -2
- package/dist/links/wsLink.d.ts.map +1 -1
- package/dist/links/wsLink.js +19 -0
- package/dist/links/wsLink.mjs +10 -0
- package/dist/links/wsLink.ts.js +1 -0
- 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/index.d.ts +1 -0
- package/links/httpBatchLink/index.js +1 -0
- package/links/httpLink/index.d.ts +1 -0
- package/links/httpLink/index.js +1 -0
- package/links/loggerLink/index.d.ts +1 -0
- package/links/loggerLink/index.js +1 -0
- package/links/splitLink/index.d.ts +1 -0
- package/links/splitLink/index.js +1 -0
- package/links/wsLink/index.d.ts +1 -0
- package/links/wsLink/index.js +1 -0
- package/package.json +31 -5
- package/src/TRPCClientError.ts +2 -2
- package/src/internals/TRPCClient.ts +17 -0
- package/src/internals/dataLoader.ts +1 -1
- package/src/links/types.ts +1 -1
- package/src/links/wsLink.ts +2 -2
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.d.ts +0 -1
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +0 -214
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.js +0 -7
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +0 -214
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +0 -210
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.d.ts +0 -1
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +0 -67
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.js +0 -7
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +0 -67
- package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +0 -63
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.d.ts +0 -1
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +0 -89
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.js +0 -7
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +0 -89
- package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +0 -85
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.d.ts +0 -1
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +0 -19
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.js +0 -7
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +0 -19
- package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +0 -15
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.d.ts +0 -1
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +0 -397
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.js +0 -7
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +0 -397
- package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +0 -392
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { observable } from '@trpc/server/observable';
|
|
2
|
+
import { h as httpRequest } from '../httpUtils-089853f6.mjs';
|
|
3
|
+
import '@babel/runtime/helpers/defineProperty';
|
|
4
|
+
|
|
5
|
+
function httpLink(opts) {
|
|
6
|
+
var url = opts.url;
|
|
7
|
+
return function (runtime) {
|
|
8
|
+
return function (_ref) {
|
|
9
|
+
var op = _ref.op;
|
|
10
|
+
return observable(function (observer) {
|
|
11
|
+
var path = op.path,
|
|
12
|
+
input = op.input,
|
|
13
|
+
type = op.type;
|
|
14
|
+
|
|
15
|
+
var _httpRequest = httpRequest({
|
|
16
|
+
url: url,
|
|
17
|
+
runtime: runtime,
|
|
18
|
+
type: type,
|
|
19
|
+
path: path,
|
|
20
|
+
input: input
|
|
21
|
+
}),
|
|
22
|
+
promise = _httpRequest.promise,
|
|
23
|
+
cancel = _httpRequest.cancel;
|
|
24
|
+
|
|
25
|
+
promise.then(function (res) {
|
|
26
|
+
observer.next({
|
|
27
|
+
context: res.meta,
|
|
28
|
+
data: res.json
|
|
29
|
+
});
|
|
30
|
+
observer.complete();
|
|
31
|
+
}).catch(observer.error);
|
|
32
|
+
return function () {
|
|
33
|
+
cancel();
|
|
34
|
+
};
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export { httpLink };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
7
|
+
var observable = require('@trpc/server/observable');
|
|
8
|
+
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
|
+
|
|
11
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
12
|
+
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
13
|
+
|
|
14
|
+
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; }
|
|
15
|
+
|
|
16
|
+
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; }
|
|
17
|
+
var palette = {
|
|
18
|
+
query: ['72e3ff', '3fb0d8'],
|
|
19
|
+
mutation: ['c5a3fc', '904dfc'],
|
|
20
|
+
subscription: ['ff49e1', 'd83fbe']
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
// maybe this should be moved to it's own package
|
|
24
|
+
var defaultLogger = function defaultLogger() {
|
|
25
|
+
var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
|
|
26
|
+
return function (props) {
|
|
27
|
+
var direction = props.direction,
|
|
28
|
+
input = props.input,
|
|
29
|
+
type = props.type,
|
|
30
|
+
path = props.path,
|
|
31
|
+
context = props.context,
|
|
32
|
+
id = props.id;
|
|
33
|
+
|
|
34
|
+
var _palette$type = _slicedToArray__default["default"](palette[type], 2),
|
|
35
|
+
light = _palette$type[0],
|
|
36
|
+
dark = _palette$type[1];
|
|
37
|
+
|
|
38
|
+
var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
|
|
39
|
+
var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
|
|
40
|
+
var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
|
|
41
|
+
|
|
42
|
+
if (props.direction === 'up') {
|
|
43
|
+
args.push({
|
|
44
|
+
input: input,
|
|
45
|
+
context: context
|
|
46
|
+
});
|
|
47
|
+
} else {
|
|
48
|
+
args.push({
|
|
49
|
+
input: input,
|
|
50
|
+
result: props.result,
|
|
51
|
+
elapsedMs: props.elapsedMs,
|
|
52
|
+
context: context
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
|
|
57
|
+
c[fn].apply(null, [parts.join(' ')].concat(args));
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
function loggerLink() {
|
|
62
|
+
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
63
|
+
var _opts$enabled = opts.enabled,
|
|
64
|
+
enabled = _opts$enabled === void 0 ? function () {
|
|
65
|
+
return true;
|
|
66
|
+
} : _opts$enabled;
|
|
67
|
+
var _opts$logger = opts.logger,
|
|
68
|
+
logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
|
|
69
|
+
return function () {
|
|
70
|
+
return function (_ref) {
|
|
71
|
+
var op = _ref.op,
|
|
72
|
+
next = _ref.next;
|
|
73
|
+
return observable.observable(function (observer) {
|
|
74
|
+
// ->
|
|
75
|
+
enabled(_objectSpread(_objectSpread({}, op), {}, {
|
|
76
|
+
direction: 'up'
|
|
77
|
+
})) && logger(_objectSpread(_objectSpread({}, op), {}, {
|
|
78
|
+
direction: 'up'
|
|
79
|
+
}));
|
|
80
|
+
var requestStartTime = Date.now();
|
|
81
|
+
|
|
82
|
+
function logResult(result) {
|
|
83
|
+
var elapsedMs = Date.now() - requestStartTime;
|
|
84
|
+
enabled(_objectSpread(_objectSpread({}, op), {}, {
|
|
85
|
+
direction: 'down',
|
|
86
|
+
result: result
|
|
87
|
+
})) && logger(_objectSpread(_objectSpread({}, op), {}, {
|
|
88
|
+
direction: 'down',
|
|
89
|
+
elapsedMs: elapsedMs,
|
|
90
|
+
result: result
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
return next(op).pipe(observable.tap({
|
|
95
|
+
next: function next(result) {
|
|
96
|
+
logResult(result);
|
|
97
|
+
},
|
|
98
|
+
error: function error(result) {
|
|
99
|
+
logResult(result);
|
|
100
|
+
}
|
|
101
|
+
})).subscribe(observer);
|
|
102
|
+
});
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
exports.loggerLink = loggerLink;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
|
+
import { observable, tap } from '@trpc/server/observable';
|
|
4
|
+
|
|
5
|
+
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; }
|
|
6
|
+
|
|
7
|
+
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; }
|
|
8
|
+
var palette = {
|
|
9
|
+
query: ['72e3ff', '3fb0d8'],
|
|
10
|
+
mutation: ['c5a3fc', '904dfc'],
|
|
11
|
+
subscription: ['ff49e1', 'd83fbe']
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
// maybe this should be moved to it's own package
|
|
15
|
+
var defaultLogger = function defaultLogger() {
|
|
16
|
+
var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
|
|
17
|
+
return function (props) {
|
|
18
|
+
var direction = props.direction,
|
|
19
|
+
input = props.input,
|
|
20
|
+
type = props.type,
|
|
21
|
+
path = props.path,
|
|
22
|
+
context = props.context,
|
|
23
|
+
id = props.id;
|
|
24
|
+
|
|
25
|
+
var _palette$type = _slicedToArray(palette[type], 2),
|
|
26
|
+
light = _palette$type[0],
|
|
27
|
+
dark = _palette$type[1];
|
|
28
|
+
|
|
29
|
+
var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
|
|
30
|
+
var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
|
|
31
|
+
var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
|
|
32
|
+
|
|
33
|
+
if (props.direction === 'up') {
|
|
34
|
+
args.push({
|
|
35
|
+
input: input,
|
|
36
|
+
context: context
|
|
37
|
+
});
|
|
38
|
+
} else {
|
|
39
|
+
args.push({
|
|
40
|
+
input: input,
|
|
41
|
+
result: props.result,
|
|
42
|
+
elapsedMs: props.elapsedMs,
|
|
43
|
+
context: context
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
|
|
48
|
+
c[fn].apply(null, [parts.join(' ')].concat(args));
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
function loggerLink() {
|
|
53
|
+
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
54
|
+
var _opts$enabled = opts.enabled,
|
|
55
|
+
enabled = _opts$enabled === void 0 ? function () {
|
|
56
|
+
return true;
|
|
57
|
+
} : _opts$enabled;
|
|
58
|
+
var _opts$logger = opts.logger,
|
|
59
|
+
logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
|
|
60
|
+
return function () {
|
|
61
|
+
return function (_ref) {
|
|
62
|
+
var op = _ref.op,
|
|
63
|
+
next = _ref.next;
|
|
64
|
+
return observable(function (observer) {
|
|
65
|
+
// ->
|
|
66
|
+
enabled(_objectSpread(_objectSpread({}, op), {}, {
|
|
67
|
+
direction: 'up'
|
|
68
|
+
})) && logger(_objectSpread(_objectSpread({}, op), {}, {
|
|
69
|
+
direction: 'up'
|
|
70
|
+
}));
|
|
71
|
+
var requestStartTime = Date.now();
|
|
72
|
+
|
|
73
|
+
function logResult(result) {
|
|
74
|
+
var elapsedMs = Date.now() - requestStartTime;
|
|
75
|
+
enabled(_objectSpread(_objectSpread({}, op), {}, {
|
|
76
|
+
direction: 'down',
|
|
77
|
+
result: result
|
|
78
|
+
})) && logger(_objectSpread(_objectSpread({}, op), {}, {
|
|
79
|
+
direction: 'down',
|
|
80
|
+
elapsedMs: elapsedMs,
|
|
81
|
+
result: result
|
|
82
|
+
}));
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
return next(op).pipe(tap({
|
|
86
|
+
next: function next(result) {
|
|
87
|
+
logResult(result);
|
|
88
|
+
},
|
|
89
|
+
error: function error(result) {
|
|
90
|
+
logResult(result);
|
|
91
|
+
}
|
|
92
|
+
})).subscribe(observer);
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export { loggerLink };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
package/dist/links/types.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export declare type Operation<TInput = unknown> = {
|
|
|
13
13
|
type: 'query' | 'mutation' | 'subscription';
|
|
14
14
|
input: TInput;
|
|
15
15
|
path: string;
|
|
16
|
-
context
|
|
16
|
+
context: OperationContext;
|
|
17
17
|
};
|
|
18
18
|
export declare type HTTPHeaders = Record<string, string | string[]>;
|
|
19
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/links/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,oBAAY,QAAQ,GAAG,MAAM,IAAI,CAAC;AAElC,oBAAY,gBAAgB,CAAC,MAAM,IAAI;IACrC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,oBAAY,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvD,oBAAY,SAAS,CAAC,MAAM,GAAG,OAAO,IAAI;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/links/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,oBAAY,QAAQ,GAAG,MAAM,IAAI,CAAC;AAElC,oBAAY,gBAAgB,CAAC,MAAM,IAAI;IACrC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,oBAAY,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvD,oBAAY,SAAS,CAAC,MAAM,GAAG,OAAO,IAAI;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAE5D;;;GAGG;AACH,oBAAY,SAAS,GAAG,CACtB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,eAAe,CAAC;IACzC,OAAO,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAClD,WAAW,EAAE,eAAe,CAAC;CAC9B;AAED,aAAK,mBAAmB,CAAC,OAAO,SAAS,SAAS,EAAE,OAAO,IACvD,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAChD,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE5D,MAAM,WAAW,eAAe,CAAC,OAAO,SAAS,SAAS,EAAE,OAAO;IACjE,IAAI,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B;AAED,oBAAY,yBAAyB,CACnC,OAAO,SAAS,SAAS,EACzB,OAAO,IACL,UAAU,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAE5E,oBAAY,uBAAuB,CACjC,OAAO,SAAS,SAAS,EACzB,OAAO,IACL,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAE1E,oBAAY,aAAa,CACvB,OAAO,SAAS,SAAS,EACzB,MAAM,GAAG,OAAO,EAChB,OAAO,GAAG,OAAO,IACf,CAAC,IAAI,EAAE;IACT,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CAC9E,KAAK,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAElD,oBAAY,QAAQ,CAAC,OAAO,SAAS,SAAS,IAAI,CAChD,IAAI,EAAE,iBAAiB,KACpB,aAAa,CAAC,OAAO,CAAC,CAAC"}
|
package/dist/links/wsLink.d.ts
CHANGED
|
@@ -4,12 +4,12 @@ import { retryDelay } from '../internals/retryDelay';
|
|
|
4
4
|
import { Operation, OperationResultObserver, TRPCLink } from './types';
|
|
5
5
|
export interface WebSocketClientOptions {
|
|
6
6
|
url: string;
|
|
7
|
-
WebSocket?: WebSocket;
|
|
7
|
+
WebSocket?: typeof WebSocket;
|
|
8
8
|
retryDelayMs?: typeof retryDelay;
|
|
9
9
|
}
|
|
10
10
|
export declare function createWSClient(opts: WebSocketClientOptions): {
|
|
11
11
|
close: () => void;
|
|
12
|
-
request: (op: Operation, callbacks: OperationResultObserver<AnyRouter
|
|
12
|
+
request: (op: Operation, callbacks: OperationResultObserver<AnyRouter, unknown>) => UnsubscribeFn;
|
|
13
13
|
getConnection(): WebSocket;
|
|
14
14
|
};
|
|
15
15
|
export declare type TRPCWebSocketClient = ReturnType<typeof createWSClient>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsLink.d.ts","sourceRoot":"","sources":["../../src/links/wsLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,aAAa,EAAc,MAAM,yBAAyB,CAAC;AASpE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvE,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"wsLink.d.ts","sourceRoot":"","sources":["../../src/links/wsLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,aAAa,EAAc,MAAM,yBAAyB,CAAC;AASpE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvE,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,UAAU,CAAC;CAClC;AACD,wBAAgB,cAAc,CAAC,IAAI,EAAE,sBAAsB;;kBA8LpC,SAAS,6DAA0B,aAAa;;EAgDtE;AACD,oBAAY,mBAAmB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAEpE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,CAAC;CAC7B;AAiBD,wBAAgB,MAAM,CAAC,OAAO,SAAS,SAAS,EAC9C,IAAI,EAAE,oBAAoB,GACzB,QAAQ,CAAC,OAAO,CAAC,CAoDnB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
require('@babel/runtime/helpers/createClass');
|
|
6
|
+
require('@babel/runtime/helpers/classCallCheck');
|
|
7
|
+
require('@babel/runtime/helpers/assertThisInitialized');
|
|
8
|
+
require('@babel/runtime/helpers/inherits');
|
|
9
|
+
require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
10
|
+
require('@babel/runtime/helpers/getPrototypeOf');
|
|
11
|
+
require('@babel/runtime/helpers/wrapNativeSuper');
|
|
12
|
+
require('@trpc/server/observable');
|
|
13
|
+
var links_wsLink = require('../wsLink-69f5adb8.js');
|
|
14
|
+
require('@babel/runtime/helpers/defineProperty');
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
exports.createWSClient = links_wsLink.createWSClient;
|
|
19
|
+
exports.wsLink = links_wsLink.wsLink;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import '@babel/runtime/helpers/createClass';
|
|
2
|
+
import '@babel/runtime/helpers/classCallCheck';
|
|
3
|
+
import '@babel/runtime/helpers/assertThisInitialized';
|
|
4
|
+
import '@babel/runtime/helpers/inherits';
|
|
5
|
+
import '@babel/runtime/helpers/possibleConstructorReturn';
|
|
6
|
+
import '@babel/runtime/helpers/getPrototypeOf';
|
|
7
|
+
import '@babel/runtime/helpers/wrapNativeSuper';
|
|
8
|
+
import '@trpc/server/observable';
|
|
9
|
+
export { c as createWSClient, w as wsLink } from '../wsLink-9468a563.mjs';
|
|
10
|
+
import '@babel/runtime/helpers/defineProperty';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { observable } from '@trpc/server/observable';
|
|
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 subscription = next({
|
|
11
|
+
op: op,
|
|
12
|
+
next: function next(nextOp) {
|
|
13
|
+
var nextObserver = execute(index + 1, nextOp);
|
|
14
|
+
return nextObserver;
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
return subscription;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
var obs$ = execute();
|
|
21
|
+
return obs$.subscribe(observer);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function asArray(value) {
|
|
26
|
+
return Array.isArray(value) ? value : [value];
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function splitLink(opts) {
|
|
30
|
+
return function (runtime) {
|
|
31
|
+
var yes = asArray(opts.true).map(function (link) {
|
|
32
|
+
return link(runtime);
|
|
33
|
+
});
|
|
34
|
+
var no = asArray(opts.false).map(function (link) {
|
|
35
|
+
return link(runtime);
|
|
36
|
+
});
|
|
37
|
+
return function (props) {
|
|
38
|
+
return observable(function (observer) {
|
|
39
|
+
var links = opts.condition(props.op) ? yes : no;
|
|
40
|
+
return createChain({
|
|
41
|
+
op: props.op,
|
|
42
|
+
links: links
|
|
43
|
+
}).subscribe(observer);
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export { createChain as c, splitLink as s };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var observable = require('@trpc/server/observable');
|
|
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 subscription = next({
|
|
13
|
+
op: op,
|
|
14
|
+
next: function next(nextOp) {
|
|
15
|
+
var nextObserver = execute(index + 1, nextOp);
|
|
16
|
+
return nextObserver;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
return subscription;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
var obs$ = execute();
|
|
23
|
+
return obs$.subscribe(observer);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function asArray(value) {
|
|
28
|
+
return Array.isArray(value) ? value : [value];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function splitLink(opts) {
|
|
32
|
+
return function (runtime) {
|
|
33
|
+
var yes = asArray(opts.true).map(function (link) {
|
|
34
|
+
return link(runtime);
|
|
35
|
+
});
|
|
36
|
+
var no = asArray(opts.false).map(function (link) {
|
|
37
|
+
return link(runtime);
|
|
38
|
+
});
|
|
39
|
+
return function (props) {
|
|
40
|
+
return observable.observable(function (observer) {
|
|
41
|
+
var links = opts.condition(props.op) ? yes : no;
|
|
42
|
+
return createChain({
|
|
43
|
+
op: props.op,
|
|
44
|
+
links: links
|
|
45
|
+
}).subscribe(observer);
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
exports.createChain = createChain;
|
|
52
|
+
exports.splitLink = splitLink;
|