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

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 (179) hide show
  1. package/dist/{TRPCClientError-e1da1ef0.esm.js → TRPCClientError-17b117e1.mjs} +16 -7
  2. package/dist/TRPCClientError-ec6bd2ca.js +94 -0
  3. package/dist/{declarations/src/TRPCClientError.d.ts → TRPCClientError.d.ts} +29 -29
  4. package/dist/TRPCClientError.d.ts.map +1 -0
  5. package/dist/{createChain-e45e6cf2.esm.js → createChain-389cc116.mjs} +1 -1
  6. package/dist/{createChain-93a38e1c.cjs.dev.js → createChain-864dbb30.js} +1 -1
  7. package/dist/{declarations/src/createTRPCClient.d.ts → createTRPCClient.d.ts} +5 -5
  8. package/dist/createTRPCClient.d.ts.map +1 -0
  9. package/dist/{declarations/src/getFetch.d.ts → getFetch.d.ts} +1 -1
  10. package/dist/getFetch.d.ts.map +1 -0
  11. package/dist/{httpUtils-a1426e14.cjs.dev.js → httpUtils-1f9e4e3c.js} +9 -1
  12. package/dist/{httpUtils-e45c9056.esm.js → httpUtils-c09d7b79.mjs} +5 -1
  13. package/dist/{declarations/src/index.d.ts → index.d.ts} +4 -4
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/{trpc-client.cjs.prod.js → index.js} +30 -16
  16. package/dist/{trpc-client.esm.js → index.mjs} +19 -15
  17. package/dist/index.ts.js +1 -0
  18. package/dist/{declarations/src/internals → internals}/TRPCClient.d.ts +64 -64
  19. package/dist/internals/TRPCClient.d.ts.map +1 -0
  20. package/dist/{declarations/src/internals → internals}/dataLoader.d.ts +14 -14
  21. package/dist/internals/dataLoader.d.ts.map +1 -0
  22. package/dist/{declarations/src/internals → internals}/fetchHelpers.d.ts +2 -2
  23. package/dist/internals/fetchHelpers.d.ts.map +1 -0
  24. package/dist/{declarations/src/internals → internals}/retryDelay.d.ts +1 -1
  25. package/dist/internals/retryDelay.d.ts.map +1 -0
  26. package/dist/internals/transformRPCResponse.d.ts +15 -0
  27. package/dist/internals/transformRPCResponse.d.ts.map +1 -0
  28. package/dist/links/dedupeLink.d.ts +4 -0
  29. package/dist/links/dedupeLink.d.ts.map +1 -0
  30. package/dist/{declarations/src/links → links}/httpBatchLink.d.ts +4 -4
  31. package/dist/links/httpBatchLink.d.ts.map +1 -0
  32. package/dist/links/httpBatchLink.js +189 -0
  33. package/dist/links/httpBatchLink.mjs +185 -0
  34. package/dist/links/httpBatchLink.ts.js +1 -0
  35. package/dist/{declarations/src/links → links}/httpLink.d.ts +4 -4
  36. package/dist/links/httpLink.d.ts.map +1 -0
  37. package/dist/links/httpLink.js +44 -0
  38. package/dist/links/httpLink.mjs +40 -0
  39. package/dist/links/httpLink.ts.js +1 -0
  40. package/dist/{declarations/src/links → links}/httpUtils.d.ts +21 -21
  41. package/dist/links/httpUtils.d.ts.map +1 -0
  42. package/dist/{declarations/src/links → links}/internals/createChain.d.ts +7 -7
  43. package/dist/links/internals/createChain.d.ts.map +1 -0
  44. package/dist/{declarations/src/links → links}/internals/transformOperationResult.d.ts +15 -15
  45. package/dist/links/internals/transformOperationResult.d.ts.map +1 -0
  46. package/dist/{declarations/src/links → links}/loggerLink.d.ts +38 -38
  47. package/dist/links/loggerLink.d.ts.map +1 -0
  48. package/dist/links/loggerLink.js +108 -0
  49. package/dist/links/loggerLink.mjs +99 -0
  50. package/dist/links/loggerLink.ts.js +1 -0
  51. package/dist/links/retryLink.d.ts +6 -0
  52. package/dist/links/retryLink.d.ts.map +1 -0
  53. package/dist/{declarations/src/links → links}/splitLink.d.ts +13 -13
  54. package/dist/links/splitLink.d.ts.map +1 -0
  55. package/dist/links/splitLink.js +32 -0
  56. package/dist/links/splitLink.mjs +28 -0
  57. package/dist/links/splitLink.ts.js +1 -0
  58. package/dist/{declarations/src/links → links}/transformerLink.d.ts +3 -3
  59. package/dist/links/transformerLink.d.ts.map +1 -0
  60. package/dist/links/transformerLink.js +75 -0
  61. package/dist/links/transformerLink.mjs +67 -0
  62. package/dist/links/transformerLink.ts.js +1 -0
  63. package/dist/{declarations/src/links → links}/types.d.ts +39 -39
  64. package/dist/links/types.d.ts.map +1 -0
  65. package/dist/{declarations/src/links → links}/wsLink.d.ts +19 -19
  66. package/dist/links/wsLink.d.ts.map +1 -0
  67. package/dist/links/wsLink.js +384 -0
  68. package/dist/links/wsLink.mjs +370 -0
  69. package/dist/links/wsLink.ts.js +1 -0
  70. package/dist/{observable-01534ea8.esm.js → observable-7e66cb56.mjs} +0 -0
  71. package/dist/{observable-9aad8c3e.cjs.dev.js → observable-85669100.js} +0 -0
  72. package/dist/{declarations/src/rx → rx}/index.d.ts +2 -2
  73. package/dist/rx/index.d.ts.map +1 -0
  74. package/dist/rx/index.js +9 -0
  75. package/dist/rx/index.mjs +1 -0
  76. package/dist/rx/index.ts.js +1 -0
  77. package/dist/{declarations/src/rx → rx}/observable.d.ts +3 -3
  78. package/dist/rx/observable.d.ts.map +1 -0
  79. package/dist/{declarations/src/rx → rx}/operators/index.d.ts +3 -3
  80. package/dist/rx/operators/index.d.ts.map +1 -0
  81. package/dist/rx/operators/index.js +38 -0
  82. package/dist/rx/operators/index.mjs +32 -0
  83. package/dist/rx/operators/index.ts.js +1 -0
  84. package/dist/{declarations/src/rx → rx}/operators/map.d.ts +2 -2
  85. package/dist/rx/operators/map.d.ts.map +1 -0
  86. package/dist/{declarations/src/rx → rx}/operators/share.d.ts +5 -5
  87. package/dist/rx/operators/share.d.ts.map +1 -0
  88. package/dist/{declarations/src/rx → rx}/operators/tap.d.ts +2 -2
  89. package/dist/rx/operators/tap.d.ts.map +1 -0
  90. package/dist/{declarations/src/rx → rx}/types.d.ts +28 -28
  91. package/dist/rx/types.d.ts.map +1 -0
  92. package/dist/{declarations/src/rx → rx}/util/identity.d.ts +1 -1
  93. package/dist/rx/util/identity.d.ts.map +1 -0
  94. package/dist/{declarations/src/rx → rx}/util/observableToPromise.d.ts +9 -9
  95. package/dist/rx/util/observableToPromise.d.ts.map +1 -0
  96. package/dist/{declarations/src/rx → rx}/util/pipe.d.ts +3 -3
  97. package/dist/rx/util/pipe.d.ts.map +1 -0
  98. package/dist/{share-f2ac9332.cjs.dev.js → share-4d79dc49.js} +5 -1
  99. package/dist/{share-ca585761.esm.js → share-671b63fa.mjs} +5 -1
  100. package/dist/{tap-606957cb.esm.js → tap-538fa07f.mjs} +0 -0
  101. package/dist/{tap-2d565250.cjs.dev.js → tap-799a2d33.js} +0 -0
  102. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +68 -38
  103. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +68 -38
  104. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +67 -37
  105. package/links/httpBatchLink/index.d.ts +1 -0
  106. package/links/httpBatchLink/index.js +1 -0
  107. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +52 -29
  108. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +52 -29
  109. package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +52 -29
  110. package/links/httpLink/index.d.ts +1 -0
  111. package/links/httpLink/index.js +1 -0
  112. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +19 -31
  113. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +19 -31
  114. package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +19 -31
  115. package/links/loggerLink/index.d.ts +1 -0
  116. package/links/loggerLink/index.js +1 -0
  117. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +7 -20
  118. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +7 -20
  119. package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +7 -20
  120. package/links/splitLink/index.d.ts +1 -0
  121. package/links/splitLink/index.js +1 -0
  122. package/links/transformerLink/index.d.ts +1 -0
  123. package/links/transformerLink/index.js +1 -0
  124. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +84 -60
  125. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +84 -60
  126. package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +84 -60
  127. package/links/wsLink/index.d.ts +1 -0
  128. package/links/wsLink/index.js +1 -0
  129. package/package.json +56 -20
  130. package/rx/index.d.ts +1 -0
  131. package/rx/index.js +1 -0
  132. package/rx/operators/index.d.ts +1 -0
  133. package/rx/operators/index.js +1 -0
  134. package/dist/TRPCClientError-a5312a5f.cjs.dev.js +0 -74
  135. package/dist/TRPCClientError-ea7d89b2.cjs.prod.js +0 -74
  136. package/dist/createChain-e45e052a.cjs.prod.js +0 -27
  137. package/dist/declarations/src/TRPCClientError.d.ts.map +0 -1
  138. package/dist/declarations/src/createTRPCClient.d.ts.map +0 -1
  139. package/dist/declarations/src/getFetch.d.ts.map +0 -1
  140. package/dist/declarations/src/index.d.ts.map +0 -1
  141. package/dist/declarations/src/internals/TRPCClient.d.ts.map +0 -1
  142. package/dist/declarations/src/internals/dataLoader.d.ts.map +0 -1
  143. package/dist/declarations/src/internals/fetchHelpers.d.ts.map +0 -1
  144. package/dist/declarations/src/internals/retryDelay.d.ts.map +0 -1
  145. package/dist/declarations/src/links/httpBatchLink.d.ts.map +0 -1
  146. package/dist/declarations/src/links/httpLink.d.ts.map +0 -1
  147. package/dist/declarations/src/links/httpUtils.d.ts.map +0 -1
  148. package/dist/declarations/src/links/internals/createChain.d.ts.map +0 -1
  149. package/dist/declarations/src/links/internals/transformOperationResult.d.ts.map +0 -1
  150. package/dist/declarations/src/links/loggerLink.d.ts.map +0 -1
  151. package/dist/declarations/src/links/splitLink.d.ts.map +0 -1
  152. package/dist/declarations/src/links/transformerLink.d.ts.map +0 -1
  153. package/dist/declarations/src/links/types.d.ts.map +0 -1
  154. package/dist/declarations/src/links/wsLink.d.ts.map +0 -1
  155. package/dist/declarations/src/rx/index.d.ts.map +0 -1
  156. package/dist/declarations/src/rx/observable.d.ts.map +0 -1
  157. package/dist/declarations/src/rx/operators/index.d.ts.map +0 -1
  158. package/dist/declarations/src/rx/operators/map.d.ts.map +0 -1
  159. package/dist/declarations/src/rx/operators/share.d.ts.map +0 -1
  160. package/dist/declarations/src/rx/operators/tap.d.ts.map +0 -1
  161. package/dist/declarations/src/rx/types.d.ts.map +0 -1
  162. package/dist/declarations/src/rx/util/identity.d.ts.map +0 -1
  163. package/dist/declarations/src/rx/util/observableToPromise.d.ts.map +0 -1
  164. package/dist/declarations/src/rx/util/pipe.d.ts.map +0 -1
  165. package/dist/httpUtils-299a66f6.cjs.prod.js +0 -89
  166. package/dist/observable-ccb54234.cjs.prod.js +0 -104
  167. package/dist/share-5a8c2543.cjs.prod.js +0 -106
  168. package/dist/tap-d907998d.cjs.prod.js +0 -32
  169. package/dist/trpc-client.cjs.d.ts +0 -1
  170. package/dist/trpc-client.cjs.dev.js +0 -300
  171. package/dist/trpc-client.cjs.js +0 -7
  172. package/links/httpBatchLink/package.json +0 -4
  173. package/links/httpLink/package.json +0 -4
  174. package/links/loggerLink/package.json +0 -4
  175. package/links/splitLink/package.json +0 -4
  176. package/links/transformerLink/package.json +0 -4
  177. package/links/wsLink/package.json +0 -4
  178. package/rx/operators/package.json +0 -4
  179. package/rx/package.json +0 -4
