rxjs-poll 2.2.2 → 2.2.4

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 (45) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +263 -263
  3. package/dist/cjs/index.js +134 -78
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/esm/index.js +135 -79
  6. package/dist/esm/index.js.map +1 -1
  7. package/dist/types/common/service.d.ts +9 -0
  8. package/dist/types/common/service.d.ts.map +1 -0
  9. package/dist/types/constants/config.const.d.ts +1 -1
  10. package/dist/types/constants/state.const.d.ts +8 -0
  11. package/dist/types/constants/state.const.d.ts.map +1 -0
  12. package/dist/types/constants/timing.const.d.ts +6 -0
  13. package/dist/types/constants/timing.const.d.ts.map +1 -0
  14. package/dist/types/observables/factory.d.ts +11 -0
  15. package/dist/types/observables/factory.d.ts.map +1 -0
  16. package/dist/types/observables/interval-poller.d.ts +3 -3
  17. package/dist/types/observables/interval-poller.d.ts.map +1 -1
  18. package/dist/types/observables/pause-delay.d.ts +7 -0
  19. package/dist/types/observables/pause-delay.d.ts.map +1 -0
  20. package/dist/types/observables/repeat-poller.d.ts +3 -3
  21. package/dist/types/observables/repeat-poller.d.ts.map +1 -1
  22. package/dist/types/operators/retry-pol.operator.d.ts +11 -0
  23. package/dist/types/operators/retry-pol.operator.d.ts.map +1 -0
  24. package/dist/types/poll.d.ts +1 -1
  25. package/dist/types/poll.d.ts.map +1 -1
  26. package/dist/types/types/config.type.d.ts +1 -1
  27. package/dist/types/types/observables.type.d.ts +9 -21
  28. package/dist/types/types/observables.type.d.ts.map +1 -1
  29. package/dist/types/types/poll.type.d.ts +1 -6
  30. package/dist/types/types/poll.type.d.ts.map +1 -1
  31. package/dist/types/types/retry.type.d.ts +7 -0
  32. package/dist/types/types/retry.type.d.ts.map +1 -0
  33. package/dist/types/types/service.type.d.ts +18 -0
  34. package/dist/types/types/service.type.d.ts.map +1 -0
  35. package/dist/umd/index.js +134 -78
  36. package/dist/umd/index.js.map +1 -1
  37. package/dist/umd/index.min.js +1 -1
  38. package/dist/umd/index.min.js.map +1 -1
  39. package/package.json +5 -5
  40. package/dist/types/common/state.d.ts +0 -8
  41. package/dist/types/common/state.d.ts.map +0 -1
  42. package/dist/types/observables/poller-factory.d.ts +0 -11
  43. package/dist/types/observables/poller-factory.d.ts.map +0 -1
  44. package/dist/types/observables/retry-operator.d.ts +0 -11
  45. package/dist/types/observables/retry-operator.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/constants/poll.const.ts","../../src/constants/strategies.const.ts","../../src/constants/config.const.ts","../../src/common/utils.ts","../../src/common/strategies.ts","../../src/common/config.ts","../../src/common/state.ts","../../src/observables/document-visibility.ts","../../src/observables/repeat-with.ts","../../src/observables/interval-poller.ts","../../src/observables/repeat-poller.ts","../../src/observables/retry-operator.ts","../../src/observables/poller-factory.ts","../../src/poll.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/constants/poll.const.ts","../../src/constants/strategies.const.ts","../../src/constants/config.const.ts","../../src/common/utils.ts","../../src/common/strategies.ts","../../src/common/config.ts","../../src/constants/state.const.ts","../../src/common/service.ts","../../src/operators/retry-pol.operator.ts","../../src/observables/document-visibility.ts","../../src/constants/timing.const.ts","../../src/observables/pause-delay.ts","../../src/observables/repeat-with.ts","../../src/observables/interval-poller.ts","../../src/observables/repeat-poller.ts","../../src/observables/factory.ts","../../src/poll.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ExtendedPollConfig } from '../types/config.type';
