@trpc/client 9.16.0 → 10.0.0-alpha.1

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 (157) hide show
  1. package/dist/{TRPCClientError-bfee2bf5.cjs.dev.js → TRPCClientError-a5312a5f.cjs.dev.js} +14 -19
  2. package/dist/{TRPCClientError-09b8a26b.esm.js → TRPCClientError-e1da1ef0.esm.js} +14 -19
  3. package/dist/{TRPCClientError-e9bf96e9.cjs.prod.js → TRPCClientError-ea7d89b2.cjs.prod.js} +14 -19
  4. package/dist/createChain-93a38e1c.cjs.dev.js +27 -0
  5. package/dist/createChain-e45e052a.cjs.prod.js +27 -0
  6. package/dist/createChain-e45e6cf2.esm.js +25 -0
  7. package/dist/declarations/src/TRPCClientError.d.ts +6 -10
  8. package/dist/declarations/src/TRPCClientError.d.ts.map +1 -1
  9. package/dist/declarations/src/createTRPCClient.d.ts +1 -2
  10. package/dist/declarations/src/createTRPCClient.d.ts.map +1 -1
  11. package/dist/declarations/src/index.d.ts +1 -1
  12. package/dist/declarations/src/index.d.ts.map +1 -1
  13. package/dist/declarations/src/internals/TRPCClient.d.ts +17 -14
  14. package/dist/declarations/src/internals/TRPCClient.d.ts.map +1 -1
  15. package/dist/declarations/src/internals/dataLoader.d.ts +1 -1
  16. package/dist/declarations/src/internals/dataLoader.d.ts.map +1 -1
  17. package/dist/declarations/src/links/httpBatchLink.d.ts +2 -1
  18. package/dist/declarations/src/links/httpBatchLink.d.ts.map +1 -1
  19. package/dist/declarations/src/links/httpLink.d.ts +2 -1
  20. package/dist/declarations/src/links/httpLink.d.ts.map +1 -1
  21. package/dist/declarations/src/links/httpUtils.d.ts +22 -0
  22. package/dist/declarations/src/links/httpUtils.d.ts.map +1 -0
  23. package/dist/declarations/src/links/internals/createChain.d.ts +8 -0
  24. package/dist/declarations/src/links/internals/createChain.d.ts.map +1 -0
  25. package/dist/declarations/src/links/internals/transformOperationResult.d.ts +16 -0
  26. package/dist/declarations/src/links/internals/transformOperationResult.d.ts.map +1 -0
  27. package/dist/declarations/src/links/loggerLink.d.ts +4 -3
  28. package/dist/declarations/src/links/loggerLink.d.ts.map +1 -1
  29. package/dist/declarations/src/links/splitLink.d.ts +4 -14
  30. package/dist/declarations/src/links/splitLink.d.ts.map +1 -1
  31. package/dist/declarations/src/links/transformerLink.d.ts +4 -0
  32. package/dist/declarations/src/links/transformerLink.d.ts.map +1 -0
  33. package/dist/declarations/src/links/types.d.ts +40 -0
  34. package/dist/declarations/src/links/types.d.ts.map +1 -0
  35. package/dist/declarations/src/links/wsLink.d.ts +4 -11
  36. package/dist/declarations/src/links/wsLink.d.ts.map +1 -1
  37. package/dist/declarations/src/rx/index.d.ts +3 -0
  38. package/dist/declarations/src/rx/index.d.ts.map +1 -0
  39. package/dist/declarations/src/rx/observable.d.ts +4 -0
  40. package/dist/declarations/src/rx/observable.d.ts.map +1 -0
  41. package/dist/declarations/src/rx/operators/index.d.ts +4 -0
  42. package/dist/declarations/src/rx/operators/index.d.ts.map +1 -0
  43. package/dist/declarations/src/rx/operators/map.d.ts +3 -0
  44. package/dist/declarations/src/rx/operators/map.d.ts.map +1 -0
  45. package/dist/declarations/src/rx/operators/share.d.ts +6 -0
  46. package/dist/declarations/src/rx/operators/share.d.ts.map +1 -0
  47. package/dist/declarations/src/rx/operators/tap.d.ts +3 -0
  48. package/dist/declarations/src/rx/operators/tap.d.ts.map +1 -0
  49. package/dist/declarations/src/rx/types.d.ts +29 -0
  50. package/dist/declarations/src/rx/types.d.ts.map +1 -0
  51. package/dist/declarations/src/rx/util/identity.d.ts +2 -0
  52. package/dist/declarations/src/rx/util/identity.d.ts.map +1 -0
  53. package/dist/declarations/src/rx/util/observableToPromise.d.ts +10 -0
  54. package/dist/declarations/src/rx/util/observableToPromise.d.ts.map +1 -0
  55. package/dist/declarations/src/rx/util/pipe.d.ts +4 -0
  56. package/dist/declarations/src/rx/util/pipe.d.ts.map +1 -0
  57. package/dist/httpUtils-299a66f6.cjs.prod.js +89 -0
  58. package/dist/httpUtils-a1426e14.cjs.dev.js +89 -0
  59. package/dist/httpUtils-e45c9056.esm.js +87 -0
  60. package/dist/observable-01534ea8.esm.js +102 -0
  61. package/dist/observable-9aad8c3e.cjs.dev.js +104 -0
  62. package/dist/observable-ccb54234.cjs.prod.js +104 -0
  63. package/dist/share-5a8c2543.cjs.prod.js +106 -0
  64. package/dist/share-ca585761.esm.js +104 -0
  65. package/dist/share-f2ac9332.cjs.dev.js +106 -0
  66. package/dist/tap-2d565250.cjs.dev.js +32 -0
  67. package/dist/tap-606957cb.esm.js +30 -0
  68. package/dist/tap-d907998d.cjs.prod.js +32 -0
  69. package/dist/trpc-client.cjs.dev.js +136 -215
  70. package/dist/trpc-client.cjs.prod.js +136 -215
  71. package/dist/trpc-client.esm.js +137 -216
  72. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +34 -52
  73. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +34 -52
  74. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +33 -51
  75. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +29 -52
  76. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +29 -52
  77. package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +29 -52
  78. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +31 -19
  79. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +31 -19
  80. package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +31 -19
  81. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +20 -7
  82. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +20 -7
  83. package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +20 -7
  84. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.d.ts +1 -0
  85. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.dev.js +67 -0
  86. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.js +7 -0
  87. package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.prod.js +67 -0
  88. package/links/transformerLink/dist/trpc-client-links-transformerLink.esm.js +63 -0
  89. package/links/transformerLink/package.json +4 -0
  90. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +57 -81
  91. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +57 -81
  92. package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +57 -81
  93. package/package.json +12 -8
  94. package/rx/dist/trpc-client-rx.cjs.d.ts +1 -0
  95. package/rx/dist/trpc-client-rx.cjs.dev.js +9 -0
  96. package/rx/dist/trpc-client-rx.cjs.js +7 -0
  97. package/rx/dist/trpc-client-rx.cjs.prod.js +9 -0
  98. package/rx/dist/trpc-client-rx.esm.js +1 -0
  99. package/rx/operators/dist/trpc-client-rx-operators.cjs.d.ts +1 -0
  100. package/rx/operators/dist/trpc-client-rx-operators.cjs.dev.js +39 -0
  101. package/rx/operators/dist/trpc-client-rx-operators.cjs.js +7 -0
  102. package/rx/operators/dist/trpc-client-rx-operators.cjs.prod.js +39 -0
  103. package/rx/operators/dist/trpc-client-rx-operators.esm.js +33 -0
  104. package/rx/operators/package.json +4 -0
  105. package/rx/package.json +4 -0
  106. package/src/TRPCClientError.ts +17 -21
  107. package/src/createTRPCClient.ts +4 -3
  108. package/src/index.ts +1 -1
  109. package/src/internals/TRPCClient.ts +80 -88
  110. package/src/internals/dataLoader.ts +1 -1
  111. package/src/internals/transformRPCResponse.ts +2 -2
  112. package/src/links/dedupeLink.test.ts +134 -0
  113. package/src/links/dedupeLink.ts +53 -0
  114. package/src/links/httpBatchLink.ts +37 -37
  115. package/src/links/httpLink.ts +26 -37
  116. package/src/{internals/httpRequest.ts → links/httpUtils.ts} +30 -21
  117. package/src/links/internals/createChain.test.ts +132 -0
  118. package/src/links/internals/createChain.ts +31 -0
  119. package/src/links/internals/transformOperationResult.ts +25 -0
  120. package/src/links/loggerLink.ts +40 -22
  121. package/src/links/retryLink.ts +45 -14
  122. package/src/links/splitLink.test.ts +56 -0
  123. package/src/links/splitLink.ts +23 -38
  124. package/src/links/transformerLink.ts +70 -0
  125. package/src/links/{core.ts → types.ts} +40 -46
  126. package/src/links/wsLink.ts +56 -77
  127. package/src/rx/index.ts +2 -0
  128. package/src/rx/observable.test.ts +83 -0
  129. package/src/rx/observable.ts +70 -0
  130. package/src/rx/operators/index.ts +3 -0
  131. package/src/rx/operators/map.test.ts +92 -0
  132. package/src/rx/operators/map.ts +25 -0
  133. package/src/rx/operators/share.test.ts +60 -0
  134. package/src/rx/operators/share.ts +67 -0
  135. package/src/rx/operators/tap.ts +26 -0
  136. package/src/rx/types.ts +69 -0
  137. package/src/rx/util/identity.ts +3 -0
  138. package/src/rx/util/observableToPromise.ts +49 -0
  139. package/src/rx/util/pipe.ts +22 -0
  140. package/dist/declarations/src/internals/TRPCAbortError.d.ts +0 -4
  141. package/dist/declarations/src/internals/TRPCAbortError.d.ts.map +0 -1
  142. package/dist/declarations/src/internals/executeChain.d.ts +0 -8
  143. package/dist/declarations/src/internals/executeChain.d.ts.map +0 -1
  144. package/dist/declarations/src/internals/httpRequest.d.ts +0 -14
  145. package/dist/declarations/src/internals/httpRequest.d.ts.map +0 -1
  146. package/dist/declarations/src/internals/observable.d.ts +0 -18
  147. package/dist/declarations/src/internals/observable.d.ts.map +0 -1
  148. package/dist/declarations/src/internals/transformRPCResponse.d.ts +0 -7
  149. package/dist/declarations/src/internals/transformRPCResponse.d.ts.map +0 -1
  150. package/dist/declarations/src/links/core.d.ts +0 -45
  151. package/dist/declarations/src/links/core.d.ts.map +0 -1
  152. package/dist/httpRequest-672ff1f0.esm.js +0 -128
  153. package/dist/httpRequest-7bfaf300.cjs.dev.js +0 -132
  154. package/dist/httpRequest-8c422e7a.cjs.prod.js +0 -132
  155. package/src/internals/TRPCAbortError.ts +0 -7
  156. package/src/internals/executeChain.ts +0 -67
  157. package/src/internals/observable.ts +0 -89
