@cardano-sdk/util-rxjs 0.7.42 → 0.8.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.
@@ -1,3 +1,4 @@
1
+ import { Logger } from 'ts-log';
1
2
  import { Observable, switchMap } from 'rxjs';
2
3
  import { RetryBackoffConfig } from 'backoff-rxjs';
3
4
  export interface ColdObservableProviderProps<T> {
@@ -9,6 +10,7 @@ export interface ColdObservableProviderProps<T> {
9
10
  combinator?: typeof switchMap;
10
11
  cancel$?: Observable<unknown>;
11
12
  pollUntil?: (v: T) => boolean;
13
+ logger: Logger;
12
14
  }
13
- export declare const coldObservableProvider: <T>({ provider, retryBackoffConfig, onFatalError, trigger$, equals, combinator, cancel$, pollUntil }: ColdObservableProviderProps<T>) => Observable<T>;
15
+ export declare const coldObservableProvider: <T>({ provider, retryBackoffConfig, onFatalError, trigger$, equals, combinator, cancel$, pollUntil, logger }: ColdObservableProviderProps<T>) => Observable<T>;
14
16
  //# sourceMappingURL=coldObservableProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coldObservableProvider.d.ts","sourceRoot":"","sources":["../../src/coldObservableProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,UAAU,EASV,SAAS,EAGV,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,kBAAkB,EAAgB,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW,2BAA2B,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,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;CAC/B;AAED,eAAO,MAAM,sBAAsB,wJAqD/B,CAAC"}
1
+ {"version":3,"file":"coldObservableProvider.d.ts","sourceRoot":"","sources":["../../src/coldObservableProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAEL,UAAU,EAUV,SAAS,EAGV,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,kBAAkB,EAAgB,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW,2BAA2B,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,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,sBAAsB,gKAsE/B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { InvalidStringError, strictEquals } from '@cardano-sdk/util';
2
- import { NEVER, Observable, Subject, concat, defer, distinctUntilChanged, from, merge, mergeMap, of, switchMap, takeUntil, throwError } from 'rxjs';
2
+ import { NEVER, Observable, Subject, catchError, concat, defer, distinctUntilChanged, from, merge, mergeMap, of, switchMap, takeUntil, throwError } from 'rxjs';
3
3
  import { retryBackoff } from 'backoff-rxjs';
4
- export const coldObservableProvider = ({ provider, retryBackoffConfig, onFatalError, trigger$ = of(true), equals = strictEquals, combinator = switchMap, cancel$ = NEVER, pollUntil = () => true }) => new Observable((subscriber) => {
4
+ export const coldObservableProvider = ({ provider, retryBackoffConfig, onFatalError, trigger$ = of(true), equals = strictEquals, combinator = switchMap, cancel$ = NEVER, pollUntil = () => true, logger }) => new Observable((subscriber) => {
5
5
  const cancelOnFatalError$ = new Subject();
6
6
  const internalCancel$ = merge(cancel$, cancelOnFatalError$);
7
7
  const sub = trigger$
@@ -11,14 +11,24 @@ export const coldObservableProvider = ({ provider, retryBackoffConfig, onFatalEr
11
11
  concat(of(v), throwError(() => new Error('polling')))))).pipe(retryBackoff({
12
12
  ...retryBackoffConfig,
13
13
  shouldRetry: (error) => {
14
- if (retryBackoffConfig.shouldRetry && !retryBackoffConfig.shouldRetry(error))
15
- return false;
14
+ logger.error(error);
15
+ if (retryBackoffConfig.shouldRetry) {
16
+ const shouldRetry = retryBackoffConfig.shouldRetry(error);
17
+ logger.debug(`Should retry: ${shouldRetry}`);
18
+ if (!shouldRetry) {
19
+ return false;
20
+ }
21
+ }
16
22
  if (error instanceof InvalidStringError) {
17
23
  onFatalError?.(error);
18
24
  cancelOnFatalError$.next(true);
25
+ return false;
19
26
  }
20
27
  return true;
21
28
  }
29
+ }), catchError((error) => {
30
+ onFatalError?.(error);
31
+ return throwError(() => error);
22
32
  }))), distinctUntilChanged(equals), takeUntil(internalCancel$))
23
33
  .subscribe(subscriber);
24
34
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"coldObservableProvider.js","sourceRoot":"","sources":["../../src/coldObservableProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EACL,KAAK,EACL,UAAU,EACV,OAAO,EACP,MAAM,EACN,KAAK,EACL,oBAAoB,EACpB,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,EAAE,EACF,SAAS,EACT,SAAS,EACT,UAAU,EACX,MAAM,MAAM,CAAC;AACd,OAAO,EAAsB,YAAY,EAAE,MAAM,cAAc,CAAC;AAahE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAI,EACxC,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,EACnB,MAAM,GAAG,YAAY,EACrB,UAAU,GAAG,SAAS,EACtB,OAAO,GAAG,KAAK,EACf,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,EACS,EAAE,EAAE,CACnC,IAAI,UAAU,CAAI,CAAC,UAAU,EAAE,EAAE;IAC/B,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAW,CAAC;IACnD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,QAAQ;SACjB,IAAI,CACH,UAAU,CAAC,GAAG,EAAE,CACd,KAAK,CAAC,GAAG,EAAE,CACT,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CACnB,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,SAAS,CAAC,CAAC,CAAC;QACV,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACP,CAAC;YACC,MAAM,CACJ,EAAE,CAAC,CAAC,CAAC,EACL,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CACvC,CACN,CACF,CACF,CAAC,IAAI,CACJ,YAAY,CAAC;QACX,GAAG,kBAAkB;QACrB,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,IAAI,kBAAkB,CAAC,WAAW,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE3F,IAAI,KAAK,YAAY,kBAAkB,EAAE;gBACvC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;gBACtB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC,CACH,CACF,EACD,oBAAoB,CAAC,MAAM,CAAC,EAC5B,SAAS,CAAC,eAAe,CAAC,CAC3B;SACA,SAAS,CAAC,UAAU,CAAC,CAAC;IAEzB,OAAO,GAAG,EAAE;QACV,GAAG,CAAC,WAAW,EAAE,CAAC;QAClB,mBAAmB,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"coldObservableProvider.js","sourceRoot":"","sources":["../../src/coldObservableProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EACL,KAAK,EACL,UAAU,EACV,OAAO,EACP,UAAU,EACV,MAAM,EACN,KAAK,EACL,oBAAoB,EACpB,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,EAAE,EACF,SAAS,EACT,SAAS,EACT,UAAU,EACX,MAAM,MAAM,CAAC;AACd,OAAO,EAAsB,YAAY,EAAE,MAAM,cAAc,CAAC;AAchE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAI,EACxC,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,EACnB,MAAM,GAAG,YAAY,EACrB,UAAU,GAAG,SAAS,EACtB,OAAO,GAAG,KAAK,EACf,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,EACtB,MAAM,EACyB,EAAE,EAAE,CACnC,IAAI,UAAU,CAAI,CAAC,UAAU,EAAE,EAAE;IAC/B,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAW,CAAC;IACnD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,QAAQ;SACjB,IAAI,CACH,UAAU,CAAC,GAAG,EAAE,CACd,KAAK,CAAC,GAAG,EAAE,CACT,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CACnB,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,SAAS,CAAC,CAAC,CAAC;QACV,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACP,CAAC;YACC,MAAM,CACJ,EAAE,CAAC,CAAC,CAAC,EACL,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CACvC,CACN,CACF,CACF,CAAC,IAAI,CACJ,YAAY,CAAC;QACX,GAAG,kBAAkB;QACrB,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAEpB,IAAI,kBAAkB,CAAC,WAAW,EAAE;gBAClC,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC1D,MAAM,CAAC,KAAK,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAC;gBAE7C,IAAI,CAAC,WAAW,EAAE;oBAChB,OAAO,KAAK,CAAC;iBACd;aACF;YAED,IAAI,KAAK,YAAY,kBAAkB,EAAE;gBACvC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;gBACtB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/B,OAAO,KAAK,CAAC;aACd;YAED,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC,EACF,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE;QACnB,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;QAGtB,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC,CACH,CACF,EACD,oBAAoB,CAAC,MAAM,CAAC,EAC5B,SAAS,CAAC,eAAe,CAAC,CAC3B;SACA,SAAS,CAAC,UAAU,CAAC,CAAC;IAEzB,OAAO,GAAG,EAAE;QACV,GAAG,CAAC,WAAW,EAAE,CAAC;QAClB,mBAAmB,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}