2
+ import { PollStateService } from '../types/service.type';
3
+ /**
4
+ * Creates a polling state service that manages poll state and provides methods for state manipulation.
5
+ * @param extendedConfig - Extended poll configuration with computed time producer functions
6
+ * @returns Poll state service with methods for managing poll state and retrieving timing values
7
+ */
8
+ export declare function createPollService<T>(extendedConfig: ExtendedPollConfig<T>): PollStateService<T>;
9
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/common/service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAwB,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAiD/F"}
@@ -1,4 +1,4 @@
1
- export declare const controlConfig: {
1
+ export declare const defaultConfig: {
2
2
  readonly type: "repeat";
3
3
  readonly delay: {
4
4
  readonly strategy: "constant";
@@ -0,0 +1,8 @@
1
+ export declare const defaultState: {
2
+ readonly value: undefined;
3
+ readonly error: undefined;
4
+ readonly pollCount: 0;
5
+ readonly retryCount: 0;
6
+ readonly consecutiveRetryCount: 0;
7
+ };
8
+ //# sourceMappingURL=state.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.const.d.ts","sourceRoot":"","sources":["../../../src/constants/state.const.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;CAMc,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Timing tolerance in milliseconds to compensate for JavaScript timing inaccuracies.
3
+ * Used when calculating pause delays in document visibility pause/resume logic.
4
+ */
5
+ export declare const timingToleranceMs = 100;
6
+ //# sourceMappingURL=timing.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timing.const.d.ts","sourceRoot":"","sources":["../../../src/constants/timing.const.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { Observable } from 'rxjs';
2
+ import { PollStateService } from '../types/service.type';
3
+ /**
4
+ * Creates a polling observable that repeatedly executes the source observable.
5
+ * Selects between interval-based or repeat-based polling based on configuration.
6
+ * @param source$ - The source observable to poll
7
+ * @param pollService - Poll state service managing configuration and state
8
+ * @returns Observable that emits values from the source with configured polling behavior
9
+ */
10
+ export declare function createPoller$<T>(source$: Observable<T>, pollService: PollStateService<T>): Observable<T>;
11
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/observables/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,MAAM,CAAC;AAGjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIzD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAYxG"}
@@ -1,11 +1,11 @@
1
1
  import { Observable } from 'rxjs';
2
- import { PollerBuilderOptions } from '../types/observables.type';
2
+ import { PollStateService } from '../types/service.type';
3
3
  /**
4
4
  * Builds an interval-based poller that polls at fixed intervals regardless of source duration.
5
5
  * If a source takes longer than the interval, it will be interrupted.
6
6
  * @param source$ - The source observable to poll
7
- * @param options - See {@link PollerBuilderOptions}
7
+ * @param pollService - Poll state service managing configuration and state
8
8
  * @returns Observable that emits values from the source at fixed intervals
9
9
  */
10
- export declare function buildIntervalPoller$<T>(source$: Observable<T>, { nextDelayTime, pauseWhenHidden }: PollerBuilderOptions<T>): Observable<T>;
10
+ export declare function buildIntervalPoller$<T>(source$: Observable<T>, pollService: PollStateService<T>): Observable<T>;
11
11
  //# sourceMappingURL=interval-poller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interval-poller.d.ts","sourceRoot":"","sources":["../../../src/observables/interval-poller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAwB,MAAM,MAAM,CAAC;AAG/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAIjE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EACtB,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC1D,UAAU,CAAC,CAAC,CAAC,CAef"}
1
+ {"version":3,"file":"interval-poller.d.ts","sourceRoot":"","sources":["../../../src/observables/interval-poller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA+B,MAAM,MAAM,CAAC;AAI/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAKzD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAmD/G"}
@@ -0,0 +1,7 @@
1
+ import { Observable } from 'rxjs';
2
+ import { PauseDelayOptions } from '../types/observables.type';
3
+ /**
4
+ * Returns an observable that emits null after the computed pause delay, or immediately if delay <= 0
5
+ */
6
+ export declare function getPauseDelay$(options: PauseDelayOptions): Observable<null>;
7
+ //# sourceMappingURL=pause-delay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pause-delay.d.ts","sourceRoot":"","sources":["../../../src/observables/pause-delay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,UAAU,EAAa,MAAM,MAAM,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,CAK3E"}
@@ -1,11 +1,11 @@
1
1
  import { Observable } from 'rxjs';
2
- import { PollerBuilderOptions } from '../types/observables.type';
2
+ import { PollStateService } from '../types/service.type';
3
3
  /**
4
4
  * Builds a repeat-based poller that waits for source completion before starting the next delay.
5
5
  * Each poll cycle completes the source before scheduling the next poll.
6
6
  * @param source$ - The source observable to poll
7
- * @param options - See {@link PollerBuilderOptions}
7
+ * @param pollService - Poll state service managing configuration and state
8
8
  * @returns Observable that emits values from the source with delays between completions
9
9
  */
10
- export declare function buildRepeatPoller$<T>(source$: Observable<T>, { nextDelayTime, pauseWhenHidden }: PollerBuilderOptions<T>): Observable<T>;
10
+ export declare function buildRepeatPoller$<T>(source$: Observable<T>, pollService: PollStateService<T>): Observable<T>;
11
11
  //# sourceMappingURL=repeat-poller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repeat-poller.d.ts","sourceRoot":"","sources":["../../../src/observables/repeat-poller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,UAAU,EAAW,MAAM,MAAM,CAAC;AAGhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAIjE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EACtB,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC1D,UAAU,CAAC,CAAC,CAAC,CAgBf"}
1
+ {"version":3,"file":"repeat-poller.d.ts","sourceRoot":"","sources":["../../../src/observables/repeat-poller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAsB,MAAM,MAAM,CAAC;AAIhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAKzD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAyB7G"}
@@ -0,0 +1,11 @@
1
+ import { MonoTypeOperatorFunction } from 'rxjs';
2
+ import { PollStateService } from '../types/service.type';
3
+ /**
4
+ * Custom retry operator for polling with configurable retry logic.
5
+ * Handles retry counting, limit checking, and error state management.
6
+ * @param pollService - Poll state service managing configuration and state
7
+ * @param getRetryTime - Optional function to override retry time calculation
8
+ * @returns Operator function that adds retry logic to the source observable
9
+ */
10
+ export declare function retryPoll<T>(pollService: PollStateService<T>, getRetryTime?: () => number): MonoTypeOperatorFunction<T>;
11
+ //# sourceMappingURL=retry-pol.operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry-pol.operator.d.ts","sourceRoot":"","sources":["../../../src/operators/retry-pol.operator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAiC,MAAM,MAAM,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAChC,YAAY,CAAC,EAAE,MAAM,MAAM,GAC1B,wBAAwB,CAAC,CAAC,CAAC,CAkB7B"}
@@ -16,7 +16,7 @@ import { Nil } from './types/utils.type';
16
16
  * request$
17
17
  * .pipe(
18
18
  * poll(),
19
- * takeWhile(({ isDone }) => !isDone, true)
19
+ * takeWhile(({ status }) => status !== 'done', true)
20
20
  * )
21
21
  * .subscribe();
22
22
  * ```
@@ -1 +1 @@
1
- {"version":3,"file":"poll.d.ts","sourceRoot":"","sources":["../../src/poll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,MAAM,CAAC;AAKhD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAUjF"}
1
+ {"version":3,"file":"poll.d.ts","sourceRoot":"","sources":["../../src/poll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,MAAM,CAAC;AAKhD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAQjF"}
@@ -25,7 +25,7 @@ export type PollConfig<T> = {
25
25
  * - "true": Pause polling when tab isn't active, and resume on active
26
26
  * - "false": Poll even when tab isn't focused
27
27
  * @default true
28
- * @note Every started cycle finishes before pausing
28
+ * @note Every started cycle (poll or retry) finishes before pausing
29
29
  */
30
30
  pauseWhenHidden?: boolean | Nil;
31
31
  };
@@ -1,24 +1,12 @@
1
- import { Observable } from 'rxjs';
2
- import { PollConfig } from './config.type';
3
- import { PollState } from './poll.type';
4
1
  /**
5
- * Factory that creates a polling Observable
6
- * @param state - Poll state object containing polling metadata
7
- * @returns Observable that emits values of type T
2
+ * Options for calculating pause delays in document visibility scenarios
8
3
  */
9
- export type PollerFactory<T> = (state: PollState<T>) => Observable<T>;
10
- /**
11
- * Options for building a repeat poller observable.
12
- * @property nextDelayTime - Function that returns the next polling delay (ms)
13
- * @property pauseWhenHidden - Whether polling should pause when the document is hidden
14
- */
15
- export type PollerBuilderOptions<T> = {
16
- nextDelayTime: () => number;
17
- } & Pick<PollConfig<T>, 'pauseWhenHidden'>;
18
- /**
19
- * Function type that produces the next delay time based on the provided value.
20
- * @param value - Last emitted value
21
- * @returns Next delay time in milliseconds
22
- */
23
- export type NextTimeProducer<T> = (value: T) => number;
4
+ export type PauseDelayOptions = {
5
+ /** Target delay time in milliseconds */
6
+ time: number;
7
+ /** Timestamp when the source operation started */
8
+ sourceStartTime?: number;
9
+ /** Timestamp when the source operation ended */
10
+ sourceEndTime?: number;
11
+ };
24
12
  //# sourceMappingURL=observables.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"observables.type.d.ts","sourceRoot":"","sources":["../../../src/types/observables.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;AAEtE;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI;IACpC,aAAa,EAAE,MAAM,MAAM,CAAC;CAC7B,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC"}
1
+ {"version":3,"file":"observables.type.d.ts","sourceRoot":"","sources":["../../../src/types/observables.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { pollMode, pollType } from '../constants/poll.const';
2
+ import { RetryKey } from './retry.type';
2
3
  /**
3
4
  * Defines the polling behavior mode
4
5
  * - "delay": Delay mode
@@ -22,12 +23,6 @@ export type PollState<T> = {
22
23
  /** Total number of successful poll operations */
23
24
  pollCount: number;
24
25
  } & Record<RetryKey, number>;
25
- /**
26
- * Keys for retry counting in PollState
27
- * - "retryCount": Total number of retry attempts
28
- * - "consecutiveRetryCount": Current number of consecutive retry attempts
29
- */
30
- export type RetryKey = 'retryCount' | 'consecutiveRetryCount';
31
26
  /**
32
27
  * All possible keys in the PollState object
33
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"poll.type.d.ts","sourceRoot":"","sources":["../../../src/types/poll.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IACzB,8FAA8F;IAC9F,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;IACrB,iCAAiC;IAEjC,KAAK,EAAE,GAAG,GAAG,SAAS,CAAC;IACvB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;CAMnB,GAAG,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,uBAAuB,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;AAErD;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC"}
1
+ {"version":3,"file":"poll.type.d.ts","sourceRoot":"","sources":["../../../src/types/poll.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IACzB,8FAA8F;IAC9F,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;IACrB,iCAAiC;IAEjC,KAAK,EAAE,GAAG,GAAG,SAAS,CAAC;IACvB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;CAMnB,GAAG,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAE7B;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;AAErD;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Keys for retry counting in PollState
3
+ * - "retryCount": Total number of retry attempts
4
+ * - "consecutiveRetryCount": Current number of consecutive retry attempts
5
+ */
6
+ export type RetryKey = 'retryCount' | 'consecutiveRetryCount';
7
+ //# sourceMappingURL=retry.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.type.d.ts","sourceRoot":"","sources":["../../../src/types/retry.type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,uBAAuB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { NormalizedPollConfig } from './config.type';
2
+ import { PollState } from './poll.type';
3
+ /**
4
+ * Service interface for managing poll state and configuration
5
+ */
6
+ export type PollStateService<T> = {
7
+ readonly config: Readonly<NormalizedPollConfig<T>>;
8
+ readonly state: Readonly<PollState<T>>;
9
+ setValue: (value: T) => void;
10
+ setError: (error: any) => void;
11
+ resetError: () => void;
12
+ isRetryLimit: () => boolean;
13
+ incrementPoll: () => void;
14
+ incrementRetry: () => void;
15
+ getDelayTime: () => number;
16
+ getRetryTime: () => number;
17
+ };
18
+ //# sourceMappingURL=service.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.type.d.ts","sourceRoot":"","sources":["../../../src/types/service.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAE7B,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,OAAO,CAAC;IAC5B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,MAAM,CAAC;CAC5B,CAAC"}
package/dist/umd/index.js CHANGED
@@ -17,7 +17,7 @@
17
17
  DYNAMIC: 'dynamic',
18
18
  };
19
19
 
20
- const controlConfig = {
20
+ const defaultConfig = {
21
21
  type: pollType.REPEAT,
22
22
  delay: {
23
23
  strategy: strategyType.CONSTANT,
@@ -100,7 +100,7 @@
100
100
  return Object.assign(Object.assign({}, normalizedConfig), { getDelayTime: getTimeProducer('delay', normalizedConfig), getRetryTime: getTimeProducer('retry', normalizedConfig) });
101
101
  }
102
102
  function getTimeProducer(mode, config) {
103
- const defaultTime = controlConfig[mode].time;
103
+ const defaultTime = defaultConfig[mode].time;
104
104
  const timeProducer = getStrategyTimeProducer(mode, config);
105
105
  return (state) => {
106
106
  const producedTime = timeProducer(Object.assign({}, state));
@@ -111,32 +111,88 @@
111
111
  function normalizeConfig(config) {
112
112
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
113
113
  return {
114
- type: (_a = config === null || config === void 0 ? void 0 : config.type) !== null && _a !== void 0 ? _a : controlConfig.type,
114
+ type: (_a = config === null || config === void 0 ? void 0 : config.type) !== null && _a !== void 0 ? _a : defaultConfig.type,
115
115
  delay: {
116
- strategy: (_c = (_b = config === null || config === void 0 ? void 0 : config.delay) === null || _b === void 0 ? void 0 : _b.strategy) !== null && _c !== void 0 ? _c : controlConfig.delay.strategy,
116
+ strategy: (_c = (_b = config === null || config === void 0 ? void 0 : config.delay) === null || _b === void 0 ? void 0 : _b.strategy) !== null && _c !== void 0 ? _c : defaultConfig.delay.strategy,
117
117
  time: isFunction((_d = config === null || config === void 0 ? void 0 : config.delay) === null || _d === void 0 ? void 0 : _d.time)
118
118
  ? config.delay.time
119
- : normalizeNumber((_e = config === null || config === void 0 ? void 0 : config.delay) === null || _e === void 0 ? void 0 : _e.time, controlConfig.delay.time),
119
+ : normalizeNumber((_e = config === null || config === void 0 ? void 0 : config.delay) === null || _e === void 0 ? void 0 : _e.time, defaultConfig.delay.time),
120
120
  },
121
121
  retry: {
122
- strategy: (_g = (_f = config === null || config === void 0 ? void 0 : config.retry) === null || _f === void 0 ? void 0 : _f.strategy) !== null && _g !== void 0 ? _g : controlConfig.retry.strategy,
122
+ strategy: (_g = (_f = config === null || config === void 0 ? void 0 : config.retry) === null || _f === void 0 ? void 0 : _f.strategy) !== null && _g !== void 0 ? _g : defaultConfig.retry.strategy,
123
123
  time: isFunction((_h = config === null || config === void 0 ? void 0 : config.retry) === null || _h === void 0 ? void 0 : _h.time)
124
124
  ? config.retry.time
125
- : normalizeNumber((_j = config === null || config === void 0 ? void 0 : config.retry) === null || _j === void 0 ? void 0 : _j.time, controlConfig.retry.time),
126
- limit: normalizeNumber((_k = config === null || config === void 0 ? void 0 : config.retry) === null || _k === void 0 ? void 0 : _k.limit, controlConfig.retry.limit, false),
127
- consecutiveOnly: (_m = (_l = config === null || config === void 0 ? void 0 : config.retry) === null || _l === void 0 ? void 0 : _l.consecutiveOnly) !== null && _m !== void 0 ? _m : controlConfig.retry.consecutiveOnly,
125
+ : normalizeNumber((_j = config === null || config === void 0 ? void 0 : config.retry) === null || _j === void 0 ? void 0 : _j.time, defaultConfig.retry.time),
126
+ limit: normalizeNumber((_k = config === null || config === void 0 ? void 0 : config.retry) === null || _k === void 0 ? void 0 : _k.limit, defaultConfig.retry.limit, false),
127
+ consecutiveOnly: (_m = (_l = config === null || config === void 0 ? void 0 : config.retry) === null || _l === void 0 ? void 0 : _l.consecutiveOnly) !== null && _m !== void 0 ? _m : defaultConfig.retry.consecutiveOnly,
128
128
  },
129
- pauseWhenHidden: (_o = config === null || config === void 0 ? void 0 : config.pauseWhenHidden) !== null && _o !== void 0 ? _o : controlConfig.pauseWhenHidden,
129
+ pauseWhenHidden: (_o = config === null || config === void 0 ? void 0 : config.pauseWhenHidden) !== null && _o !== void 0 ? _o : defaultConfig.pauseWhenHidden,
130
130
  };
131
131
  }
132
132
 
133
- function createState(partial) {
134
- return Object.assign({ value: undefined, error: undefined, pollCount: 0, retryCount: 0, consecutiveRetryCount: 0 }, partial);
133
+ const defaultState = {
134
+ value: undefined,
135
+ error: undefined,
136
+ pollCount: 0,
137
+ retryCount: 0,
138
+ consecutiveRetryCount: 0,
139
+ };
140
+
141
+ function createPollService(extendedConfig) {
142
+ const state = Object.assign({}, defaultState);
143
+ return {
144
+ get config() {
145
+ return extendedConfig;
146
+ },
147
+ get state() {
148
+ return state;
149
+ },
150
+ setValue: (value) => {
151
+ state.value = value;
152
+ },
153
+ setError: (error) => {
154
+ state.error = error;
155
+ },
156
+ resetError: () => {
157
+ state.error = undefined;
158
+ state.consecutiveRetryCount = 0;
159
+ },
160
+ incrementPoll: () => {
161
+ state.pollCount += 1;
162
+ },
163
+ incrementRetry: () => {
164
+ state.retryCount += 1;
165
+ state.consecutiveRetryCount += 1;
166
+ },
167
+ isRetryLimit: () => {
168
+ const retryKey = extendedConfig.retry.consecutiveOnly ? 'consecutiveRetryCount' : 'retryCount';
169
+ return state[retryKey] > extendedConfig.retry.limit;
170
+ },
171
+ getDelayTime: () => {
172
+ return extendedConfig.getDelayTime(state);
173
+ },
174
+ getRetryTime: () => {
175
+ return extendedConfig.getRetryTime(state);
176
+ },
177
+ };
178
+ }
179
+
180
+ function retryPoll(pollService, getRetryTime) {
181
+ return (source) => source.pipe(rxjs.retry({
182
+ delay: (error) => {
183
+ pollService.incrementRetry();
184
+ if (pollService.isRetryLimit()) {
185
+ return rxjs.throwError(() => error);
186
+ }
187
+ pollService.setError(error);
188
+ return rxjs.timer(getRetryTime ? getRetryTime() : pollService.getRetryTime());
189
+ },
190
+ }), rxjs.tap(() => pollService.resetError()));
135
191
  }
136
192
 
137
193
  function withDocumentVisibility$(poller$, pauser$) {
138
194
  const visibility$ = getDocumentVisibility$();
139
- const pause$ = visibility$.pipe(rxjs.switchMap((isVisible) => (isVisible ? rxjs.EMPTY : pauser$)));
195
+ const pause$ = visibility$.pipe(rxjs.switchMap((isVisible) => (isVisible ? rxjs.NEVER : pauser$)));
140
196
  let emissionStarted = true;
141
197
  return visibility$.pipe(rxjs.filter((isVisible) => isVisible || emissionStarted), rxjs.exhaustMap(() => poller$.pipe(rxjs.takeUntil(pause$))), rxjs.tap(() => (emissionStarted = false)));
142
198
  }
@@ -149,89 +205,89 @@
149
205
  return documentVisibility$;
150
206
  }
151
207
 
208
+ const timingToleranceMs = 100;
209
+
210
+ function getPauseDelay$(options) {
211
+ const { time, sourceStartTime = 0, sourceEndTime = 0 } = options;
212
+ const delayMs = time - (sourceEndTime - sourceStartTime) - timingToleranceMs;
213
+ return delayMs > 0 ? rxjs.timer(delayMs).pipe(rxjs.map(() => null)) : rxjs.of(null);
214
+ }
215
+
152
216
  function repeatWith$(source$, getTime) {
153
217
  return source$.pipe(rxjs.repeat({
154
218
  delay: () => rxjs.timer(getTime()),
155
219
  }));
156
220
  }
157
221
 
158
- function buildIntervalPoller$(source$, { nextDelayTime, pauseWhenHidden }) {
159
- if (!isBrowser() || !pauseWhenHidden) {
160
- return repeatWith$(rxjs.of(null), () => nextDelayTime()).pipe(rxjs.switchMap(() => source$));
161
- }
162
- let currentDelay = 0;
163
- const trigger$ = repeatWith$(rxjs.of(null), () => {
164
- currentDelay = nextDelayTime();
165
- return currentDelay;
166
- });
167
- const pauser$ = rxjs.defer(() => rxjs.timer(currentDelay));
168
- return withDocumentVisibility$(trigger$, pauser$).pipe(rxjs.switchMap(() => source$));
169
- }
170
-
171
- function buildRepeatPoller$(source$, { nextDelayTime, pauseWhenHidden }) {
172
- if (!isBrowser() || !pauseWhenHidden) {
173
- return repeatWith$(source$, () => nextDelayTime());
222
+ function buildIntervalPoller$(source$, pollService) {
223
+ if (!isBrowser() || !pollService.config.pauseWhenHidden) {
224
+ return repeatWith$(rxjs.of(null), () => {
225
+ pollService.incrementPoll();
226
+ return pollService.getDelayTime();
227
+ }).pipe(rxjs.switchMap(() => source$), retryPoll(pollService));
174
228
  }
175
229
  const pauseTrigger$ = new rxjs.Subject();
176
- let currentDelay = 0;
177
- const poller$ = repeatWith$(source$.pipe(rxjs.finalize(() => pauseTrigger$.next())), () => {
178
- currentDelay = nextDelayTime();
179
- return currentDelay;
180
- });
181
- const pauser$ = pauseTrigger$.pipe(rxjs.auditTime(currentDelay));
230
+ let time = 0;
231
+ let sourceStartTime = 0;
232
+ let sourceEndTime = 0;
233
+ const poller$ = repeatWith$(rxjs.of(null), () => {
234
+ pollService.incrementPoll();
235
+ time = pollService.getDelayTime();
236
+ return time;
237
+ }).pipe(rxjs.switchMap(() => source$.pipe(rxjs.tap({
238
+ subscribe: () => {
239
+ sourceStartTime = performance.now();
240
+ },
241
+ finalize: () => {
242
+ sourceEndTime = performance.now();
243
+ pauseTrigger$.next();
244
+ },
245
+ }))), retryPoll(pollService, () => {
246
+ time = pollService.getRetryTime();
247
+ return time;
248
+ }));
249
+ const pauser$ = pauseTrigger$.pipe(rxjs.switchMap(() => getPauseDelay$({
250
+ time,
251
+ sourceStartTime,
252
+ sourceEndTime,
253
+ })));
182
254
  return withDocumentVisibility$(poller$, pauser$);
183
255
  }
184
256
 
185
- function retryPoll(getTime, isLimit, resetError) {
186
- return (source) => source.pipe(rxjs.retry({
187
- delay: (error) => (isLimit() ? rxjs.throwError(() => error) : rxjs.timer(getTime(error))),
188
- }), rxjs.tap(() => resetError()));
257
+ function buildRepeatPoller$(source$, pollService) {
258
+ if (!isBrowser() || !pollService.config.pauseWhenHidden) {
259
+ return repeatWith$(source$, () => {
260
+ pollService.incrementPoll();
261
+ return pollService.getDelayTime();
262
+ }).pipe(retryPoll(pollService));
263
+ }
264
+ const pauseTrigger$ = new rxjs.Subject();
265
+ let time = 0;
266
+ const poller$ = repeatWith$(source$.pipe(rxjs.finalize(() => pauseTrigger$.next())), () => {
267
+ pollService.incrementPoll();
268
+ time = pollService.getDelayTime();
269
+ return time;
270
+ }).pipe(retryPoll(pollService, () => {
271
+ time = pollService.getRetryTime();
272
+ return time;
273
+ }));
274
+ const pauser$ = pauseTrigger$.pipe(rxjs.switchMap(() => getPauseDelay$({ time })));
275
+ return withDocumentVisibility$(poller$, pauser$);
189
276
  }
190
277
 
191
- function getPollerFactory(source$, { getDelayTime, getRetryTime, pauseWhenHidden, retry, type }) {
192
- const retryKey = retry.consecutiveOnly ? 'consecutiveRetryCount' : 'retryCount';
193
- let lastValue;
194
- const completed$ = source$.pipe(rxjs.takeLast(1), rxjs.tap((value) => {
195
- lastValue = value;
196
- }));
197
- return function createPoller(state) {
198
- const nextDelayTime = (value) => {
199
- state.pollCount += 1;
200
- state.value = value;
201
- return getDelayTime(state);
202
- };
203
- const nextRetryTime = (error) => {
204
- state.error = error;
205
- return getRetryTime(state);
206
- };
207
- const isRetryLimit = () => {
208
- state.retryCount += 1;
209
- state.consecutiveRetryCount += 1;
210
- return state[retryKey] > retry.limit;
211
- };
212
- const resetError = () => {
213
- state.error = undefined;
214
- state.consecutiveRetryCount = 0;
215
- };
216
- const poller$ = type === 'repeat'
217
- ? buildRepeatPoller$(completed$, {
218
- nextDelayTime: () => nextDelayTime(lastValue),
219
- pauseWhenHidden,
220
- })
221
- : buildIntervalPoller$(completed$, {
222
- nextDelayTime: () => nextDelayTime(lastValue),
223
- pauseWhenHidden,
224
- });
225
- return poller$.pipe(retryPoll(nextRetryTime, isRetryLimit, resetError));
226
- };
278
+ function createPoller$(source$, pollService) {
279
+ const completed$ = source$.pipe(rxjs.takeLast(1), rxjs.tap((value) => pollService.setValue(value)));
280
+ const poller$ = pollService.config.type === pollType.REPEAT
281
+ ? buildRepeatPoller$(completed$, pollService)
282
+ : buildIntervalPoller$(completed$, pollService);
283
+ return poller$;
227
284
  }
228
285
 
229
286
  function poll(config) {
230
287
  return (source$) => {
231
288
  const extendedConfig = extendConfig(config);
232
- const state = createState();
233
- const createPoller = getPollerFactory(source$, extendedConfig);
234
- const poller$ = createPoller(state);
289
+ const pollService = createPollService(extendedConfig);
290
+ const poller$ = createPoller$(source$, pollService);
235
291
  return poller$;
236
292
  };
237
293
  }