@@ -1,39 +1,39 @@
1
- import { AnyRouter } from '@trpc/server';
2
- import { TRPCClientError } from '..';
3
- import { Operation, OperationResult, TRPCLink } from './types';
4
- declare type ConsoleEsque = {
5
- log: (...args: any[]) => void;
6
- error: (...args: any[]) => void;
7
- };
8
- declare type EnableFnOptions<TRouter extends AnyRouter> = (Operation & {
9
- direction: 'up';
10
- }) | {
11
- direction: 'down';
12
- result: OperationResult<TRouter, unknown> | TRPCClientError<TRouter>;
13
- };
14
- declare type EnabledFn<TRouter extends AnyRouter> = (opts: EnableFnOptions<TRouter>) => boolean;
15
- declare type LogFnOptions<TRouter extends AnyRouter> = Operation & ({
16
- /**
17
- * Request was just initialized
18
- */
19
- direction: 'up';
20
- } | {
21
- /**
22
- * Request result
23
- */
24
- direction: 'down';
25
- result: OperationResult<TRouter, unknown> | TRPCClientError<TRouter>;
26
- elapsedMs: number;
27
- });
28
- declare type LogFn<TRouter extends AnyRouter> = (opts: LogFnOptions<TRouter>) => void;
29
- declare type LoggerLinkOptions<TRouter extends AnyRouter> = {
30
- logger?: LogFn<TRouter>;
31
- enabled?: EnabledFn<TRouter>;
32
- /**
33
- * Used in the built-in defaultLogger
34
- */
35
- console?: ConsoleEsque;
36
- };
37
- export declare function loggerLink<TRouter extends AnyRouter = AnyRouter>(opts?: LoggerLinkOptions<TRouter>): TRPCLink<TRouter>;
38
- export {};
1
+ import { AnyRouter } from '@trpc/server';
2
+ import { TRPCClientError } from '..';
3
+ import { Operation, OperationResult, TRPCLink } from './types';
4
+ declare type ConsoleEsque = {
5
+ log: (...args: any[]) => void;
6
+ error: (...args: any[]) => void;
7
+ };
8
+ declare type EnableFnOptions<TRouter extends AnyRouter> = (Operation & {
9
+ direction: 'up';
10
+ }) | {
11
+ direction: 'down';
12
+ result: OperationResult<TRouter, unknown> | TRPCClientError<TRouter>;
13
+ };
14
+ declare type EnabledFn<TRouter extends AnyRouter> = (opts: EnableFnOptions<TRouter>) => boolean;
15
+ declare type LogFnOptions<TRouter extends AnyRouter> = Operation & ({
16
+ /**
17
+ * Request was just initialized
18
+ */
19
+ direction: 'up';
20
+ } | {
21
+ /**
22
+ * Request result
23
+ */
24
+ direction: 'down';
25
+ result: OperationResult<TRouter, unknown> | TRPCClientError<TRouter>;
26
+ elapsedMs: number;
27
+ });
28
+ declare type LogFn<TRouter extends AnyRouter> = (opts: LogFnOptions<TRouter>) => void;
29
+ declare type LoggerLinkOptions<TRouter extends AnyRouter> = {
30
+ logger?: LogFn<TRouter>;
31
+ enabled?: EnabledFn<TRouter>;
32
+ /**
33
+ * Used in the built-in defaultLogger
34
+ */
35
+ console?: ConsoleEsque;
36
+ };
37
+ export declare function loggerLink<TRouter extends AnyRouter = AnyRouter>(opts?: LoggerLinkOptions<TRouter>): TRPCLink<TRouter>;
38
+ export {};
39
39
  //# sourceMappingURL=loggerLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loggerLink.d.ts","sourceRoot":"","sources":["../../src/links/loggerLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAGrC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,aAAK,YAAY,GAAG;IAClB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF,aAAK,eAAe,CAAC,OAAO,SAAS,SAAS,IAC1C,CAAC,SAAS,GAAG;IACX,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC,GACF;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;CACtE,CAAC;AACN,aAAK,SAAS,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1C,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,KAC3B,OAAO,CAAC;AAEb,aAAK,YAAY,CAAC,OAAO,SAAS,SAAS,IAAI,SAAS,GACtD,CACI;IACE;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;CACjB,GACD;IACE;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACrE,SAAS,EAAE,MAAM,CAAC;CACnB,CACJ,CAAC;AACJ,aAAK,KAAK,CAAC,OAAO,SAAS,SAAS,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;AAO9E,aAAK,iBAAiB,CAAC,OAAO,SAAS,SAAS,IAAI;IAClD,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC;AA+CF,wBAAgB,UAAU,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EAC9D,IAAI,GAAE,iBAAiB,CAAC,OAAO,CAAM,GACpC,QAAQ,CAAC,OAAO,CAAC,CA2CnB"}