@@ -1 +1 @@
1
- {"version":3,"file":"splitLink.d.ts","sourceRoot":"../../../../src/links","sources":["splitLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE7C,wBAAgB,SAAS,CAAC,OAAO,SAAS,SAAS,GAAG,SAAS,EAC7D,IAAI,EAAE;IACJ,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC;CACvC,GAAG,CACA;IACE;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxB;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CAC1B,GACD;IACE;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxB;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CAC1B,CACJ,GACA,QAAQ,CAAC,OAAO,CAAC,CAgBnB"}
1
+ {"version":3,"file":"splitLink.d.ts","sourceRoot":"../../../../src/links","sources":["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,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>;
4
+ //# sourceMappingURL=transformerLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformerLink.d.ts","sourceRoot":"../../../../src/links","sources":["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,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>;
40
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"../../../../src/links","sources":["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"}
@@ -1,13 +1,7 @@
1
- import { AnyRouter, ProcedureType } from '@trpc/server';
2
- import { ObservableCallbacks, UnsubscribeFn } from '../internals/observable';
1
+ import { AnyRouter } from '@trpc/server';
3
2
  import { retryDelay } from '../internals/retryDelay';
4
- import { TRPCLink } from './core';
5
- declare type Operation = {
6
- id: number | string;
7
- type: ProcedureType;
8
- input: unknown;
9
- path: string;
10
- };
3
+ import { UnsubscribeFn } from '../rx';
4
+ import { Operation, OperationResultObserver, TRPCLink } from './types';
11
5
  export interface WebSocketClientOptions {
12
6
  url: string;
13
7
  WebSocket?: WebSocket;
@@ -15,7 +9,7 @@ export interface WebSocketClientOptions {
15
9
  }
16
10
  export declare function createWSClient(opts: WebSocketClientOptions): {
17
11
  close: () => void;
18
- request: (op: Operation, callbacks: ObservableCallbacks<any, any>) => UnsubscribeFn;
12
+ request: (op: Operation, callbacks: OperationResultObserver<AnyRouter<any>, unknown>) => UnsubscribeFn;
19
13
  getConnection(): WebSocket;
20
14
  };
21
15
  export declare type TRPCWebSocketClient = ReturnType<typeof createWSClient>;
@@ -23,5 +17,4 @@ export interface WebSocketLinkOptions {
23
17
  client: TRPCWebSocketClient;
24
18
  }
25
19
  export declare function wsLink<TRouter extends AnyRouter>(opts: WebSocketLinkOptions): TRPCLink<TRouter>;
26
- export {};
27
20
  //# sourceMappingURL=wsLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wsLink.d.ts","sourceRoot":"../../../../src/links","sources":["wsLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AASxD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,aAAK,SAAS,GAAG;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,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;;kBAiMpC,SAAS,+CAA0B,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,CA6DnB"}
1
+ {"version":3,"file":"wsLink.d.ts","sourceRoot":"../../../../src/links","sources":["wsLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,cAAc,CAAC;AAOxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGtC,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,CAkDnB"}
@@ -0,0 +1,3 @@
1
+ export * from './observable';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"../../../../src/rx","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Observable, Observer, TeardownLogic } from './types';
2
+ export declare type inferObservableValue<TObservable extends Observable<any, any>> = TObservable extends Observable<infer TValue, any> ? TValue : never;
3
+ export declare function observable<TValue, TError = unknown>(subscribe: (observer: Observer<TValue, TError>) => TeardownLogic): Observable<TValue, TError>;
4
+ //# sourceMappingURL=observable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable.d.ts","sourceRoot":"../../../../src/rx","sources":["observable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAoB,aAAa,EAAE,MAAM,SAAS,CAAC;AAEhF,oBAAY,oBAAoB,CAAC,WAAW,SAAS,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,IACvE,WAAW,SAAS,UAAU,CAAC,MAAM,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAErE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,EACjD,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,aAAa,GAC/D,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CA6D5B"}
@@ -0,0 +1,4 @@
1
+ export * from './share';
2
+ export * from './map';
3
+ export * from './tap';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"../../../../../src/rx/operators","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { OperatorFunction } from '../types';
2
+ export declare function map<TValueBefore, TError, TValueAfter>(project: (value: TValueBefore, index: number) => TValueAfter): OperatorFunction<TValueBefore, TError, TValueAfter, TError>;
3
+ //# sourceMappingURL=map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"../../../../../src/rx/operators","sources":["map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,wBAAgB,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EACnD,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,WAAW,GAC3D,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAoB7D"}
@@ -0,0 +1,6 @@
1
+ import { MonoTypeOperatorFunction } from '../types';
2
+ interface ShareConfig {
3
+ }
4
+ export declare function share<TValue, TError>(_opts?: ShareConfig): MonoTypeOperatorFunction<TValue, TError>;
5
+ export {};
6
+ //# sourceMappingURL=share.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"share.d.ts","sourceRoot":"../../../../../src/rx/operators","sources":["share.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAA4B,MAAM,UAAU,CAAC;AAG9E,UAAU,WAAW;CAAG;AACxB,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAElC,KAAK,CAAC,EAAE,WAAW,GAClB,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,CA2D1C"}
@@ -0,0 +1,3 @@
1
+ import { MonoTypeOperatorFunction, Observer } from '../types';
2
+ export declare function tap<TValue, TError>(observer: Partial<Observer<TValue, TError>>): MonoTypeOperatorFunction<TValue, TError>;
3
+ //# sourceMappingURL=tap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tap.d.ts","sourceRoot":"../../../../../src/rx/operators","sources":["tap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC1C,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,CAqB1C"}
@@ -0,0 +1,29 @@
1
+ export interface Unsubscribable {
2
+ unsubscribe(): void;
3
+ }
4
+ export declare type UnsubscribeFn = () => void;
5
+ export interface Subscribable<TValue, TError> {
6
+ subscribe(observer: Partial<Observer<TValue, TError>>): Unsubscribable;
7
+ }
8
+ export interface Observable<TValue, TError> extends Subscribable<TValue, TError> {
9
+ pipe(): Observable<TValue, TError>;
10
+ pipe<V1, E1>(op1: OperatorFunction<TValue, TError, V1, E1>): Observable<V1, E1>;
11
+ pipe<V1, E1, V2, E2>(op1: OperatorFunction<TValue, TError, V1, E1>, op2: OperatorFunction<V1, E1, V2, E2>): Observable<V2, E2>;
12
+ pipe<V1, E1, V2, E2, V3, E3>(op1: OperatorFunction<TValue, TError, V1, E1>, op2: OperatorFunction<V1, E1, V2, E2>, op3: OperatorFunction<V2, E2, V3, E3>): Observable<V2, E2>;
13
+ pipe<V1, E1, V2, E2, V3, E3, V4, E4>(op1: OperatorFunction<TValue, TError, V1, E1>, op2: OperatorFunction<V1, E1, V2, E2>, op3: OperatorFunction<V2, E2, V3, E3>, op4: OperatorFunction<V3, E3, V4, E4>): Observable<V2, E2>;
14
+ pipe<V1, E1, V2, E2, V3, E3, V4, E4, V5, E5>(op1: OperatorFunction<TValue, TError, V1, E1>, op2: OperatorFunction<V1, E1, V2, E2>, op3: OperatorFunction<V2, E2, V3, E3>, op4: OperatorFunction<V3, E3, V4, E4>, op5: OperatorFunction<V4, E4, V5, E5>): Observable<V2, E2>;
15
+ }
16
+ export interface SubscriptionLike extends Unsubscribable {
17
+ unsubscribe(): void;
18
+ readonly closed: boolean;
19
+ }
20
+ export interface Observer<TValue, TError> {
21
+ next: (value: TValue) => void;
22
+ error: (err: TError) => void;
23
+ complete: () => void;
24
+ }
25
+ export declare type TeardownLogic = Unsubscribable | UnsubscribeFn | void;
26
+ export declare type UnaryFunction<T, R> = (source: T) => R;
27
+ export declare type OperatorFunction<TValueBefore, TErrorBefore, TValueAfter, TErrorAfter> = UnaryFunction<Subscribable<TValueBefore, TErrorBefore>, Subscribable<TValueAfter, TErrorAfter>>;
28
+ export declare type MonoTypeOperatorFunction<TValue, TError> = OperatorFunction<TValue, TError, TValue, TError>;
29
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"../../../../src/rx","sources":["types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function identity<T>(x: T): T;
2
+ //# sourceMappingURL=identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"../../../../../src/rx/util","sources":["identity.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAEnC"}
@@ -0,0 +1,10 @@
1
+ import { Observable } from '../types';
2
+ export declare class ObservableAbortError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ /** @internal */
6
+ export declare function observableToPromise<TValue>(observable: Observable<TValue, unknown>): {
7
+ promise: Promise<TValue>;
8
+ abort: () => void;
9
+ };
10
+ //# sourceMappingURL=observableToPromise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observableToPromise.d.ts","sourceRoot":"../../../../../src/rx/util","sources":["observableToPromise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAK5B;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,MAAM,EACxC,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;;iBAEtB,IAAI;EAkCtB"}
@@ -0,0 +1,4 @@
1
+ import { UnaryFunction } from '../types';
2
+ /** @internal */
3
+ export declare function pipeFromArray<T, R>(fns: Array<UnaryFunction<T, R>>): UnaryFunction<T, R>;
4
+ //# sourceMappingURL=pipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipe.d.ts","sourceRoot":"../../../../../src/rx/util","sources":["pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,gBAAgB;AAChB,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC9B,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAerB"}
@@ -0,0 +1,89 @@
1
+ 'use strict';
2
+
3
+ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
+
5
+ // https://github.com/trpc/trpc/pull/669
6
+ function arrayToDict(array) {
7
+ var dict = {};
8
+
9
+ for (var index = 0; index < array.length; index++) {
10
+ var element = array[index];
11
+ dict[index] = element;
12
+ }
13
+
14
+ return dict;
15
+ }
16
+
17
+ var METHOD = {
18
+ query: 'GET',
19
+ mutation: 'POST',
20
+ subscription: 'PATCH'
21
+ };
22
+ function httpRequest(props) {
23
+ var type = props.type,
24
+ rt = props.runtime,
25
+ path = props.path;
26
+ var ac = rt.AbortController ? new rt.AbortController() : null;
27
+ var input = 'input' in props ? props.input : arrayToDict(props.inputs);
28
+
29
+ function getUrl() {
30
+ var url = props.url + '/' + path;
31
+ var queryParts = [];
32
+
33
+ if ('inputs' in props) {
34
+ queryParts.push('batch=1');
35
+ }
36
+
37
+ if (type === 'query' && input !== undefined) {
38
+ queryParts.push("input=".concat(encodeURIComponent(JSON.stringify(input))));
39
+ }
40
+
41
+ if (queryParts.length) {
42
+ url += '?' + queryParts.join('&');
43
+ }
44
+
45
+ return url;
46
+ }
47
+
48
+ function getBody() {
49
+ if (type === 'query') {
50
+ return undefined;
51
+ }
52
+
53
+ return input !== undefined ? JSON.stringify(input) : undefined;
54
+ }
55
+
56
+ var promise = new Promise(function (resolve, reject) {
57
+ var url = getUrl();
58
+ var meta = {};
59
+ Promise.resolve(rt.headers()).then(function (headers) {
60
+ return rt.fetch(url, {
61
+ method: METHOD[type],
62
+ signal: ac === null || ac === void 0 ? void 0 : ac.signal,
63
+ body: getBody(),
64
+ headers: _objectSpread({
65
+ 'content-type': 'application/json'
66
+ }, headers)
67
+ });
68
+ }).then(function (_res) {
69
+ meta.response = _res;
70
+ return _res.json();
71
+ }).then(function (json) {
72
+ resolve({
73
+ json: json,
74
+ meta: meta
75
+ });
76
+ }).catch(reject);
77
+ });
78
+
79
+ var cancel = function cancel() {
80
+ ac === null || ac === void 0 ? void 0 : ac.abort();
81
+ };
82
+
83
+ return {
84
+ promise: promise,
85
+ cancel: cancel
86
+ };
87
+ }
88
+
89
+ exports.httpRequest = httpRequest;
@@ -0,0 +1,89 @@
1
+ 'use strict';
2
+
3
+ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
+
5
+ // https://github.com/trpc/trpc/pull/669
6
+ function arrayToDict(array) {
7
+ var dict = {};
8
+
9
+ for (var index = 0; index < array.length; index++) {
10
+ var element = array[index];
11
+ dict[index] = element;
12
+ }
13
+
14
+ return dict;
15
+ }
16
+
17
+ var METHOD = {
18
+ query: 'GET',
19
+ mutation: 'POST',
20
+ subscription: 'PATCH'
21
+ };
22
+ function httpRequest(props) {
23
+ var type = props.type,
24
+ rt = props.runtime,
25
+ path = props.path;
26
+ var ac = rt.AbortController ? new rt.AbortController() : null;
27
+ var input = 'input' in props ? props.input : arrayToDict(props.inputs);
28
+
29
+ function getUrl() {
30
+ var url = props.url + '/' + path;
31
+ var queryParts = [];
32
+
33
+ if ('inputs' in props) {
34
+ queryParts.push('batch=1');
35
+ }
36
+
37
+ if (type === 'query' && input !== undefined) {
38
+ queryParts.push("input=".concat(encodeURIComponent(JSON.stringify(input))));
39
+ }
40
+
41
+ if (queryParts.length) {
42
+ url += '?' + queryParts.join('&');
43
+ }
44
+
45
+ return url;
46
+ }
47
+
48
+ function getBody() {
49
+ if (type === 'query') {
50
+ return undefined;
51
+ }
52
+
53
+ return input !== undefined ? JSON.stringify(input) : undefined;
54
+ }
55
+
56
+ var promise = new Promise(function (resolve, reject) {
57
+ var url = getUrl();
58
+ var meta = {};
59
+ Promise.resolve(rt.headers()).then(function (headers) {
60
+ return rt.fetch(url, {
61
+ method: METHOD[type],
62
+ signal: ac === null || ac === void 0 ? void 0 : ac.signal,
63
+ body: getBody(),
64
+ headers: _objectSpread({
65
+ 'content-type': 'application/json'
66
+ }, headers)
67
+ });
68
+ }).then(function (_res) {
69
+ meta.response = _res;
70
+ return _res.json();
71
+ }).then(function (json) {
72
+ resolve({
73
+ json: json,
74
+ meta: meta
75
+ });
76
+ }).catch(reject);
77
+ });
78
+
79
+ var cancel = function cancel() {
80
+ ac === null || ac === void 0 ? void 0 : ac.abort();
81
+ };
82
+
83
+ return {
84
+ promise: promise,
85
+ cancel: cancel
86
+ };
87
+ }
88
+
89
+ exports.httpRequest = httpRequest;
@@ -0,0 +1,87 @@
1
+ import _objectSpread from '@babel/runtime/helpers/esm/objectSpread2';
2
+
3
+ // https://github.com/trpc/trpc/pull/669
4
+ function arrayToDict(array) {
5
+ var dict = {};
6
+
7
+ for (var index = 0; index < array.length; index++) {
8
+ var element = array[index];
9
+ dict[index] = element;
10
+ }
11
+
12
+ return dict;
13
+ }
14
+
15
+ var METHOD = {
16
+ query: 'GET',
17
+ mutation: 'POST',
18
+ subscription: 'PATCH'
19
+ };
20
+ function httpRequest(props) {
21
+ var type = props.type,
22
+ rt = props.runtime,
23
+ path = props.path;
24
+ var ac = rt.AbortController ? new rt.AbortController() : null;
25
+ var input = 'input' in props ? props.input : arrayToDict(props.inputs);
26
+
27
+ function getUrl() {
28
+ var url = props.url + '/' + path;
29
+ var queryParts = [];
30
+
31
+ if ('inputs' in props) {
32
+ queryParts.push('batch=1');
33
+ }
34
+
35
+ if (type === 'query' && input !== undefined) {
36
+ queryParts.push("input=".concat(encodeURIComponent(JSON.stringify(input))));
37
+ }
38
+
39
+ if (queryParts.length) {
40
+ url += '?' + queryParts.join('&');
41
+ }
42
+
43
+ return url;
44
+ }
45
+
46
+ function getBody() {
47
+ if (type === 'query') {
48
+ return undefined;
49
+ }
50
+
51
+ return input !== undefined ? JSON.stringify(input) : undefined;
52
+ }
53
+
54
+ var promise = new Promise(function (resolve, reject) {
55
+ var url = getUrl();
56
+ var meta = {};
57
+ Promise.resolve(rt.headers()).then(function (headers) {
58
+ return rt.fetch(url, {
59
+ method: METHOD[type],
60
+ signal: ac === null || ac === void 0 ? void 0 : ac.signal,
61
+ body: getBody(),
62
+ headers: _objectSpread({
63
+ 'content-type': 'application/json'
64
+ }, headers)
65
+ });
66
+ }).then(function (_res) {
67
+ meta.response = _res;
68
+ return _res.json();
69
+ }).then(function (json) {
70
+ resolve({
71
+ json: json,
72
+ meta: meta
73
+ });
74
+ }).catch(reject);
75
+ });
76
+
77
+ var cancel = function cancel() {
78
+ ac === null || ac === void 0 ? void 0 : ac.abort();
79
+ };
80
+
81
+ return {
82
+ promise: promise,
83
+ cancel: cancel
84
+ };
85
+ }
86
+
87
+ export { httpRequest as h };
@@ -0,0 +1,102 @@
1
+ function identity(x) {
2
+ return x;
3
+ }
4
+
5
+ /** @internal */
6
+ function pipeFromArray(fns) {
7
+ if (fns.length === 0) {
8
+ return identity;
9
+ }
10
+
11
+ if (fns.length === 1) {
12
+ return fns[0];
13
+ }
14
+
15
+ return function piped(input) {
16
+ return fns.reduce(function (prev, fn) {
17
+ return fn(prev);
18
+ }, input);
19
+ };
20
+ }
21
+
22
+ function observable(_subscribe) {
23
+ var self = {
24
+ subscribe: function subscribe(observer) {
25
+ var teardownRef = null;
26
+ var isDone = false;
27
+ var unsubscribed = false;
28
+ var teardownImmediately = false;
29
+
30
+ function unsubscribe() {
31
+ if (teardownRef === null) {
32
+ teardownImmediately = true;
33
+ return;
34
+ }
35
+
36
+ if (unsubscribed) {
37
+ return;
38
+ }
39
+
40
+ unsubscribed = true;
41
+
42
+ if (typeof teardownRef === 'function') {
43
+ teardownRef();
44
+ } else if (teardownRef) {
45
+ teardownRef.unsubscribe();
46
+ }
47
+ }
48
+
49
+ teardownRef = _subscribe({
50
+ next: function next(value) {
51
+ var _observer$next;
52
+
53
+ if (isDone) {
54
+ return;
55
+ }
56
+
57
+ (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, value);
58
+ },
59
+ error: function error(err) {
60
+ var _observer$error;
61
+
62
+ if (isDone) {
63
+ return;
64
+ }
65
+
66
+ isDone = true;
67
+ (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, err);
68
+ unsubscribe();
69
+ },
70
+ complete: function complete() {
71
+ var _observer$complete;
72
+
73
+ if (isDone) {
74
+ return;
75
+ }
76
+
77
+ isDone = true;
78
+ (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
79
+ unsubscribe();
80
+ }
81
+ });
82
+
83
+ if (teardownImmediately) {
84
+ unsubscribe();
85
+ }
86
+
87
+ return {
88
+ unsubscribe: unsubscribe
89
+ };
90
+ },
91
+ pipe: function pipe() {
92
+ for (var _len = arguments.length, operations = new Array(_len), _key = 0; _key < _len; _key++) {
93
+ operations[_key] = arguments[_key];
94
+ }
95
+
96
+ return pipeFromArray(operations)(self);
97
+ }
98
+ };
99
+ return self;
100
+ }
101
+
102
+ export { observable as o };