@cardano-sdk/util-rxjs 0.8.0 → 0.9.0
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/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/poll.d.ts +15 -0
- package/dist/cjs/poll.d.ts.map +1 -0
- package/dist/cjs/poll.js +28 -0
- package/dist/cjs/poll.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/poll.d.ts +15 -0
- package/dist/esm/poll.d.ts.map +1 -0
- package/dist/esm/poll.js +24 -0
- package/dist/esm/poll.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/dist/cjs/coldObservableProvider.d.ts +0 -16
- package/dist/cjs/coldObservableProvider.d.ts.map +0 -1
- package/dist/cjs/coldObservableProvider.js +0 -43
- package/dist/cjs/coldObservableProvider.js.map +0 -1
- package/dist/esm/coldObservableProvider.d.ts +0 -16
- package/dist/esm/coldObservableProvider.d.ts.map +0 -1
- package/dist/esm/coldObservableProvider.js +0 -39
- package/dist/esm/coldObservableProvider.js.map +0 -1
package/dist/cjs/index.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ export * from './passthrough';
|
|
|
5
5
|
export * from './finalizeWithLatest';
|
|
6
6
|
export * from './concatAndCombineLatest';
|
|
7
7
|
export * from './shareRetryBackoff';
|
|
8
|
-
export * from './
|
|
8
|
+
export * from './poll';
|
|
9
9
|
export * from './types';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -21,6 +21,6 @@ __exportStar(require("./passthrough"), exports);
|
|
|
21
21
|
__exportStar(require("./finalizeWithLatest"), exports);
|
|
22
22
|
__exportStar(require("./concatAndCombineLatest"), exports);
|
|
23
23
|
__exportStar(require("./shareRetryBackoff"), exports);
|
|
24
|
-
__exportStar(require("./
|
|
24
|
+
__exportStar(require("./poll"), exports);
|
|
25
25
|
__exportStar(require("./types"), exports);
|
|
26
26
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,2DAAyC;AACzC,4CAA0B;AAC1B,gDAA8B;AAC9B,uDAAqC;AACrC,2DAAyC;AACzC,sDAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,2DAAyC;AACzC,4CAA0B;AAC1B,gDAA8B;AAC9B,uDAAqC;AACrC,2DAAyC;AACzC,sDAAoC;AACpC,yCAAuB;AACvB,0CAAwB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Logger } from 'ts-log';
|
|
2
|
+
import { Observable, switchMap } from 'rxjs';
|
|
3
|
+
import { RetryBackoffConfig } from 'backoff-rxjs';
|
|
4
|
+
export interface PollProps<T> {
|
|
5
|
+
sample: () => Promise<T>;
|
|
6
|
+
retryBackoffConfig: RetryBackoffConfig;
|
|
7
|
+
trigger$?: Observable<unknown>;
|
|
8
|
+
equals?: (t1: T, t2: T) => boolean;
|
|
9
|
+
combinator?: typeof switchMap;
|
|
10
|
+
cancel$?: Observable<unknown>;
|
|
11
|
+
pollUntil?: (v: T) => boolean;
|
|
12
|
+
logger: Logger;
|
|
13
|
+
}
|
|
14
|
+
export declare const poll: <T>({ sample, retryBackoffConfig, trigger$, equals, combinator, cancel$, pollUntil, logger }: PollProps<T>) => Observable<T>;
|
|
15
|
+
//# sourceMappingURL=poll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poll.d.ts","sourceRoot":"","sources":["../../src/poll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAEL,UAAU,EAOV,SAAS,EAGV,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,kBAAkB,EAAgB,MAAM,cAAc,CAAC;AAKhE,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,IAAI,8HAgDd,CAAC"}
|
package/dist/cjs/poll.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.poll = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const backoff_rxjs_1 = require("backoff-rxjs");
|
|
6
|
+
const util_1 = require("@cardano-sdk/util");
|
|
7
|
+
const POLL_UNTIL_RETRY = Symbol('POLL_UNTIL_RETRY');
|
|
8
|
+
const poll = ({ sample, retryBackoffConfig, trigger$ = (0, rxjs_1.of)(true), equals = util_1.strictEquals, combinator = rxjs_1.switchMap, cancel$ = rxjs_1.NEVER, pollUntil = () => true, logger }) => trigger$.pipe(combinator(() => (0, rxjs_1.defer)(() => (0, rxjs_1.from)(sample()).pipe((0, rxjs_1.mergeMap)((v) => pollUntil(v)
|
|
9
|
+
? (0, rxjs_1.of)(v)
|
|
10
|
+
:
|
|
11
|
+
(0, rxjs_1.concat)((0, rxjs_1.of)(v), (0, rxjs_1.throwError)(() => POLL_UNTIL_RETRY))))).pipe((0, backoff_rxjs_1.retryBackoff)({
|
|
12
|
+
...retryBackoffConfig,
|
|
13
|
+
shouldRetry: (error) => {
|
|
14
|
+
if (error === POLL_UNTIL_RETRY) {
|
|
15
|
+
logger.warn('"pollUntil" condition not met, will retry');
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
logger.error(error);
|
|
19
|
+
if (retryBackoffConfig.shouldRetry) {
|
|
20
|
+
const shouldRetry = retryBackoffConfig.shouldRetry(error);
|
|
21
|
+
logger.debug(`Should retry: ${shouldRetry}`);
|
|
22
|
+
return shouldRetry;
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
}))), (0, rxjs_1.distinctUntilChanged)(equals), (0, rxjs_1.takeUntil)(cancel$));
|
|
27
|
+
exports.poll = poll;
|
|
28
|
+
//# sourceMappingURL=poll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poll.js","sourceRoot":"","sources":["../../src/poll.ts"],"names":[],"mappings":";;;AACA,+BAYc;AACd,+CAAgE;AAChE,4CAAiD;AAEjD,MAAM,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAa7C,MAAM,IAAI,GAAG,CAAI,EACtB,MAAM,EACN,kBAAkB,EAClB,QAAQ,GAAG,IAAA,SAAE,EAAC,IAAI,CAAC,EACnB,MAAM,GAAG,mBAAY,EACrB,UAAU,GAAG,gBAAS,EACtB,OAAO,GAAG,YAAK,EACf,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,EACtB,MAAM,EACO,EAAE,EAAE,CACjB,QAAQ,CAAC,IAAI,CACX,UAAU,CAAC,GAAG,EAAE,CACd,IAAA,YAAK,EAAC,GAAG,EAAE,CACT,IAAA,WAAI,EAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACjB,IAAA,eAAQ,EAAC,CAAC,CAAC,EAAE,EAAE,CACb,SAAS,CAAC,CAAC,CAAC;IACV,CAAC,CAAC,IAAA,SAAE,EAAC,CAAC,CAAC;IACP,CAAC;QACC,IAAA,aAAM,EACJ,IAAA,SAAE,EAAC,CAAC,CAAC,EACL,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,CACnC,CACN,CACF,CACF,CAAC,IAAI,CACJ,IAAA,2BAAY,EAAC;IACX,GAAG,kBAAkB;IACrB,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;QACrB,IAAI,KAAK,KAAK,gBAAgB,EAAE;YAC9B,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YACzD,OAAO,IAAI,CAAC;SACb;QAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEpB,IAAI,kBAAkB,CAAC,WAAW,EAAE;YAClC,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC1D,MAAM,CAAC,KAAK,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAC;YAC7C,OAAO,WAAW,CAAC;SACpB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC,CACH,CACF,EACD,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAC5B,IAAA,gBAAS,EAAC,OAAO,CAAC,CACnB,CAAC;AAhDS,QAAA,IAAI,QAgDb"}
|