@@ -0,0 +1,108 @@
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('../observable-85669100.js');
8
+ var tap = require('../tap-799a2d33.js');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
13
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
14
+
15
+ 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; }
16
+
17
+ 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; }
18
+ var palette = {
19
+ query: ['72e3ff', '3fb0d8'],
20
+ mutation: ['c5a3fc', '904dfc'],
21
+ subscription: ['ff49e1', 'd83fbe']
22
+ };
23
+
24
+ // maybe this should be moved to it's own package
25
+ var defaultLogger = function defaultLogger() {
26
+ var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
27
+ return function (props) {
28
+ var direction = props.direction,
29
+ input = props.input,
30
+ type = props.type,
31
+ path = props.path,
32
+ context = props.context,
33
+ id = props.id;
34
+
35
+ var _palette$type = _slicedToArray__default["default"](palette[type], 2),
36
+ light = _palette$type[0],
37
+ dark = _palette$type[1];
38
+
39
+ var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
40
+ var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
41
+ var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
42
+
43
+ if (props.direction === 'up') {
44
+ args.push({
45
+ input: input,
46
+ context: context
47
+ });
48
+ } else {
49
+ args.push({
50
+ input: input,
51
+ result: props.result,
52
+ elapsedMs: props.elapsedMs,
53
+ context: context
54
+ });
55
+ }
56
+
57
+ var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
58
+ c[fn].apply(null, [parts.join(' ')].concat(args));
59
+ };
60
+ };
61
+
62
+ function loggerLink() {
63
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
64
+ var _opts$enabled = opts.enabled,
65
+ enabled = _opts$enabled === void 0 ? function () {
66
+ return true;
67
+ } : _opts$enabled;
68
+ var _opts$logger = opts.logger,
69
+ logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
70
+ return function () {
71
+ return function (_ref) {
72
+ var op = _ref.op,
73
+ next = _ref.next;
74
+ return observable.observable(function (observer) {
75
+ // ->
76
+ enabled(_objectSpread(_objectSpread({}, op), {}, {
77
+ direction: 'up'
78
+ })) && logger(_objectSpread(_objectSpread({}, op), {}, {
79
+ direction: 'up'
80
+ }));
81
+ var requestStartTime = Date.now();
82
+
83
+ function logResult(result) {
84
+ var elapsedMs = Date.now() - requestStartTime;
85
+ enabled(_objectSpread(_objectSpread({}, op), {}, {
86
+ direction: 'down',
87
+ result: result
88
+ })) && logger(_objectSpread(_objectSpread({}, op), {}, {
89
+ direction: 'down',
90
+ elapsedMs: elapsedMs,
91
+ result: result
92
+ }));
93
+ }
94
+
95
+ return next(op).pipe(tap.tap({
96
+ next: function next(result) {
97
+ logResult(result);
98
+ },
99
+ error: function error(result) {
100
+ logResult(result);
101
+ }
102
+ })).subscribe(observer);
103
+ });
104
+ };
105
+ };
106
+ }
107
+
108
+ exports.loggerLink = loggerLink;
@@ -0,0 +1,99 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
+ import { o as observable } from '../observable-7e66cb56.mjs';
4
+ import { t as tap } from '../tap-538fa07f.mjs';
5
+
6
+ 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; }
7
+
8
+ 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; }
9
+ var palette = {
10
+ query: ['72e3ff', '3fb0d8'],
11
+ mutation: ['c5a3fc', '904dfc'],
12
+ subscription: ['ff49e1', 'd83fbe']
13
+ };
14
+
15
+ // maybe this should be moved to it's own package
16
+ var defaultLogger = function defaultLogger() {
17
+ var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
18
+ return function (props) {
19
+ var direction = props.direction,
20
+ input = props.input,
21
+ type = props.type,
22
+ path = props.path,
23
+ context = props.context,
24
+ id = props.id;
25
+
26
+ var _palette$type = _slicedToArray(palette[type], 2),
27
+ light = _palette$type[0],
28
+ dark = _palette$type[1];
29
+
30
+ var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
31
+ var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
32
+ var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
33
+
34
+ if (props.direction === 'up') {
35
+ args.push({
36
+ input: input,
37
+ context: context
38
+ });
39
+ } else {
40
+ args.push({
41
+ input: input,
42
+ result: props.result,
43
+ elapsedMs: props.elapsedMs,
44
+ context: context
45
+ });
46
+ }
47
+
48
+ var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
49
+ c[fn].apply(null, [parts.join(' ')].concat(args));
50
+ };
51
+ };
52
+
53
+ function loggerLink() {
54
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
55
+ var _opts$enabled = opts.enabled,
56
+ enabled = _opts$enabled === void 0 ? function () {
57
+ return true;
58
+ } : _opts$enabled;
59
+ var _opts$logger = opts.logger,
60
+ logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
61
+ return function () {
62
+ return function (_ref) {
63
+ var op = _ref.op,
64
+ next = _ref.next;
65
+ return observable(function (observer) {
66
+ // ->
67
+ enabled(_objectSpread(_objectSpread({}, op), {}, {
68
+ direction: 'up'
69
+ })) && logger(_objectSpread(_objectSpread({}, op), {}, {
70
+ direction: 'up'
71
+ }));
72
+ var requestStartTime = Date.now();
73
+
74
+ function logResult(result) {
75
+ var elapsedMs = Date.now() - requestStartTime;
76
+ enabled(_objectSpread(_objectSpread({}, op), {}, {
77
+ direction: 'down',
78
+ result: result
79
+ })) && logger(_objectSpread(_objectSpread({}, op), {}, {
80
+ direction: 'down',
81
+ elapsedMs: elapsedMs,
82
+ result: result
83
+ }));
84
+ }
85
+
86
+ return next(op).pipe(tap({
87
+ next: function next(result) {
88
+ logResult(result);
89
+ },
90
+ error: function error(result) {
91
+ logResult(result);
92
+ }
93
+ })).subscribe(observer);
94
+ });
95
+ };
96
+ };
97
+ }
98
+
99
+ export { loggerLink };
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,6 @@
1
+ import { AnyRouter } from '@trpc/server';
2
+ import { TRPCLink } from './types';
3
+ export declare function retryLink<TRouter extends AnyRouter = AnyRouter>(opts: {
4
+ attempts: number;
5
+ }): TRPCLink<TRouter>;
6
+ //# sourceMappingURL=retryLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retryLink.d.ts","sourceRoot":"","sources":["../../src/links/retryLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,wBAAgB,SAAS,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EAAE,IAAI,EAAE;IACrE,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAiDpB"}
@@ -1,14 +1,14 @@
1
- import { AnyRouter } from '@trpc/server';
2
- import { TRPCLink, Operation } from './types';
3
- export declare function splitLink<TRouter extends AnyRouter = AnyRouter>(opts: {
4
- condition: (op: Operation) => boolean;
5
- /**
6
- * The link to execute next if the test function returns `true`.
7
- */
8
- true: TRPCLink<TRouter> | TRPCLink<TRouter>[];
9
- /**
10
- * The link to execute next if the test function returns `false`.
11
- */
12
- false: TRPCLink<TRouter> | TRPCLink<TRouter>[];
13
- }): TRPCLink<TRouter>;
1
+ import { AnyRouter } from '@trpc/server';
2
+ import { TRPCLink, Operation } from './types';
3
+ export declare function splitLink<TRouter extends AnyRouter = AnyRouter>(opts: {
4
+ condition: (op: Operation) => boolean;
5
+ /**
6
+ * The link to execute next if the test function returns `true`.
7
+ */
8
+ true: TRPCLink<TRouter> | TRPCLink<TRouter>[];
9
+ /**
10
+ * The link to execute next if the test function returns `false`.
11
+ */
12
+ false: TRPCLink<TRouter> | TRPCLink<TRouter>[];
13
+ }): TRPCLink<TRouter>;
14
14
  //# sourceMappingURL=splitLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"splitLink.d.ts","sourceRoot":"","sources":["../../src/links/splitLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAM9C,wBAAgB,SAAS,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EAAE,IAAI,EAAE;IACrE,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC;IACtC;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9C;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;CAChD,GAAG,QAAQ,CAAC,OAAO,CAAC,CAWpB"}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var observable = require('../observable-85669100.js');
