@trpc/client 10.0.0-alpha.23 → 10.0.0-alpha.26

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 (74) hide show
  1. package/dist/TRPCClientError.d.ts +2 -2
  2. package/dist/TRPCClientError.d.ts.map +1 -1
  3. package/dist/createTRPCClient.d.ts +1 -2
  4. package/dist/createTRPCClient.d.ts.map +1 -1
  5. package/dist/httpUtils-089853f6.mjs +99 -0
  6. package/dist/httpUtils-a0169eef.js +106 -0
  7. package/dist/index.js +63 -1031
  8. package/dist/index.mjs +55 -1015
  9. package/dist/internals/TRPCClient.d.ts +4 -2
  10. package/dist/internals/TRPCClient.d.ts.map +1 -1
  11. package/dist/links/httpBatchLink.js +317 -0
  12. package/dist/links/httpBatchLink.mjs +313 -0
  13. package/dist/links/httpBatchLink.ts.js +1 -0
  14. package/dist/links/httpLink.js +44 -0
  15. package/dist/links/httpLink.mjs +40 -0
  16. package/dist/links/httpLink.ts.js +1 -0
  17. package/dist/links/loggerLink.js +107 -0
  18. package/dist/links/loggerLink.mjs +98 -0
  19. package/dist/links/loggerLink.ts.js +1 -0
  20. package/dist/links/splitLink.js +10 -0
  21. package/dist/links/splitLink.mjs +2 -0
  22. package/dist/links/splitLink.ts.js +1 -0
  23. package/dist/links/types.d.ts +1 -1
  24. package/dist/links/types.d.ts.map +1 -1
  25. package/dist/links/wsLink.d.ts +2 -2
  26. package/dist/links/wsLink.d.ts.map +1 -1
  27. package/dist/links/wsLink.js +19 -0
  28. package/dist/links/wsLink.mjs +10 -0
  29. package/dist/links/wsLink.ts.js +1 -0
  30. package/dist/splitLink-62ff9db0.mjs +49 -0
  31. package/dist/splitLink-8202386e.js +52 -0
  32. package/dist/wsLink-69f5adb8.js +451 -0
  33. package/dist/wsLink-9468a563.mjs +436 -0
  34. package/links/httpBatchLink/index.d.ts +1 -0
  35. package/links/httpBatchLink/index.js +1 -0
  36. package/links/httpLink/index.d.ts +1 -0
  37. package/links/httpLink/index.js +1 -0
  38. package/links/loggerLink/index.d.ts +1 -0
  39. package/links/loggerLink/index.js +1 -0
  40. package/links/splitLink/index.d.ts +1 -0
  41. package/links/splitLink/index.js +1 -0
  42. package/links/wsLink/index.d.ts +1 -0
  43. package/links/wsLink/index.js +1 -0
  44. package/package.json +31 -5
  45. package/src/TRPCClientError.ts +2 -2
  46. package/src/createTRPCClient.ts +1 -2
  47. package/src/internals/TRPCClient.ts +17 -0
  48. package/src/links/types.ts +1 -1
  49. package/src/links/wsLink.ts +2 -2
  50. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.d.ts +0 -1
  51. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +0 -214
  52. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.js +0 -7
  53. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +0 -214
  54. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +0 -210
  55. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.d.ts +0 -1
  56. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +0 -67
  57. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.js +0 -7
  58. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +0 -67
  59. package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +0 -63
  60. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.d.ts +0 -1
  61. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +0 -89
  62. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.js +0 -7
  63. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +0 -89
  64. package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +0 -85
  65. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.d.ts +0 -1
  66. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +0 -19
  67. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.js +0 -7
  68. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +0 -19
  69. package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +0 -15
  70. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.d.ts +0 -1
  71. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +0 -397
  72. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.js +0 -7
  73. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +0 -397
  74. 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,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('@trpc/server/observable');
6
+ var links_splitLink = require('../splitLink-8202386e.js');
7
+
8
+
9
+
10
+ exports.splitLink = links_splitLink.splitLink;
@@ -0,0 +1,2 @@
1
+ import '@trpc/server/observable';
2
+ export { s as splitLink } from '../splitLink-62ff9db0.mjs';
@@ -0,0 +1 @@
1
+
@@ -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?: OperationContext;
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,CAAC,EAAE,gBAAgB,CAAC;CAC5B,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"}
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"}
@@ -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<any>, unknown>) => UnsubscribeFn;
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;IACtB,YAAY,CAAC,EAAE,OAAO,UAAU,CAAC;CAClC;AACD,wBAAgB,cAAc,CAAC,IAAI,EAAE,sBAAsB;;kBA8LpC,SAAS,kEAA0B,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"}
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;