@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.
- package/dist/{TRPCClientError-bfee2bf5.cjs.dev.js → TRPCClientError-a5312a5f.cjs.dev.js} +14 -19
- package/dist/{TRPCClientError-09b8a26b.esm.js → TRPCClientError-e1da1ef0.esm.js} +14 -19
- package/dist/{TRPCClientError-e9bf96e9.cjs.prod.js → TRPCClientError-ea7d89b2.cjs.prod.js} +14 -19
- package/dist/createChain-93a38e1c.cjs.dev.js +27 -0
- package/dist/createChain-e45e052a.cjs.prod.js +27 -0
- package/dist/createChain-e45e6cf2.esm.js +25 -0
- package/dist/declarations/src/TRPCClientError.d.ts +6 -10
- package/dist/declarations/src/TRPCClientError.d.ts.map +1 -1
- package/dist/declarations/src/createTRPCClient.d.ts +1 -2
- package/dist/declarations/src/createTRPCClient.d.ts.map +1 -1
- package/dist/declarations/src/index.d.ts +1 -1
- package/dist/declarations/src/index.d.ts.map +1 -1
- package/dist/declarations/src/internals/TRPCClient.d.ts +17 -14
- package/dist/declarations/src/internals/TRPCClient.d.ts.map +1 -1
- package/dist/declarations/src/internals/dataLoader.d.ts +1 -1
- package/dist/declarations/src/internals/dataLoader.d.ts.map +1 -1
- package/dist/declarations/src/links/httpBatchLink.d.ts +2 -1
- package/dist/declarations/src/links/httpBatchLink.d.ts.map +1 -1
- package/dist/declarations/src/links/httpLink.d.ts +2 -1
- package/dist/declarations/src/links/httpLink.d.ts.map +1 -1
- package/dist/declarations/src/links/httpUtils.d.ts +22 -0
- package/dist/declarations/src/links/httpUtils.d.ts.map +1 -0
- package/dist/declarations/src/links/internals/createChain.d.ts +8 -0
- package/dist/declarations/src/links/internals/createChain.d.ts.map +1 -0
- package/dist/declarations/src/links/internals/transformOperationResult.d.ts +16 -0
- package/dist/declarations/src/links/internals/transformOperationResult.d.ts.map +1 -0
- package/dist/declarations/src/links/loggerLink.d.ts +4 -3
- package/dist/declarations/src/links/loggerLink.d.ts.map +1 -1
- package/dist/declarations/src/links/splitLink.d.ts +4 -14
- package/dist/declarations/src/links/splitLink.d.ts.map +1 -1
- package/dist/declarations/src/links/transformerLink.d.ts +4 -0
- package/dist/declarations/src/links/transformerLink.d.ts.map +1 -0
- package/dist/declarations/src/links/types.d.ts +40 -0
- package/dist/declarations/src/links/types.d.ts.map +1 -0
- package/dist/declarations/src/links/wsLink.d.ts +4 -11
- package/dist/declarations/src/links/wsLink.d.ts.map +1 -1
- package/dist/declarations/src/rx/index.d.ts +3 -0
- package/dist/declarations/src/rx/index.d.ts.map +1 -0
- package/dist/declarations/src/rx/observable.d.ts +4 -0
- package/dist/declarations/src/rx/observable.d.ts.map +1 -0
- package/dist/declarations/src/rx/operators/index.d.ts +4 -0
- package/dist/declarations/src/rx/operators/index.d.ts.map +1 -0
- package/dist/declarations/src/rx/operators/map.d.ts +3 -0
- package/dist/declarations/src/rx/operators/map.d.ts.map +1 -0
- package/dist/declarations/src/rx/operators/share.d.ts +6 -0
- package/dist/declarations/src/rx/operators/share.d.ts.map +1 -0
- package/dist/declarations/src/rx/operators/tap.d.ts +3 -0
- package/dist/declarations/src/rx/operators/tap.d.ts.map +1 -0
- package/dist/declarations/src/rx/types.d.ts +29 -0
- package/dist/declarations/src/rx/types.d.ts.map +1 -0
- package/dist/declarations/src/rx/util/identity.d.ts +2 -0
- package/dist/declarations/src/rx/util/identity.d.ts.map +1 -0
- package/dist/declarations/src/rx/util/observableToPromise.d.ts +10 -0
- package/dist/declarations/src/rx/util/observableToPromise.d.ts.map +1 -0
- package/dist/declarations/src/rx/util/pipe.d.ts +4 -0
- package/dist/declarations/src/rx/util/pipe.d.ts.map +1 -0
- package/dist/httpUtils-299a66f6.cjs.prod.js +89 -0
- package/dist/httpUtils-a1426e14.cjs.dev.js +89 -0
- package/dist/httpUtils-e45c9056.esm.js +87 -0
- package/dist/observable-01534ea8.esm.js +102 -0
- package/dist/observable-9aad8c3e.cjs.dev.js +104 -0
- package/dist/observable-ccb54234.cjs.prod.js +104 -0
- package/dist/share-5a8c2543.cjs.prod.js +106 -0
- package/dist/share-ca585761.esm.js +104 -0
- package/dist/share-f2ac9332.cjs.dev.js +106 -0
- package/dist/tap-2d565250.cjs.dev.js +32 -0
- package/dist/tap-606957cb.esm.js +30 -0
- package/dist/tap-d907998d.cjs.prod.js +32 -0
- package/dist/trpc-client.cjs.dev.js +136 -215
- package/dist/trpc-client.cjs.prod.js +136 -215
- package/dist/trpc-client.esm.js +137 -216
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.dev.js +34 -52
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.prod.js +34 -52
- package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.esm.js +33 -51
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.dev.js +29 -52
- package/links/httpLink/dist/trpc-client-links-httpLink.cjs.prod.js +29 -52
- package/links/httpLink/dist/trpc-client-links-httpLink.esm.js +29 -52
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.dev.js +31 -19
- package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.prod.js +31 -19
- package/links/loggerLink/dist/trpc-client-links-loggerLink.esm.js +31 -19
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.dev.js +20 -7
- package/links/splitLink/dist/trpc-client-links-splitLink.cjs.prod.js +20 -7
- package/links/splitLink/dist/trpc-client-links-splitLink.esm.js +20 -7
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.d.ts +1 -0
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.dev.js +67 -0
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.js +7 -0
- package/links/transformerLink/dist/trpc-client-links-transformerLink.cjs.prod.js +67 -0
- package/links/transformerLink/dist/trpc-client-links-transformerLink.esm.js +63 -0
- package/links/transformerLink/package.json +4 -0
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.dev.js +57 -81
- package/links/wsLink/dist/trpc-client-links-wsLink.cjs.prod.js +57 -81
- package/links/wsLink/dist/trpc-client-links-wsLink.esm.js +57 -81
- package/package.json +12 -8
- package/rx/dist/trpc-client-rx.cjs.d.ts +1 -0
- package/rx/dist/trpc-client-rx.cjs.dev.js +9 -0
- package/rx/dist/trpc-client-rx.cjs.js +7 -0
- package/rx/dist/trpc-client-rx.cjs.prod.js +9 -0
- package/rx/dist/trpc-client-rx.esm.js +1 -0
- package/rx/operators/dist/trpc-client-rx-operators.cjs.d.ts +1 -0
- package/rx/operators/dist/trpc-client-rx-operators.cjs.dev.js +39 -0
- package/rx/operators/dist/trpc-client-rx-operators.cjs.js +7 -0
- package/rx/operators/dist/trpc-client-rx-operators.cjs.prod.js +39 -0
- package/rx/operators/dist/trpc-client-rx-operators.esm.js +33 -0
- package/rx/operators/package.json +4 -0
- package/rx/package.json +4 -0
- package/src/TRPCClientError.ts +17 -21
- package/src/createTRPCClient.ts +4 -3
- package/src/index.ts +1 -1
- package/src/internals/TRPCClient.ts +80 -88
- package/src/internals/dataLoader.ts +1 -1
- package/src/internals/transformRPCResponse.ts +2 -2
- package/src/links/dedupeLink.test.ts +134 -0
- package/src/links/dedupeLink.ts +53 -0
- package/src/links/httpBatchLink.ts +37 -37
- package/src/links/httpLink.ts +26 -37
- package/src/{internals/httpRequest.ts → links/httpUtils.ts} +30 -21
- package/src/links/internals/createChain.test.ts +132 -0
- package/src/links/internals/createChain.ts +31 -0
- package/src/links/internals/transformOperationResult.ts +25 -0
- package/src/links/loggerLink.ts +40 -22
- package/src/links/retryLink.ts +45 -14
- package/src/links/splitLink.test.ts +56 -0
- package/src/links/splitLink.ts +23 -38
- package/src/links/transformerLink.ts +70 -0
- package/src/links/{core.ts → types.ts} +40 -46
- package/src/links/wsLink.ts +56 -77
- package/src/rx/index.ts +2 -0
- package/src/rx/observable.test.ts +83 -0
- package/src/rx/observable.ts +70 -0
- package/src/rx/operators/index.ts +3 -0
- package/src/rx/operators/map.test.ts +92 -0
- package/src/rx/operators/map.ts +25 -0
- package/src/rx/operators/share.test.ts +60 -0
- package/src/rx/operators/share.ts +67 -0
- package/src/rx/operators/tap.ts +26 -0
- package/src/rx/types.ts +69 -0
- package/src/rx/util/identity.ts +3 -0
- package/src/rx/util/observableToPromise.ts +49 -0
- package/src/rx/util/pipe.ts +22 -0
- package/dist/declarations/src/internals/TRPCAbortError.d.ts +0 -4
- package/dist/declarations/src/internals/TRPCAbortError.d.ts.map +0 -1
- package/dist/declarations/src/internals/executeChain.d.ts +0 -8
- package/dist/declarations/src/internals/executeChain.d.ts.map +0 -1
- package/dist/declarations/src/internals/httpRequest.d.ts +0 -14
- package/dist/declarations/src/internals/httpRequest.d.ts.map +0 -1
- package/dist/declarations/src/internals/observable.d.ts +0 -18
- package/dist/declarations/src/internals/observable.d.ts.map +0 -1
- package/dist/declarations/src/internals/transformRPCResponse.d.ts +0 -7
- package/dist/declarations/src/internals/transformRPCResponse.d.ts.map +0 -1
- package/dist/declarations/src/links/core.d.ts +0 -45
- package/dist/declarations/src/links/core.d.ts.map +0 -1
- package/dist/httpRequest-672ff1f0.esm.js +0 -128
- package/dist/httpRequest-7bfaf300.cjs.dev.js +0 -132
- package/dist/httpRequest-8c422e7a.cjs.prod.js +0 -132
- package/src/internals/TRPCAbortError.ts +0 -7
- package/src/internals/executeChain.ts +0 -67
- 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;
|
|
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
|
|
2
|
-
import { ObservableCallbacks, UnsubscribeFn } from '../internals/observable';
|
|
1
|
+
import { AnyRouter } from '@trpc/server';
|
|
3
2
|
import { retryDelay } from '../internals/retryDelay';
|
|
4
|
-
import {
|
|
5
|
-
|
|
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:
|
|
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,
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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":"AAAA,MAAM,WAAW,cAAc;IAC7B,WAAW,IAAI,IAAI,CAAC;CACrB;AACD,oBAAY,aAAa,GAAG,MAAM,IAAI,CAAC;AACvC,MAAM,WAAW,YAAY,CAAC,MAAM,EAAE,MAAM;IAC1C,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,cAAc,CAAC;CACxE;AACD,MAAM,WAAW,UAAU,CAAC,MAAM,EAAE,MAAM,CACxC,SAAQ,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;IACpC,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,EAAE,EAAE,EACT,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,GAC5C,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACjB,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACzB,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACjC,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACzC,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;CACvB;AACD,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,WAAW,IAAI,IAAI,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ,CAAC,MAAM,EAAE,MAAM;IACtC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,oBAAY,aAAa,GAEvB,cAAc,GAAG,aAAa,GAAG,IAAI,CAAC;AAExC,oBAAY,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;AAEnD,oBAAY,gBAAgB,CAC1B,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,IACT,aAAa,CACf,YAAY,CAAC,YAAY,EAAE,YAAY,CAAC,EACxC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CACvC,CAAC;AAEF,oBAAY,wBAAwB,CAAC,MAAM,EAAE,MAAM,IAAI,gBAAgB,CACrE,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,CACP,CAAC"}
|
|
@@ -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 @@
|
|
|
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 };
|