6
+ var createChain = require('../createChain-864dbb30.js');
7
+
8
+ function asArray(value) {
9
+ return Array.isArray(value) ? value : [value];
10
+ }
11
+
12
+ function splitLink(opts) {
13
+ return function (rt) {
14
+ var yes = asArray(opts.true).map(function (link) {
15
+ return link(rt);
16
+ });
17
+ var no = asArray(opts.false).map(function (link) {
18
+ return link(rt);
19
+ });
20
+ return function (props) {
21
+ return observable.observable(function (observer) {
22
+ var links = opts.condition(props.op) ? yes : no;
23
+ return createChain.createChain({
24
+ op: props.op,
25
+ links: links
26
+ }).subscribe(observer);
27
+ });
28
+ };
29
+ };
30
+ }
31
+
32
+ exports.splitLink = splitLink;
@@ -0,0 +1,28 @@
1
+ import { o as observable } from '../observable-7e66cb56.mjs';
2
+ import { c as createChain } from '../createChain-389cc116.mjs';
3
+
4
+ function asArray(value) {
5
+ return Array.isArray(value) ? value : [value];
6
+ }
7
+
8
+ function splitLink(opts) {
9
+ return function (rt) {
10
+ var yes = asArray(opts.true).map(function (link) {
11
+ return link(rt);
12
+ });
13
+ var no = asArray(opts.false).map(function (link) {
14
+ return link(rt);
15
+ });
16
+ return function (props) {
17
+ return observable(function (observer) {
18
+ var links = opts.condition(props.op) ? yes : no;
19
+ return createChain({
20
+ op: props.op,
21
+ links: links
22
+ }).subscribe(observer);
23
+ });
24
+ };
25
+ };
26
+ }
27
+
28
+ export { splitLink };
@@ -0,0 +1 @@
1
+
@@ -1,4 +1,4 @@
1
- import { AnyRouter, ClientDataTransformerOptions } from '@trpc/server';
2
- import { TRPCLink } from './types';
3
- export declare function transformerLink<TRouter extends AnyRouter = AnyRouter>(transformer: ClientDataTransformerOptions): TRPCLink<TRouter>;
1
+ import { AnyRouter, ClientDataTransformerOptions } from '@trpc/server';
2
+ import { TRPCLink } from './types';
3
+ export declare function transformerLink<TRouter extends AnyRouter = AnyRouter>(transformer: ClientDataTransformerOptions): TRPCLink<TRouter>;
4
4
  //# sourceMappingURL=transformerLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformerLink.d.ts","sourceRoot":"","sources":["../../src/links/transformerLink.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,4BAA4B,EAE7B,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAmB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAgCpD,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EACnE,WAAW,EAAE,4BAA4B,GACxC,QAAQ,CAAC,OAAO,CAAC,CA6BnB"}
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
+ var observable = require('../observable-85669100.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
11
+
12
+ 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; }
13
+
14
+ 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; }
15
+
16
+ /**
17
+ * @internal
18
+ */
19
+ function transformOperationResult(result, transformer) {
20
+ if ('error' in result.data) {
21
+ return _objectSpread(_objectSpread({}, result), {}, {
22
+ data: _objectSpread(_objectSpread({}, result.data), {}, {
23
+ error: transformer.deserialize(result.data.error)
24
+ })
25
+ });
26
+ }
27
+
28
+ if (result.data.result.type !== 'data') {
29
+ return result;
30
+ }
31
+
32
+ return _objectSpread(_objectSpread({}, result), {}, {
33
+ data: _objectSpread(_objectSpread({}, result.data), {}, {
34
+ result: _objectSpread(_objectSpread({}, result.data.result), {}, {
35
+ data: transformer.deserialize(result.data.result.data)
36
+ })
37
+ })
38
+ });
39
+ }
40
+
41
+ function transformerLink(transformer) {
42
+ var _transformer = transformer ? 'input' in transformer ? {
43
+ serialize: transformer.input.serialize,
44
+ deserialize: transformer.output.deserialize
45
+ } : transformer : {
46
+ serialize: function serialize(data) {
47
+ return data;
48
+ },
49
+ deserialize: function deserialize(data) {
50
+ return data;
51
+ }
52
+ };
53
+
54
+ return function () {
55
+ return function (props) {
56
+ var input = _transformer.serialize(props.op.input);
57
+
58
+ return observable.observable(function (observer) {
59
+ var next$ = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
60
+ input: input
61
+ })).subscribe({
62
+ next: function next(value) {
63
+ var transformed = transformOperationResult(value, _transformer);
64
+ observer.next(transformed);
65
+ },
66
+ error: observer.error,
67
+ complete: observer.complete
68
+ });
69
+ return next$;
70
+ });
71
+ };
72
+ };
73
+ }
74
+
75
+ exports.transformerLink = transformerLink;
@@ -0,0 +1,67 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import { o as observable } from '../observable-7e66cb56.mjs';
3
+
4
+ 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; }
5
+
6
+ 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; }
7
+
8
+ /**
9
+ * @internal
10
+ */
11
+ function transformOperationResult(result, transformer) {
12
+ if ('error' in result.data) {
13
+ return _objectSpread(_objectSpread({}, result), {}, {
14
+ data: _objectSpread(_objectSpread({}, result.data), {}, {
15
+ error: transformer.deserialize(result.data.error)
16
+ })
17
+ });
18
+ }
19
+
20
+ if (result.data.result.type !== 'data') {
21
+ return result;
22
+ }
23
+
24
+ return _objectSpread(_objectSpread({}, result), {}, {
25
+ data: _objectSpread(_objectSpread({}, result.data), {}, {
26
+ result: _objectSpread(_objectSpread({}, result.data.result), {}, {
27
+ data: transformer.deserialize(result.data.result.data)
28
+ })
29
+ })
30
+ });
31
+ }
32
+
33
+ function transformerLink(transformer) {
34
+ var _transformer = transformer ? 'input' in transformer ? {
35
+ serialize: transformer.input.serialize,
36
+ deserialize: transformer.output.deserialize
37
+ } : transformer : {
38
+ serialize: function serialize(data) {
39
+ return data;
40
+ },
41
+ deserialize: function deserialize(data) {
42
+ return data;
43
+ }
44
+ };
45
+
46
+ return function () {
47
+ return function (props) {
48
+ var input = _transformer.serialize(props.op.input);
49
+
50
+ return observable(function (observer) {
51
+ var next$ = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
52
+ input: input
53
+ })).subscribe({
54
+ next: function next(value) {
55
+ var transformed = transformOperationResult(value, _transformer);
56
+ observer.next(transformed);
57
+ },
58
+ error: observer.error,
59
+ complete: observer.complete
60
+ });
61
+ return next$;
62
+ });
63
+ };
64
+ };
65
+ }
66
+
67
+ export { transformerLink };
@@ -0,0 +1 @@
1
+
@@ -1,40 +1,40 @@
1
- import { AnyRouter, inferRouterError, Dict } from '@trpc/server';
2
- import { TRPCResponse } from '@trpc/server/rpc';
3
- import { Observable, Observer } from '../rx/types';
4
- import { TRPCClientError } from '../TRPCClientError';
5
- export declare type CancelFn = () => void;
6
- export declare type PromiseAndCancel<TValue> = {
7
- promise: Promise<TValue>;
8
- cancel: CancelFn;
9
- };
10
- export declare type OperationContext = Record<string, unknown>;
11
- export declare type Operation<TInput = unknown> = {
12
- id: number;
13
- type: 'query' | 'mutation' | 'subscription';
14
- input: TInput;
15
- path: string;
16
- context?: OperationContext;
17
- };
18
- export declare type HTTPHeaders = Dict<string | string[]>;
19
- /**
20
- * The default `fetch` implementation has an overloaded signature. By convention this library
21
- * only uses the overload taking a string and options object.
22
- */
23
- export declare type TRPCFetch = (url: string, options?: RequestInit) => Promise<Response>;
24
- export interface LinkRuntime {
25
- headers: () => HTTPHeaders | Promise<HTTPHeaders>;
26
- fetch: TRPCFetch;
27
- AbortController?: typeof AbortController;
28
- }
29
- export interface OperationResult<TRouter extends AnyRouter, TOutput> {
30
- data: TRPCResponse<TOutput, inferRouterError<TRouter>>;
31
- context?: OperationContext;
32
- }
33
- export declare type OperationResultObservable<TRouter extends AnyRouter, TOutput> = Observable<OperationResult<TRouter, TOutput>, TRPCClientError<TRouter>>;
34
- export declare type OperationResultObserver<TRouter extends AnyRouter, TOutput> = Observer<OperationResult<TRouter, TOutput>, TRPCClientError<TRouter>>;
35
- export declare type OperationLink<TRouter extends AnyRouter, TInput = unknown, TOutput = unknown> = (opts: {
36
- op: Operation<TInput>;
37
- next: (op: Operation<TInput>) => OperationResultObservable<TRouter, TOutput>;
38
- }) => OperationResultObservable<TRouter, TOutput>;
39
- export declare type TRPCLink<TRouter extends AnyRouter> = (opts: LinkRuntime) => OperationLink<TRouter>;
1
+ import { AnyRouter, inferRouterError, Dict } from '@trpc/server';
2
+ import { TRPCResponse } from '@trpc/server/rpc';
3
+ import { Observable, Observer } from '../rx/types';
4
+ import { TRPCClientError } from '../TRPCClientError';
5
+ export declare type CancelFn = () => void;
6
+ export declare type PromiseAndCancel<TValue> = {
7
+ promise: Promise<TValue>;
8
+ cancel: CancelFn;
9
+ };
10
+ export declare type OperationContext = Record<string, unknown>;
11
+ export declare type Operation<TInput = unknown> = {
12
+ id: number;
13
+ type: 'query' | 'mutation' | 'subscription';
14
+ input: TInput;
15
+ path: string;
16
+ context?: OperationContext;
17
+ };
18
+ export declare type HTTPHeaders = Dict<string | string[]>;
19
+ /**
20
+ * The default `fetch` implementation has an overloaded signature. By convention this library
21
+ * only uses the overload taking a string and options object.
22
+ */
23
+ export declare type TRPCFetch = (url: string, options?: RequestInit) => Promise<Response>;
24
+ export interface LinkRuntime {
25
+ headers: () => HTTPHeaders | Promise<HTTPHeaders>;
26
+ fetch: TRPCFetch;
27
+ AbortController?: typeof AbortController;
28
+ }
29
+ export interface OperationResult<TRouter extends AnyRouter, TOutput> {
30
+ data: TRPCResponse<TOutput, inferRouterError<TRouter>>;
31
+ context?: OperationContext;
32
+ }
33
+ export declare type OperationResultObservable<TRouter extends AnyRouter, TOutput> = Observable<OperationResult<TRouter, TOutput>, TRPCClientError<TRouter>>;
34
+ export declare type OperationResultObserver<TRouter extends AnyRouter, TOutput> = Observer<OperationResult<TRouter, TOutput>, TRPCClientError<TRouter>>;
35
+ export declare type OperationLink<TRouter extends AnyRouter, TInput = unknown, TOutput = unknown> = (opts: {
36
+ op: Operation<TInput>;
37
+ next: (op: Operation<TInput>) => OperationResultObservable<TRouter, TOutput>;
38
+ }) => OperationResultObservable<TRouter, TOutput>;
39
+ export declare type TRPCLink<TRouter extends AnyRouter> = (opts: LinkRuntime) => OperationLink<TRouter>;
40
40
  //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/links/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACnD,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,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAElD;;;GAGG;AACH,oBAAY,SAAS,GAAG,CACtB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAClD,KAAK,EAAE,SAAS,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,eAAe,CAAC;CAC1C;AAED,MAAM,WAAW,eAAe,CAAC,OAAO,SAAS,SAAS,EAAE,OAAO;IACjE,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,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,WAAW,KACd,aAAa,CAAC,OAAO,CAAC,CAAC"}